/* Portal-only layout; game engines and embedded players retain their own styles. */
.pq-portal{--pq-panel:#132439;--pq-line:#66b8c14d;--pq-cyan:#92e8ee;--pq-gold:#ffc28b}
.pq-portal *{box-sizing:border-box}
.pq-portal :is(a,button,input,select,summary):focus-visible{outline:3px solid var(--pq-gold);outline-offset:4px}
.pq-portal :is(input,textarea){user-select:text;-webkit-user-select:text}
.pq-portal [id]{scroll-margin-top:95px}
.pq-portal>header{position:sticky;top:0;z-index:50;gap:16px;padding:12px 20px;background:#091322f5;backdrop-filter:blur(12px);border-bottom:1px solid var(--pq-line);flex-wrap:wrap}
.pq-portal>header>nav{flex:1;display:flex;gap:16px;align-items:center;min-width:0}
.pq-portal>header>nav a{font-size:13px;white-space:nowrap}
.pq-portal .portal-menu{position:relative;margin-left:auto}
.pq-portal .portal-menu>summary{list-style:none;cursor:pointer;min-height:48px;display:flex;align-items:center;justify-content:center;padding:9px 15px;border:1px solid var(--pq-line);border-radius:10px;font-size:13px;color:#eef8ff;background:var(--pq-panel);font-weight:700}
.pq-portal .portal-menu>summary::-webkit-details-marker{display:none}
.pq-portal .portal-menu[open]>summary{border-color:var(--pq-gold)}
.pq-portal .portal-menu-panel{position:absolute;right:0;top:calc(100% + 10px);width:min(390px,calc(100vw - 32px));padding:18px;background:#0e1d30;border:1px solid var(--pq-line);box-shadow:0 18px 40px #0009;border-radius:14px;max-height:75vh;overflow:auto;z-index:60}
.pq-portal .portal-menu-panel nav{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pq-portal .portal-menu-panel nav a{padding:12px;border-radius:8px;background:#193047;color:#eaf6ff;text-decoration:none;font-size:13px}
.pq-portal .portal-menu-panel .family-tools,.pq-portal .portal-menu-panel .read-tools{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:12px 0 0;border:0;border-top:1px solid var(--pq-line);background:none}
.pq-portal .portal-menu-panel :is(button,select){min-height:48px;max-width:100%}
.pq-portal>main{max-width:1240px;padding-top:18px}
.pq-portal .hero{margin:0 0 24px;padding:24px;min-height:0;gap:24px}
.pq-portal .hero h1{font-size:clamp(28px,4vw,46px);line-height:1.15;margin:10px 0 14px}
.pq-portal .hero p{max-width:580px;line-height:1.6}
.pq-portal .hero :is(.mascot,.hero-owl){max-width:220px;min-width:0;max-height:260px}
.pq-portal .hero .cyber-stage{width:190px;max-width:100%;height:235px}
.pq-portal .hero-note{font-size:11px}
.pq-portal :is(.platform-tabs,.ranking-tabs,.gallery-tabs){display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding-bottom:10px;max-width:100%;scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-width:thin}
.pq-portal :is(.platform-tabs,.ranking-tabs,.gallery-tabs)>button{flex:0 0 auto;min-height:48px;scroll-snap-align:start;white-space:nowrap}
.pq-portal .games{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pq-portal .cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pq-portal :is(.games>.game,.cards>.card){min-width:0;display:flex;flex-direction:column;padding:22px;border-radius:15px}
.pq-portal :is(.games>.game,.cards>.card) :is(.play,.primary){min-height:48px;display:flex;align-items:center;justify-content:center;margin-top:auto;white-space:normal;text-align:center;overflow-wrap:anywhere}
.pq-portal .games>.game h3,.pq-portal .cards>.card h3{overflow-wrap:anywhere}
.pq-portal .mini-pix-row{display:none}
.pq-portal .portal-support{display:inline-flex;align-items:center;min-height:48px;padding:10px 15px;border:1px solid #ffc28b80;border-radius:10px;background:#193047;color:#ffe0bd;font:700 14px system-ui;cursor:pointer}
.pq-portal .portal-platform-note{font-size:13px;color:#bdcee1}
.pq-portal footer{gap:18px;flex-wrap:wrap}
@media(min-width:1120px){.pq-portal .cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:800px){
.pq-portal>header{padding:9px 16px;gap:10px;flex-wrap:nowrap}
.pq-portal>header>nav,.pq-portal>header>.pix-nav,.pq-portal>header>.status,.pq-portal>header>.account-shortcut{display:none}
.pq-portal>header>.brand,.pq-portal>header>.logo{font-size:19px;white-space:nowrap}
.pq-portal>header>a:not(.brand):not(.logo){font-size:12px}
.pq-portal .portal-menu>summary{font-size:12px;padding:10px 12px}
.pq-portal>main{padding:16px 14px}
.pq-portal .hero{display:grid;grid-template-columns:minmax(0,1fr) 110px;padding:18px;gap:10px;margin-bottom:20px}
.pq-portal .hero h1{font-size:26px}
.pq-portal .hero .eyebrow{font-size:10px;letter-spacing:1px}
.pq-portal .hero p{font-size:13px;margin:10px 0}
.pq-portal .hero .hero-note,.pq-portal .hero .mascot-label,.pq-portal .hero .mascot-badge,.pq-portal .hero .bubble,.pq-portal .hero .orbit{display:none}
.pq-portal .hero :is(.mascot,.hero-owl){width:110px;max-width:110px;max-height:160px;margin:0;padding:0}
.pq-portal .hero .cyber-stage{width:110px;height:150px}
.pq-portal .hero .cta{padding:10px 12px;min-height:48px;font-size:12px}
.pq-portal .hero .secondary{font-size:12px;min-height:44px;display:inline-flex;align-items:center}
.pq-portal .facts{gap:12px;padding:16px;flex-wrap:wrap}
.pq-portal :is(.games,.cards){grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pq-portal :is(.games>.game,.cards>.card){padding:15px 12px;gap:9px}
.pq-portal :is(.games>.game,.cards>.card) h3{font-size:17px;line-height:1.3;margin:4px 0}
.pq-portal :is(.games>.game,.cards>.card)>p{display:none}
.pq-portal :is(.games>.game,.cards>.card) :is(.play,.primary){font-size:12px;padding:12px 8px;margin-top:auto}
.pq-portal :is(.games>.game,.cards>.card) .theme-owl{width:72px;height:72px;margin:0 auto}
.pq-portal .cards>.card>.icon{font-size:35px}
.pq-portal .games>.game .badge{font-size:9px;white-space:normal}
.pq-portal .section-head{gap:12px;align-items:flex-start}
.pq-portal .section-head h2{font-size:23px}
.pq-portal .section-head>p{font-size:12px;max-width:45%}
.pq-portal .categories{display:flex;overflow-x:auto;align-items:flex-start;gap:10px;max-width:100%;padding-bottom:10px}
.pq-portal .categories>.category{flex:0 0 210px;min-width:0}
.pq-portal .how{grid-template-columns:1fr;gap:12px}
}
@media(max-width:380px){.pq-portal .hero{grid-template-columns:1fr}.pq-portal .hero :is(.mascot,.hero-owl){display:none}.pq-portal .hero h1{font-size:27px}.pq-portal>header>.brand,.pq-portal>header>.logo{font-size:16px}}
@media(prefers-reduced-motion:reduce){.pq-portal *,.pq-portal *::before,.pq-portal *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Quiz directory: compact equal cards following the supplied six-card reference. */
.pq-portal #conhecimento{max-width:1080px;margin-inline:auto}
.pq-portal #conhecimento .games{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.pq-portal #conhecimento .game{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:18px!important;border-radius:12px;gap:0;grid-column:auto;min-height:270px}
.pq-portal #conhecimento .theme-owl{width:46px;height:48px;margin:0 0 8px}
.pq-portal #conhecimento .game h3{font-size:calc(17px * var(--text-scale,1));line-height:1.3;letter-spacing:-.25px;margin:0 0 8px}
.pq-portal #conhecimento .game>p{display:block;font-size:calc(13px * var(--text-scale,1));line-height:1.55;margin:0 0 12px;min-height:0;flex:1}
.pq-portal #conhecimento .game .badge{font-size:9px;letter-spacing:.5px;margin-bottom:8px}
.pq-portal #conhecimento .game .pill{display:inline-block;font-size:10px;padding:3px 7px;margin:0 0 5px;line-height:1.4}
.pq-portal #conhecimento .game .play{display:flex;justify-content:space-between;align-items:center;align-self:stretch;min-height:44px;padding:10px 12px;margin-top:10px;font-size:12px;border-radius:7px;background:#ffb15e;color:#101b2b!important;text-decoration:none;font-weight:750}
.pq-portal #conhecimento .game .play:hover{background:#ffc583}
@media(max-width:650px){.pq-portal #conhecimento .games{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pq-portal #conhecimento .game{padding:14px!important;min-height:250px}.pq-portal #conhecimento .game h3{font-size:calc(15px * var(--text-scale,1))}.pq-portal #conhecimento .game>p{font-size:calc(12px * var(--text-scale,1))}.pq-portal #conhecimento .game .play{font-size:11px;padding:10px 8px}}
@media(max-width:340px){.pq-portal #conhecimento .games{grid-template-columns:1fr}.pq-portal #conhecimento .game{min-height:230px}}
/* Ranking: one compact board with aligned columns and category navigation. */
.pq-portal #ranking{max-width:1080px;margin:24px auto}
.pq-portal #ranking .section-head h2{font-size:25px;margin:8px 0}
.pq-portal #ranking .ranking-tabs{display:flex;gap:8px;overflow-x:auto;flex-wrap:nowrap;padding:12px 0;scrollbar-width:thin}
.pq-portal #ranking .ranking-tabs button{flex:0 0 auto;min-height:44px;padding:10px 14px;white-space:nowrap;font-size:12px;border-radius:10px;border:1px solid #405570;background:#14243b;color:#d8e5f7}
.pq-portal #ranking .ranking-tabs button[aria-pressed=true]{background:#ffb15e;color:#172235;border-color:#ffb15e;font-weight:750}
.pq-portal #ranking .rank-wrap{border-radius:14px;padding:18px;overflow:hidden}
.pq-portal .rank-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}
.pq-portal .rank-toolbar strong{display:block;font-size:18px;color:#f2f6ff}.pq-portal #rank-count{display:block;margin-top:5px;font-size:12px;color:#b5c7df}
.pq-portal .rank-toolbar label{font-size:11px;color:#c0d0e6;display:flex;flex-direction:column;gap:6px;min-width:220px}.pq-portal #rank-search{width:100%;min-height:44px;padding:10px 12px;background:#091728;border:1px solid #445c7a;border-radius:9px;color:#fff;font:14px system-ui}
.pq-portal #ranking .ranking-board-scroll{max-height:460px;overflow:auto;scrollbar-width:thin;border:1px solid #455b773d;border-radius:10px}
.pq-portal #ranking table{width:100%;table-layout:fixed;border-collapse:collapse;min-width:0}
.pq-portal #ranking th{position:sticky;top:0;z-index:1;background:#102038;color:#bed0e8;font-size:10px;letter-spacing:.7px;text-align:left;padding:14px 12px}
.pq-portal #ranking td{padding:13px 12px;border-bottom:1px solid #ffffff0b;font-size:13px;line-height:1.45;vertical-align:middle;overflow-wrap:anywhere}
.pq-portal #ranking :is(th,td):first-child{width:82px;text-align:center;font-variant-numeric:tabular-nums;font-weight:700}
.pq-portal #ranking :is(th,td):last-child{width:170px;text-align:right;font-variant-numeric:tabular-nums;color:#ffcf91;font-weight:750}
.pq-portal #ranking tbody tr:nth-child(even){background:#ffffff03}.pq-portal #ranking tbody tr:hover{background:#ffffff08}
.pq-portal #ranking tr[data-rank="1"]{background:#ffbb5510}.pq-portal #ranking tr[data-rank="2"]{background:#c4d5ec08}.pq-portal #ranking tr[data-rank="3"]{background:#e7a56d08}
.pq-portal #ranking tr[data-rank="1"] td:first-child{color:#ffce76}.pq-portal #ranking tr[data-rank="2"] td:first-child{color:#d5dfed}.pq-portal #ranking tr[data-rank="3"] td:first-child{color:#dfaa84}
.pq-portal .rank-caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.pq-portal #ranking .rank-rules{padding-top:14px;color:#bacbe1;font-size:12px}.pq-portal #ranking .rank-rules summary{cursor:pointer;min-height:36px;display:flex;align-items:center;gap:8px}.pq-portal #ranking .rank-rules summary:before{content:'ⓘ'}
.pq-portal #ranking .rank-note{font-size:12px;line-height:1.7;margin:8px 0}
@media(max-width:650px){.pq-portal #ranking .rank-wrap{padding:12px}.pq-portal #ranking .section-head{flex-wrap:wrap}.pq-portal #ranking .rank-toolbar label{width:100%;min-width:0}.pq-portal #ranking :is(th,td):first-child{width:48px}.pq-portal #ranking :is(th,td):last-child{width:100px}.pq-portal #ranking :is(th,td){padding:12px 8px}.pq-portal #ranking td{font-size:12px}.pq-portal #ranking th{font-size:9px}.pq-portal #ranking .section-head h2{font-size:22px}}
.pq-portal #ranking .ranking-tabs button[aria-pressed="true"]{background:#ffb15e!important;color:#172235!important;border-color:#ffb15e!important}
.pq-portal #ranking tr[data-rank="1"] td:first-child{color:#ffce76!important}.pq-portal #ranking tr[data-rank="2"] td:first-child{color:#d5dfed!important}.pq-portal #ranking tr[data-rank="3"] td:first-child{color:#dfaa84!important}
@media(min-width:801px){.pq-portal>header{height:auto;min-height:74px;gap:12px}.pq-portal>header>nav{gap:8px}.pq-portal>header>nav a{font-size:12px;padding:10px;min-height:44px;white-space:nowrap}.pq-portal>header>.pix-nav{font-size:12px;padding:12px}.pq-portal .portal-menu>summary{padding:10px;font-size:12px}}

/* Keep viewport-based gutters outside the constrained header. */
.pq-portal>header{box-sizing:border-box;width:calc(100% - 32px);max-width:1240px;height:auto;min-height:74px;margin:0 auto;padding:12px 20px!important;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;justify-content:space-between;gap:16px}
.pq-portal>header>.logo,.pq-portal>header>.brand{flex:0 0 auto;white-space:nowrap;line-height:1.1;font-size:23px}
.pq-portal>header>nav{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:center;gap:8px;min-width:0}
.pq-portal>header>nav>a{flex:0 0 auto;white-space:nowrap;line-height:1.3}
.pq-portal>header>.pix-nav{display:none!important}
.pq-portal>header>.account-shortcut,.pq-portal>header>.status,.pq-portal>header>.portal-menu{flex:0 0 auto;white-space:nowrap}
.pq-portal>main{width:100%;max-width:1240px;margin-inline:auto;padding-inline:20px}
@media(max-width:1100px){.pq-portal>header>.status,.pq-portal>header>.account-shortcut{display:none!important}}
@media(max-width:950px){.pq-portal>header{width:100%;padding:10px 16px!important;min-height:68px}.pq-portal>header>nav{display:none!important}.pq-portal>header>.portal-menu{margin-left:auto}.pq-portal>main{padding-inline:14px}}
@media(max-width:650px){.pq-portal .hero{display:block;padding:20px;min-height:0}.pq-portal .hero>.mascot{display:none}.pq-portal .hero h1{font-size:30px;line-height:1.15;letter-spacing:-1px}.pq-portal .hero .eyebrow{letter-spacing:1px}.pq-portal .hero p{font-size:13px;line-height:1.55}.pq-portal .hero .secondary{margin-left:12px;margin-top:10px}.pq-portal .facts{padding:12px}.pq-portal .facts .fact{padding:10px}.pq-portal .facts .fact strong{font-size:23px}.pq-portal .facts .fact small{font-size:11px}}

.pq-portal .hero :is(.mascot,.hero-owl){max-height:none}
@media(max-width:650px){.pq-portal .hero>.mascot{display:flex!important;flex-direction:column;align-items:center;width:100%;max-width:none;margin:18px auto 0;padding:0}.pq-portal .hero .cyber-stage{width:130px;height:160px}.pq-portal .hero :is(.mascot-label,.mascot-badge){display:none}.pq-portal #ranking :is(th,td):first-child{width:64px}.pq-portal #ranking th{letter-spacing:.2px}.pq-portal #ranking :is(th,td):last-child{width:94px}}
/* One shared card system for quizzes and arcade. */
.pq-portal :is(#conhecimento,#adivinhacao){max-width:1080px;margin-inline:auto}.pq-portal :is(#conhecimento,#adivinhacao) .games{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:14px}.pq-portal :is(#conhecimento,#adivinhacao) .game{display:flex;flex-direction:column;align-items:flex-start;min-width:0;min-height:250px;padding:18px!important;border-radius:12px;gap:0;grid-column:auto}.pq-portal :is(#conhecimento,#adivinhacao) .game .badge{display:none}.pq-portal :is(#conhecimento,#adivinhacao) .game h3{font-size:calc(17px * var(--text-scale,1));line-height:1.35;letter-spacing:-.2px;margin:0 0 10px;min-height:46px}.pq-portal :is(#conhecimento,#adivinhacao) .game>p{display:block;font-size:calc(13px * var(--text-scale,1));line-height:1.55;margin:0 0 14px;min-height:61px;flex:1}.pq-portal :is(#conhecimento,#adivinhacao) .game .pill{font-size:10px;line-height:1.4;padding:3px 7px;margin:0 0 5px}.pq-portal :is(#conhecimento,#adivinhacao) .game .play{display:flex;justify-content:space-between;align-items:center;align-self:stretch;min-height:44px;padding:10px 12px;margin-top:10px;font-size:12px;line-height:1.4;border-radius:7px;background:#ffb15e;color:#101b2b!important;text-decoration:none;font-weight:750}.pq-portal .share-layout{grid-template-columns:200px minmax(0,1fr);align-items:center}.pq-portal .share-layout>a>img{width:200px;max-width:100%;height:auto}.pq-portal>header>nav{display:none!important}.pq-portal .kids-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pq-portal .kids-links a{min-height:100px;display:flex;flex-direction:column;justify-content:center;padding:16px}
@media(max-width:650px){.pq-portal :is(#conhecimento,#adivinhacao) .games{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pq-portal :is(#conhecimento,#adivinhacao) .game{padding:14px!important;min-height:270px}.pq-portal :is(#conhecimento,#adivinhacao) .game h3{font-size:calc(15px * var(--text-scale,1));min-height:42px}.pq-portal :is(#conhecimento,#adivinhacao) .game>p{font-size:calc(12px * var(--text-scale,1));min-height:94px}.pq-portal :is(#conhecimento,#adivinhacao) .game .play{font-size:11px;padding:10px 8px;min-height:58px}.pq-portal .kids-links{grid-template-columns:repeat(2,minmax(0,1fr))}.pq-portal .share-layout{display:flex;flex-direction:column;align-items:flex-start}.pq-portal .share-layout>a>img{width:180px}}
@media(max-width:340px){.pq-portal :is(#conhecimento,#adivinhacao) .games{grid-template-columns:1fr}}

/* Compact catalog: shared edges, consistent tracks and smaller illustrations. */
html body.pq-portal :is(#kids-area,#conhecimento,#adivinhacao){width:100%;max-width:1080px!important;margin-inline:auto!important}
html body.pq-portal #kids-area .biblical-kids-grid{gap:14px}
html body.pq-portal #kids-area .kids-game-tile>a{min-height:128px;padding:16px 32% 16px 16px;gap:7px}
html body.pq-portal #kids-area .kids-game-tile>a>strong{font-size:18px;line-height:1.3}
html body.pq-portal #kids-area .kids-game-tile>a>.kids-card-description{font-size:12px;line-height:1.45}
html body.pq-portal #kids-area .biblical-item{width:29%;max-width:100px;right:10px}
html body.pq-portal :is(#conhecimento,#adivinhacao) .game.has-card-avatar{grid-template-columns:minmax(0,1fr) 72px;min-height:260px!important;padding:16px!important}
html body.pq-portal :is(#conhecimento,#adivinhacao) .has-card-avatar>h3{font-size:16px;min-height:42px;margin-bottom:8px}
html body.pq-portal :is(#conhecimento,#adivinhacao) .has-card-avatar>p{font-size:13px;min-height:68px;margin-bottom:10px}
html body.pq-portal :is(#conhecimento,#adivinhacao) .card-avatar{width:72px;height:144px}
@media(max-width:750px){html body.pq-portal #kids-area .biblical-kids-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){html body.pq-portal #kids-area .biblical-kids-grid{grid-template-columns:1fr;gap:10px}html body.pq-portal #kids-area .kids-game-tile>a{min-height:108px;padding:14px 30% 14px 16px}html body.pq-portal #kids-area .kids-game-tile>a>strong{font-size:17px}html body.pq-portal #kids-area .biblical-item{width:26%;max-width:84px}html body.pq-portal :is(#conhecimento,#adivinhacao) .game.has-card-avatar{min-height:250px!important}html body.pq-portal :is(#conhecimento,#adivinhacao) .game .play{height:auto;min-height:44px;font-size:12px}}
.pq-portal .originals-link{display:inline-flex;align-items:center;min-height:44px;color:#ffcf97;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
