/* Unified challenge shell: competition-specific components remain intact. */
body.tm-page-challenge{background:radial-gradient(70% 410px at 50% 88px,rgba(31,58,71,.40),transparent),#070d14!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif!important}
.tm-page-challenge .tm-sitebar{display:none!important}
.tm-page-challenge .tm-challenge-main{width:min(100% - 56px,1240px);margin-inline:auto;padding-block:35px 72px;min-height:60vh}
.tm-page-challenge .tm-challenge-main .wrap{max-width:100%!important;width:100%!important;margin:0!important;padding:0!important;background:none!important}
.tm-page-challenge .tm-challenge-main .top{border:0!important;box-shadow:none!important}
.tm-page-challenge .tm-challenge-main .hero{background:linear-gradient(125deg,#152c38,#0c1923 79%)!important;border:1px solid #39515e!important;border-radius:20px!important}
.tm-page-challenge .tm-challenge-main .panel,.tm-page-challenge .tm-challenge-main .v45-section{background:linear-gradient(150deg,#112330,#0c1822)!important;border-color:#304756!important}
.tm-page-challenge .tm-challenge-main .status{color:#bccdd7}
.tm-page-challenge .tm-challenge-main .top h1{font-size:clamp(26px,3.0vw,42px)!important;color:#fff;letter-spacing:-.05em}
.tm-page-challenge .tm-challenge-main .eyebrow,.tm-page-challenge .tm-challenge-main .section-kicker{color:var(--tm-accent)}
.tm-page-challenge .tm-challenge-main :is(button,.tab,.mobile-nav-btn){transition:background .2s,border-color .2s,color .2s,transform .2s}
.tm-page-challenge .tm-challenge-main button:hover:not(:disabled){border-color:#859eab}
.tm-page-challenge .tm-challenge-main button.primary:hover:not(:disabled){background:#ebef00!important;color:#071018!important}
.tm-page-challenge .tm-challenge-main .grid{gap:18px}
.tm-page-challenge .tm-challenge-main .panel{border-radius:18px}
.tm-page-challenge .tm-challenge-main a{color:inherit}
.tm-page-challenge .tm-challenge-main button:focus-visible,.tm-page-challenge .tm-challenge-main a:focus-visible{outline:3px solid #ffff00;outline-offset:3px}
.tm-page-challenge .tm-footer{margin-top:0}
@media(max-width:810px){.tm-page-challenge .tm-challenge-main{width:calc(100% - 28px);padding-block:18px 70px}.tm-page-challenge .tm-challenge-main .grid{grid-template-columns:1fr}}
@media(max-width:600px){.tm-page-challenge .tm-challenge-main{width:calc(100% - 14px);padding-block:12px 95px}.tm-page-challenge .tm-challenge-main .wrap{padding-inline:0!important}.tm-page-challenge .tm-challenge-main .hero{border-radius:14px!important;padding:20px 16px!important}.tm-page-challenge .tm-challenge-main .panel,.tm-page-challenge .tm-challenge-main .v45-section{border-radius:14px!important}.tm-page-challenge .tm-challenge-main .top{margin-bottom:12px!important}.tm-page-challenge .tm-footer{padding-bottom:100px}.tm-page-challenge .mobile-bottom-nav,.tm-page-challenge .bottom-nav,.tm-page-challenge .mobile-nav{z-index:1200!important;background:linear-gradient(180deg,#142530,#0a141e)!important;border-top:1px solid #405462!important}}


/* V3.1: faixa de título com transição suave, sem bordas quadradas. */
html body.tm-page-challenge #appRoot .top.top-centered{
 isolation:isolate;position:relative;overflow:hidden;
 border:1px solid rgba(100,160,182,.20)!important;
 border-radius:clamp(21px,3vw,32px)!important;
 padding:clamp(24px,3vw,42px) 18px!important;
 margin:0 0 22px!important;
 background:radial-gradient(ellipse 65% 125% at 55% -10%,rgba(43,109,151,.38),transparent 80%),
 radial-gradient(ellipse 70% 140% at -12% 80%,rgba(255,255,0,.045),transparent 72%),
 linear-gradient(111deg,#0b1721 0%,#163245 50%,#091722 100%)!important;
 box-shadow:inset 0 1px rgba(232,252,255,.055),0 17px 58px rgba(0,0,0,.12)!important;
}
html body.tm-page-challenge #appRoot .top.top-centered:before,
html body.tm-page-challenge #appRoot .top.top-centered:after{content:"";position:absolute;z-index:-1;pointer-events:none;border-radius:50%}
html body.tm-page-challenge #appRoot .top.top-centered:before{width:440px;height:210px;left:-160px;top:-180px;border:1px solid rgba(255,255,0,.19);transform:rotate(-13deg);box-shadow:0 0 42px rgba(255,255,0,.04)}
html body.tm-page-challenge #appRoot .top.top-centered:after{width:520px;height:220px;right:-175px;bottom:-195px;border:1px solid rgba(75,161,202,.29);transform:rotate(-10deg)}
html body.tm-page-challenge #appRoot .top.top-centered .brand-title h1{font-size:clamp(29px,4.2vw,48px)!important;line-height:1.12!important;letter-spacing:-.04em!important;margin:5px 0 3px!important;color:#f9fcff!important;text-shadow:0 3px 25px rgba(5,13,24,.16)}
html body.tm-page-challenge #appRoot .top.top-centered .eyebrow{font-size:clamp(9px,1.06vw,11px)!important;letter-spacing:.18em!important}
html body.tm-page-challenge #appRoot .top.top-centered .status{background:rgba(6,20,30,.48)!important;border-color:rgba(137,183,202,.28)!important;color:#d2e4ec!important;backdrop-filter:blur(7px)}
@media(max-width:600px){html body.tm-page-challenge #appRoot .top.top-centered{padding:22px 10px!important;margin:0 0 13px!important;border-radius:20px!important}html body.tm-page-challenge #appRoot .top.top-centered .brand-title h1{font-size:clamp(25px,7.5vw,37px)!important}html body.tm-page-challenge #appRoot .top.top-centered:before{width:280px}html body.tm-page-challenge #appRoot .top.top-centered:after{width:320px}}
