/* RETRO POP · WIDGETS COMPARTILHADOS (plano 3.12 e 5.3; reports/retro-pop/mapa-lobby-live.md B). Carregada em
   todas as familias, depois de _bridge.css e antes de retro/<familia>.css. Dona unica de: chat (#chatToggleBtn,
   #liveChat, toast), Live (#ogliveV2, #og-live-viewer), radio (#radioPill/#radioPanel), cookies, dialogo do
   launcher, login (#mobileAuthGate, #authModal), favoritos, perfil (#nxUserModal, #profileModal), loja,
   assinatura e a doca de flutuantes no celular. Nenhuma familia reestiliza esses widgets.
   O CSS deles chega DEPOIS do tema e mira por id com !important (og-shared-widgets.css, live-chat-unified.css,
   CSS injetado por og-live-v2/radio-pill/mobile-auth-gate/user-profile-modal): cada regra aqui vence por
   especificidade, nunca por ordem. Duas superficies: PAPEL (flutuantes, cookies, launcher, login, favoritos,
   toast) e POSTER ESCURO (chat, card do Live, perfil, loja, assinatura), porque ali vive cosmetico pago
   desenhado para fundo escuro (a bolha chat-effect-gold termina em rgba(9,11,20,.9)).
   INTOCAVEL (mapa B.4): bolha com [class*="chat-effect-"], .vip-message e tudo dentro dela, ::before/::after de
   bolha, avatar e borda de avatar, .chat-msg-name, canvas de efeito e de fundo do chat, banner/fundo/borda de
   perfil (.profcover, .nxu-profile-banner, .nxu-bg, .nxu-border), previa da loja, a cor de --og-accent* (secao 13 so escurece onde ela vira texto),
   video/capas do Live e o iframe do viewer. Nada muda position/z-index de widget, salvo a doca (secao 11). */

/* 0 · TOKENS LOCAIS. Cor sempre literal (#17131f tinta, #221c2c/#2e2639 tinta clara, #f5ebd7/#dccfb2/#b5a68c creme,
   #fffaf0 papel, #3b3348/#5d5470 tinta suave): dentro de ilha escura os --rp-* do nucleo trocam de polaridade. */
html.retro-pop{
  --sw-line:rgba(245,235,215,.18); --sw-sh:4px 5px 0 #17131f; --sw-sh3:7px 8px 0 #17131f;
  --sw-slab:7px 8px 0 #ffd23f,7px 8px 0 3px #17131f; --sw-dock:56px;
}

/* 1 · FLUTUANTES (desktop): adesivos de papel com sombra dura */
html.retro-pop #chatToggleBtn#chatToggleBtn{
  gap:8px!important;min-height:48px!important;padding:0 18px 0 14px!important;
  border:3px solid #17131f!important;border-radius:3px!important;background:var(--rp-yellow)!important;color:#17131f!important;
  box-shadow:var(--sw-sh)!important;backdrop-filter:none!important;
  font:400 15px/1 var(--rp-ff-display)!important;letter-spacing:.03em!important;text-transform:uppercase!important;
  transition:transform .12s ease,box-shadow .12s ease!important}
html.retro-pop #chatToggleBtn#chatToggleBtn:hover{transform:translate(-2px,-3px)!important;border-color:#17131f!important;box-shadow:var(--sw-sh3)!important}
html.retro-pop #chatToggleBtn#chatToggleBtn.nexus-chat-open{background:#17131f!important;color:#f5ebd7!important;border-color:#17131f!important;box-shadow:4px 5px 0 var(--rp-yellow),4px 5px 0 3px #17131f!important}
html.retro-pop :is(#chatToggleBtn .chat-toggle-icon,#liveChat .chat-title-icon,#liveChat .chat-tab .tab-icon,.og-chat-toast-icon){filter:brightness(0)}
html.retro-pop #chatToggleBtn.nexus-chat-open .chat-toggle-icon{filter:brightness(0) invert(1)}
html.retro-pop #chatToggleBtn#chatToggleBtn .chat-badge{min-width:22px!important;height:22px!important;border:2px solid #17131f!important;background:var(--rp-red)!important;color:#17131f!important;box-shadow:none!important;font:800 11px/1 var(--rp-ff-body)!important}

/* radio: os tokens locais da pilula injetada (radio-pill.js) passam a tinta; a da home le --txt/--magenta (ponte) */
html.retro-pop #radioPill,html.retro-pop #radioPanel{--rp-disp:var(--rp-ff-display);--rp-txt:#17131f;--rp-txt2:#3b3348;--rp-txt3:#5d5470;--rp-stroke:#17131f;--rp-magenta:#c80f2e;--rp-violet:#ff2e4d}
html.retro-pop #radioPill{gap:9px;padding:8px 14px 8px 10px;border:3px solid #17131f;border-radius:3px;background:#fffaf0;color:#17131f;box-shadow:var(--sw-sh);-webkit-backdrop-filter:none;backdrop-filter:none;transform:rotate(-1.2deg);transition:transform .12s ease,box-shadow .12s ease}
html.retro-pop #radioPill:hover{border-color:#17131f;transform:rotate(-1.2deg) translate(-2px,-3px);box-shadow:var(--sw-sh3)}
html.retro-pop #radioPill .eq i{background:var(--rp-red);box-shadow:none;border-radius:0}
html.retro-pop #radioPill b{font:400 12px/1 var(--rp-ff-display);letter-spacing:.05em;color:#17131f}
html.retro-pop #radioPill small{font:700 11px/1 var(--rp-ff-mono);letter-spacing:.06em;color:#c80f2e}

/* pilula "N live": lima e a tinta exclusiva do estado ao vivo */
html.retro-pop #ogliveV2-pill{gap:8px;min-height:44px;padding:0 14px 0 12px;border:3px solid #17131f;border-radius:3px;background:var(--rp-lime);color:#17131f;box-shadow:var(--sw-sh);font:800 13px/1 var(--rp-ff-body);letter-spacing:.05em;text-transform:uppercase;transform:rotate(1.2deg)}
html.retro-pop #ogliveV2-pill:hover{transform:rotate(1.2deg) translate(-2px,-3px);box-shadow:var(--sw-sh3)}
html.retro-pop #ogliveV2-pill .dot{width:10px;height:10px;background:#17131f;box-shadow:none}

/* 2 · CHAT: poster escuro com cabeca amarela, abas e campo em faixas de papel */
html.retro-pop #liveChat#liveChat{border:3px solid #17131f!important;border-radius:4px!important;background:#17131f!important;color:#f5ebd7!important;box-shadow:var(--sw-slab)!important;font-family:var(--rp-ff-body)!important}
html.retro-pop #liveChat#liveChat .chat-header{background:var(--rp-yellow)!important;border-bottom:3px solid #17131f!important;color:#17131f!important}
html.retro-pop #liveChat#liveChat .chat-header-glow{display:none!important}
html.retro-pop #liveChat#liveChat .chat-title{font:400 16px/1 var(--rp-ff-display)!important;letter-spacing:.02em!important;color:#17131f!important}
html.retro-pop #liveChat#liveChat .online-badge{border:2px solid #17131f!important;border-radius:3px!important;background:#fffaf0!important;color:#17131f!important;font:800 12px/1 var(--rp-ff-body)!important}
html.retro-pop #liveChat#liveChat .online-dot-anim{background:var(--rp-lime)!important;box-shadow:0 0 0 2px #17131f!important}
html.retro-pop #liveChat#liveChat .chat-btn{border:2px solid #17131f!important;border-radius:3px!important;background:#fffaf0!important;color:#17131f!important;box-shadow:2px 3px 0 #17131f!important}
html.retro-pop #liveChat#liveChat .chat-btn:hover{background:var(--rp-cyan)!important;color:#17131f!important;border-color:#17131f!important}
html.retro-pop #liveChat#liveChat .chat-connection-status{color:#17131f}
html.retro-pop #liveChat#liveChat .chat-connection-status::before{background:var(--rp-orange);box-shadow:0 0 0 2px #17131f}
html.retro-pop #liveChat#liveChat .chat-connection-status[data-state="offline"]::before{background:var(--rp-red)}
/* barra de alertas (chat-notifications.css): tom de tinta, sem azul */
html.retro-pop #liveChat .og-chat-alerts{background:#221c2c;border-bottom:2px solid var(--sw-line);color:#dccfb2}
html.retro-pop #liveChat .og-chat-alert-panel{border:3px solid #f5ebd7;border-radius:3px;background:#17131f;box-shadow:5px 6px 0 #000}
html.retro-pop #liveChat .og-chat-alerts select{background:#221c2c!important}
/* abas: faixa de papel, a ativa e a aba cyan do conceito */
html.retro-pop #liveChat#liveChat .chat-tabs{gap:6px!important;padding:6px 10px!important;background:#f5ebd7!important;border-bottom:3px solid #17131f!important}
html.retro-pop #liveChat#liveChat .chat-tab{border:2px solid transparent!important;border-radius:3px!important;color:#17131f!important;font:800 13px/1 var(--rp-ff-body)!important;letter-spacing:.04em!important;text-transform:uppercase}
html.retro-pop #liveChat#liveChat .chat-tab:hover{background:#fffaf0!important}
html.retro-pop #liveChat#liveChat .chat-tab.active{background:var(--rp-cyan)!important;border-color:#17131f!important;color:#17131f!important;box-shadow:2px 3px 0 #17131f!important}
html.retro-pop #liveChat#liveChat .chat-welcome{color:#b5a68c!important}
/* bolha comum: SO a que nao tem cosmetico (sem chat-effect-*, sem VIP, sem admin) */
html.retro-pop #liveChat#liveChat .chat-message-box:not([class*="chat-effect-"],.vip-message,.admin-message){background:#221c2c!important;border:2px solid var(--sw-line)!important}
html.retro-pop #liveChat#liveChat .chat-message-box.own-message:not([class*="chat-effect-"],.vip-message,.admin-message){background:#2e2639!important;border-color:var(--rp-yellow)!important}
html.retro-pop #liveChat#liveChat .chat-message-box:not([class*="chat-effect-"],.vip-message,.admin-message) .chat-msg-text{color:#f5ebd7!important;font:500 14.5px/1.45 var(--rp-ff-body)!important}
html.retro-pop #liveChat#liveChat .chat-message-box:not([class*="chat-effect-"],.vip-message,.admin-message) :is(.chat-msg-time,.chat-msg-datetime){color:#b5a68c!important;font-family:var(--rp-ff-mono)!important}
html.retro-pop #liveChat#liveChat .chat-message-box:not([class*="chat-effect-"],.vip-message,.admin-message) .chat-reply-quote{border-left:3px solid var(--rp-yellow)!important;background:rgba(245,235,215,.07)!important;color:#dccfb2!important}
/* entrada de login sobre as mensagens (estado de todo visitante) */
html.retro-pop #liveChat#liveChat .chat-login-overlay{background:rgba(23,19,31,.95)!important}
html.retro-pop #liveChat#liveChat .chat-login-overlay h3{font:400 20px/1.1 var(--rp-ff-display)!important;color:#f5ebd7!important;text-transform:uppercase}
html.retro-pop #liveChat#liveChat .chat-login-overlay p{color:#dccfb2!important}
html.retro-pop #liveChat#liveChat .chat-login-btn{border:3px solid #17131f!important;border-radius:3px!important;background:var(--rp-red)!important;color:#17131f!important;box-shadow:4px 5px 0 var(--rp-yellow)!important;font:800 13px/1 var(--rp-ff-body)!important;letter-spacing:.06em!important;text-transform:uppercase}
/* aba Online */
html.retro-pop #liveChat#liveChat .online-list-summary{border:2px solid var(--sw-line)!important;border-radius:3px!important;background:#221c2c!important;color:#dccfb2!important;font:700 11px/1.2 var(--rp-ff-mono)!important}
html.retro-pop #liveChat#liveChat .online-list-summary strong{border:2px solid #17131f!important;border-radius:3px!important;background:var(--rp-lime)!important;color:#17131f!important}
html.retro-pop #liveChat#liveChat .online-user-card{border:2px solid var(--sw-line)!important;border-radius:3px!important;background:#221c2c!important;box-shadow:none!important}
html.retro-pop #liveChat#liveChat .online-user-card::before{background:var(--rp-lime)!important;opacity:1!important;border-radius:0!important}
html.retro-pop #liveChat#liveChat .online-user-card:hover{border-color:var(--rp-yellow)!important;background:#2e2639!important}
html.retro-pop #liveChat#liveChat .online-user-card.is-current-user{border-color:var(--rp-lime)!important;background:#221c2c!important}
html.retro-pop #liveChat#liveChat .online-user-card.is-playing{border-color:rgba(255,93,143,.7)!important;background:#221c2c!important}
html.retro-pop #liveChat#liveChat :is(.online-status,.online-console,.online-arrow){color:#b5a68c!important}
html.retro-pop #liveChat#liveChat .online-status.playing{color:var(--rp-pink)!important}
/* emoji de status vira adesivo de papel: o glifo colorido nao responde a `color` */
html.retro-pop #liveChat#liveChat .online-status .playing-icon{padding:0 3px;border-radius:2px;background:#f5ebd7}
html.retro-pop #liveChat#liveChat .online-self-chip{border:2px solid #17131f!important;border-radius:3px!important;background:var(--rp-lime)!important;color:#17131f!important;font-family:var(--rp-ff-body)!important}
html.retro-pop #liveChat#liveChat .online-dot{border-color:#17131f!important}
/* campo: faixa de papel com caneta de tinta; enviar = CTA vermelho */
html.retro-pop #liveChat#liveChat .chat-input-container{background:#f5ebd7!important;border-top:3px solid #17131f!important}
html.retro-pop #liveChat#liveChat .chat-input{border:2px solid #17131f!important;border-radius:3px!important;background:#fffaf0!important;color:#17131f!important;font:600 15px/1.2 var(--rp-ff-body)!important}
html.retro-pop #liveChat#liveChat .chat-input::placeholder{color:#5d5470;opacity:1}
html.retro-pop #liveChat#liveChat .chat-input:focus{border-color:#17131f!important;box-shadow:3px 4px 0 var(--rp-cyan)!important}
html.retro-pop #liveChat#liveChat .chat-input.chat-input-throttled{border-color:#c80f2e!important;box-shadow:3px 4px 0 var(--rp-red)!important}
html.retro-pop #liveChat#liveChat :is(.emoji-picker-btn,.send-btn,.chat-send-btn){border:2px solid #17131f!important;border-radius:3px!important;box-shadow:2px 3px 0 #17131f!important}
html.retro-pop #liveChat#liveChat .emoji-picker-btn{background:#fffaf0!important;color:#17131f!important}
html.retro-pop #liveChat#liveChat .emoji-picker-btn:hover{background:var(--rp-yellow)!important;border-color:#17131f!important}
html.retro-pop #liveChat#liveChat :is(.send-btn,.chat-send-btn){background:var(--rp-red)!important;color:#17131f!important}
/* emojis: gaveta escura com borda de papel por cima das mensagens */
html.retro-pop #liveChat .emoji-picker-panel{border:3px solid #f5ebd7;border-radius:4px;background:#17131f;box-shadow:5px 6px 0 #000}
html.retro-pop #liveChat :is(.emoji-search,.emoji-cat-btn){border-radius:3px;background:#221c2c}
html.retro-pop #liveChat .emoji-cat-btn.active{border-color:#17131f;background:var(--rp-yellow);color:#17131f}
html.retro-pop #liveChat .emoji-cat-btn.active small,html.retro-pop #liveChat .emoji-picker-kicker b{color:#17131f;background:var(--rp-yellow)}

/* 3 · LIVE: card como poster de tinta com cabeca amarela; tela e capas sem nenhuma regra */
html.retro-pop #ogliveV2-card{border:3px solid #17131f;border-radius:3px;background:#17131f;box-shadow:var(--sw-slab);font-family:var(--rp-ff-body)}
html.retro-pop #ogliveV2 .ogliveV2-top{background:var(--rp-yellow);border-bottom:3px solid #17131f}
html.retro-pop #ogliveV2 .ogliveV2-brand{font:400 13px/1 var(--rp-ff-display);letter-spacing:.04em;color:#17131f}
html.retro-pop #ogliveV2 .ogliveV2-brand b{margin-left:5px;padding:1px 5px;background:var(--rp-lime);color:#17131f}
html.retro-pop #ogliveV2-card .cnt{border-radius:0;background:#17131f;color:#f5ebd7;font:700 11px/1 var(--rp-ff-mono);backdrop-filter:none}
html.retro-pop #ogliveV2-min{border:2px solid #17131f;border-radius:3px;background:#fffaf0;color:#17131f;backdrop-filter:none}
html.retro-pop #ogliveV2-min:hover{background:var(--rp-cyan)}
html.retro-pop #ogliveV2 .ogliveV2-navigation{background:#17131f}
html.retro-pop #ogliveV2 .ogliveV2-badge{gap:6px;border:2px solid #17131f;border-radius:0;background:var(--rp-lime);color:#17131f;font:800 11px/1 var(--rp-ff-body);letter-spacing:.06em;backdrop-filter:none}
html.retro-pop #ogliveV2 .ogliveV2-badge b{background:#17131f;box-shadow:none}
html.retro-pop #ogliveV2 .ogliveV2-arw{border:2px solid #f5ebd7;border-radius:3px;background:#221c2c;color:#f5ebd7;box-shadow:none;backdrop-filter:none}
html.retro-pop #ogliveV2 .ogliveV2-arw:hover{background:var(--rp-cyan);color:#17131f}
html.retro-pop #ogliveV2 .ogliveV2-feat-bar{background:#221c2c;border-top:3px solid #17131f}
html.retro-pop #ogliveV2 .ogliveV2-av{background:var(--rp-yellow);box-shadow:none}
html.retro-pop #ogliveV2 .ogliveV2-av img{border-color:#17131f}
html.retro-pop #ogliveV2 .ogliveV2-fgm{font-family:var(--rp-ff-display);font-weight:400;letter-spacing:.01em;color:#f5ebd7}
html.retro-pop body #ogliveV2 :is(.ogliveV2-fwh,.ogliveV2-console){color:#dccfb2}
html.retro-pop #ogliveV2 .ogliveV2-fbtn{border:2px solid #17131f;border-radius:3px;background:var(--rp-lime);color:#17131f;box-shadow:3px 4px 0 #000;font:800 11px/1.3 var(--rp-ff-body)}
html.retro-pop #ogliveV2 .ogliveV2-strip-wrap{background:#17131f;border-top:2px solid var(--sw-line)}
html.retro-pop #ogliveV2 .ogliveV2-slbl{font:700 10px/1 var(--rp-ff-mono);letter-spacing:.14em;color:#b5a68c}
html.retro-pop #ogliveV2 .ogliveV2-chip-nm{color:#dccfb2}
html.retro-pop #ogliveV2 .ogliveV2-chip.active .ogliveV2-chip-nm{color:var(--rp-lime)}
/* dialogo de assistir: so a moldura e a barra; o iframe fica como esta */
html.retro-pop #og-live-viewer{border:3px solid #17131f;border-radius:3px;box-shadow:var(--sw-slab)}
html.retro-pop #og-live-viewer::backdrop{background:rgba(23,19,31,.8);backdrop-filter:none}
html.retro-pop #og-live-viewer .og-viewer-toolbar{background:var(--rp-yellow);border-bottom:3px solid #17131f;color:#17131f;font:400 14px/1 var(--rp-ff-display);letter-spacing:.04em}
html.retro-pop #og-live-viewer .og-viewer-toolbar strong span{padding:1px 6px;background:var(--rp-lime);color:#17131f}
html.retro-pop #og-live-viewer .og-viewer-toolbar button{border:2px solid #17131f;border-radius:3px;background:#fffaf0;color:#17131f;box-shadow:2px 3px 0 #17131f}
html.retro-pop #og-live-viewer .og-viewer-toolbar button:hover{background:var(--rp-cyan)}

/* 4 · RADIO: painel de papel */
html.retro-pop #radioPanel{border:3px solid #17131f;border-radius:3px;background:#fffaf0;color:#17131f;box-shadow:var(--sw-sh3);font-family:var(--rp-ff-body)}
html.retro-pop #radioPanel .rhead b{font:400 13px/1 var(--rp-ff-display);letter-spacing:.04em;color:#17131f}
html.retro-pop #radioPanel .rhead .livechip{border:2px solid #17131f;border-radius:0;background:var(--rp-lime);color:#17131f;font:800 11px/1.2 var(--rp-ff-body);letter-spacing:.06em}
html.retro-pop #radioPanel .track b{color:#17131f}
html.retro-pop #radioPanel .track span{color:#5d5470}
html.retro-pop #radioPanel .rbtn{border:2px solid #17131f;border-radius:3px;background:#fffaf0;color:#17131f;box-shadow:2px 3px 0 #17131f}
html.retro-pop #radioPanel .rbtn:hover{background:var(--rp-cyan);border-color:#17131f;color:#17131f}
html.retro-pop #radioPanel .rbtn.main{border:3px solid #17131f;background:var(--rp-red);color:#17131f;box-shadow:var(--sw-sh)}
html.retro-pop #radioPanel .rbtn.main:hover{filter:none;color:#17131f}
html.retro-pop #radioPanel .rvol svg{stroke:#17131f}
html.retro-pop #radioPanel input[type=range]{border:2px solid #17131f;border-radius:0;background:linear-gradient(90deg,var(--rp-red) 0,var(--rp-red) var(--p,70%),#e9dcc1 var(--p,70%))}
html.retro-pop #radioPanel .rpct{font:700 12px/1 var(--rp-ff-mono);color:#17131f}

/* 5 · TOAST de mensagem nova */
html.retro-pop .og-chat-toast{border:3px solid #17131f;border-radius:3px;background:#fffaf0;color:#17131f;box-shadow:var(--sw-sh3)}
html.retro-pop .og-chat-toast-copy small{color:#c80f2e!important;font:700 11px/1.5 var(--rp-ff-mono)!important}
html.retro-pop .og-chat-toast-copy strong{color:#17131f;font:400 14px/1.3 var(--rp-ff-display)!important}
html.retro-pop .og-chat-toast-copy>span{color:#3b3348}

/* 6 · COOKIES (cookie-consent.css): faixa de papel e cartao de preferencias. Os botoes recebem a geometria
   de .rp-btn aqui mesmo, porque so a familia console estampa a primitiva neles */
html.retro-pop .cookie-consent-overlay{color:#17131f;background:#fffaf0;border-top:5px solid #17131f;box-shadow:0 -4px 0 rgba(23,19,31,.18);font-family:var(--rp-ff-body)}
html.retro-pop .cookie-consent-text a{color:#c80f2e}
html.retro-pop :is(.cookie-consent-btn,.og-launcher-close,.og-launcher-actions > *){
  display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:44px;
  border:3px solid #17131f;border-radius:var(--rp-r-1);box-shadow:var(--rp-sh-2);filter:none;cursor:pointer;
  font:800 var(--rp-fs-small)/1.15 var(--rp-ff-body);text-transform:uppercase;letter-spacing:var(--rp-tr-sticker);text-decoration:none;
  transition:var(--rp-pop),background-color var(--rp-t-fast) linear}
html.retro-pop :is(.cookie-consent-btn,.og-launcher-close,.og-launcher-actions > *):hover{transform:translate(-2px,-3px);box-shadow:var(--rp-sh-3);filter:none}
html.retro-pop :is(.cookie-consent-btn,.og-launcher-close,.og-launcher-actions > *):active{transform:translate(3px,4px);box-shadow:1px 1px 0 #17131f}
html.retro-pop .cookie-consent-btn{padding:0 18px}
html.retro-pop .cookie-consent-btn,
html.retro-pop .cookie-consent-btn.reject,
html.retro-pop .cookie-consent-btn.settings,
html.retro-pop .cookie-consent-btn.reject:hover,
html.retro-pop .cookie-consent-btn.settings:hover{color:#17131f;background:#fffaf0}
html.retro-pop .cookie-consent-btn.accept,
html.retro-pop .cookie-consent-btn.accept:hover{color:#17131f;background:var(--rp-red)}
html.retro-pop .cookie-settings-modal{background:rgba(23,19,31,.72)}
html.retro-pop .cookie-settings-box{padding:24px;color:#17131f;background:#fffaf0;border:5px solid #17131f;border-radius:0;box-shadow:var(--rp-sh-3);font-family:var(--rp-ff-body)}
html.retro-pop .cookie-settings-box h3{font-family:var(--rp-ff-display);font-weight:400;text-transform:uppercase;letter-spacing:0;color:#17131f}
html.retro-pop .cookie-category{background:#e9dcc1;border:2px solid rgba(23,19,31,.2);border-radius:0}
html.retro-pop .cookie-category p{color:#3b3348}
html.retro-pop .cookie-toggle-slider{background:var(--rp-paper-3);border:2px solid #17131f}
html.retro-pop .cookie-toggle input:checked + .cookie-toggle-slider{background:var(--rp-red)}

/* 7 · DIALOGO DO LAUNCHER (launcher-play.css, carregado por launcher-play-gate.js DEPOIS desta folha em console,
   jogo e home; os dois !important existem porque a folha de origem tambem usa) */
html.retro-pop .og-launcher-dialog{color-scheme:light;color:#17131f;background:#fffaf0;border:5px solid #17131f;border-radius:0;box-shadow:var(--rp-sh-3);font-family:var(--rp-ff-body)}
html.retro-pop .og-launcher-dialog::backdrop{background:rgba(23,19,31,.72);backdrop-filter:none}
html.retro-pop .og-launcher-dialog p,
html.retro-pop .og-launcher-dialog .og-launcher-note,
html.retro-pop .og-launcher-identity small{color:#3b3348}
html.retro-pop .og-launcher-status{color:#3b3348!important}
html.retro-pop .og-launcher-dialog h2,
html.retro-pop .og-launcher-identity h3{font-family:var(--rp-ff-display);font-weight:400;text-transform:uppercase;letter-spacing:0;color:#17131f}
html.retro-pop .og-launcher-close,
html.retro-pop .og-launcher-open{color:#17131f;background:#fffaf0}
html.retro-pop .og-launcher-close{margin-left:auto;padding:0 14px}
html.retro-pop .og-launcher-actions > *{padding:12px 15px}
html.retro-pop .og-launcher-download{color:#17131f!important;background:var(--rp-orange)}
html.retro-pop .og-launcher-identity img{padding:4px;background:#e9dcc1;border:3px solid #17131f;border-radius:0;box-shadow:var(--rp-sh-2)}
html.retro-pop .og-launcher-system{font-family:var(--rp-ff-mono);letter-spacing:.12em}

/* 8 · LOGIN: o portao (mobile-auth-gate.js) e o #authModal da home tem a mesma arvore; vira cartao de papel com
   o painel de marca em poster de tinta */
html.retro-pop :is(#authModal,.og-auth-gate){color:#17131f;font-family:var(--rp-ff-body)}
html.retro-pop .auth-modal .back{background:rgba(23,19,31,.8);-webkit-backdrop-filter:none;backdrop-filter:none}
html.retro-pop :is(#authModal,#mobileAuthGate) .authcard{border:5px solid #17131f;border-radius:0;background:#fffaf0;color:#17131f;box-shadow:10px 12px 0 #17131f}
html.retro-pop .auth-modal :is(.authcard,.auth-visual)::before,
html.retro-pop .auth-modal .authcard::after{content:none}
html.retro-pop .auth-modal .auth-visual{border-right:5px solid #17131f;background:#17131f radial-gradient(circle,rgba(245,235,215,.16) 1.6px,transparent 1.8px) 0 0/12px 12px;color:#f5ebd7}
html.retro-pop .auth-modal .auth-brand b{font:400 15px/1 var(--rp-ff-display);letter-spacing:.04em;color:#f5ebd7}
html.retro-pop .auth-modal .auth-brand span:not(.emblem){font-family:var(--rp-ff-mono);color:var(--rp-yellow)}
html.retro-pop .auth-modal .emblem.xs{border:3px solid #f5ebd7;border-radius:3px;background:var(--rp-yellow);box-shadow:none}
html.retro-pop .auth-modal .emblem.xs::before{font-family:var(--rp-ff-display);color:#17131f;text-shadow:none}
html.retro-pop .auth-modal .auth-core{border:4px solid #f5ebd7;background:var(--rp-yellow);color:#17131f;box-shadow:7px 8px 0 #000;font-family:var(--rp-ff-display)}
html.retro-pop .auth-modal .auth-core span{text-shadow:3px 3px 0 var(--rp-red)}
html.retro-pop .auth-modal .auth-core::before,
html.retro-pop .auth-modal .auth-core::after{border-color:rgba(245,235,215,.3);border-top-color:var(--rp-red)}
html.retro-pop .auth-modal .auth-benefits span{color:#f5ebd7;font-family:var(--rp-ff-body)}
html.retro-pop .auth-modal .auth-benefits span::before{border-radius:0;background:var(--rp-lime);box-shadow:none}
html.retro-pop .auth-modal .auth-main{background:#fffaf0}
html.retro-pop .auth-modal .auth-kicker{font-family:var(--rp-ff-mono);color:#5d5470}
html.retro-pop .auth-modal .authcard h3{font:400 clamp(24px,2.6vw,32px)/1 var(--rp-ff-display);letter-spacing:0;text-transform:uppercase;color:#17131f;background:none;-webkit-text-fill-color:currentColor}
html.retro-pop .auth-modal .authcard h3 em{background:none;-webkit-background-clip:border-box;background-clip:border-box;-webkit-text-fill-color:currentColor;color:#c80f2e}
html.retro-pop :is(#authModal,#mobileAuthGate) .sub2{color:#3b3348}
html.retro-pop .auth-modal .auth-tabs{border:3px solid #17131f;border-radius:3px;background:#e9dcc1}
html.retro-pop .auth-modal .auth-tabs::before{border:2px solid #17131f;border-radius:0;background:var(--rp-cyan);box-shadow:none}
html.retro-pop .auth-modal .auth-tabs button,
html.retro-pop .auth-modal .auth-tabs button.active{color:#17131f;font:800 12px/1 var(--rp-ff-body);letter-spacing:.08em}
html.retro-pop :is(#authModal,#mobileAuthGate) .auth-label{font:800 11px/1 var(--rp-ff-body);letter-spacing:.14em;color:#3b3348}
html.retro-pop .auth-modal .authcard input{border:3px solid #17131f;border-radius:3px;background:#f5ebd7;color:#17131f;font-family:var(--rp-ff-body)}
html.retro-pop .auth-modal .authcard input::placeholder{color:#5d5470;opacity:1}
html.retro-pop .auth-modal .authcard input:is(:hover,:focus){border-color:#17131f;background:#fffaf0}
html.retro-pop .auth-modal .authcard input:focus{box-shadow:4px 5px 0 var(--rp-cyan)}
html.retro-pop .auth-modal .auth-pass-toggle{border:2px solid #17131f;border-radius:3px;background:#fffaf0;color:#17131f;font-family:var(--rp-ff-body);font-weight:800}
html.retro-pop .auth-modal .nxbtn{border:3px solid #17131f;border-radius:3px;background:var(--rp-red);color:#17131f;box-shadow:var(--sw-sh);font:800 14px/1 var(--rp-ff-body);letter-spacing:.06em;text-transform:uppercase}
html.retro-pop .auth-modal .nxbtn:hover{transform:translate(-2px,-3px);filter:none;box-shadow:var(--sw-sh3)}
html.retro-pop .auth-modal .nxbtn.google{background:#fffaf0;color:#17131f;border-color:#17131f}
html.retro-pop .auth-modal .nxor{color:#5d5470}
html.retro-pop .auth-modal .nxor::before,
html.retro-pop .auth-modal .nxor::after{background:rgba(23,19,31,.25)}
html.retro-pop :is(#authModal,#mobileAuthGate) .nxswap{border-top-color:rgba(23,19,31,.2);color:#3b3348}
html.retro-pop :is(#authModal,#mobileAuthGate) :is(.nxforgot,.nxswap) :is(a,button){background:none;border:0;color:#17131f;font-weight:800;text-decoration:underline;text-decoration-color:var(--rp-cyan);text-decoration-thickness:3px;text-underline-offset:3px;cursor:pointer}
html.retro-pop :is(#authModal,#mobileAuthGate) .x{border:3px solid #17131f;border-radius:3px;background:#fffaf0;color:#17131f;box-shadow:2px 3px 0 #17131f;backdrop-filter:none}
html.retro-pop :is(#authModal,#mobileAuthGate) .x:hover{background:var(--rp-red);border-color:#17131f;color:#17131f}
html.retro-pop .auth-modal .nxerr.show{border:2px solid #c80f2e;border-radius:3px;background:#ffe1e6;color:#8a0b20}
html.retro-pop .auth-modal .nxok.show{border:2px solid #17131f;border-radius:3px;background:var(--rp-lime-soft);color:#17131f}
html.retro-pop .og-auth-gate .og-auth-status{color:#17131f}

/* 9 · FAVORITOS (favorites-view.css, sempre por id e com !important): cartao de PAPEL sobre a mesa escura, cabeca
   amarela pontilhada e laje cyan. As capas vem do controlador; aqui so papel, tinta, selos e numeros em mono. */
html.retro-pop #favoritesModal.og-favorites-managed{background:rgba(23,19,31,.72)!important;backdrop-filter:none}
html.retro-pop #favoritesModal.og-favorites-managed :is(.favcard,.favorites-container){border:5px solid #17131f!important;border-radius:0!important;background:#fffaf0!important;color:#17131f!important;box-shadow:10px 12px 0 var(--rp-cyan),10px 12px 0 3px #17131f!important}
html.retro-pop #favoritesModal .og-favorites-view{color:#17131f!important;font-family:var(--rp-ff-body)!important}
html.retro-pop #favoritesModal .og-fav-head{background:var(--rp-yellow) radial-gradient(circle,rgba(23,19,31,.12) 1.2px,transparent 1.4px) 0 0/8px 8px;border-bottom:3px solid #17131f}
html.retro-pop #favoritesModal .og-fav-head h2{font:400 26px/1.1 var(--rp-ff-display)!important;letter-spacing:0!important;text-transform:uppercase;color:#17131f!important}
html.retro-pop #favoritesModal .og-fav-head p{color:#3b3348!important;font-family:var(--rp-ff-mono)!important;font-weight:700}
html.retro-pop #favoritesModal .og-favorites-view :is(button,a,input,select){border-radius:3px!important}
html.retro-pop #favoritesModal .og-favorites-view :is(button,a,input,select):focus-visible{outline:3px solid #0076a8!important;outline-offset:2px!important}
html.retro-pop #favoritesModal .og-favorites-view button{border:2px solid #17131f;background:#fffaf0;color:#17131f;font-weight:800}
html.retro-pop #favoritesModal .og-favorites-view button:hover{background:var(--rp-cyan);border-color:#17131f}
html.retro-pop #favoritesModal .og-fav-head>button{min-width:44px;min-height:44px;border:2px solid #17131f!important;background:#fffaf0!important;color:#17131f!important}
html.retro-pop #favoritesModal .og-fav-head>button:hover{background:var(--rp-red)!important;color:#17131f!important}
html.retro-pop #favoritesModal .og-fav-label{font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#3b3348}
html.retro-pop #favoritesModal .og-fav-toolbar :is(input,select){border:2px solid #17131f!important;background:#f5ebd7!important;color:#17131f!important}
html.retro-pop #favoritesModal .og-fav-toolbar input::placeholder{color:#5d5470}
html.retro-pop #favoritesModal .og-fav-layout button[aria-pressed=true]{background:var(--rp-cyan);border-color:#17131f;color:#17131f}
html.retro-pop #favoritesModal .og-fav-status{color:#5d5470!important;font-family:var(--rp-ff-mono)!important;font-weight:700}
html.retro-pop #favoritesModal .og-fav-game{border:3px solid #17131f;border-radius:0;background:#fffaf0;box-shadow:3px 4px 0 #17131f;transition:transform .12s ease,box-shadow .12s ease}
html.retro-pop #favoritesModal .og-fav-game:hover{border-color:#17131f;transform:translate(-2px,-3px);box-shadow:5px 7px 0 #17131f}
html.retro-pop #favoritesModal .og-fav-cover{background:#17131f;border-bottom:3px solid #17131f}
html.retro-pop #favoritesModal .og-fav-cover-fallback{background:#17131f radial-gradient(circle,rgba(245,235,215,.18) 1.4px,transparent 1.6px) 0 0/10px 10px;color:#dccfb2}
html.retro-pop #favoritesModal .og-fav-cover-fallback span{color:var(--rp-yellow)}
html.retro-pop #favoritesModal .og-fav-console{border:2px solid #17131f;border-radius:0;background:var(--rp-cyan);color:#17131f;font-size:10px;font-weight:800}
html.retro-pop #favoritesModal :is(.og-fav-platform,.og-fav-date){color:#3b3348}
html.retro-pop #favoritesModal .og-fav-date{font-family:var(--rp-ff-mono);font-weight:700}
html.retro-pop #favoritesModal .og-fav-copy h3{display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important;font:400 13px/1.35 var(--rp-ff-display)!important;text-transform:uppercase!important;color:#17131f!important}
html.retro-pop #favoritesModal .og-fav-actions .og-fav-play{border:2px solid #17131f!important;background:var(--rp-red)!important;color:#17131f!important;font-weight:800!important}
html.retro-pop #favoritesModal .og-fav-remove{background:var(--rp-pink)!important;color:#17131f!important}
html.retro-pop #favoritesModal .og-fav-footer{border-radius:0!important;background:#e9dcc1!important;border-top:3px solid #17131f!important}
html.retro-pop #favoritesModal .og-fav-footer a{color:#17131f;font-weight:800;text-decoration:underline;text-decoration-color:var(--rp-cyan);text-decoration-thickness:3px;text-underline-offset:3px}
/* estado vazio: adesivo de estrela torto, titulo de capa e o botao de limpar filtro em vermelho */
html.retro-pop #favoritesModal .og-fav-empty{padding:34px 16px;color:#3b3348}
html.retro-pop #favoritesModal .og-fav-empty>span{display:inline-grid;place-items:center;width:64px;height:64px;margin-bottom:12px;border:3px solid #17131f;background:var(--rp-yellow);color:#17131f;box-shadow:4px 5px 0 #17131f;font-size:34px;line-height:1;transform:rotate(-6deg)}
html.retro-pop #favoritesModal .og-fav-empty h3{margin:4px 0 6px!important;font:400 19px/1.2 var(--rp-ff-display)!important;letter-spacing:0;text-transform:uppercase;color:#17131f!important}
html.retro-pop #favoritesModal .og-fav-empty p{color:#3b3348!important;font-size:14px!important}
html.retro-pop #favoritesModal .og-fav-empty button{margin-top:12px;padding:0 16px;background:var(--rp-red)}
@media (max-width:600px){
  html.retro-pop #favoritesModal.og-favorites-managed :is(.favcard,.favorites-container){box-shadow:6px 7px 0 var(--rp-cyan),6px 7px 0 3px #17131f!important}
}

/* 10 · ILHAS ESCURAS: perfil publico, meu perfil, loja e assinatura. Sao POSTER de tinta porque ali mora cosmetico pago
   desenhado para fundo escuro. A ponte poe --txt em tinta, e esses cartoes pintam fundo escuro literal: dentro deles
   os tokens da pagina voltam a ser claros (o que a ponte faz para .rp-dark). Gramatica do tema: filete creme 3px,
   raio 3px, sombra dura, titulos em Archivo Black, etiquetas em selo, numeros em Space Mono.
   INTOCAVEL: a cena atras do cartao guarda banner (#nxuProfileBanner, .og-own-banner), fundo (#nxuBg,
   .og-own-background), particulas e o anel de borda (.og-cosmetic-ring); a bolha com chat-effect-* e o nome dentro
   dela; o selo .og-vip-badge; a previa ao vivo da loja e a tela de cada item. Nenhuma regra mira esses elementos;
   o raio da cena acompanha o da moldura (3px). Fontes externas mirando com !important e id: o id DOBRADO
   (#nxUserModal#nxUserModal) vence profile-experience.css sem depender de ordem de carga. */
html.retro-pop :is(#profileModal,#storeModal,#subscriptionModal,#nxUserModal){
  --void:#17131f; --deep:#221c2c; --glass:rgba(34,28,44,.92); --glass-2:rgba(46,38,57,.9);
  --stroke:rgba(245,235,215,.16); --stroke-2:rgba(245,235,215,.34); --txt:#f5ebd7; --txt-2:#dccfb2; --txt-3:#b5a68c;
  --white:#f5ebd7; --text:#f5ebd7; --muted:#b5a68c; --dim:#b5a68c; --ink:#f5ebd7;
  --nx-void:#17131f; --nx-glass:#221c2c; --nx-glass2:#2e2639; --nx-txt:#f5ebd7; --nx-txt2:#dccfb2; --nx-txt3:#b5a68c;
  --nx-stroke:rgba(245,235,215,.16); --nx-stroke-soft:rgba(245,235,215,.1); --nx-stroke2:rgba(245,235,215,.34);
  --sw-dots:radial-gradient(circle,rgba(245,235,215,.07) 1.2px,transparent 1.4px) 0 0/10px 10px;
  --sw-panel:rgba(23,19,31,.9); --sw-panel-line:2px solid rgba(245,235,215,.22); --sw-drop:4px 5px 0 rgba(0,0,0,.5);
  color:#f5ebd7; color-scheme:dark}

/* 10.1 · PERFIL PUBLICO (#nxUserModal, user-profile-modal.js + profile-experience.css) */
html.retro-pop #nxUserModal#nxUserModal{background:var(--sw-dots),rgba(23,19,31,.84);backdrop-filter:none}
html.retro-pop #nxUserModal#nxUserModal .nxu-card{border:3px solid #f5ebd7!important;border-radius:3px!important;box-shadow:9px 10px 0 var(--rp-yellow),9px 10px 0 3px #17131f!important;font-family:var(--rp-ff-body)!important}
html.retro-pop #nxUserModal#nxUserModal:not(.og-profile-managed) .nxu-card{background:#17131f!important}
html.retro-pop #nxUserModal#nxUserModal>.og-profile-scene{border-radius:3px;background:var(--sw-dots),#17131f}
html.retro-pop #nxUserModal#nxUserModal .nxu-modal-eyebrow{gap:0;padding:5px 9px;border:2px solid #17131f;background:var(--rp-red);color:#17131f!important;box-shadow:3px 3px 0 #000;font:400 11px/1 var(--rp-ff-sticker)!important;letter-spacing:.06em!important;text-shadow:none!important;transform:rotate(-2deg)}
html.retro-pop #nxUserModal#nxUserModal .nxu-modal-eyebrow:before{content:none}
html.retro-pop #nxUserModal#nxUserModal .nxu-x{width:44px;height:44px;border:3px solid #17131f!important;border-radius:3px!important;background:#fffaf0;color:#17131f;box-shadow:3px 4px 0 #000;font-size:18px;backdrop-filter:none}
html.retro-pop #nxUserModal#nxUserModal .nxu-x:hover{background:var(--rp-red);color:#17131f;transform:translate(-1px,-2px)}
html.retro-pop #nxUserModal#nxUserModal .nxu-x:focus-visible{outline:3px solid var(--rp-yellow);outline-offset:3px}
html.retro-pop #nxUserModal#nxUserModal .nxu-name{font-family:var(--rp-ff-display)!important;font-weight:400!important;letter-spacing:.01em!important;text-transform:uppercase;color:#f5ebd7!important;text-shadow:3px 3px 0 #17131f!important}
html.retro-pop #nxUserModal#nxUserModal .nxu-badge.adm{border:2px solid #17131f;border-radius:0;background:var(--rp-yellow);color:#17131f;font:400 11px/1 var(--rp-ff-sticker);letter-spacing:.06em;text-shadow:none}
html.retro-pop #nxUserModal#nxUserModal :is(.nxu-status,.nxu-member){border:2px solid rgba(245,235,215,.3)!important;border-radius:3px!important;background:#221c2c!important;box-shadow:3px 4px 0 rgba(0,0,0,.45);color:#dccfb2!important;font:700 12px/1.4 var(--rp-ff-mono)!important;letter-spacing:.04em!important;text-shadow:none!important}
html.retro-pop #nxUserModal#nxUserModal .nxu-status{text-transform:uppercase!important}
html.retro-pop #nxUserModal#nxUserModal .nxu-dot{border:2px solid #17131f;box-shadow:none}
/* paineis: tinta solida sobre a cena, filete creme e sombra dura; as etiquetas viram selos tortos */
html.retro-pop #nxUserModal#nxUserModal :is(.nxu-sec,.nxu-stat,.nxu-progress,.nxu-rank){border:var(--sw-panel-line)!important;border-radius:3px!important;background:var(--sw-panel)!important;box-shadow:var(--sw-drop)!important}
html.retro-pop #nxUserModal#nxUserModal :is(.nxu-rank,.nxu-progress-head,.nxu-stat-label){color:#dccfb2!important;font-family:var(--rp-ff-body)!important;font-weight:800!important}
html.retro-pop #nxUserModal#nxUserModal :is(.nxu-stat b,.nxu-xptxt){font-family:var(--rp-ff-mono)!important;font-weight:700!important}
html.retro-pop #nxUserModal#nxUserModal .nxu-xpbar{height:12px;border:2px solid #f5ebd7;border-radius:0;background:#2e2639}
html.retro-pop #nxUserModal#nxUserModal .nxu-xpbar i{border-radius:0;box-shadow:none}
html.retro-pop #nxUserModal#nxUserModal .nxu-sec h4{display:inline-flex;align-items:center;gap:6px;width:max-content;max-width:100%;margin:0 0 14px!important;padding:5px 9px;border:2px solid #17131f;background:var(--rp-yellow);color:#17131f!important;box-shadow:2px 3px 0 #000;font:400 12px/1.15 var(--rp-ff-display)!important;letter-spacing:.02em!important;text-transform:uppercase;transform:rotate(-1deg)}
html.retro-pop #nxUserModal#nxUserModal #nxuDetailsTitle{background:var(--rp-cyan)}
html.retro-pop #nxUserModal#nxUserModal .nxu-sec-recent h4{background:var(--rp-lime)}
html.retro-pop #nxUserModal#nxUserModal .nxu-sec-history h4{background:var(--rp-red);transform:rotate(1deg)}
html.retro-pop #nxUserModal#nxUserModal .nxu-details{font:600 15px/1.45 var(--rp-ff-body)!important}
html.retro-pop #nxUserModal#nxUserModal .nxu-details dt{color:#b5a68c!important;font:700 11px/1.7 var(--rp-ff-mono);letter-spacing:.1em;text-transform:uppercase}
html.retro-pop #nxUserModal#nxUserModal .nxu-details dd{color:#f5ebd7!important;font-weight:800}
html.retro-pop #nxUserModal#nxUserModal .nxu-tag{min-height:32px;padding:4px 10px;border:2px solid #17131f!important;border-radius:0!important;background:var(--rp-cyan)!important;box-shadow:2px 3px 0 #000;color:#17131f!important;font:800 12px/1.2 var(--rp-ff-body)!important;letter-spacing:.04em!important;text-transform:uppercase}
/* "Sobre": so a bolha SEM efeito de chat ganha papel; com chat-effect-* ela e do comprador */
html.retro-pop #nxUserModal#nxUserModal #nxuFxPrev:not([class*="chat-effect-"]){border:var(--sw-panel-line)!important;border-radius:3px!important;background:#2e2639!important}
html.retro-pop #nxUserModal#nxUserModal #nxuFxPrev:not([class*="chat-effect-"]) #nxuBio{font-family:var(--rp-ff-body)}
html.retro-pop #nxUserModal#nxUserModal #nxuRetry{border:3px solid #17131f!important;border-radius:3px!important;background:#fffaf0!important;color:#17131f!important;box-shadow:3px 4px 0 #000;font:800 13px/1 var(--rp-ff-body);letter-spacing:.06em;text-transform:uppercase}
/* atividade ao vivo (matchmaking /livenow) */
html.retro-pop #nxUserModal#nxUserModal .nxu-empty{color:#dccfb2!important;font:600 14px/1.5 var(--rp-ff-body)!important}
html.retro-pop #nxUserModal#nxUserModal .nxu-game{border:var(--sw-panel-line)!important;border-radius:3px!important;background:#2e2639!important}
html.retro-pop #nxUserModal#nxUserModal .nxu-sec-recent.is-playing .nxu-game{border-color:var(--rp-lime)!important;box-shadow:4px 5px 0 var(--rp-lime)}
html.retro-pop #nxUserModal#nxUserModal .nxu-game img{border:2px solid #f5ebd7;border-radius:0!important}
html.retro-pop #nxUserModal#nxUserModal .nxu-game-fallback{border:2px solid #f5ebd7;border-radius:0;background:#17131f radial-gradient(circle,rgba(245,235,215,.16) 1.2px,transparent 1.4px) 0 0/8px 8px}
html.retro-pop #nxUserModal#nxUserModal .nxu-game b{font:400 15px/1.25 var(--rp-ff-display)!important;letter-spacing:.01em;text-transform:uppercase;color:#f5ebd7!important}
html.retro-pop #nxUserModal#nxUserModal .nxu-game span{font:700 12px/1.6 var(--rp-ff-mono)!important;color:#dccfb2!important}
html.retro-pop #nxUserModal#nxUserModal .nxu-game-live{display:block;width:max-content;margin-bottom:6px;padding:3px 7px;border:2px solid #17131f;background:var(--rp-lime);color:#17131f!important;font:800 11px/1.2 var(--rp-ff-body)!important;letter-spacing:.08em!important}
/* jogados recentemente (users/{uid}/gameHistory): placar em papel, capas emolduradas, console em selo */
html.retro-pop #nxUserModal#nxUserModal .nxu-history-sum{align-items:center;gap:10px;margin:0 0 14px}
html.retro-pop #nxUserModal#nxUserModal .nxu-hstat{display:inline-flex;align-items:baseline;gap:6px;padding:6px 10px;border:2px solid #17131f;background:#f5ebd7;color:#17131f;box-shadow:3px 4px 0 #000;font:800 11px/1 var(--rp-ff-body);letter-spacing:.08em;text-transform:uppercase}
html.retro-pop #nxUserModal#nxUserModal .nxu-hstat b{font:700 20px/1 var(--rp-ff-mono);letter-spacing:-.02em;text-transform:none}
html.retro-pop #nxUserModal#nxUserModal .nxu-htop{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;color:#dccfb2;font:700 11px/1.4 var(--rp-ff-mono);letter-spacing:.1em;text-transform:uppercase}
html.retro-pop #nxUserModal#nxUserModal .nxu-htop em{padding:2px 6px;border:2px solid #17131f;background:var(--rp-cyan);color:#17131f;font:800 11px/1.2 var(--rp-ff-body);font-style:normal;letter-spacing:.04em}
html.retro-pop #nxUserModal#nxUserModal .nxu-history{gap:10px}
html.retro-pop #nxUserModal#nxUserModal .nxu-hgame{gap:12px;padding:9px;border:var(--sw-panel-line);border-radius:3px;background:#2e2639;color:#f5ebd7;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}
html.retro-pop #nxUserModal#nxUserModal a.nxu-hgame:hover{border-color:var(--rp-yellow);transform:translate(-2px,-3px);box-shadow:4px 5px 0 var(--rp-yellow)}
html.retro-pop #nxUserModal#nxUserModal a.nxu-hgame:focus-visible{outline:3px solid var(--rp-yellow);outline-offset:2px}
html.retro-pop #nxUserModal#nxUserModal .nxu-hcover{width:52px;height:66px;border:2px solid #f5ebd7;border-radius:0;background:#17131f radial-gradient(circle,rgba(245,235,215,.16) 1.2px,transparent 1.4px) 0 0/8px 8px;color:#dccfb2;font:700 10px/1.1 var(--rp-ff-mono);text-align:center}
html.retro-pop #nxUserModal#nxUserModal .nxu-hgame b{font:400 14px/1.25 var(--rp-ff-display);letter-spacing:.01em;text-transform:uppercase;color:#f5ebd7}
html.retro-pop #nxUserModal#nxUserModal .nxu-hmeta{align-items:center;gap:5px 10px;margin-top:6px;color:#dccfb2;font:700 12px/1.3 var(--rp-ff-mono)}
html.retro-pop #nxUserModal#nxUserModal .nxu-hsys{padding:1px 5px;border:2px solid #17131f;background:var(--rp-cyan);color:#17131f;font:800 10px/1.3 var(--rp-ff-body);letter-spacing:.06em;text-transform:uppercase}
html.retro-pop #nxUserModal#nxUserModal .nxu-htime{color:var(--rp-yellow)}
/* sem historico: cartucho de papel + o motivo (logar, nada gravado, servico fora) */
html.retro-pop #nxUserModal#nxUserModal .nxu-history-empty{grid-column:1/-1;display:flex;align-items:center;gap:14px;margin:0;padding:14px 16px;border:2px dashed rgba(245,235,215,.4);background:rgba(245,235,215,.04)}
html.retro-pop #nxUserModal#nxUserModal .nxu-history-empty:before{content:"";flex:none;width:34px;height:40px;border:3px solid #17131f;border-radius:3px 3px 0 0;background:linear-gradient(#17131f,#17131f) 50% 7px/16px 5px no-repeat,var(--rp-yellow);box-shadow:3px 4px 0 #000;transform:rotate(-6deg)}
html.retro-pop #nxUserModal#nxUserModal .nxu-history-empty[data-state="signin"]:before{background-color:var(--rp-cyan)}
html.retro-pop #nxUserModal#nxUserModal .nxu-history-empty[data-state="missing"]:before{background-color:var(--rp-pink)}
@media (max-width:560px){
  html.retro-pop #nxUserModal#nxUserModal .nxu-card{box-shadow:5px 6px 0 var(--rp-yellow),5px 6px 0 3px #17131f!important}
  html.retro-pop #nxUserModal#nxUserModal .nxu-modal-eyebrow{font-size:10px!important}
  html.retro-pop #nxUserModal#nxUserModal .nxu-hstat b{font-size:17px}
}

/* 10.2 · MEU PERFIL (#profileModal: CSS embutido no index.html + profile-experience.css) */
html.retro-pop #profileModal#profileModal .back{background:var(--sw-dots),rgba(23,19,31,.84);backdrop-filter:none}
html.retro-pop #profileModal#profileModal .profcard{border:3px solid #f5ebd7!important;border-radius:3px!important;box-shadow:9px 10px 0 var(--rp-yellow),9px 10px 0 3px #17131f!important;color:#f5ebd7;font-family:var(--rp-ff-body)}
html.retro-pop #profileModal#profileModal:not(.og-profile-managed) .profcard{background:#17131f}
html.retro-pop #profileModal#profileModal>.og-profile-scene{border-radius:3px;background:var(--sw-dots),#17131f}
html.retro-pop #profileModal#profileModal .profcard>.x{width:44px;height:44px;border:3px solid #17131f;border-radius:3px;background:#fffaf0;color:#17131f;box-shadow:3px 4px 0 #000;font-size:16px;backdrop-filter:none;z-index:6}
html.retro-pop #profileModal#profileModal .profcard>.x:hover{background:var(--rp-red);color:#17131f}
html.retro-pop #profileModal#profileModal .pname{font:400 clamp(22px,3vw,28px)/1.1 var(--rp-ff-display);letter-spacing:.01em;text-transform:uppercase;color:#f5ebd7;text-shadow:3px 3px 0 #17131f}
html.retro-pop #profileModal#profileModal .profplan{padding:4px 8px;border:2px solid #17131f;border-radius:0;background:#f5ebd7;color:#17131f;box-shadow:2px 3px 0 #000;font:400 11px/1 var(--rp-ff-sticker);letter-spacing:.06em}
html.retro-pop #profileModal#profileModal .profplan:is(.premium,.standard){background:var(--rp-yellow)}
html.retro-pop #profileModal#profileModal .pemail{color:#dccfb2;font:700 12px/1.4 var(--rp-ff-mono)}
html.retro-pop #profileModal#profileModal .pmember{padding:4px 9px;border:2px solid rgba(245,235,215,.3);border-radius:3px;background:#221c2c;color:#dccfb2;font:700 12px/1.4 var(--rp-ff-mono)}
html.retro-pop #profileModal#profileModal .profava-edit{border:2px solid #17131f;border-radius:3px;background:var(--rp-cyan);color:#17131f;box-shadow:2px 3px 0 #000}
html.retro-pop #profileModal#profileModal :is(.profform,.profstats .ps,.og-profile-customization,.settings-status,.nxst){border:var(--sw-panel-line)!important;border-radius:3px!important;background:var(--sw-panel)!important;box-shadow:var(--sw-drop)!important}
html.retro-pop #profileModal#profileModal :is(.profstats .ps b,.nxst b){font:700 22px/1.15 var(--rp-ff-mono)!important;color:var(--rp-yellow)}
html.retro-pop #profileModal#profileModal :is(.profstats .ps>span:last-child,.nxst span){color:#dccfb2!important;font:800 11px/1.3 var(--rp-ff-body)!important;letter-spacing:.08em!important;text-transform:uppercase}
/* abas: faixa de papel com a aba ativa em cyan, como as abas do chat */
html.retro-pop #profileModal#profileModal .proftabs{gap:6px;padding:6px;border:3px solid #17131f;border-radius:3px;background:#f5ebd7;box-shadow:4px 5px 0 #000}
html.retro-pop #profileModal#profileModal .proftab{min-height:42px;border:2px solid transparent;border-radius:3px;background:none;color:#17131f;box-shadow:none;font:800 12px/1.1 var(--rp-ff-body);letter-spacing:.06em;text-transform:uppercase}
html.retro-pop #profileModal#profileModal .proftab:hover{background:#fffaf0;color:#17131f}
html.retro-pop #profileModal#profileModal .proftab.on{border-color:#17131f;background:var(--rp-cyan);color:#17131f;box-shadow:2px 3px 0 #17131f}
/* formulario: campos de papel com caneta de tinta, rotulos em mono */
html.retro-pop #profileModal#profileModal .profform label{margin-top:8px;color:#dccfb2;font:700 11px/1.3 var(--rp-ff-mono);letter-spacing:.12em;text-transform:uppercase}
html.retro-pop #profileModal#profileModal .profform :is(input,textarea,select){color-scheme:light;border:3px solid #17131f;border-radius:3px;background:#f5ebd7;color:#17131f;box-shadow:none;font:600 15px/1.35 var(--rp-ff-body)}
html.retro-pop #profileModal#profileModal .profform :is(input,textarea)::placeholder{color:#5d5470;opacity:1}
html.retro-pop #profileModal#profileModal .profform :is(input,textarea,select):focus{border-color:#17131f;background:#fffaf0;box-shadow:4px 5px 0 var(--rp-cyan)}
html.retro-pop #profileModal#profileModal .profform select option{background:#fffaf0;color:#17131f}
html.retro-pop #profileModal#profileModal .profavas button.profava-gallery-btn{border:var(--sw-panel-line);border-radius:3px;background:#2e2639;color:#f5ebd7;box-shadow:3px 4px 0 #000}
html.retro-pop #profileModal#profileModal .profavas button.profava-gallery-btn:hover{border-color:var(--rp-yellow);background:#2e2639;transform:translate(-1px,-2px)}
html.retro-pop #profileModal#profileModal .profava-gallery-btn .agb-txt b{font:400 13px/1.2 var(--rp-ff-display);letter-spacing:.02em;text-transform:uppercase;color:#f5ebd7}
html.retro-pop #profileModal#profileModal .profava-gallery-btn .agb-txt small{color:#dccfb2;font-family:var(--rp-ff-body)}
html.retro-pop #profileModal#profileModal .profava-gallery-btn .agb-go{color:var(--rp-yellow)}
html.retro-pop #profileModal#profileModal .og-open-customization{min-height:44px;padding:10px 16px;border:3px solid #17131f;border-radius:3px;background:var(--rp-yellow);color:#17131f;box-shadow:4px 5px 0 #000;font:800 13px/1 var(--rp-ff-body);letter-spacing:.06em;text-transform:uppercase}
html.retro-pop #profileModal#profileModal .og-open-customization:hover{transform:translate(-2px,-3px);box-shadow:6px 8px 0 #000}
html.retro-pop #profileModal#profileModal .og-profile-customization p{color:#dccfb2}
html.retro-pop #profileModal#profileModal .og-profile-customization dt{color:#b5a68c;font:700 11px/1.7 var(--rp-ff-mono);letter-spacing:.1em;text-transform:uppercase}
html.retro-pop #profileModal#profileModal .og-profile-customization dd{color:#f5ebd7;font-weight:800}
/* botoes: salvar = CTA vermelho com laje amarela; favoritos = papel; sair = contorno vermelho */
html.retro-pop #profileModal#profileModal .nxbtn{min-height:48px;border:3px solid #17131f;border-radius:3px;filter:none;font:800 14px/1 var(--rp-ff-body);letter-spacing:.06em;text-transform:uppercase;transition:transform .12s ease,box-shadow .12s ease}
html.retro-pop #profileModal#profileModal .nxbtn:hover{transform:translate(-2px,-3px);filter:none}
html.retro-pop #profileModal#profileModal #nxSaveProfile{background:var(--rp-red);color:#17131f;box-shadow:4px 5px 0 var(--rp-yellow)}
html.retro-pop #profileModal#profileModal .profacts .nxbtn.ghost{border-color:#17131f;background:#fffaf0;color:#17131f;box-shadow:4px 5px 0 #000}
html.retro-pop #profileModal#profileModal .profacts .nxbtn.exit{border-color:var(--rp-red);background:#221c2c;color:#ff8fa3;box-shadow:4px 5px 0 #000}
html.retro-pop #profileModal#profileModal .nxerr.show{border:2px solid var(--rp-red);border-radius:3px;background:#3a1420;color:#ffd0d8}
html.retro-pop #profileModal#profileModal .nxok.show{border:2px solid var(--rp-lime);border-radius:3px;background:#24301a;color:#eaf6c6}
/* aba Status: os jogos jogados e o uso por console (users/{uid}/gameHistory do proprio usuario) */
html.retro-pop #profileModal#profileModal .nxstats4{margin-top:14px}
html.retro-pop #profileModal#profileModal #profTabStats>label{display:inline-block;margin:20px 0 10px!important;padding:5px 9px;border:2px solid #17131f;background:var(--rp-yellow);color:#17131f;box-shadow:2px 3px 0 #000;font:400 12px/1.15 var(--rp-ff-display);text-transform:uppercase;transform:rotate(-1deg)}
html.retro-pop #profileModal#profileModal #profTabStats>label:last-of-type{background:var(--rp-cyan)}
html.retro-pop #profileModal#profileModal :is(.nxrecent,.nxconsoles){max-height:none;overflow:visible;gap:8px}
html.retro-pop #profileModal#profileModal .nxrg{padding:10px 12px;border:var(--sw-panel-line);border-radius:3px;background:#2e2639}
html.retro-pop #profileModal#profileModal .nxrg b{overflow:visible;white-space:normal;color:#f5ebd7;font:400 13px/1.25 var(--rp-ff-display);text-transform:uppercase}
html.retro-pop #profileModal#profileModal .nxrg span{color:#dccfb2;font:700 12px/1.3 var(--rp-ff-mono)}
html.retro-pop #profileModal#profileModal .nxcu i{color:#f5ebd7;font:700 12px/1.2 var(--rp-ff-mono)}
html.retro-pop #profileModal#profileModal .nxcu .bar{height:14px;border:2px solid #f5ebd7;border-radius:0;background:#2e2639}
html.retro-pop #profileModal#profileModal .nxcu .bar b{border-radius:0;background:var(--rp-yellow)}
html.retro-pop #profileModal#profileModal .nxcu small{color:#dccfb2;font:700 12px/1 var(--rp-ff-mono)}
html.retro-pop #profileModal#profileModal .nxempty{color:#dccfb2}
/* aba Configuracoes */
html.retro-pop #profileModal#profileModal .settings-panel{padding:0;border:0;border-radius:0;background:none}
html.retro-pop #profileModal#profileModal .settings-status{padding:14px 16px}
html.retro-pop #profileModal#profileModal .settings-status b{color:#f5ebd7;font:400 16px/1.2 var(--rp-ff-display);letter-spacing:.02em;text-transform:uppercase}
html.retro-pop #profileModal#profileModal .settings-status small{color:#dccfb2;font-family:var(--rp-ff-body)}
html.retro-pop #profileModal#profileModal #settingsEmail{font-family:var(--rp-ff-mono);font-weight:700}
html.retro-pop #profileModal#profileModal .settings-plan-chip{justify-self:start;border:2px solid #17131f;border-radius:0;background:var(--rp-yellow);color:#17131f;box-shadow:2px 3px 0 #000;font:400 11px/1 var(--rp-ff-sticker);letter-spacing:.06em}
html.retro-pop #profileModal#profileModal .settings-action{border:var(--sw-panel-line);border-radius:3px;background:#221c2c;color:#f5ebd7;box-shadow:var(--sw-drop);transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}
html.retro-pop #profileModal#profileModal .settings-action:hover{border-color:var(--rp-yellow);background:#221c2c;transform:translate(-2px,-3px);box-shadow:5px 7px 0 var(--rp-yellow)}
html.retro-pop #profileModal#profileModal .settings-action i{border:2px solid #17131f;border-radius:3px;background:var(--rp-yellow);color:#17131f;font-style:normal}
html.retro-pop #profileModal#profileModal .settings-action b{color:#f5ebd7;font:400 13px/1.2 var(--rp-ff-display);letter-spacing:.01em}
html.retro-pop #profileModal#profileModal .settings-action span>span{color:#dccfb2;font-size:13px}
html.retro-pop #profileModal#profileModal .settings-action.danger{border-color:rgba(255,46,77,.6)}
html.retro-pop #profileModal#profileModal .settings-action.danger i{background:var(--rp-red)}
html.retro-pop #profileModal#profileModal .settings-action.danger:hover{border-color:var(--rp-red);box-shadow:5px 7px 0 var(--rp-red)}
@media (max-width:640px){
  html.retro-pop #profileModal#profileModal .profcard{box-shadow:5px 6px 0 var(--rp-yellow),5px 6px 0 3px #17131f!important}
  html.retro-pop #profileModal#profileModal .proftab{padding:0 4px;font-size:11px;letter-spacing:.02em}
}

/* 10.3 · ASSINATURA */
html.retro-pop body #subscriptionModal{background:rgba(23,19,31,.88);backdrop-filter:none}
html.retro-pop #subscriptionModal .subscription-container{border:3px solid #f5ebd7;border-radius:4px;box-shadow:9px 10px 0 var(--rp-yellow),9px 10px 0 3px #17131f}
html.retro-pop #subscriptionModal :is(.subscription-title,.plan-name,.plan-price){font-family:var(--rp-ff-display);font-weight:400;letter-spacing:0}
html.retro-pop #subscriptionModal .plan-card{border:3px solid rgba(245,235,215,.3);border-radius:3px}
html.retro-pop #subscriptionModal .plan-card.standard{border-color:var(--rp-yellow);box-shadow:7px 8px 0 var(--rp-purple)}
html.retro-pop #subscriptionModal .plan-subscribe-btn{border:3px solid #17131f;border-radius:3px;box-shadow:4px 5px 0 #000;font-weight:800;text-transform:uppercase}
html.retro-pop #subscriptionModal .plan-card.standard .plan-subscribe-btn{background:var(--rp-yellow);color:#17131f}
html.retro-pop #subscriptionModal .subscription-close{border:3px solid #17131f;border-radius:3px;background:#fffaf0;color:#17131f}
html.retro-pop #planCardFree .plan-subscribe-btn{color:#f5ebd7}

/* 10.4 · LOJA (#storeModal: markup com style inline (store-markup.js), store-cosmetics.css `body #storeModal ... !important`
   e CSS injetado por store-markup/adgem-store/oldgames-vip/profile-banners). Moldura, texto, abas e botoes viram
   poster; a previa ao vivo (#storePreviewContainer e tudo dentro), a tela de cada item (canvas, .chat-demo-message,
   .og-thumb-ring, a arte do banner) e o titulo-arco-iris do VIP nao recebem regra nenhuma. */
html.retro-pop body #storeModal{background:rgba(23,19,31,.95)!important;backdrop-filter:none!important}
html.retro-pop body #storeModal::before{animation:none!important;mix-blend-mode:normal!important;background:radial-gradient(circle,rgba(245,235,215,.06) 1.2px,transparent 1.4px) 0 0/12px 12px!important}
html.retro-pop body #storeModal::after{content:none!important}
html.retro-pop body #storeModal .store-header-redesign{border:3px solid #f5ebd7!important;border-radius:3px!important;background:#17131f!important;box-shadow:var(--sw-slab)!important}
html.retro-pop body #storeModal .store-header-redesign::before,
html.retro-pop body #storeModal .store-header-scanline{display:none!important}
html.retro-pop body #storeModal .store-title-neon{background:none!important;-webkit-text-fill-color:currentColor!important;color:var(--rp-yellow)!important;font-family:var(--rp-ff-display)!important;text-shadow:3px 3px 0 #c80f2e!important;animation:none!important}
html.retro-pop body #storeModal .store-header-redesign p{color:#dccfb2!important;font-family:var(--rp-ff-body)!important}
html.retro-pop body #storeModal .store-ticker-wrap{border-top:2px dashed rgba(245,235,215,.3)!important;border-radius:0!important;background:#221c2c!important}
html.retro-pop body #storeModal .store-ticker-item{color:var(--rp-yellow)!important;font:700 12px/1 var(--rp-ff-mono)!important;letter-spacing:.06em!important;text-shadow:none!important}
html.retro-pop body #storeModal .store-ticker-item>span{color:var(--rp-pink)!important}
html.retro-pop body #storeModal :is(button[onclick*="closeStoreModal"],#adgemEarnBtn){border:3px solid #17131f!important;border-radius:3px!important;color:#17131f!important;box-shadow:3px 4px 0 #000!important;font-family:var(--rp-ff-body)!important;font-weight:800!important}
html.retro-pop body #storeModal button[onclick*="closeStoreModal"]{min-width:44px;min-height:44px;background:var(--rp-red)!important}
html.retro-pop body #storeModal #adgemEarnBtn{background:var(--rp-yellow)!important;text-transform:uppercase;letter-spacing:.04em!important}
html.retro-pop body #storeModal .store-coin-badge{border:3px solid #17131f!important;border-radius:3px!important;background:var(--rp-yellow)!important;color:#17131f!important;box-shadow:3px 4px 0 #000!important;font-family:var(--rp-ff-mono)!important;font-weight:700!important;white-space:nowrap}
html.retro-pop #storeModal .store-coin-icon{filter:brightness(0)}
/* abas */
html.retro-pop body #storeModal .store-tab-bar-wrapper{border:3px solid #f5ebd7!important;border-radius:3px!important;background:#221c2c!important;box-shadow:5px 6px 0 #000!important;backdrop-filter:none!important}
html.retro-pop body #storeModal .store-tab{border:3px solid rgba(245,235,215,.35)!important;border-radius:3px!important;background:#17131f!important;box-shadow:none!important;color:#f5ebd7!important;font:800 13px/1.1 var(--rp-ff-body)!important;letter-spacing:.06em!important}
html.retro-pop body #storeModal .store-tab:hover{border-color:var(--rp-yellow)!important}
html.retro-pop body #storeModal .store-tab.active{border-color:#17131f!important;background:var(--rp-yellow)!important;color:#17131f!important;box-shadow:3px 4px 0 #000!important}
html.retro-pop body #storeModal .store-tab-count{border:2px solid currentColor!important;border-radius:0!important;background:#17131f!important;color:#f5ebd7!important;font:700 11px/1.2 var(--rp-ff-mono)!important}
/* painel da previa: so a moldura, a faixa do titulo e o resumo; o miolo (#storePreviewContainer) e do item */
html.retro-pop body #storeModal .store-left-panel::before,
html.retro-pop body #storeModal .store-left-panel::after{content:none!important}
html.retro-pop body #storeModal .store-left-panel>div{border:3px solid #f5ebd7!important;border-radius:3px!important;background:#17131f!important;box-shadow:var(--sw-slab)!important}
html.retro-pop body #storeModal .store-left-panel>div>div:first-child{border-bottom:3px solid #17131f!important;background:var(--rp-yellow)!important}
html.retro-pop body #storeModal .store-preview-label{color:#17131f!important;font:400 13px/1 var(--rp-ff-display)!important;letter-spacing:.04em!important}
html.retro-pop body #storeModal .store-left-panel>div>div:first-child>span{color:#3b3348!important;font:700 11px/1 var(--rp-ff-mono)!important}
html.retro-pop body #storeModal .store-left-panel>div>div:last-child{border-top:3px solid #f5ebd7!important;background:#221c2c!important}
html.retro-pop body #storeModal .store-left-panel>div>div:last-child span:first-child{color:#dccfb2!important;font:700 12px/1.3 var(--rp-ff-mono)!important;letter-spacing:.04em}
html.retro-pop body #storeModal .store-left-panel>div>div:last-child span[id]{font-family:var(--rp-ff-body);font-weight:800}
/* vitrine do VIP: laje amarela/roxa no lugar da borda arco-iris animada; o titulo-arco-iris fica */
html.retro-pop body #storeModal .vip-showcase-card{border:3px solid var(--rp-yellow)!important;border-radius:3px!important;background:var(--sw-dots),#221c2c!important;box-shadow:7px 8px 0 var(--rp-purple),7px 8px 0 3px #17131f!important}
html.retro-pop body #storeModal .vip-showcase-card::before{content:none!important}
html.retro-pop body #storeModal .vip-showcase-card .vip-title{font-family:var(--rp-ff-display)!important;font-weight:400!important;letter-spacing:.01em!important}
html.retro-pop body #storeModal .vip-showcase-card .vip-subtitle{color:#dccfb2!important}
html.retro-pop body #storeModal .vip-showcase-card .vip-cost{border:2px solid var(--rp-yellow)!important;border-radius:3px!important;background:#17131f!important;color:var(--rp-yellow)!important;font:700 18px/1 var(--rp-ff-mono)!important}
html.retro-pop body #storeModal .vip-showcase-card .vip-buy-btn{border:3px solid #17131f!important;border-radius:3px!important;background:var(--rp-yellow)!important;color:#17131f!important;box-shadow:4px 5px 0 #000!important;font:800 13px/1 var(--rp-ff-body)!important;letter-spacing:.06em!important;text-transform:uppercase;text-shadow:none!important;animation:none!important}
html.retro-pop body #storeModal .vip-showcase-card .vip-buy-btn:disabled{opacity:1!important;border-color:#5d5470!important;background:#2e2639!important;color:#dccfb2!important;box-shadow:none!important}
html.retro-pop body #storeModal .vip-showcase-card .vip-price-line>span:not(.vip-cost){color:#dccfb2!important;font-family:var(--rp-ff-mono)!important;font-weight:700}
html.retro-pop body #storeModal .vip-showcase-card .vip-perks span{border:2px solid rgba(245,235,215,.3)!important;border-radius:3px!important;background:#17131f!important;color:#f5ebd7!important;font:700 12px/1.3 var(--rp-ff-body)!important}
/* aba Banners (profile-banners.js) */
html.retro-pop body #storeModal .profile-banner-store-intro{border:2px dashed rgba(245,235,215,.4)!important;border-radius:3px!important;background:#221c2c!important}
html.retro-pop body #storeModal .profile-banner-store-intro b{color:var(--rp-yellow)!important;font:400 15px/1.2 var(--rp-ff-display)!important;letter-spacing:.01em}
html.retro-pop body #storeModal .profile-banner-store-intro span{color:#dccfb2!important;font:600 14px/1.45 var(--rp-ff-body)!important}
html.retro-pop body #storeModal .profile-banner-card{border:3px solid rgba(245,235,215,.35)!important;border-radius:3px!important;background:#17131f!important;box-shadow:5px 6px 0 #000!important}
html.retro-pop body #storeModal .profile-banner-card:hover{border-color:var(--rp-yellow)!important;transform:translate(-2px,-3px)!important;box-shadow:7px 8px 0 var(--rp-yellow)!important}
html.retro-pop body #storeModal .profile-banner-card.selected{border-color:var(--rp-yellow)!important;box-shadow:7px 8px 0 var(--rp-yellow),7px 8px 0 3px #17131f!important}
html.retro-pop body #storeModal .profile-banner-card__title{color:#f5ebd7!important;font:400 15px/1.2 var(--rp-ff-display)!important;letter-spacing:.01em!important;text-transform:uppercase}
html.retro-pop body #storeModal .profile-banner-card__desc{color:#dccfb2!important;font:600 13px/1.4 var(--rp-ff-body)!important}
html.retro-pop body #storeModal .profile-banner-card__price{color:#f5ebd7!important;font:700 14px/1.1 var(--rp-ff-mono)!important}
html.retro-pop body #storeModal .profile-banner-card__price small{color:#b5a68c!important;font:700 10px/1.3 var(--rp-ff-mono)!important}
html.retro-pop body #storeModal .profile-banner-card__button{min-height:40px;border:3px solid #17131f!important;border-radius:3px!important;background:var(--rp-red)!important;color:#17131f!important;box-shadow:3px 4px 0 #000!important;font:800 12px/1 var(--rp-ff-body)!important;letter-spacing:.06em!important;text-transform:uppercase}
html.retro-pop body #storeModal .profile-banner-card__button[data-action="select"]{background:var(--rp-cyan)!important}
html.retro-pop body #storeModal .profile-banner-card__button[data-action="selected"]{background:var(--rp-lime)!important;box-shadow:none!important}
/* itens (fundos, bordas, efeitos, chat): cartao de tinta; a tela de previa dentro dele fica como esta */
html.retro-pop body #storeModal .store-item{border:3px solid rgba(245,235,215,.3)!important;border-radius:3px!important;background:#221c2c!important;box-shadow:5px 6px 0 #000!important;color:#f5ebd7}
html.retro-pop body #storeModal .store-item:hover{border-color:var(--rp-yellow)!important;transform:translate(-2px,-3px)!important;box-shadow:7px 8px 0 var(--rp-yellow)!important}
html.retro-pop body #storeModal .store-item:is(.selected,.equipped){border-color:var(--rp-yellow)!important;box-shadow:7px 8px 0 var(--rp-yellow),7px 8px 0 3px #17131f!important}
html.retro-pop body #storeModal .store-item:focus-visible{outline:3px solid var(--rp-yellow)!important;outline-offset:3px}
/* brilho/aro girando por raridade (CSS do store-markup.js) e moldura do cartao, nao do item: sai, junto com o loop */
html.retro-pop body #storeModal .store-item::before,
html.retro-pop body #storeModal .store-item::after{content:none!important;animation:none!important}
html.retro-pop body #storeModal .store-item>h4{color:#f5ebd7!important;font:400 15px/1.2 var(--rp-ff-display)!important;letter-spacing:.01em!important;text-transform:uppercase}
html.retro-pop body #storeModal .store-item>p{color:#dccfb2!important;font-family:var(--rp-ff-body)!important}
html.retro-pop body #storeModal .store-item .og-equipped-badge{border:2px solid #17131f;border-radius:0;background:var(--rp-lime);color:#17131f;box-shadow:2px 3px 0 #000}
html.retro-pop body #storeModal .store-item>.rarity-badge{border:2px solid #17131f!important;border-radius:0!important;background:#f5ebd7!important;box-shadow:2px 3px 0 #000!important;color:#17131f!important;font:800 11px/1.2 var(--rp-ff-body)!important;letter-spacing:.08em!important;text-shadow:none!important;animation:none!important}
html.retro-pop body #storeModal .store-item>.rarity-badge::before{content:none!important}
html.retro-pop body #storeModal .store-item>.rarity-badge:is(.free,.default){background:var(--rp-cyan)!important}
html.retro-pop body #storeModal .store-item>.rarity-badge.epic{background:var(--rp-purple)!important;color:#f5ebd7!important}
html.retro-pop body #storeModal .store-item>.rarity-badge.legendary{background:var(--rp-orange)!important}
html.retro-pop body #storeModal .store-item>.rarity-badge.mythic{background:var(--rp-pink)!important}
/* alguns itens de chat trazem o selo como <span> com degrade inline, sem a classe */
html.retro-pop body #storeModal .store-item>span:not([class]){border:2px solid #17131f!important;border-radius:0!important;background:var(--rp-orange)!important;box-shadow:2px 3px 0 #000!important;color:#17131f!important;font:800 11px/1.2 var(--rp-ff-body)!important;letter-spacing:.08em!important;text-shadow:none!important;animation:none!important}
/* item travado: o veu escuro sobre a previa vira uma faixa de rodape com o cadeado; o preco volta ao canto de cima,
   onde o adgem-store ja o poe nos itens livres, e a faixa fica inteira para o texto (cartao de 230px nao corta) */
html.retro-pop body #storeModal .store-item.is-locked{padding-bottom:58px!important}
html.retro-pop body #storeModal .store-item .lock-overlay{inset:auto 0 0 0!important;flex-direction:row!important;justify-content:flex-start!important;align-items:center!important;gap:8px;min-height:44px;padding:8px 12px!important;border-top:2px dashed rgba(245,235,215,.3);border-radius:0!important;background:#17131f!important}
html.retro-pop body #storeModal .store-item .lock-icon{margin:0!important;font-size:16px!important}
html.retro-pop body #storeModal .store-item .lock-text{color:var(--rp-yellow)!important;font:800 12px/1.2 var(--rp-ff-body)!important;letter-spacing:.04em;text-transform:uppercase;text-shadow:none!important}
html.retro-pop body #storeModal .adgem-price-badge{border:2px solid #f5ebd7!important;border-radius:3px!important;background:#17131f!important;box-shadow:2px 3px 0 #000!important;color:#f5ebd7!important;font:700 12px/1.2 var(--rp-ff-mono)!important;letter-spacing:0!important}
html.retro-pop body #storeModal .adgem-price-badge:is(.adgem-can-afford,.adgem-price-owned){border-color:var(--rp-lime)!important;color:var(--rp-lime)!important}
html.retro-pop body #storeModal .store-item.is-locked .adgem-price-badge{top:10px!important;right:10px!important;bottom:auto!important;z-index:11!important}
/* faixa de abertura da aba Chat */
html.retro-pop body #storeModal #storeTabChatEffects>div:first-child{border:2px dashed rgba(245,235,215,.4)!important;border-radius:3px!important;background:#221c2c!important}
html.retro-pop body #storeModal #storeTabChatEffects>div:first-child h3{color:var(--rp-yellow)!important;font-family:var(--rp-ff-display)!important;font-weight:400!important}
html.retro-pop body #storeModal #storeTabChatEffects>div:first-child p{color:#dccfb2!important}
/* aplicar / restaurar */
html.retro-pop body #storeModal .store-apply-divider{height:0!important;border-top:3px dashed rgba(245,235,215,.3)!important;background:none!important}
html.retro-pop body #storeModal :is(.store-apply-btn-wrap,.store-apply-btn)::before,
html.retro-pop body #storeModal .store-apply-btn::after{content:none!important;animation:none!important}
html.retro-pop body #storeModal .store-apply-btn{min-height:56px;padding:14px 30px!important;border:3px solid #17131f!important;border-radius:3px!important;background:var(--rp-red)!important;color:#17131f!important;box-shadow:6px 7px 0 var(--rp-yellow),6px 7px 0 3px #17131f!important;font:400 20px/1 var(--rp-ff-display)!important;font-variant-emoji:text;letter-spacing:.02em!important;text-shadow:none!important}
html.retro-pop body #storeModal .store-apply-btn:hover{transform:translate(-2px,-3px)!important;box-shadow:8px 10px 0 var(--rp-yellow),8px 10px 0 3px #17131f!important}
html.retro-pop body #storeModal .store-reset-btn{min-height:48px;border:3px solid #17131f!important;border-radius:3px!important;background:#fffaf0!important;color:#17131f!important;box-shadow:4px 5px 0 #000!important;font:800 13px/1 var(--rp-ff-body)!important;letter-spacing:.06em!important;text-transform:uppercase}
html.retro-pop body #storeModal .store-reset-btn:hover{background:var(--rp-cyan)!important;transform:translate(-2px,-3px)!important}
html.retro-pop body #storeModal .store-apply-area>p{color:#b5a68c!important;font:700 12px/1.4 var(--rp-ff-mono)!important}

/* 11 · CELULAR: os flutuantes moram numa doca de papel no rodape da tela (faixa reservada, como a tarja do topo),
   compactos em 44px, e a pagina ganha o mesmo tanto de respiro no fim. Nenhum flutuante fica sobre o texto. */
@media (max-width:680px){
  /* a faixa e o ::after do <head> (exibido como bloco de altura 0): o body::after e de varias familias, e um
     pseudo do <html> seria "ancestral" de todo texto no teste de ocultacao. z 8990 fica abaixo de todo widget e
     modal do body porque o body nao forma contexto de empilhamento em familia nenhuma (medido); quando um modal
     trava a rolagem com body{position:fixed} (auth-modal-ui.js) ele passa a formar, e a faixa sai de cena. */
  html.retro-pop > head{display:block;height:0}
  html.retro-pop:not([data-hud-family="player"]):has(> body > :is(#chatToggleBtn,#radioPill)):not(:has(> body[style*="fixed"])) > head::after{
    content:"";position:fixed;left:0;right:0;bottom:0;z-index:8990;box-sizing:border-box;
    height:calc(var(--sw-dock) + env(safe-area-inset-bottom,0px));
    background:#fffaf0 radial-gradient(circle,rgba(23,19,31,.14) 1.2px,transparent 1.4px) 0 0/8px 8px;
    border-top:3px solid #17131f;box-shadow:0 -3px 0 rgba(23,19,31,.12)}
  html.retro-pop:not([data-hud-family="player"]):has(> body > :is(#chatToggleBtn,#radioPill)) body{padding-bottom:calc(var(--sw-dock) + env(safe-area-inset-bottom,0px))}
  html.retro-pop body:not(.emulator-page) #chatToggleBtn#chatToggleBtn{
    inset:auto 10px calc(6px + env(safe-area-inset-bottom,0px)) auto!important;width:44px!important;height:44px!important;
    min-width:44px!important;min-height:44px!important;padding:0!important;justify-content:center!important;box-shadow:2px 3px 0 #17131f!important}
  html.retro-pop #chatToggleBtn#chatToggleBtn.nexus-chat-open{box-shadow:2px 3px 0 var(--rp-yellow),2px 3px 0 3px #17131f!important}
  html.retro-pop body #radioPill,
  html.retro-pop body.nexus-skin #radioPill.radio{
    left:10px!important;right:auto!important;bottom:calc(6px + env(safe-area-inset-bottom,0px))!important;
    width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;
    justify-content:center!important;border-radius:3px!important;box-shadow:2px 3px 0 #17131f;transform:none}
  html.retro-pop body #radioPill :is(b,small),
  html.retro-pop body.nexus-skin #radioPill.radio :is(b,small){display:none!important}
  html.retro-pop body #radioPanel{left:10px;bottom:calc(var(--sw-dock) + 12px + env(safe-area-inset-bottom,0px))}
  html.retro-pop body #ogliveV2.collapsed,
  html.retro-pop body.og-chat-open #ogliveV2{top:auto;right:auto;left:50%;bottom:calc(6px + env(safe-area-inset-bottom,0px));transform:translateX(-50%)}
  html.retro-pop body #ogliveV2:not(.collapsed){bottom:calc(var(--sw-dock) + 12px + env(safe-area-inset-bottom,0px));right:10px}
  html.retro-pop body #ogliveV2-pill{transform:none;box-shadow:2px 3px 0 #17131f}
  html.retro-pop body :is(#radioPill,#ogliveV2-pill):hover{transform:none}
  html.retro-pop .guide-mobile-play{bottom:calc(var(--sw-dock) + 12px + env(safe-area-inset-bottom,0px))}
}
@media (max-width:780px){
  html.retro-pop :is(#authModal,#mobileAuthGate) .authcard{box-shadow:6px 7px 0 #17131f}
}
@media (max-width:700px){
  html.retro-pop #og-live-viewer{box-shadow:none}
}

/* 12 · MOVIMENTO: so transicoes desta folha; os loops sao dos proprios widgets */
@media (prefers-reduced-motion:reduce){
  html.retro-pop :is(#radioPill,#ogliveV2-pill,.cookie-consent-btn,.og-launcher-close,.og-launcher-actions > *){transition-duration:1ms}
  html.retro-pop #chatToggleBtn#chatToggleBtn{transition-duration:1ms!important}
}

/* 13 · TEMAS DE INTERFACE COMPRADOS (store-cosmetics.css:294-321). A cor comprada continua sendo a identidade:
   fundo dos botoes principais, selecao, barra de rolagem e o sublinhado do link ativo. So onde ela vira TEXTO
   sobre papel creme entra um tom escuro do mesmo matiz, porque o tom de compra some no creme (arcade #ffcc00
   da 1,28:1). Tons medidos: >=4,78:1 em papel, papel-2, papel-3, papel-w e no amarelo do topo. Ilhas escuras
   e o player ficam com a cor original, que ja le bem sobre tinta. Classic e o padrao gratuito: fica de fora. */
html.retro-pop body.ui-theme-arcade{--og-accent-ink:#6e4a00}
html.retro-pop body.ui-theme-cyber{--og-accent-ink:#005f6b}
html.retro-pop body.ui-theme-galaxy{--og-accent-ink:#5126c4}
html.retro-pop body.ui-theme-sakura{--og-accent-ink:#9e1f55}
html.retro-pop body.ui-theme-ocean{--og-accent-ink:#005a80}
html.retro-pop body.ui-theme-sunset{--og-accent-ink:#9a3210}
html.retro-pop:not([data-hud-family="player"]) body[class*="ui-theme-"]:not(.ui-theme-classic) :is(a:hover,.nav-link.active,.navbar .active,.store-tab-btn.active,.store-cosmetics-active):not(:is(.rp-dark,.rp-colophon) *){
  color:var(--og-accent-ink,#17131f)!important}
html.retro-pop:not([data-hud-family="player"]) body[class*="ui-theme-"]:not(.ui-theme-classic) :is(.nav-link.active,.navbar .active):not(:is(.rp-dark,.rp-colophon) *){
  text-decoration:underline 3px var(--og-accent)!important;text-underline-offset:6px}
/* Texto sobre o degrade comprado: tinta literal (>=5,17:1 em todos os seis pares de cores). */
html.retro-pop body[class*="ui-theme-"]:not(.ui-theme-classic) :is(.btn-primary,.primary-btn,.play-now-btn){color:#17131f!important}
html.retro-pop body[class*="ui-theme-"]:not(.ui-theme-classic) ::selection{color:#17131f}
