:root {
  --bg: #fffafc;
  --surface: #ffffff;
  --ink: #291f27;
  --muted: #776a73;
  --rose: #d94d85;
  --rose-dark: #b9366c;
  --rose-soft: #fde7f0;
  --lavender: #eee6ff;
  --border: #eadfe5;
  --shadow: 0 18px 50px rgba(92, 45, 69, .10);
  --radius-lg: 32px;
  --radius-md: 22px;
  --radius-sm: 14px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--bg); font-family: 'DM Sans', sans-serif; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { cursor: pointer; }
.container { width: min(1180px, calc(100% - 40px)); margin: 0 auto; }

.announcement { padding: 9px 16px; text-align: center; background: #291f27; color: white; font-size: 13px; letter-spacing: .02em; }
.site-header { position: sticky; top: 0; z-index: 50; background: rgba(255,250,252,.92); backdrop-filter: blur(16px); border-bottom: 1px solid rgba(234,223,229,.85); }
.nav-wrap { min-height: 78px; display: flex; align-items: center; gap: 30px; }
.brand { display: inline-flex; align-items: center; gap: 11px; flex-shrink: 0; }
.brand-mark { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; background: var(--rose); color: white; font-family: 'Playfair Display', serif; font-weight: 700; }
.brand strong { display:block; font-size: 14px; letter-spacing: .14em; }
.brand small { display:block; color: var(--rose); font-weight: 700; letter-spacing: .35em; font-size: 10px; margin-top: 3px; }
.main-nav { margin-left: auto; display: flex; gap: 21px; font-size: 14px; font-weight: 600; }
.main-nav a { position: relative; }
.main-nav a::after { content:""; position:absolute; left:0; right:100%; bottom:-7px; height:2px; background:var(--rose); transition:.25s; }
.main-nav a:hover::after { right:0; }
.nav-actions { display:flex; gap:8px; }
.icon-btn, .cart-btn { border: 1px solid var(--border); background:white; border-radius:999px; min-height:42px; padding:0 14px; }
.cart-btn span { display:inline-grid; place-items:center; min-width:20px; height:20px; margin-left:4px; border-radius:50%; background:var(--rose); color:white; font-size:11px; }
.menu-toggle { display:none; border:0; background:transparent; font-size:24px; margin-left:auto; }

.hero { overflow:hidden; padding: 86px 0 88px; background: radial-gradient(circle at 80% 30%, #f5d8e7 0, transparent 34%), radial-gradient(circle at 20% 0%, #eee7ff 0, transparent 31%); }
.hero-grid { display:grid; grid-template-columns: 1.05fr .95fr; align-items:center; gap:72px; }
.eyebrow { display:inline-block; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.18em; color:var(--rose); margin-bottom:14px; }
.hero h1, .section h2, .newsletter h2 { font-family:'Playfair Display', serif; }
.hero h1 { font-size: clamp(46px, 5.6vw, 78px); line-height: .98; margin:0 0 24px; letter-spacing:-.035em; }
.hero h1 em { color:var(--rose); font-style:italic; }
.hero-copy > p { max-width:620px; color:var(--muted); font-size:18px; line-height:1.7; }
.hero-actions { display:flex; gap:12px; margin-top:32px; flex-wrap:wrap; }
.btn { border:0; border-radius:999px; padding:14px 22px; display:inline-flex; justify-content:center; align-items:center; font-weight:700; transition:transform .2s, box-shadow .2s, background .2s; }
.btn:hover { transform:translateY(-2px); }
.btn.primary { background:var(--rose); color:white; box-shadow:0 12px 26px rgba(217,77,133,.22); }
.btn.primary:hover { background:var(--rose-dark); }
.btn.secondary { background:white; border:1px solid var(--border); }
.btn.white { background:white; color:var(--rose-dark); }
.trust-row { display:flex; flex-wrap:wrap; gap:18px; margin-top:32px; color:#6d5d67; font-size:12px; }
.hero-art { min-height:520px; position:relative; }
.hero-card { position:absolute; width:220px; height:280px; border-radius:30px; padding:22px; display:flex; justify-content:space-between; align-items:flex-end; box-shadow:var(--shadow); font-size:11px; font-weight:800; letter-spacing:.12em; }
.hero-card b { font-size:50px; font-weight:400; }
.hero-card-one { left:20px; top:110px; background:#ffd8e8; transform:rotate(-8deg); }
.hero-card-two { right:28px; top:24px; background:#ded2ff; transform:rotate(8deg); }
.hero-card-three { right:60px; bottom:3px; background:#feecc7; transform:rotate(-3deg); }
.thai-orbit { position:absolute; left:50%; top:48%; transform:translate(-50%,-50%); width:164px; height:164px; display:grid; place-items:center; text-align:center; border-radius:50%; background:#291f27; color:white; font-family:'Playfair Display',serif; font-weight:700; line-height:1.1; letter-spacing:.08em; box-shadow:0 20px 40px rgba(41,31,39,.2); }

.section { padding:88px 0; }
.section.soft { background:#fff; }
.section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; margin-bottom:36px; }
.section-head h2 { font-size:clamp(34px,4vw,52px); margin:0; letter-spacing:-.025em; }
.section-head p { max-width:430px; color:var(--muted); line-height:1.6; margin:0 0 7px; }
.text-link { border:0; background:transparent; color:var(--rose); font-weight:800; }
.fandom-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:14px; }
.fandom-card { border:1px solid var(--border); background:white; padding:14px 12px 18px; border-radius:24px; text-align:left; transition:.22s; }
.fandom-card:hover, .fandom-card.active { transform:translateY(-4px); box-shadow:var(--shadow); border-color:#e1b5c8; }
.fandom-visual { aspect-ratio:1; width:100%; border-radius:18px; display:grid; place-items:center; font-family:'Playfair Display',serif; font-size:34px; font-weight:700; margin-bottom:15px; }
.fandom-card strong, .fandom-card small { display:block; }
.fandom-card strong { font-size:15px; }
.fandom-card small { color:var(--muted); margin-top:4px; }
.fandom-visual.all { background:#fbeaf1; }
.fandom-visual.gmmtv { background:#e8f0ff; }
.fandom-visual.englot { background:#f0e5ff; }
.fandom-visual.lingorm { background:#e5f7f6; }
.fandom-visual.freenbecky { background:#ffe8dd; }
.fandom-visual.outros { background:#fff0c9; }

.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.product-card { background:white; border:1px solid var(--border); border-radius:26px; overflow:hidden; transition:.22s; }
.product-card:hover { transform:translateY(-5px); box-shadow:var(--shadow); }
.product-card.hidden { display:none; }
.product-media { aspect-ratio:1.08; position:relative; display:grid; place-items:center; }
.media-pink { background:#fde6ef; }.media-purple{background:#eee5ff}.media-blue{background:#e4f0ff}.media-peach{background:#ffeadf}.media-mint{background:#e4f8ef}.media-yellow{background:#fff1c8}
.product-placeholder { font-size:72px; filter:drop-shadow(0 10px 15px rgba(60,20,40,.08)); }
.badge { position:absolute; left:16px; top:16px; padding:7px 10px; border-radius:999px; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; background:white; }
.badge.new { color:#a53262; }.badge.preorder{color:#6547a7}.badge.limited{color:#a2502e}
.product-info { padding:20px; }
.product-meta { color:var(--rose); text-transform:uppercase; letter-spacing:.11em; font-size:10px; font-weight:800; }
.product-info h3 { margin:8px 0 13px; font-size:18px; }
.price { font-size:18px; font-weight:800; margin:0 0 17px; }
.add-cart { width:100%; border:1px solid var(--border); background:#fff; border-radius:12px; padding:12px; font-weight:700; }
.add-cart:hover { border-color:var(--rose); color:var(--rose); }
.empty-state { display:none; text-align:center; color:var(--muted); padding:30px; }

.preorder-section { padding-top:0; }
.preorder-box { background:linear-gradient(135deg,#c94178,#7e4bad); color:white; border-radius:36px; padding:54px; display:grid; grid-template-columns:1fr 1fr; gap:52px; align-items:center; }
.eyebrow.light { color:#ffe0ec; }
.preorder-box h2 { margin:0 0 18px; font-family:'Playfair Display',serif; font-size:46px; }
.preorder-box p { color:rgba(255,255,255,.82); line-height:1.7; max-width:550px; }
.preorder-box .btn { margin-top:14px; }
.preorder-stats { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.preorder-stats div { min-height:130px; padding:20px; border:1px solid rgba(255,255,255,.18); border-radius:22px; background:rgba(255,255,255,.08); }
.preorder-stats strong, .preorder-stats span { display:block; }
.preorder-stats strong { font-family:'Playfair Display',serif; font-size:32px; }
.preorder-stats span { margin-top:13px; color:rgba(255,255,255,.82); font-size:13px; }

.category-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:14px; }
.category-card { border:1px solid var(--border); background:white; border-radius:20px; padding:22px 14px; min-height:145px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:13px; transition:.2s; }
.category-card:hover { transform:translateY(-3px); box-shadow:var(--shadow); color:var(--rose); }
.category-card span { font-size:38px; }
.category-card strong { font-size:13px; }

.how-section { background:#f7f0f4; }
.steps-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.step-card { padding:28px; background:white; border-radius:24px; }
.step-card > span { display:inline-grid; place-items:center; width:42px; height:42px; border-radius:50%; background:var(--rose-soft); color:var(--rose); font-weight:800; }
.step-card h3 { font-size:17px; margin:20px 0 10px; }
.step-card p { margin:0; color:var(--muted); line-height:1.65; font-size:14px; }

.newsletter { padding:72px 0; background:#291f27; color:white; }
.newsletter-inner { display:grid; grid-template-columns:1fr .8fr; gap:50px; align-items:center; }
.newsletter h2 { margin:0 0 10px; font-size:40px; }
.newsletter p { color:#cdbfc7; }
.newsletter-form { display:flex; gap:10px; }
.newsletter-form input { flex:1; border:1px solid #594b54; background:#362b32; color:white; border-radius:999px; padding:0 18px; min-height:50px; outline:none; }
.newsletter-form input:focus { border-color:#df7aa3; }

.footer { background:#1d171b; color:white; padding:58px 0 24px; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:40px; }
.footer-grid > div:not(:first-child) { display:flex; flex-direction:column; gap:10px; font-size:13px; }
.footer-grid p, .footer-grid a { color:#bcaeb6; }
.footer-grid a:hover { color:white; }
.footer-brand .brand-mark { background:white; color:#1d171b; }
.footer-grid p { max-width:330px; line-height:1.6; }
.footer-bottom { border-top:1px solid #3a3036; margin-top:42px; padding-top:20px; display:flex; justify-content:space-between; gap:20px; color:#8f8089; font-size:12px; }
.toast { position:fixed; right:24px; bottom:24px; background:#291f27; color:white; padding:13px 18px; border-radius:999px; box-shadow:var(--shadow); transform:translateY(100px); opacity:0; transition:.25s; z-index:100; }
.toast.show { transform:translateY(0); opacity:1; }

@media (max-width: 980px) {
  .menu-toggle { display:block; }
  .main-nav { display:none; position:absolute; top:78px; left:20px; right:20px; background:white; border:1px solid var(--border); border-radius:20px; padding:18px; flex-direction:column; box-shadow:var(--shadow); }
  .main-nav.open { display:flex; }
  .nav-actions { margin-left:0; }
  .hero-grid, .preorder-box, .newsletter-inner { grid-template-columns:1fr; }
  .hero-art { min-height:440px; }
  .fandom-grid, .category-grid { grid-template-columns:repeat(3,1fr); }
  .product-grid { grid-template-columns:repeat(2,1fr); }
  .steps-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width: 640px) {
  .container { width:min(100% - 24px, 1180px); }
  .site-header .nav-wrap { min-height:66px; }
  .nav-actions .icon-btn { display:none; }
  .hero { padding-top:56px; }
  .hero-grid { gap:30px; }
  .hero h1 { font-size:48px; }
  .hero-copy > p { font-size:16px; }
  .hero-art { min-height:350px; transform:scale(.9); margin:-20px -10px 0; }
  .hero-card { width:160px; height:210px; }
  .hero-card-one { left:0; top:80px; }.hero-card-two { right:0; }.hero-card-three { right:20px; }
  .thai-orbit { width:125px; height:125px; font-size:13px; }
  .section { padding:64px 0; }
  .section-head { align-items:flex-start; flex-direction:column; margin-bottom:26px; }
  .fandom-grid, .category-grid, .product-grid, .steps-grid { grid-template-columns:1fr 1fr; }
  .fandom-card small { display:none; }
  .preorder-box { padding:32px 22px; border-radius:28px; }
  .preorder-box h2 { font-size:38px; }
  .preorder-stats { grid-template-columns:1fr; }
  .newsletter-form { flex-direction:column; }
  .newsletter-form input { min-height:50px; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .footer-grid > div:first-child { grid-column:1/-1; }
  .footer-bottom { flex-direction:column; }
}

@media (max-width: 430px) {
  .fandom-grid, .category-grid, .product-grid, .steps-grid { grid-template-columns:1fr; }
  .hero-actions .btn { width:100%; }
  .trust-row { flex-direction:column; gap:8px; }
}

/* V3 — temas e cards de fandom com foto */
:root{--accent:#df4d82;--accent-dark:#a72d58;--soft:#fff2f7;--theme-soft:#fff2f7}
:root[data-theme="lavender"]{--accent:#8b63cf;--accent-dark:#6241a0;--soft:#f4efff;--theme-soft:#f4efff}
:root[data-theme="blue"]{--accent:#5388c9;--accent-dark:#35649b;--soft:#eef6ff;--theme-soft:#eef6ff}
:root[data-theme="mint"]{--accent:#4f9b82;--accent-dark:#32715e;--soft:#eefaf5;--theme-soft:#eefaf5}
.brand-mark,.btn.primary,.add-cart,.cart-btn span{background:var(--accent)!important}.eyebrow,.text-link{color:var(--accent)!important}.fandom-card.active{border-color:var(--accent)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 16%,transparent)}
.fandom-visual.fandom-photo{overflow:hidden;padding:0;background:var(--soft)!important}.fandom-visual.fandom-photo img{width:100%;height:100%;display:block;object-fit:cover}.account-link{display:inline-flex!important;align-items:center;gap:5px;border:1px solid var(--line);border-radius:99px;padding:8px 12px!important}.theme-switch{position:relative}.theme-pop{position:absolute;right:0;top:44px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:7px;box-shadow:0 15px 35px rgba(40,20,30,.13);display:grid;gap:4px;min-width:130px;z-index:20}.theme-pop.hidden{display:none}.theme-pop button{border:0;background:var(--soft);border-radius:8px;padding:8px;text-align:left;cursor:pointer}
/* V6 — identidade premium preta e cinza */
:root{--rose:#d9d9d9;--rose-dark:#f5f5f5;--rose-soft:#202020;--lavender:#b8b8b8;--peach:#858585;--cream:#080808;--ink:#f5f5f5;--muted:#b8b8b8;--white:#181818;--line:#333}
html{color-scheme:dark}body{background:#080808;color:#f5f5f5}.announcement{background:#111;color:#d9d9d9;border-bottom:1px solid #333}.site-header,.checkout-box,.product-card,.fandom-card,.category-card,.step-card,dialog{background:#181818;color:#f5f5f5;border-color:#333}.soft,.newsletter{background:#111}.main-nav a,.footer a,.product-meta,.section-head p,small,p{color:#b8b8b8}.brand-mark,.btn.primary,.add-cart{background:#f5f5f5!important;color:#080808!important}.btn.secondary,.icon-btn,.cart-btn,input,textarea,select{background:#202020!important;color:#f5f5f5!important;border-color:#3a3a3a!important}.hero{background:radial-gradient(circle at 75% 25%,#2b2b2b 0,transparent 34%),linear-gradient(145deg,#080808,#151515)}.preorder-box{background:linear-gradient(135deg,#111,#2a2a2a)}.fandom-card{text-decoration:none}.fandom-card:hover,.product-card:hover{border-color:#aaa;box-shadow:0 16px 40px rgba(255,255,255,.08)}

/* Mini mundo */
.world-hero{min-height:360px;display:grid;place-items:center;text-align:center;background:linear-gradient(135deg,#080808,var(--world-accent,#333));border-bottom:1px solid #333}.world-avatar{width:112px;height:112px;border-radius:50%;object-fit:cover;border:3px solid #eee;background:#222}.world-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.world-empty{padding:40px;text-align:center;border:1px dashed #444;border-radius:18px;color:#aaa}.world-count{display:inline-block;padding:7px 12px;border:1px solid #555;border-radius:999px;color:#ddd}


/* ==========================================================================
   V7.4 — CORREÇÃO DEFINITIVA DA PALETA DE CORES
   Mantém o visual premium escuro, mas permite que a paleta altere
   os destaques do site: rosa, lilás, azul e verde.
   ========================================================================== */

:root,
:root[data-theme="rose"]{
  --accent:#e85d92;
  --accent-dark:#b83b69;
  --accent-soft:#351824;
  --accent-glow:rgba(232,93,146,.22);
}

:root[data-theme="lavender"]{
  --accent:#a985e8;
  --accent-dark:#7855b8;
  --accent-soft:#241b35;
  --accent-glow:rgba(169,133,232,.22);
}

:root[data-theme="blue"]{
  --accent:#66a7e8;
  --accent-dark:#3e78b3;
  --accent-soft:#172638;
  --accent-glow:rgba(102,167,232,.22);
}

:root[data-theme="mint"]{
  --accent:#62c6a2;
  --accent-dark:#3d9175;
  --accent-soft:#172d27;
  --accent-glow:rgba(98,198,162,.22);
}

/* Elementos que devem responder à escolha da paleta */
.brand-mark,
.btn.primary,
.add-cart,
.cart-btn span,
.primary-btn,
.primary-small,
.status-pill,
.badge.new{
  background:var(--accent)!important;
  color:#080808!important;
}

.eyebrow,
.text-link,
.price,
.order-history summary{
  color:var(--accent)!important;
}

.fandom-card.active,
.category-card:focus,
.product-card:hover,
.fandom-card:hover{
  border-color:var(--accent)!important;
  box-shadow:0 0 0 2px var(--accent-glow),0 16px 40px rgba(0,0,0,.28)!important;
}

.theme-pop,
.theme-float{
  background:#181818!important;
  border-color:#3a3a3a!important;
  color:#f5f5f5!important;
}

.theme-pop button,
.theme-float button,
.theme-picker button{
  background:#202020!important;
  color:#f5f5f5!important;
  border:1px solid #3a3a3a!important;
  cursor:pointer!important;
}

.theme-pop button:hover,
.theme-float button:hover,
.theme-picker button:hover{
  border-color:var(--accent)!important;
  background:var(--accent-soft)!important;
}

.theme-pop button[data-theme="rose"],
.theme-float button[data-theme="rose"],
.theme-picker button[data-theme="rose"]{border-left:4px solid #e85d92!important}

.theme-pop button[data-theme="lavender"],
.theme-float button[data-theme="lavender"],
.theme-picker button[data-theme="lavender"]{border-left:4px solid #a985e8!important}

.theme-pop button[data-theme="blue"],
.theme-float button[data-theme="blue"],
.theme-picker button[data-theme="blue"]{border-left:4px solid #66a7e8!important}

.theme-pop button[data-theme="mint"],
.theme-float button[data-theme="mint"],
.theme-picker button[data-theme="mint"]{border-left:4px solid #62c6a2!important}

/* O tema continua escuro; a cor escolhida aparece como destaque */
.hero{
  background:
    radial-gradient(circle at 75% 25%,var(--accent-glow) 0,transparent 36%),
    linear-gradient(145deg,#080808,#151515)!important;
}

.preorder-box{
  background:linear-gradient(135deg,#111,var(--accent-soft))!important;
}

input:focus,
textarea:focus,
select:focus{
  outline:none!important;
  border-color:var(--accent)!important;
  box-shadow:0 0 0 3px var(--accent-glow)!important;
}

/* Em telas pequenas o botão de paleta deve continuar disponível */
@media (max-width:640px){
  .nav-actions #theme-toggle,
  .nav-actions #theme-btn{
    display:inline-flex!important;
  }
}


/* ==========================================================================
   V7.4.1 — CORREÇÃO DE CONTRASTE EM FUNDOS CLAROS
   Regra: sempre que um bloco for branco/claro, o texto fica escuro.
   ========================================================================== */

/* Blocos claros */
.white,
.bg-white,
.card-white,
.modal-white,
.auth-box,
.newsletter-form,
.summary-card,
.checkout-summary,
.payment-installment,
.theme-pop.light,
.theme-float.light {
  color:#111!important;
}

/* Texto dentro de blocos claros */
.white *,
.bg-white *,
.card-white *,
.modal-white *,
.auth-box *,
.newsletter-form *,
.summary-card *,
.checkout-summary *,
.payment-installment *,
.theme-pop.light *,
.theme-float.light * {
  color:#111!important;
}

/* Inputs realmente brancos */
input[style*="background:#fff"],
input[style*="background: #fff"],
textarea[style*="background:#fff"],
textarea[style*="background: #fff"],
select[style*="background:#fff"],
select[style*="background: #fff"] {
  color:#111!important;
}

/* Componentes antigos que usam fundo branco fixo */
.payment-installment,
.payment-installment strong,
.payment-installment small,
.payment-installment span,
.payment-installment p,
.payment-installment label {
  color:#111!important;
}

/* Se algum modal/dialog permanecer branco por regra antiga */
dialog[style*="background:#fff"],
dialog[style*="background: #fff"],
dialog[open].light {
  color:#111!important;
}

dialog[style*="background:#fff"] *,
dialog[style*="background: #fff"] *,
dialog[open].light * {
  color:#111!important;
}

/* Placeholder em campos claros */
input[style*="background:#fff"]::placeholder,
input[style*="background: #fff"]::placeholder,
textarea[style*="background:#fff"]::placeholder,
textarea[style*="background: #fff"]::placeholder {
  color:#666!important;
}

/* Proteção adicional para cards claros que herdavam texto do tema escuro */
[style*="background:#fff"],
[style*="background: #fff"],
[style*="background:white"],
[style*="background: white"],
[style*="background-color:#fff"],
[style*="background-color: #fff"],
[style*="background-color:white"],
[style*="background-color: white"] {
  color:#111!important;
}

[style*="background:#fff"] *,
[style*="background: #fff"] *,
[style*="background:white"] *,
[style*="background: white"] *,
[style*="background-color:#fff"] *,
[style*="background-color: #fff"] *,
[style*="background-color:white"] *,
[style*="background-color: white"] * {
  color:#111!important;
}

/* Links em fundo claro continuam visíveis */
[style*="background:#fff"] a,
[style*="background: #fff"] a,
[style*="background:white"] a,
[style*="background: white"] a {
  color:#111!important;
  text-decoration-color:var(--accent)!important;
}


/* ==========================================================================
   V7.5 — MINI MUNDOS PERSONALIZÁVEIS
   ========================================================================== */
.fandom-world-fields{margin-top:10px;padding:20px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.035)}
.world-fields-head h3{margin:4px 0 5px;font-family:"Playfair Display",serif;font-size:24px}
.world-fields-head p,.world-help{color:var(--muted);font-size:.86rem}
.world-help{margin:12px 0 0}

.world-page{--world-accent:var(--accent)}
.world-hero{position:relative;min-height:500px;display:flex;align-items:flex-end;background:#080808;overflow:hidden}
.world-cover{position:absolute;inset:0;background:#101010 center/cover no-repeat}
.world-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.86))}
.world-hero-inner{position:relative;z-index:2;width:100%;display:flex;gap:28px;align-items:flex-end;padding-top:230px;padding-bottom:52px}
.world-avatar{width:140px;height:140px;border-radius:30px;background:#181818;border:2px solid var(--world-accent);display:flex;align-items:center;justify-content:center;font:700 40px "Playfair Display",serif;overflow:hidden;box-shadow:0 18px 45px rgba(0,0,0,.35)}
.world-avatar img{width:100%;height:100%;object-fit:cover}
.world-copy{max-width:780px}
.world-copy h1{font-family:"Playfair Display",serif;font-size:clamp(42px,6vw,78px);line-height:.95;margin:8px 0 14px}
.world-copy p{font-size:1.04rem;max-width:720px}
.world-socials{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.world-socials a{display:inline-flex;padding:9px 13px;border:1px solid #444;border-radius:99px;background:rgba(0,0,0,.45);color:#fff;text-decoration:none}
.world-socials a:hover{border-color:var(--world-accent)}
.world-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.world-stats>div{padding:22px;border-radius:18px;background:#181818;border:1px solid #333;text-align:center}
.world-stats strong{display:block;font-size:30px;color:var(--world-accent)}
.world-stats span{color:#b8b8b8;font-size:.86rem}
.world-artists{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.world-artist-card{display:flex;gap:14px;align-items:center;padding:16px;border:1px solid #333;border-radius:18px;background:#181818}
.world-artist-photo{width:72px;height:72px;border-radius:16px;background:#252525;display:flex;align-items:center;justify-content:center;overflow:hidden;flex:none}
.world-artist-photo img{width:100%;height:100%;object-fit:cover}
.world-artist-card strong{font-size:1rem}.world-artist-card p{margin:4px 0 0;color:#b8b8b8;font-size:.82rem}
.world-filters{display:grid;grid-template-columns:1fr 220px;gap:10px;margin-bottom:20px}
.world-filters input,.world-filters select{width:100%}
.old-price{text-decoration:line-through;color:#8b7c85;margin-right:8px}
.world-wish{display:block;text-align:center;text-decoration:none}
.world-independent-note{padding-top:20px!important}.world-independent-note p{text-align:center;color:#888;font-size:.78rem}

@media(max-width:760px){
  .world-hero{min-height:430px}.world-hero-inner{padding-top:190px;align-items:flex-start;flex-direction:column}
  .world-avatar{width:100px;height:100px;border-radius:22px}
  .world-stats{grid-template-columns:1fr 1fr}
  .world-artists{grid-template-columns:1fr}
  .world-filters{grid-template-columns:1fr}
}


/* ==========================================================================
   V7.6 — EDITOR DA LOJA
   ========================================================================== */
.hero.store-custom-banner{
  position:relative;
  background:
    linear-gradient(90deg,rgba(8,8,8,.96) 0%,rgba(8,8,8,.82) 45%,rgba(8,8,8,.38) 100%),
    var(--store-banner) center/cover no-repeat!important;
}
.hero.store-custom-banner .hero-copy{position:relative;z-index:2}
.hero.store-custom-banner .hero-art{opacity:.88}
@media(max-width:760px){
  .hero.store-custom-banner{
    background:
      linear-gradient(180deg,rgba(8,8,8,.88),rgba(8,8,8,.98)),
      var(--store-banner) center/cover no-repeat!important;
  }
}


/* ==========================================================================
   V7.6.2 — HERO 3D REAL (WEBGL)
   ========================================================================== */
.hero-3d-wrap{
  min-height:500px;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
}
.hero-3d-stage{
  position:relative;
  width:min(520px, 94vw);
  aspect-ratio:1/1;
  border-radius:36px;
  overflow:hidden;
  background:
    radial-gradient(circle at 65% 30%, rgba(74,95,255,.14), transparent 34%),
    radial-gradient(circle at 30% 72%, rgba(232,93,146,.16), transparent 38%),
    linear-gradient(145deg,#07080b,#11131a);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:0 30px 80px rgba(0,0,0,.55);
}
#thai-treasure-3d{
  position:absolute;
  inset:0;
  width:100%!important;
  height:100%!important;
  display:block;
}
.hero-3d-brand{
  position:absolute;
  left:50%;
  top:52%;
  transform:translate(-50%,-50%);
  width:140px;
  height:140px;
  border-radius:50%;
  background:rgba(12,10,14,.88);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 35px rgba(0,0,0,.45),0 0 30px rgba(232,93,146,.16);
  backdrop-filter:blur(6px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  pointer-events:none;
}
.hero-3d-brand strong{
  color:#fff;
  font-family:"Playfair Display",serif;
  font-size:22px;
  line-height:1.02;
}
.hero-3d-brand small{
  color:var(--accent);
  font-size:9px;
  font-weight:800;
  letter-spacing:.16em;
  margin:5px 0;
}
.hero-3d-caption{
  position:absolute;
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  padding:10px 16px;
  border-radius:999px;
  color:#fff;
  background:rgba(5,6,9,.78);
  border:1px solid rgba(255,255,255,.11);
  font-size:12px;
  white-space:nowrap;
  pointer-events:none;
}
@media(max-width:760px){
  .hero-3d-wrap{min-height:390px}
  .hero-3d-stage{width:min(390px,94vw)}
  .hero-3d-brand{width:112px;height:112px}
  .hero-3d-brand strong{font-size:18px}
  .hero-3d-caption{font-size:10px;bottom:14px}
}
