/* Carioca777 v68 — Rio de Janeiro + Carnaval. Fonte visual unica. */
:root,html,body,body *{
  --rio-night:#031426;
  --rio-deep:#071d2c;
  --rio-panel:rgba(5,25,37,.92);
  --rio-panel-soft:rgba(7,34,45,.82);
  --rio-gold:#ffd84d;
  --rio-gold-2:#f5a900;
  --rio-emerald:#09c889;
  --rio-cyan:#20d5e8;
  --rio-magenta:#ef3f91;
  --skin__primary:#ffd84d!important;
  --skin__primary__toRgbString:255,216,77!important;
  --skin__alt_primary:#19d5c1!important;
  --skin__alt_primary__toRgbString:25,213,193!important;
  --skin__bg_1:#09283a!important;
  --skin__bg_1__toRgbString:9,40,58!important;
  --skin__bg_2:#041725!important;
  --skin__bg_2__toRgbString:4,23,37!important;
  --skin__home_bg:#041725!important;
  --skin__home_bg__toRgbString:4,23,37!important;
  --skin__border:#178375!important;
  --skin__border__toRgbString:23,131,117!important;
  --skin__neutral_1:#d8f4e9!important;
  --skin__neutral_2:#8bcbbf!important;
  --skin__btmnav_active:#ffd84d!important;
  --skin__btmnav_def:#85cfc5!important;
  --skin__bs_topnav_bg:#041725!important;
  --skin__web_btmnav_db:#031421!important;
  --skin__filter_bg:#0a2d3d!important;
  --skin__filter_active:#ffd84d!important;
  --skin__icon_1:#ffd84d!important;
  --skin__web_topbg_1:#09c889!important;
  --skin__web_topbg_3:#20d5e8!important;
}

html{background:#031426!important}
body,html body #app,body>#app,body>#app>[class]{
  min-height:100vh;
  background-color:#031426!important;
  background-image:linear-gradient(180deg,rgba(1,12,25,.14),rgba(1,12,25,.57)),url("rio-carnaval-desktop-v68.webp")!important;
  background-size:cover!important;
  background-position:center top!important;
  background-attachment:fixed!important;
  color:#f5fffb!important;
}
body:before{display:none!important}
#rioCarnavalBackdrop{position:fixed;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,rgba(1,12,25,.12),rgba(1,12,25,.6)),url("rio-carnaval-desktop-v68.webp") center top/cover no-repeat}
#rioCarnavalBackdrop:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 17%,rgba(9,200,137,.19),transparent 25%),radial-gradient(circle at 88% 24%,rgba(239,63,145,.16),transparent 23%),linear-gradient(115deg,transparent 0 38%,rgba(255,216,77,.055) 39% 40%,transparent 41% 100%);mix-blend-mode:screen}
#rioCarnavalBackdrop:after{content:"";position:absolute;left:0;right:0;bottom:0;height:30vh;background:linear-gradient(0deg,rgba(1,12,25,.86),transparent);opacity:.78}
body>#app{position:relative!important;z-index:1!important}
html.rio-carnaval-active body,html.rio-carnaval-active body>#app,html.rio-carnaval-active body>#app>[class],html.rio-carnaval-active [class*="_home_"],html.rio-carnaval-active [class*="_homepage_"],html.rio-carnaval-active [class*="_lobbyWrap_"],html.rio-carnaval-active [class*="_mainLayout_"],html.rio-carnaval-active [class*="_pageContainer_"]{background-color:transparent!important;background-image:none!important}

/* Topo inspirado na noite carioca, sem alterar dimensoes nem eventos. */
[class*="_header_"]{
  background:linear-gradient(100deg,rgba(3,20,38,.98),rgba(7,63,63,.97) 52%,rgba(36,12,40,.96))!important;
  border-bottom:1px solid rgba(255,216,77,.72)!important;
  box-shadow:0 3px 13px rgba(0,0,0,.38),inset 0 -1px rgba(32,213,232,.18)!important;
}
[class*="_header_"] .img-text-logo{filter:drop-shadow(0 2px 3px #000) drop-shadow(0 0 5px rgba(255,216,77,.3)) saturate(1.08)!important}

/* Superficies principais mantem a paisagem aparente sem sacrificar leitura. */
[class*="_home_"],[class*="_lobby_"],[class*="_content_"]{background-color:transparent!important}
[class*="_gameItem_"],[class*="_game-item_"],[class*="_card_"]{
  border-color:rgba(255,216,77,.48)!important;
  background-color:rgba(4,24,35,.76)!important;
  box-shadow:0 5px 14px rgba(0,0,0,.35),0 0 0 1px rgba(9,200,137,.08)!important;
}
[class*="_gameItem_"]:hover,[class*="_game-item_"]:hover{border-color:rgba(255,226,95,.86)!important;box-shadow:0 8px 22px rgba(0,0,0,.46),0 0 12px rgba(9,200,137,.18)!important}
[class*="_filter_"],[class*="_category_"]{border-color:rgba(32,213,232,.25)!important}
[class*="_title_"]{color:#fff3b3!important;text-shadow:0 1px 2px #001620!important}

/* Estrutura estabilizada do login/cadastro, sem depender dos temas antigos. */
[class*="loginRegisterDialog"]{width:340px!important;max-width:calc(100vw - 16px)!important;box-sizing:border-box!important;background:transparent!important}
[class*="loginRegisterDialog"] .ui-dialog__main{width:100%!important;box-sizing:border-box!important;overflow:hidden!important;border-radius:15px!important}
[class*="loginRegisterDialog"] .ui-dialog__content{width:100%!important;padding:14px 11px!important;box-sizing:border-box!important;overflow:hidden!important;background:transparent!important}
[class*="loginRegisterDialog"] [class*="_loginRegister_"],[class*="loginRegisterDialog"] .loginRegisterFragment{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;overflow:hidden!important;border-radius:12px!important;color:#f2fff9!important}
[class*="loginRegisterDialog"] *,[class*="loginRegisterDialog"] *:before,[class*="loginRegisterDialog"] *:after{box-sizing:border-box}
[class*="loginRegisterDialog"] .ui-input,[class*="loginRegisterDialog"] input,[class*="loginRegisterDialog"] textarea,[class*="loginRegisterDialog"] select{max-width:100%!important;background:#031622!important;border-color:#19877e!important;color:#f5fffb!important;-webkit-text-fill-color:#f5fffb!important}
[class*="loginRegisterDialog"] input::placeholder{color:#8fc8bf!important;-webkit-text-fill-color:#8fc8bf!important;opacity:.9!important}
[class*="loginRegisterDialog"] [role="tab"]{color:#a7e8db!important;-webkit-text-fill-color:#a7e8db!important}
[class*="loginRegisterDialog"] [role="tab"][aria-selected="true"],[class*="loginRegisterDialog"] [class*="active"]{color:#ffe36d!important;-webkit-text-fill-color:#ffe36d!important;border-color:#ffd84d!important}
[class*="loginRegisterDialog"] .ui-dialog__close,[class*="loginRegisterDialog"] [class*="close"]{background:#07303c!important;border-color:#20bda9!important;color:#ffe36d!important}

/* Catalogo, aviso e categorias: samba elegante. */
#cariocaBroadcastTabs{
  border-color:rgba(255,216,77,.68)!important;
  background:linear-gradient(145deg,rgba(4,27,39,.96),rgba(5,58,57,.93) 60%,rgba(37,13,42,.94))!important;
  box-shadow:0 8px 22px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.1)!important;
}
#cariocaBroadcastTabs:before{background:radial-gradient(circle at 50% -20%,rgba(32,213,232,.22),transparent 46%),linear-gradient(110deg,transparent 25%,rgba(239,63,145,.1),transparent 68%)!important}
.cb-brand strong{color:#ffe36f!important}.cb-brand small{color:#8eeadd!important}.cb-brand-crown,.cb-speaker{color:#ffd84d!important}
.cb-brand-wing{background:linear-gradient(90deg,transparent,#14cfa1)!important}.cb-brand-wing:after{border-color:#ffd84d!important}
.cb-message-row{border-color:rgba(32,213,232,.3)!important;background:rgba(1,15,26,.65)!important}
.cb-marquee{color:#d9fff4!important}.cb-mail{color:#ffd84d!important;border-left-color:rgba(9,200,137,.38)!important}
.cb-tabs{border-top-color:rgba(255,216,77,.16)!important}
.cb-tab{border-color:rgba(30,197,169,.3)!important;background:linear-gradient(180deg,rgba(10,67,69,.66),rgba(3,24,36,.68))!important;color:#b9ede1!important}
.cb-tab.is-active{border-color:#ffe675!important;background:linear-gradient(145deg,#ffe55b,#f8b413 60%,#ef7d12)!important;color:#153126!important;box-shadow:0 3px 9px rgba(0,0,0,.32),0 0 8px rgba(255,213,62,.22)!important}
#cariocaPromoCarousel{border-color:rgba(255,216,77,.74)!important;background:#041725!important;box-shadow:0 7px 18px rgba(0,0,0,.38),0 0 0 1px rgba(9,200,137,.13)!important}
#cariocaPromoCarousel .cpc-dot.is-active{background:#ffd84d!important;border-color:#fff4a8!important}

/* Menu lateral, area da conta e deposito no mesmo universo visual. */
#cariocaSideMenu{background:linear-gradient(180deg,#073b46,#041d2d 68%,#170b22)!important;border-right-color:#e9bd3f!important;box-shadow:10px 0 32px rgba(0,0,0,.58),inset -1px 0 rgba(32,213,232,.2)!important}
#cariocaSideMenu .cm-tile,#cariocaSideMenu .cm-section{background:linear-gradient(145deg,rgba(10,85,77,.92),rgba(5,31,43,.96))!important;border-color:rgba(255,216,77,.48)!important}
#cariocaSideMenu .cm-search{background:#061c2a!important;border-color:#158e83!important}
#memberArea,#memberArea .ma-wrap{background:linear-gradient(180deg,#073344 0%,#041724 58%,#160b20 100%)!important}
#memberArea .ma-head,#memberArea .ma-bottom{background:linear-gradient(90deg,#041725,#07504d,#171022)!important;border-color:rgba(255,216,77,.58)!important}
#memberArea .ma-row{border-color:rgba(27,174,151,.3)!important;background:rgba(4,23,36,.28)!important}
#memberArea .ma-row i,#memberArea .ma-actions,#memberArea .ma-actions b{color:#28dcc6!important}
#memberArea .ma-vip{background:linear-gradient(120deg,#08ae7a,#1ed8d0 52%,#ffd23f)!important;color:#06271f!important;box-shadow:0 5px 15px rgba(0,0,0,.3)!important}
#memberArea.ma-deposit-page .ma-section-title{border-bottom-color:rgba(32,213,232,.34)!important}
#memberArea.ma-deposit-page .ma-rule{background:linear-gradient(90deg,transparent,#19cfae,#ffd84d,transparent)!important}
#memberArea.ma-deposit-page .ma-choice{border-color:#197e78!important;background:#061f2d!important;color:#a8dbd4!important}
#memberArea.ma-deposit-page .ma-choice.active{border-color:#28e4cb!important;background:linear-gradient(135deg,#0a564e,#062332)!important;color:#65ffe6!important;box-shadow:0 0 8px rgba(31,220,196,.2)!important}
#memberArea.ma-deposit-page .ma-choice.active:after,#memberArea.ma-deposit-page .ma-amount.active:after{background:linear-gradient(135deg,transparent 0 47%,#12cba4 48%)!important;color:#fff!important}
#memberArea.ma-deposit-page .ma-amount{border-color:#267a75!important;background:linear-gradient(to bottom,#062434 0 54%,#a97810 55% 100%)!important}
#memberArea.ma-deposit-page .ma-money,#memberArea.ma-deposit-page .ma-offers{border-color:#1a887e!important;background:rgba(3,22,33,.9)!important}
#memberArea.ma-deposit-page .ma-offer{border-color:#176f6a!important;background:linear-gradient(90deg,rgba(9,200,137,.09),transparent)!important}
#memberArea.ma-deposit-page .ma-offer strong{color:#47f0d4!important}
#memberArea .ma-primary,.ma-primary{background:linear-gradient(135deg,#ffe55e,#f4b213 55%,#0fc691)!important;color:#07261e!important;box-shadow:0 5px 14px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.55)!important}

/* Login e cadastro: contraste consistente com o fundo do Rio. */
.admin-auth-card,[class*="loginRegisterDialog"] .ui-dialog__main,[class*="loginRegisterDialog"] [class*="_loginRegister_"]{
  border-color:rgba(255,216,77,.7)!important;
  background:linear-gradient(160deg,#083745 0%,#041825 58%,#1d0c27 100%)!important;
  box-shadow:0 18px 50px rgba(0,0,0,.68),0 0 16px rgba(9,200,137,.16)!important;
}
.admin-auth-card input,[class*="loginRegisterDialog"] input{border-color:#177c76!important;background:#031622!important;color:#effff9!important}
.admin-auth-card input:focus,[class*="loginRegisterDialog"] input:focus{border-color:#24dbc4!important;box-shadow:0 0 0 2px rgba(32,213,232,.14)!important}
[class*="loginRegisterDialog"] .ui-button--primary,[class*="loginRegisterDialog"] button[class*="primary"]{background:linear-gradient(135deg,#ffe45c,#f6ac11 58%,#0fc48f)!important;color:#08251d!important}

@media(max-width:768px){
  body,html body #app,body>#app,body>#app>[class]{background-image:linear-gradient(180deg,rgba(1,12,25,.12),rgba(1,12,25,.5)),url("rio-carnaval-mobile-v68.webp")!important;background-size:100% auto!important;background-position:center top!important;background-attachment:scroll!important;background-repeat:repeat-y!important}
  #cariocaBroadcastTabs{box-shadow:0 4px 12px rgba(0,0,0,.32)!important}
  [class*="_gameItem_"],[class*="_game-item_"],[class*="_card_"]{box-shadow:0 3px 8px rgba(0,0,0,.3)!important}
  #rioCarnavalBackdrop{background-image:linear-gradient(180deg,rgba(1,12,25,.1),rgba(1,12,25,.52)),url("rio-carnaval-mobile-v68.webp");background-size:cover;background-position:center top}
  #rioCarnavalBackdrop:after{height:42vh}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
