/* Com Marília Portal Tools — consolidated player stylesheet.
 * Generated from the approved RC15/Etapa 3 cascade without reordering rules.
 * Source order is intentionally preserved to keep rendering equivalent.
 */

/* ===== BEGIN PLAYER CASCADE SECTION: BASE / HUB ===== */
:root{
  --cmpt-bg:#061221;
  --cmpt-bg-deep:#030b15;
  --cmpt-surface:#0b1a2c;
  --cmpt-surface-2:#102238;
  --cmpt-line:rgba(151,177,208,.18);
  --cmpt-line-strong:rgba(255,91,39,.72);
  --cmpt-text:#f7f8fb;
  --cmpt-muted:#98a8bd;
  --cmpt-orange:#ff5428;
  --cmpt-orange-2:#ff763f;
  --cmpt-blue:#3b82f6;
  --cmpt-green:#79bb43;
  --cmpt-radius:18px;
  --cmpt-shadow:0 30px 90px rgba(0,0,0,.35);
  --cmpt-shell:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--cmpt-bg-deep)}
body.cmpt-webstories-page{margin:0;background:radial-gradient(circle at 50% -10%,#102642 0,#071525 36%,#030b15 100%);color:var(--cmpt-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh;overflow-x:hidden}
body.cmpt-webstories-page.admin-bar .cmpt-site-header{top:32px}
body.cmpt-webstories-page.cmpt-player-open{overflow:hidden}
button,input{font:inherit}
a{color:inherit;text-decoration:none}
button{color:inherit}
img,video,iframe{display:block;max-width:100%}
svg{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
[hidden]{display:none!important}
.cmpt-skip-link{position:fixed;left:12px;top:-80px;z-index:99999;background:#fff;color:#111;padding:10px 14px;border-radius:8px}.cmpt-skip-link:focus{top:12px}
.cmpt-app{min-height:100vh}
.cmpt-shell{width:min(calc(100% - 40px),var(--cmpt-shell));margin:0 auto}
.cmpt-site-header{position:sticky;top:0;z-index:80;background:linear-gradient(180deg,rgba(5,16,29,.98),rgba(5,16,29,.93));backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.05)}
.cmpt-site-header__inner{width:min(calc(100% - 40px),var(--cmpt-shell));height:92px;margin:auto;display:grid;grid-template-columns:auto auto minmax(280px,560px) auto;align-items:center;gap:18px}
.cmpt-brand{display:inline-flex;align-items:baseline;font-family:Poppins,sans-serif;font-size:30px;font-weight:800;letter-spacing:-1.4px;white-space:nowrap}.cmpt-brand span{color:#fff}.cmpt-brand strong{color:var(--cmpt-orange)}
.cmpt-tagline{max-width:130px;margin:0;color:#8191a7;font-size:11px;line-height:1.35}
.cmpt-header-ad{position:relative;min-width:0;height:58px;border:1px solid rgba(255,84,40,.7);border-radius:5px;overflow:visible;background:linear-gradient(100deg,#0e3c46,#08303a 52%,#0f4149);box-shadow:0 0 30px rgba(255,84,40,.08)}
.cmpt-header-ad small{position:absolute;left:50%;top:-13px;transform:translateX(-50%);font-size:8px;text-transform:uppercase;letter-spacing:.2em;color:#8797aa}
.cmpt-header-ad>a,.cmpt-header-ad>div{height:100%;padding:0 22px;display:flex;align-items:center;justify-content:center;gap:28px;text-align:center}.cmpt-header-ad b{font-size:14px}.cmpt-header-ad span{padding:7px 14px;border-radius:6px;background:rgba(0,0,0,.28);font-size:11px;font-weight:700}
.cmpt-header-ad img{width:100%;height:100%;object-fit:cover}
.cmpt-header-actions{display:flex;align-items:center;gap:22px}.cmpt-header-actions a,.cmpt-header-actions button{appearance:none;border:0;background:none;padding:8px;display:inline-flex;align-items:center;gap:7px;color:#b5c1d0;cursor:pointer;font-size:11px}.cmpt-header-actions svg{font-size:20px}.cmpt-header-actions a:hover,.cmpt-header-actions button:hover{color:#fff}
.cmpt-mobile-menu,.cmpt-mobile-search{display:none}
.cmpt-category-nav{width:min(calc(100% - 40px),var(--cmpt-shell));margin:0 auto;padding:0 0 14px;display:flex;gap:12px;overflow-x:auto;scrollbar-width:none}.cmpt-category-nav::-webkit-scrollbar{display:none}
.cmpt-category-nav button,.cmpt-chip-row button{appearance:none;flex:0 0 auto;border:1px solid var(--cmpt-line);background:rgba(255,255,255,.025);color:#dce3ec;border-radius:999px;padding:8px 21px;font-size:13px;cursor:pointer;transition:.2s}.cmpt-category-nav button:hover,.cmpt-chip-row button:hover{border-color:rgba(255,84,40,.7);color:#fff}.cmpt-category-nav button.is-active,.cmpt-chip-row button.is-active{background:var(--cmpt-orange);border-color:var(--cmpt-orange);box-shadow:0 8px 20px rgba(255,84,40,.2)}
.cmpt-loader{min-height:62vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--cmpt-muted)}.cmpt-loader span{width:42px;height:42px;border:3px solid rgba(255,255,255,.12);border-top-color:var(--cmpt-orange);border-radius:50%;animation:cmptSpin .8s linear infinite}@keyframes cmptSpin{to{transform:rotate(360deg)}}
.cmpt-error{width:min(calc(100% - 40px),720px);margin:80px auto;padding:28px;border:1px solid rgba(255,84,40,.45);border-radius:14px;background:rgba(255,84,40,.08);text-align:center}
.cmpt-hub{padding:44px 0 70px}.cmpt-hub h1{margin:0 0 18px;font:800 clamp(30px,4vw,46px)/1 Poppins,sans-serif;letter-spacing:-1.4px}
.cmpt-featured{position:relative;min-height:390px;border:1px solid var(--cmpt-line);border-radius:20px;overflow:hidden;background:var(--cmpt-surface);box-shadow:var(--cmpt-shadow)}
.cmpt-featured__media{position:absolute;inset:0}.cmpt-featured__media img{width:100%;height:100%;object-fit:cover}.cmpt-featured__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,11,21,.96) 0,rgba(3,11,21,.76) 32%,rgba(3,11,21,.18) 72%,rgba(3,11,21,.08) 100%),linear-gradient(0deg,rgba(3,11,21,.25),transparent 45%)}
.cmpt-featured__content{position:relative;z-index:2;min-height:390px;width:min(520px,72%);display:flex;flex-direction:column;justify-content:center;padding:42px}.cmpt-badge{align-self:flex-start;display:inline-flex;align-items:center;min-height:24px;padding:4px 10px;border-radius:3px;background:var(--cmpt-orange);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.cmpt-featured h2{margin:14px 0 10px;font:800 clamp(30px,4.2vw,50px)/1.03 Poppins,sans-serif;letter-spacing:-1.7px}.cmpt-featured p{max-width:440px;margin:0 0 22px;color:#d4dce6;font-size:16px;line-height:1.45}.cmpt-primary-button,.cmpt-card-button{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:10px;width:max-content;border:1px solid var(--cmpt-orange);background:rgba(3,11,21,.5);color:#fff;border-radius:9px;padding:11px 18px;font-size:12px;font-weight:700;cursor:pointer;transition:.2s}.cmpt-primary-button:hover,.cmpt-card-button:hover{background:var(--cmpt-orange);transform:translateY(-1px)}
.cmpt-featured-rail{margin-top:16px}.cmpt-card-row{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(190px,1fr);gap:12px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding:1px 1px 8px;scrollbar-width:none}.cmpt-card-row::-webkit-scrollbar{display:none}.cmpt-card-row--landscape{grid-auto-columns:minmax(250px,1fr)}
.cmpt-story-card{position:relative;height:300px;border:1px solid rgba(255,84,40,.8);border-radius:14px;overflow:hidden;background:var(--cmpt-surface);scroll-snap-align:start;cursor:pointer;isolation:isolate;transition:transform .22s,border-color .22s,box-shadow .22s}.cmpt-story-card:hover{transform:translateY(-4px);border-color:var(--cmpt-orange);box-shadow:0 18px 30px rgba(0,0,0,.25)}.cmpt-story-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--cmpt-focus,center)}.cmpt-story-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04) 28%,rgba(0,0,0,.9) 100%)}.cmpt-story-card__body{position:absolute;inset:auto 0 0;z-index:2;padding:14px}.cmpt-story-card h3{margin:8px 0 13px;font:700 17px/1.15 Poppins,sans-serif;letter-spacing:-.35px}.cmpt-story-card .cmpt-card-button{width:100%;padding:7px 10px;border-radius:8px;font-size:10px}.cmpt-story-card.is-artwork .cmpt-story-card__body{display:flex;justify-content:flex-end}.cmpt-story-card.is-artwork .cmpt-badge,.cmpt-story-card.is-artwork h3{display:none}
.cmpt-landscape-card{position:relative;height:190px;border:1px solid rgba(255,84,40,.7);border-radius:14px;overflow:hidden;background:var(--cmpt-surface);scroll-snap-align:start;cursor:pointer;transition:.2s}.cmpt-landscape-card:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(0,0,0,.25)}.cmpt-landscape-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--cmpt-focus,center)}.cmpt-landscape-card__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.88))}.cmpt-landscape-card__body{position:absolute;z-index:2;inset:auto 0 0;padding:14px}.cmpt-landscape-card h3{margin:7px 0 7px;font:700 16px/1.18 Poppins,sans-serif}.cmpt-landscape-card p{margin:0;color:#b4c0cf;font-size:11px}.cmpt-card-progress{height:3px;margin-top:10px;border-radius:10px;background:rgba(255,255,255,.18);overflow:hidden}.cmpt-card-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--cmpt-orange),#ff3e88);width:var(--progress,0%)}
.cmpt-dots{display:flex;justify-content:center;gap:10px;padding:8px 0 0}.cmpt-dots i{width:10px;height:10px;border-radius:50%;background:#d9dee7;opacity:.8}.cmpt-dots i:first-child{background:var(--cmpt-orange);opacity:1}
.cmpt-section{margin-top:28px}.cmpt-section>h2,.cmpt-section__heading h2{margin:0;font:700 22px/1.15 Poppins,sans-serif}.cmpt-section__heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cmpt-section__heading button{appearance:none;border:0;background:none;color:#b9c4d2;text-transform:uppercase;letter-spacing:.16em;font-size:10px;cursor:pointer}.cmpt-section__heading button:hover{color:var(--cmpt-orange)}
.cmpt-categories-section h2{margin-bottom:12px}.cmpt-chip-row{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none}.cmpt-chip-row::-webkit-scrollbar{display:none}
.cmpt-sponsored{margin-top:28px;border:1px solid var(--cmpt-orange);border-radius:16px;padding:16px;background:linear-gradient(120deg,rgba(255,84,40,.08),rgba(7,18,33,.8));display:grid;grid-template-columns:280px 1fr 160px;gap:18px;align-items:center}.cmpt-sponsored__intro small{display:block;color:var(--cmpt-orange);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.cmpt-sponsored__intro h2{margin:8px 0;font:700 22px/1.15 Poppins,sans-serif}.cmpt-sponsored__intro p{margin:0;color:#bec8d5;font-size:12px;line-height:1.45}.cmpt-sponsored__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cmpt-sponsored__mini{position:relative;height:110px;border:1px solid var(--cmpt-line);border-radius:10px;overflow:hidden;cursor:pointer}.cmpt-sponsored__mini img{width:100%;height:100%;object-fit:cover}.cmpt-sponsored__mini span{position:absolute;inset:auto 0 0;padding:8px;background:linear-gradient(transparent,rgba(0,0,0,.92));font-size:10px;font-weight:700}.cmpt-sponsored__brand{text-align:center}.cmpt-sponsored__brand img{max-width:130px;max-height:58px;margin:auto;object-fit:contain}.cmpt-sponsored__brand strong{display:block;color:#fff;font-size:18px}.cmpt-sponsored__brand small{display:block;color:#8ea0b6;margin-bottom:6px}
.cmpt-footer{border-top:1px solid rgba(255,255,255,.06);background:rgba(2,8,15,.45)}.cmpt-footer__inner{width:min(calc(100% - 40px),var(--cmpt-shell));margin:auto;padding:34px 0 42px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px}.cmpt-footer .cmpt-brand{font-size:25px}.cmpt-footer p{max-width:260px;color:#7f90a6;font-size:11px;line-height:1.55}.cmpt-footer nav{display:flex;flex-direction:column;gap:7px}.cmpt-footer strong{font-size:11px;text-transform:uppercase;letter-spacing:.08em}.cmpt-footer nav a{color:#8d9bb0;font-size:11px}.cmpt-footer nav a:hover{color:#fff}
/* Player */
.cmpt-player{position:fixed;inset:0;z-index:200;overflow-y:auto;background:radial-gradient(circle at 50% 5%,#102742 0,#071524 38%,#030b15 100%);padding:18px 0 0}.admin-bar .cmpt-player{top:32px}.cmpt-player-shell{width:min(calc(100% - 40px),1320px);min-height:100%;margin:0 auto;display:flex;flex-direction:column}.cmpt-player-toolbar{height:72px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.cmpt-back-feed,.cmpt-share{appearance:none;border:1px solid rgba(255,84,40,.7);background:rgba(5,15,27,.42);color:#f1f4f8;border-radius:5px;cursor:pointer}.cmpt-back-feed{justify-self:start;display:inline-flex;align-items:center;gap:10px;padding:9px 15px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.cmpt-back-feed svg{font-size:15px}.cmpt-share{justify-self:end;width:38px;height:38px;display:grid;place-items:center}.cmpt-player-counter{font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:#d5dce5}.cmpt-player-grid{flex:1;display:grid;grid-template-columns:260px minmax(420px,500px) 300px;justify-content:center;align-items:center;gap:50px;padding:12px 0 36px}.cmpt-next-panel h2,.cmpt-more-panel h2{margin:0 0 12px;color:#9ba9bb;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.cmpt-next-card{position:relative;height:300px;border:1px solid var(--cmpt-line);border-radius:8px;overflow:hidden;background:var(--cmpt-surface);cursor:pointer}.cmpt-next-card img{width:100%;height:100%;object-fit:cover}.cmpt-next-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,11,21,.18),rgba(3,11,21,.96))}.cmpt-next-card__content{position:absolute;z-index:2;inset:auto 0 0;padding:18px}.cmpt-next-card h3{margin:10px 0 8px;font:700 20px/1.17 Poppins,sans-serif}.cmpt-next-card p{margin:0;color:#a9b5c5;font-size:10px}.cmpt-stage-column{min-width:0}.cmpt-segment-progress{height:24px;display:flex;align-items:center;gap:5px;padding:0 8px}.cmpt-segment-progress button{appearance:none;flex:1;height:3px;border:0;border-radius:10px;background:rgba(202,214,228,.6);padding:0;overflow:hidden;cursor:pointer}.cmpt-segment-progress button span{display:block;width:0;height:100%;background:var(--cmpt-orange)}.cmpt-segment-progress button.is-complete span,.cmpt-segment-progress button.is-active span{width:100%}.cmpt-stage-wrap{position:relative}.cmpt-story-stage{position:relative;width:100%;aspect-ratio:9/12.4;max-height:710px;border:1px solid var(--cmpt-line);border-radius:8px;overflow:hidden;background:#000;box-shadow:0 25px 80px rgba(0,0,0,.4);touch-action:pan-y;user-select:none}.cmpt-stage-media{position:absolute;inset:0}.cmpt-stage-media img,.cmpt-stage-media video,.cmpt-stage-media iframe{width:100%;height:100%;object-fit:cover;border:0}.cmpt-stage-media iframe{pointer-events:none}.cmpt-stage-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,7,13,.14) 30%,rgba(1,7,13,.78) 78%,rgba(1,7,13,.94) 100%)}.cmpt-stage-copy{position:absolute;z-index:5;inset:0;padding:44px 38px 32px;display:flex;flex-direction:column;justify-content:flex-end;pointer-events:none}.cmpt-stage-copy.is-top{justify-content:flex-start}.cmpt-stage-copy.is-center{justify-content:center}.cmpt-stage-copy h2{margin:12px 0 12px;font:800 42px/1.02 Poppins,sans-serif;letter-spacing:-1.8px;text-transform:uppercase;text-shadow:0 3px 14px rgba(0,0,0,.6)}.cmpt-stage-copy h2 em{color:var(--cmpt-orange);font-style:normal}.cmpt-stage-copy .cmpt-slide-text{color:#f3f5f8;font-size:15px;line-height:1.45;text-shadow:0 2px 8px rgba(0,0,0,.7)}.cmpt-stage-copy.is-small h2{font-size:31px}.cmpt-stage-copy.is-large h2{font-size:50px}.cmpt-stage-meta{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:18px}.cmpt-stage-meta img{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.3)}.cmpt-stage-meta p{margin:0;font-size:9px;line-height:1.35;color:#d2dae4}.cmpt-stage-meta strong{display:block;color:#fff}.cmpt-stage-hint{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:18px;font-size:9px;text-transform:uppercase;letter-spacing:.18em}.cmpt-stage-hint i{width:24px;height:24px;border:1px solid var(--cmpt-orange);border-radius:50%;display:grid;place-items:center;color:var(--cmpt-orange);font-style:normal}.cmpt-stage-cta{pointer-events:auto;align-self:flex-start;margin-top:16px}.cmpt-story-arrow{position:absolute;top:50%;z-index:12;width:44px;height:44px;margin-top:-22px;border:1px solid var(--cmpt-orange);border-radius:50%;background:rgba(4,13,24,.76);color:var(--cmpt-orange);display:grid;place-items:center;cursor:pointer}.cmpt-story-arrow:hover{background:var(--cmpt-orange);color:#fff}.cmpt-story-arrow--prev{left:-68px}.cmpt-story-arrow--next{right:-68px}.cmpt-story-arrow svg{font-size:22px}.cmpt-tap-zone{position:absolute;z-index:9;top:0;bottom:0;width:32%;border:0;background:transparent;cursor:pointer}.cmpt-tap-zone--prev{left:0}.cmpt-tap-zone--next{right:0}.cmpt-media-controls{position:absolute;z-index:14;top:16px;right:15px;display:flex;gap:8px}.cmpt-media-controls button{width:34px;height:34px;border:1px solid rgba(255,255,255,.2);border-radius:50%;background:rgba(0,0,0,.38);backdrop-filter:blur(8px);display:grid;place-items:center;cursor:pointer}.cmpt-sponsor-strip{min-height:54px;display:flex;align-items:center;justify-content:center;gap:24px;padding-top:10px;color:#a6b3c4;font-size:10px}.cmpt-sponsor-strip img{max-height:40px;max-width:140px;object-fit:contain}.cmpt-sponsor-strip strong{font-size:13px;color:#fff}.cmpt-more-panel{align-self:center;border:1px solid var(--cmpt-line);border-radius:10px;padding:18px;background:rgba(11,26,44,.58)}.cmpt-more-list{display:flex;flex-direction:column;gap:12px}.cmpt-more-item{display:grid;grid-template-columns:96px 1fr auto;gap:11px;align-items:center;cursor:pointer}.cmpt-more-item img{width:96px;height:72px;border-radius:7px;object-fit:cover}.cmpt-more-item h3{margin:6px 0 5px;font:700 13px/1.2 Poppins,sans-serif}.cmpt-more-item p{margin:0;color:#8292a7;font-size:9px}.cmpt-more-item>i{width:25px;height:25px;border:1px solid var(--cmpt-orange);border-radius:50%;display:grid;place-items:center;color:var(--cmpt-orange);font-style:normal}.cmpt-more-panel>button{appearance:none;width:100%;margin-top:16px;border:1px solid var(--cmpt-line);border-radius:6px;background:transparent;color:#b7c3d1;padding:9px;display:flex;align-items:center;justify-content:center;gap:7px;font-size:9px;text-transform:uppercase;letter-spacing:.1em;cursor:pointer}.cmpt-more-panel>button:hover{border-color:var(--cmpt-orange);color:#fff}
/* Modal / search */
.cmpt-search-overlay{position:fixed;inset:0;z-index:350}.cmpt-search-overlay{display:grid;place-items:start center;padding-top:12vh;background:rgba(3,11,21,.96);backdrop-filter:blur(18px)}.cmpt-search-overlay>button{position:absolute;top:24px;right:28px;border:0;background:none;color:#fff;font-size:34px;cursor:pointer}.cmpt-search-overlay>div{width:min(calc(100% - 36px),720px)}.cmpt-search-overlay label{display:block;margin-bottom:12px;font:700 28px Poppins,sans-serif}.cmpt-search-overlay input{width:100%;height:58px;border:1px solid var(--cmpt-line);border-radius:12px;background:#0b1a2c;color:#fff;padding:0 18px;outline:none}.cmpt-search-overlay input:focus{border-color:var(--cmpt-orange)}.cmpt-search-results{display:grid;gap:10px;margin-top:16px}.cmpt-search-result{display:grid;grid-template-columns:90px 1fr;gap:14px;padding:10px;border:1px solid var(--cmpt-line);border-radius:10px;background:#0b1a2c;cursor:pointer}.cmpt-search-result img{width:90px;height:68px;border-radius:7px;object-fit:cover}.cmpt-search-result h3{margin:3px 0 5px;font-size:14px}.cmpt-search-result p{margin:0;color:var(--cmpt-muted);font-size:10px}
.cmpt-toast{position:fixed;z-index:500;left:50%;bottom:28px;transform:translateX(-50%);background:#fff;color:#111;padding:10px 16px;border-radius:999px;font-size:12px;font-weight:700;box-shadow:0 12px 40px rgba(0,0,0,.35)}
@media(max-width:1100px){
  .cmpt-site-header__inner{grid-template-columns:auto 1fr auto}.cmpt-tagline{display:none}.cmpt-header-ad{justify-self:stretch}.cmpt-player-grid{grid-template-columns:minmax(390px,500px) 280px;gap:40px}.cmpt-next-panel{display:none}.cmpt-sponsored{grid-template-columns:240px 1fr}.cmpt-sponsored__brand{display:none}
}
@media(max-width:782px){body.cmpt-webstories-page.admin-bar .cmpt-site-header{top:46px}.admin-bar .cmpt-player{top:46px}}
@media(max-width:820px){
  body.cmpt-webstories-page{background:#061221}.cmpt-shell,.cmpt-site-header__inner,.cmpt-category-nav,.cmpt-footer__inner{width:min(calc(100% - 24px),720px)}
  .cmpt-site-header{position:relative}.cmpt-site-header__inner{height:86px;grid-template-columns:42px 1fr 42px;gap:10px}.cmpt-site-header__inner>.cmpt-brand{justify-self:center;font-size:29px}.cmpt-header-ad,.cmpt-header-actions{display:none}.cmpt-mobile-menu,.cmpt-mobile-search{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--cmpt-line);border-radius:50%;background:transparent;color:#fff}.cmpt-mobile-menu{grid-column:1;grid-row:1}.cmpt-mobile-search{grid-column:3;grid-row:1}.cmpt-mobile-menu svg,.cmpt-mobile-search svg{font-size:22px}.cmpt-category-nav{padding-bottom:14px}.cmpt-category-nav button{padding:8px 17px}
  .cmpt-hub{padding:24px 0 38px}.cmpt-hub h1{font-size:30px;margin-bottom:14px}.cmpt-featured{min-height:282px}.cmpt-featured__content{width:80%;min-height:282px;padding:22px}.cmpt-featured h2{font-size:29px;letter-spacing:-.9px}.cmpt-featured p{font-size:13px;margin-bottom:14px}.cmpt-featured__shade{background:linear-gradient(90deg,rgba(3,11,21,.93),rgba(3,11,21,.48) 68%,rgba(3,11,21,.1))}.cmpt-primary-button{padding:8px 14px;font-size:10px}.cmpt-card-row{grid-auto-columns:155px}.cmpt-card-row--landscape{grid-auto-columns:205px}.cmpt-story-card{height:224px}.cmpt-story-card h3{font-size:13px}.cmpt-landscape-card{height:165px}.cmpt-landscape-card h3{font-size:13px}.cmpt-section{margin-top:24px}.cmpt-section>h2,.cmpt-section__heading h2{font-size:18px}.cmpt-sponsored{grid-template-columns:1fr;padding:13px}.cmpt-sponsored__cards{grid-template-columns:repeat(3,1fr)}.cmpt-sponsored__intro h2{font-size:18px}.cmpt-footer__inner{grid-template-columns:1fr 1fr;gap:24px}
  .cmpt-player{padding:0;background:#000}.admin-bar .cmpt-player{top:0}.cmpt-player-shell{width:100%;height:100dvh}.cmpt-player-toolbar{position:absolute;z-index:250;top:0;left:0;right:0;height:58px;padding:0 12px;background:linear-gradient(rgba(0,0,0,.75),transparent);grid-template-columns:1fr auto 1fr;pointer-events:none}.cmpt-player-toolbar>*{pointer-events:auto}.cmpt-back-feed{width:38px;height:38px;border:0;border-radius:50%;padding:0;display:grid;place-items:center;background:rgba(0,0,0,.38);backdrop-filter:blur(8px)}.cmpt-back-feed span{display:none}.cmpt-player-counter{font-size:8px}.cmpt-share{border:0;background:rgba(0,0,0,.38);backdrop-filter:blur(8px)}.cmpt-player-grid{display:block;height:100%;padding:0}.cmpt-stage-column,.cmpt-stage-wrap{height:100%}.cmpt-segment-progress{position:absolute;z-index:240;top:max(10px,env(safe-area-inset-top));left:54px;right:54px;height:10px;padding:0}.cmpt-story-stage{width:100%;height:100dvh;max-height:none;aspect-ratio:auto;border:0;border-radius:0}.cmpt-stage-copy{padding:72px 22px calc(34px + env(safe-area-inset-bottom))}.cmpt-stage-copy h2{font-size:34px}.cmpt-stage-copy.is-small h2{font-size:27px}.cmpt-stage-copy.is-large h2{font-size:40px}.cmpt-stage-copy .cmpt-slide-text{font-size:14px}.cmpt-stage-meta{margin-top:18px}.cmpt-story-arrow,.cmpt-sponsor-strip,.cmpt-more-panel{display:none}.cmpt-media-controls{top:62px}
}
@media(max-width:520px){
  .cmpt-shell,.cmpt-site-header__inner,.cmpt-category-nav,.cmpt-footer__inner{width:calc(100% - 20px)}.cmpt-brand{font-size:27px}.cmpt-featured__content{width:90%;padding:20px}.cmpt-featured h2{font-size:27px}.cmpt-card-row{grid-auto-columns:148px;gap:8px}.cmpt-card-row--landscape{grid-auto-columns:190px}.cmpt-story-card{height:222px}.cmpt-sponsored__cards{grid-template-columns:repeat(3,150px);overflow-x:auto}.cmpt-sponsored__mini{height:100px}.cmpt-footer__inner{grid-template-columns:1fr}.cmpt-footer nav{display:none}.cmpt-search-overlay{padding-top:9vh}.cmpt-search-overlay label{font-size:23px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}


/* =========================================================
   Com Marília Portal Tools 2.0.1 — image-first 9:16 player
   ========================================================= */
@media (min-width: 821px) {
  .cmpt-featured,
  .cmpt-featured__content {
    height: 390px;
    min-height: 390px;
    max-height: 390px;
  }
  .cmpt-featured__content { overflow: hidden; }
  .cmpt-featured h2 {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
  .cmpt-featured p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
  .cmpt-player-grid {
    grid-template-columns: 240px minmax(320px,430px) 300px;
    gap: 44px;
  }
  .cmpt-stage-column {
    width: min(430px,calc((100dvh - 150px) * .5625));
    min-width: 320px;
    justify-self: center;
  }
  .cmpt-story-stage {
    width: 100%;
    height: auto;
    max-height: calc(100dvh - 150px);
    aspect-ratio: 9/16;
    margin-inline: auto;
  }
  .cmpt-stage-media img,
  .cmpt-stage-media video,
  .cmpt-stage-media iframe {
    object-fit: cover;
  }
  .cmpt-next-card { height: 286px; }
}

.cmpt-stage-copy--artwork {
  justify-content: flex-end;
  padding: 26px 24px;
  background: linear-gradient(180deg,transparent 72%,rgba(0,0,0,.28));
}
.cmpt-stage-copy--artwork .cmpt-stage-hint {
  margin-top: auto;
  opacity: .86;
}
.cmpt-next-card p,
.cmpt-more-item p,
.cmpt-stage-meta {
  display: none !important;
}

@media (max-width: 820px) {
  .cmpt-featured,
  .cmpt-featured__content {
    height: 282px;
    min-height: 282px;
    max-height: 282px;
  }
  .cmpt-featured__content { overflow: hidden; }
  .cmpt-stage-copy--artwork {
    padding: 70px 22px calc(28px + env(safe-area-inset-bottom));
  }
}


/* =========================================================
   Com Marília Portal Tools 2.0.2 — clean player navigation
   ========================================================= */
.cmpt-player-toolbar__spacer {
  width: 1px;
  height: 1px;
}
.cmpt-player-counter {
  display: none !important;
}
@media (min-width: 821px) {
  .cmpt-player-grid {
    grid-template-columns: 240px minmax(320px,430px) 300px;
    gap: 72px;
  }
  .cmpt-stage-wrap {
    isolation: isolate;
  }
  .cmpt-story-arrow--prev {
    left: -58px;
  }
  .cmpt-story-arrow--next {
    right: -58px;
  }
  .cmpt-story-arrow {
    width: 42px;
    height: 42px;
    margin-top: -21px;
    box-shadow: 0 10px 28px rgba(0,0,0,.35);
  }
}
@media (min-width: 821px) and (max-width: 1180px) {
  .cmpt-player-grid {
    grid-template-columns: minmax(320px,430px) 280px;
    gap: 58px;
  }
  .cmpt-next-panel {
    display: none;
  }
  .cmpt-story-arrow--prev {
    left: -50px;
  }
  .cmpt-story-arrow--next {
    right: -50px;
  }
}
.cmpt-more-item p,
.cmpt-next-card p {
  display: none !important;
}


/* =========================================================
   Com Marília Portal Tools 2.0.3 — fluid story transitions
   ========================================================= */
.cmpt-story-stage,
.cmpt-segment-progress,
.cmpt-next-panel [data-cmpt-next-preview],
.cmpt-more-panel [data-cmpt-more-stories],
.cmpt-sponsor-strip {
  transform: translateZ(0);
  backface-visibility: hidden;
  will-change: transform, opacity, filter;
}
.cmpt-player.is-transitioning .cmpt-tap-zone,
.cmpt-player.is-transitioning .cmpt-story-arrow,
.cmpt-player.is-transitioning .cmpt-more-item,
.cmpt-player.is-transitioning .cmpt-next-card,
.cmpt-player.is-transitioning .cmpt-segment-progress button {
  pointer-events: none;
}
.cmpt-player.is-story-transitioning .cmpt-story-stage {
  box-shadow: 0 28px 95px rgba(0,0,0,.46);
}
.cmpt-stage-media img {
  transform: translateZ(0) scale(1.001);
}
@media (prefers-reduced-motion: reduce) {
  .cmpt-story-stage,
  .cmpt-segment-progress,
  .cmpt-next-panel [data-cmpt-next-preview],
  .cmpt-more-panel [data-cmpt-more-stories],
  .cmpt-sponsor-strip {
    will-change: auto;
  }
}


/* =========================================================
   Com Marília Portal Tools 2.0.4 — semantic navigation axes
   ========================================================= */
.cmpt-player.is-slide-transitioning .cmpt-story-stage {
  transform-origin: center center;
}
.cmpt-player.is-story-transitioning .cmpt-story-stage {
  transform-origin: center center;
}
.cmpt-player.is-story-transitioning .cmpt-next-panel [data-cmpt-next-preview],
.cmpt-player.is-story-transitioning .cmpt-more-panel [data-cmpt-more-stories],
.cmpt-player.is-story-transitioning .cmpt-sponsor-strip {
  will-change: transform, opacity;
}


/* =========================================================
   Com Marília Portal Tools 2.0.5 — article reader overlay
   ========================================================= */
body.cmpt-webstories-page.cmpt-modal-open {
  overflow: hidden;
}
.cmpt-stage-copy {
  z-index: 10;
}
.cmpt-tap-zone {
  z-index: 6;
}
.cmpt-stage-cta {
  position: relative;
  z-index: 20;
}
.cmpt-modal-footer {
  display: flex;
  justify-content: center;
  margin-top: 42px;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,.1);
}
.cmpt-modal-footer button {
  min-height: 44px;
  padding: 0 22px;
  border: 1px solid var(--cmpt-orange);
  border-radius: 8px;
  background: transparent;
  color: #fff;
  font-weight: 750;
  cursor: pointer;
}
.cmpt-modal-footer button:hover,
.cmpt-modal-footer button:focus-visible {
  background: var(--cmpt-orange);
}
@media (max-width: 820px) {
}
@media (prefers-reduced-motion: reduce) {
}

/* =========================================================
   Com Marília Portal Tools 2.0.6 — clear desktop player
   ========================================================= */
.cmpt-player-ad {
  display: none;
}
.cmpt-story-navigation {
  display: none;
}
.cmpt-stage-copy {
  display: grid;
  grid-template-rows: minmax(0,1fr) auto;
  gap: 14px;
  padding: 34px 32px 24px;
  overflow: hidden;
}
.cmpt-stage-copy__content {
  min-height: 0;
  max-height: 100%;
  align-self: end;
  overflow: hidden;
}
.cmpt-stage-copy.is-top .cmpt-stage-copy__content {
  align-self: start;
}
.cmpt-stage-copy.is-center .cmpt-stage-copy__content {
  align-self: center;
}
.cmpt-stage-copy__content h2 {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
}
.cmpt-stage-copy__content .cmpt-slide-text {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 7;
}
.cmpt-stage-copy__content.is-copy-long h2 {
  font-size: 32px;
  line-height: 1.06;
}
.cmpt-stage-copy__content.is-copy-long .cmpt-slide-text {
  font-size: 13px;
  line-height: 1.4;
  -webkit-line-clamp: 6;
}
.cmpt-stage-copy__content.is-copy-very-long h2 {
  font-size: 27px;
  line-height: 1.08;
  -webkit-line-clamp: 4;
}
.cmpt-stage-copy__content.is-copy-very-long .cmpt-slide-text {
  font-size: 12px;
  line-height: 1.36;
  -webkit-line-clamp: 5;
}
.cmpt-stage-actions {
  position: relative;
  z-index: 14;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 44px;
  pointer-events: none;
}
.cmpt-stage-actions .cmpt-stage-hint {
  margin: 0;
  pointer-events: none;
}
.cmpt-stage-actions .cmpt-stage-cta {
  margin: 0;
  pointer-events: auto;
}
.cmpt-stage-copy--artwork {
  grid-template-rows: 1fr auto;
  padding: 24px;
  background: linear-gradient(180deg,transparent 74%,rgba(0,0,0,.38));
}
.cmpt-stage-copy--artwork .cmpt-stage-actions {
  align-self: end;
}
.cmpt-next-card h3,
.cmpt-more-item h3 {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
}
.cmpt-next-card h3 {
  -webkit-line-clamp: 4;
}
.cmpt-more-item h3 {
  -webkit-line-clamp: 3;
}
.cmpt-next-card__direction {
  display: inline-flex;
  margin-top: 10px;
  color: #c1ccda;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.cmpt-story-arrow {
  display: none !important;
}

@media (min-width: 821px) {
  .cmpt-player {
    padding-top: 10px;
  }
  .cmpt-player-shell {
    width: min(calc(100% - 32px),1360px);
  }
  .cmpt-player-toolbar {
    height: 54px;
  }
  .cmpt-player-ad {
    position: relative;
    display: flex;
    width: min(728px,calc(100% - 280px));
    min-height: 66px;
    max-height: 90px;
    align-items: center;
    justify-content: center;
    margin: 0 auto 10px;
  }
  .cmpt-player-ad .cmads-slot,
  .cmpt-player-ad .cmads-creative,
  .cmpt-player-ad .cmads-click,
  .cmpt-player-ad picture,
  .cmpt-player-ad img,
  .cmpt-player-ad__custom,
  .cmpt-player-ad__custom > * {
    width: 100%;
    max-height: 90px;
  }
  .cmpt-player-ad img {
    height: 66px;
    object-fit: cover;
    border-radius: 7px;
  }
  .cmpt-player-ad__custom {
    overflow: hidden;
    border: 1px solid rgba(255,84,40,.62);
    border-radius: 7px;
  }
  .cmpt-player-ad__house {
    position: relative;
    display: grid;
    width: 100%;
    min-height: 66px;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 18px;
    padding: 12px 22px;
    overflow: hidden;
    border: 1px solid rgba(255,84,40,.62);
    border-radius: 7px;
    background: linear-gradient(100deg,#4b1b13,#8d2e16 52%,#321016);
  }
  .cmpt-player-ad__house small {
    position: absolute;
    top: 5px;
    left: 50%;
    color: #c3acaa;
    font-size: 7px;
    letter-spacing: .18em;
    text-transform: uppercase;
    transform: translateX(-50%);
  }
  .cmpt-player-ad__house strong {
    font: 700 14px/1.2 Poppins,sans-serif;
  }
  .cmpt-player-ad__house span {
    padding: 8px 13px;
    border-radius: 6px;
    background: var(--cmpt-orange);
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
  }
  .cmpt-player-grid {
    grid-template-columns: 226px minmax(310px,390px) 300px;
    align-items: center;
    gap: 42px;
    padding: 4px 0 24px;
  }
  .cmpt-stage-column {
    width: min(390px,calc((100dvh - 240px) * .5625));
    min-width: 310px;
  }
  .cmpt-story-navigation {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 10px;
    min-height: 36px;
    margin-bottom: 3px;
  }
  .cmpt-story-navigation button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 30px;
    padding: 0 8px;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #c3cedb;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    cursor: pointer;
  }
  .cmpt-story-navigation button:last-child {
    justify-self: end;
  }
  .cmpt-story-navigation button:hover,
  .cmpt-story-navigation button:focus-visible {
    color: var(--cmpt-orange);
    background: rgba(255,84,40,.08);
  }
  .cmpt-story-navigation svg {
    font-size: 14px;
  }
  .cmpt-story-navigation p {
    display: flex;
    align-items: center;
    gap: 4px;
    margin: 0;
    color: #73849a;
    font-size: 7px;
    letter-spacing: .05em;
    text-transform: uppercase;
    white-space: nowrap;
  }
  .cmpt-story-navigation p b {
    margin: 0 2px;
  }
  .cmpt-segment-progress {
    height: 18px;
  }
  .cmpt-story-stage {
    max-height: calc(100dvh - 240px);
  }
  .cmpt-next-panel,
  .cmpt-more-panel {
    max-height: calc(100dvh - 230px);
  }
  .cmpt-next-card {
    height: min(286px,calc(100dvh - 420px));
    min-height: 230px;
  }
  .cmpt-more-panel {
    overflow: hidden;
  }
  .cmpt-more-list {
    gap: 10px;
  }
  .cmpt-more-item {
    grid-template-columns: 82px minmax(0,1fr) auto;
    gap: 9px;
  }
  .cmpt-more-item img {
    width: 82px;
    height: 62px;
  }
  .cmpt-more-item h3 {
    margin: 5px 0 0;
    font-size: 12px;
    line-height: 1.16;
  }
}

@media (min-width: 821px) and (max-width: 1120px) {
  .cmpt-player-ad {
    width: min(680px,calc(100% - 40px));
  }
  .cmpt-player-grid {
    grid-template-columns: minmax(310px,390px) 275px;
    gap: 32px;
  }
  .cmpt-next-panel {
    display: none;
  }
  .cmpt-stage-column {
    width: min(380px,calc((100dvh - 240px) * .5625));
  }
}

@media (max-width: 820px) {
  .cmpt-stage-copy {
    padding: 72px 22px calc(28px + env(safe-area-inset-bottom));
  }
  .cmpt-stage-copy__content.is-copy-long h2 {
    font-size: 29px;
  }
  .cmpt-stage-copy__content.is-copy-very-long h2 {
    font-size: 25px;
  }
  .cmpt-stage-actions {
    padding-bottom: env(safe-area-inset-bottom);
  }
  .cmpt-stage-hint {
    margin-inline: auto;
  }
}

/* Final readability refinements for 2.0.6. */
.cmpt-next-card h3 {
  -webkit-line-clamp: 5;
  overflow-wrap: anywhere;
}
.cmpt-more-item h3 {
  -webkit-line-clamp: 4;
  overflow-wrap: anywhere;
}
@media (min-width: 821px) {
  .cmpt-player-ad .cmads-slot {
    position: relative;
    margin: 0;
  }
  .cmpt-player-ad .cmads-label {
    position: absolute;
    z-index: 2;
    top: -10px;
    left: 50%;
    margin: 0;
    padding: 0 7px;
    background: #071525;
    font-size: 7px;
    transform: translateX(-50%);
  }
  .cmpt-player-ad .cmads-admin-placeholder {
    min-height: 66px;
    padding: 8px 14px;
  }
}


/* =========================================================
   Com Marília Portal Tools 2.0.8 — canonical hub, format choice and light mode
   ========================================================= */
.cmpt-content-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 8px;padding:4px;border:1px solid var(--cmpt-line);border-radius:10px;background:rgba(255,255,255,.025)}
.cmpt-content-mode-switch button{min-height:34px;padding:0 12px;border:1px solid transparent;border-radius:7px;color:#aebccd;background:transparent;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.cmpt-content-mode-switch button:hover,.cmpt-content-mode-switch button:focus-visible{color:#fff;border-color:rgba(255,84,40,.5)}
.cmpt-content-mode-switch button.is-active{color:#fff;background:var(--cmpt-orange);box-shadow:0 7px 18px rgba(255,84,40,.2)}
.cmpt-story-stage:focus-visible{outline:2px solid var(--cmpt-orange);outline-offset:4px}
body.cmpt-webstories-page.cm-color-scheme-light{--cmpt-bg:#f4f7fb;--cmpt-bg-deep:#eaf0f6;--cmpt-surface:#fff;--cmpt-surface-2:#eef3f8;--cmpt-line:rgba(10,35,66,.16);--cmpt-line-strong:rgba(255,84,40,.7);--cmpt-text:#0a2342;--cmpt-muted:#66758a;--cmpt-shadow:0 26px 70px rgba(10,35,66,.13);background:radial-gradient(circle at 50% -12%,#fff 0,#f4f7fb 38%,#eaf0f6 100%);color:var(--cmpt-text)}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-site-header{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,250,253,.95));border-bottom-color:rgba(10,35,66,.14);box-shadow:0 8px 28px rgba(10,35,66,.07)}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-brand span,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-header-actions a,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-header-actions button,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-mobile-menu,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-mobile-search{color:#0a2342}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-tagline,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-section__heading button{color:#65758a}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-header-ad{color:#fff;background:linear-gradient(100deg,#081d37,#0a3157 52%,#08233e);border-color:rgba(255,84,40,.72)}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-category-nav button,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-chip-row button{color:#0a2342;background:#fff;border-color:rgba(10,35,66,.16)}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-category-nav button.is-active,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-chip-row button.is-active{color:#fff;background:#0a2342;border-color:#0a2342;box-shadow:0 8px 20px rgba(10,35,66,.18)}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-featured,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-section,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-sponsored{border-color:rgba(10,35,66,.14)}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-featured__content,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-story-card,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-landscape-card{color:#fff}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player{background:linear-gradient(180deg,#f7f9fc,#eaf0f6);color:#0a2342}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-toolbar button,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-story-navigation button{color:#0a2342}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-content-mode-switch{background:#fff;border-color:rgba(10,35,66,.18);box-shadow:0 8px 22px rgba(10,35,66,.06)}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-content-mode-switch button{color:#0a2342}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-content-mode-switch button.is-active{color:#fff;background:#0a2342;box-shadow:0 7px 18px rgba(10,35,66,.2)}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-story-navigation p{color:#64758a}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-next-panel,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-more-panel{color:#eef4fb;background:#081d37;border-color:rgba(255,84,40,.32);box-shadow:0 22px 50px rgba(10,35,66,.16)}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-next-panel h2,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-more-panel h2,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-next-card h3,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-more-item h3{color:#fff}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-more-item{border-color:rgba(255,255,255,.1)}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-more-panel>button{color:#fff;border-color:rgba(255,255,255,.2)}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-sponsor-strip{color:#0a2342}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-ad .cmads-label{color:#66758a;background:#f4f7fb}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-modal-footer{border-color:rgba(10,35,66,.12)}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-modal-footer button{color:#fff;background:#0a2342;border-color:#0a2342}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-footer{color:#eaf0f7;background:#081d37;border-top-color:rgba(255,255,255,.08)}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-footer .cmpt-brand span,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-footer a,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-footer strong,body.cmpt-webstories-page.cm-color-scheme-light .cmpt-footer p{color:#eaf0f7}
@media(max-width:820px){.cmpt-content-mode-switch{position:absolute;z-index:26;top:calc(58px + env(safe-area-inset-top));left:50%;width:min(330px,calc(100% - 32px));margin:0;background:rgba(3,11,21,.72);backdrop-filter:blur(12px);transform:translateX(-50%)}.cmpt-content-mode-switch button{min-height:36px}body.cmpt-webstories-page.cm-color-scheme-light .cmpt-content-mode-switch{background:rgba(255,255,255,.9)}}


/* =========================================================
   Com Marília Portal Tools 2.1.0 — gesture guide and compact format controls
   ========================================================= */
.cmpt-content-mode-switch button { display:flex; align-items:center; justify-content:center; gap:7px; }
.cmpt-content-mode-switch button svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.cmpt-content-mode-switch.is-compact { grid-template-columns:36px 36px; justify-content:end; width:max-content; margin-left:auto; padding:3px; border-radius:999px; }
.cmpt-content-mode-switch.is-compact button { width:36px; min-height:36px; padding:0; border-radius:50%; }
.cmpt-content-mode-switch.is-compact button span { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.cmpt-content-mode-switch.is-compact button svg { width:17px; height:17px; }
.cmpt-stage-gesture-guide { position:absolute; z-index:24; top:14px; left:50%; display:flex; align-items:center; gap:6px; width:max-content; max-width:calc(100% - 26px); padding:5px; border:1px solid rgba(255,255,255,.16); border-radius:999px; color:#fff; background:rgba(3,11,21,.64); box-shadow:0 8px 24px rgba(0,0,0,.18); backdrop-filter:blur(10px); transform:translateX(-50%); pointer-events:none; }
.cmpt-stage-gesture-guide span { display:grid; grid-template-columns:auto auto; align-items:center; column-gap:5px; min-width:0; padding:4px 8px; border-radius:999px; }
.cmpt-stage-gesture-guide span + span { border-left:1px solid rgba(255,255,255,.14); border-radius:0 999px 999px 0; }
.cmpt-stage-gesture-guide i { grid-row:1 / span 2; font-style:normal; font-size:15px; color:var(--cmpt-orange); }
.cmpt-stage-gesture-guide b { font-size:7px; line-height:1.1; letter-spacing:.05em; text-transform:uppercase; white-space:nowrap; }
.cmpt-stage-gesture-guide small { color:rgba(255,255,255,.68); font-size:6px; line-height:1.1; white-space:nowrap; }
.cmpt-stage-gesture-guide.is-last-segment span:last-child { background:rgba(255,84,40,.18); }
.cmpt-stage-copy { padding-top:74px; }
.cmpt-stage-copy--artwork { pointer-events:none; }
.cmpt-stage-copy--artwork .cmpt-stage-actions { pointer-events:auto; }
.cmpt-stage-actions { margin-top:auto; }
.cmpt-stage-actions:empty { display:none; }
@media (max-width: 820px) {
  .cmpt-content-mode-switch.is-first-segment { left:50%; right:auto; width:min(330px,calc(100% - 32px)); transform:translateX(-50%); }
  .cmpt-content-mode-switch.is-compact { top:calc(60px + env(safe-area-inset-top)); left:auto; right:14px; width:auto; transform:none; background:rgba(3,11,21,.72); }
  .cmpt-stage-gesture-guide { top:calc(108px + env(safe-area-inset-top)); max-width:calc(100% - 28px); }
  .cmpt-content-mode-switch.is-compact + .cmpt-story-navigation + .cmpt-segment-progress + .cmpt-stage-wrap .cmpt-stage-gesture-guide { top:calc(108px + env(safe-area-inset-top)); }
  .cmpt-stage-gesture-guide span { padding:3px 6px; }
  .cmpt-stage-gesture-guide b { font-size:6.5px; }
  .cmpt-stage-gesture-guide small { display:none; }
  .cmpt-stage-copy { padding-top:132px; }
}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-stage-gesture-guide { color:#fff; background:rgba(8,29,55,.82); border-color:rgba(255,255,255,.16); }
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-content-mode-switch.is-compact { background:#fff; border-color:rgba(10,35,66,.18); }


/* =========================================================
   Com Marília Portal Tools 2.1.1 — refinamentos do player
   ========================================================= */
@media (min-width: 821px) {
  .cmpt-story-navigation {
    display: none !important;
  }

  .cmpt-stage-column {
    position: relative;
  }

  .cmpt-content-mode-switch {
    margin: 0 0 10px;
    padding: 4px;
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(12, 29, 49, .96), rgba(9, 23, 39, .92));
    box-shadow: 0 14px 34px rgba(0, 0, 0, .18);
    transition: box-shadow .25s ease, border-color .25s ease, background .25s ease;
  }

  .cmpt-content-mode-switch button {
    min-height: 42px;
    border-radius: 10px;
    font-size: 11px;
    letter-spacing: .04em;
    transition: transform .22s cubic-bezier(.16,1,.3,1), background-color .22s ease, color .22s ease, box-shadow .22s ease, opacity .22s ease;
  }

  .cmpt-content-mode-switch button:hover {
    transform: translateY(-1px);
  }

  .cmpt-stage-wrap {
    position: relative;
  }
}

.cmpt-content-mode-switch {
  overflow: hidden;
  transition: width .26s cubic-bezier(.16,1,.3,1), padding .26s cubic-bezier(.16,1,.3,1), border-radius .26s cubic-bezier(.16,1,.3,1), background-color .22s ease, border-color .22s ease, box-shadow .22s ease, transform .26s cubic-bezier(.16,1,.3,1), left .26s cubic-bezier(.16,1,.3,1), right .26s cubic-bezier(.16,1,.3,1), top .26s cubic-bezier(.16,1,.3,1);
}

.cmpt-content-mode-switch button {
  position: relative;
  overflow: hidden;
  transition: width .22s cubic-bezier(.16,1,.3,1), min-height .22s cubic-bezier(.16,1,.3,1), padding .22s cubic-bezier(.16,1,.3,1), border-radius .22s cubic-bezier(.16,1,.3,1), transform .22s cubic-bezier(.16,1,.3,1), background-color .22s ease, box-shadow .22s ease, color .22s ease, opacity .18s ease;
}

.cmpt-content-mode-switch button span {
  transition: opacity .18s ease, transform .18s ease;
}

.cmpt-content-mode-switch.is-compact {
  gap: 4px;
  box-shadow: 0 14px 30px rgba(0, 0, 0, .16);
}

.cmpt-content-mode-switch.is-compact button {
  box-shadow: none;
}

.cmpt-content-mode-switch.is-compact button span {
  opacity: 0;
  transform: translateY(2px);
}

.cmpt-content-mode-switch.is-compact button.is-active {
  box-shadow: 0 10px 22px rgba(255,84,40,.24);
}

.cmpt-stage-gesture-guide {
  top: 12px;
  gap: 4px;
  padding: 4px;
  border-color: rgba(255,255,255,.1);
  background: linear-gradient(180deg, rgba(8, 23, 39, .66), rgba(6, 18, 31, .56));
  box-shadow: 0 10px 22px rgba(0,0,0,.16);
  backdrop-filter: blur(9px) saturate(1.02);
}

.cmpt-stage-gesture-guide span {
  column-gap: 4px;
  padding: 5px 8px;
}

.cmpt-stage-gesture-guide span + span {
  border-left-color: rgba(255,255,255,.1);
}

.cmpt-stage-gesture-guide i {
  font-size: 13px;
}

.cmpt-stage-gesture-guide b {
  font-size: 6.6px;
  letter-spacing: .08em;
}

.cmpt-stage-gesture-guide small {
  color: rgba(255,255,255,.56);
  font-size: 5.8px;
}

.cmpt-stage-gesture-guide.is-last-segment span:last-child {
  background: rgba(255,84,40,.12);
}

.cmpt-story-stage {
  transition: box-shadow .28s ease, transform .22s ease;
}

.cmpt-story-stage:hover {
  box-shadow: 0 28px 92px rgba(0,0,0,.46);
}

.cmpt-player-toolbar .cmpt-back-feed,
.cmpt-player-toolbar .cmpt-share {
  transition: transform .22s cubic-bezier(.16,1,.3,1), border-color .22s ease, background-color .22s ease, box-shadow .22s ease, color .22s ease;
}

.cmpt-player-toolbar .cmpt-back-feed:hover,
.cmpt-player-toolbar .cmpt-share:hover {
  transform: translateY(-1px);
  box-shadow: 0 12px 22px rgba(0,0,0,.14);
}

@media (max-width: 820px) {
  .cmpt-content-mode-switch.is-first-segment {
    width: min(328px, calc(100% - 32px));
    border-radius: 14px;
  }

  .cmpt-content-mode-switch.is-first-segment button {
    min-height: 40px;
  }

  .cmpt-content-mode-switch.is-compact {
    top: calc(60px + env(safe-area-inset-top));
    left: 14px;
    right: auto;
    margin-left: 0;
    background: rgba(7, 20, 35, .72);
    border-color: rgba(255,255,255,.12);
  }

  .cmpt-stage-gesture-guide {
    top: calc(110px + env(safe-area-inset-top));
    left: 50%;
    max-width: calc(100% - 48px);
    padding: 4px;
    gap: 2px;
  }

  .cmpt-stage-gesture-guide span {
    padding: 4px 7px;
  }

  .cmpt-stage-gesture-guide i {
    font-size: 12px;
  }

  .cmpt-stage-gesture-guide b {
    font-size: 6px;
  }

  .cmpt-stage-gesture-guide small {
    display: block;
    font-size: 5.6px;
  }

  .cmpt-stage-copy {
    padding-top: 132px;
  }
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-content-mode-switch {
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,247,251,.98));
  border-color: rgba(10,35,66,.16);
  box-shadow: 0 14px 28px rgba(10,35,66,.08);
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-content-mode-switch.is-compact {
  background: rgba(255,255,255,.94);
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-stage-gesture-guide {
  background: linear-gradient(180deg, rgba(8,29,55,.92), rgba(10,35,66,.86));
  border-color: rgba(255,255,255,.12);
}


/* =========================================================
   Com Marília Portal Tools 2.1.2 — ajustes dos hints de navegação
   ========================================================= */
.cmpt-player-top-controls{display:flex;align-items:center;justify-content:center;gap:14px;margin:0 0 8px;flex-wrap:wrap}.cmpt-player-top-controls .cmpt-content-mode-switch{margin:0}.cmpt-player-gesture-hints{display:flex;align-items:center;min-height:44px}.cmpt-player-gesture-hints:empty{display:none}.cmpt-player-gesture-hints .cmpt-stage-gesture-guide{position:static;left:auto;top:auto;transform:none;display:flex;align-items:center;gap:16px;width:auto;max-width:none;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;color:#f2f5f8;pointer-events:none}.cmpt-player-gesture-hints .cmpt-stage-gesture-guide span{display:inline-flex;align-items:center;gap:8px;padding:0;min-width:0;border:0 !important;border-radius:0;background:transparent}.cmpt-player-gesture-hints .cmpt-stage-gesture-guide i{font-style:normal;font-size:24px;line-height:1;color:var(--cmpt-orange)}.cmpt-player-gesture-hints .cmpt-stage-gesture-guide b{font-size:14px;line-height:1.1;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;font-weight:800}.cmpt-player-gesture-hints .cmpt-stage-gesture-guide small{display:none !important}.cmpt-player-gesture-hints .cmpt-stage-gesture-guide span + span{position:relative;padding-left:18px}.cmpt-player-gesture-hints .cmpt-stage-gesture-guide span + span::before{content:'';position:absolute;left:0;top:50%;width:1px;height:28px;background:rgba(255,255,255,.18);transform:translateY(-50%)}

@media (min-width:821px){.cmpt-player-top-controls{justify-content:center;gap:18px}.cmpt-player-gesture-hints{min-height:42px}}

@media (max-width:820px){.cmpt-player-top-controls{position:absolute;z-index:26;top:calc(58px + env(safe-area-inset-top));left:14px;right:14px;justify-content:flex-start;gap:10px;flex-wrap:wrap;margin:0}.cmpt-player-top-controls .cmpt-content-mode-switch{position:static;left:auto;right:auto;top:auto;transform:none;width:min(330px,100%)}.cmpt-player-top-controls .cmpt-content-mode-switch.is-first-segment{width:min(330px,100%);transform:none}.cmpt-player-top-controls .cmpt-content-mode-switch.is-compact{position:static;top:auto;left:auto;right:auto;transform:none;margin:0}.cmpt-player-top-controls .cmpt-player-gesture-hints{min-height:36px}.cmpt-player-top-controls .cmpt-player-gesture-hints.is-compact-neighbor{min-height:36px}.cmpt-player-top-controls .cmpt-player-gesture-hints .cmpt-stage-gesture-guide{gap:12px;max-width:100%}.cmpt-player-top-controls .cmpt-player-gesture-hints .cmpt-stage-gesture-guide i{font-size:20px}.cmpt-player-top-controls .cmpt-player-gesture-hints .cmpt-stage-gesture-guide b{font-size:11px;white-space:nowrap}.cmpt-player-top-controls .cmpt-player-gesture-hints .cmpt-stage-gesture-guide span + span{padding-left:12px}.cmpt-player-top-controls .cmpt-player-gesture-hints .cmpt-stage-gesture-guide span + span::before{height:22px}.cmpt-stage-copy{padding-top:124px}}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-gesture-hints .cmpt-stage-gesture-guide{color:#0a2342}body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-gesture-hints .cmpt-stage-gesture-guide span + span::before{background:rgba(10,35,66,.14)}


/* =========================================================
   Com Marília Portal Tools 2.1.4 — correções de layout do topo do player
   ========================================================= */
@media (min-width:821px){
  .cmpt-player-shell{padding-top:4px}
  .cmpt-player-toolbar{height:46px;margin-bottom:8px;align-items:center}
  .cmpt-player-ad{margin:0 auto 12px}
  .cmpt-player-grid{align-items:start;padding-top:2px}
  .cmpt-stage-column{display:flex;flex-direction:column;align-items:center}
  .cmpt-player-top-controls{justify-content:center;align-items:center;gap:0;margin:0 0 10px;min-height:46px}
  .cmpt-player-top-controls .cmpt-player-gesture-hints{display:none !important}
  .cmpt-player-top-controls .cmpt-content-mode-switch{margin:0}
}

@media (max-width:820px){
  .cmpt-player-top-controls{left:12px;right:12px;justify-content:center;align-items:center;gap:10px 14px;flex-wrap:wrap}
  .cmpt-player-top-controls .cmpt-content-mode-switch{width:min(330px,100%);margin:0 auto}
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-first-segment{width:min(330px,100%);margin:0 auto}
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact{width:auto !important;min-width:auto;flex:0 0 auto;margin:0;justify-self:center}
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact button{width:38px;min-height:38px}
  .cmpt-player-top-controls .cmpt-player-gesture-hints{display:flex;align-items:center;justify-content:center;flex:0 1 auto;min-height:0}
  .cmpt-player-top-controls .cmpt-player-gesture-hints .cmpt-stage-gesture-guide{gap:14px;max-width:100%;justify-content:center}
  .cmpt-player-top-controls .cmpt-player-gesture-hints .cmpt-stage-gesture-guide span{padding:0;gap:8px}
  .cmpt-player-top-controls .cmpt-player-gesture-hints .cmpt-stage-gesture-guide span + span{padding-left:14px}
  .cmpt-player-top-controls .cmpt-player-gesture-hints .cmpt-stage-gesture-guide i{font-size:18px}
  .cmpt-player-top-controls .cmpt-player-gesture-hints .cmpt-stage-gesture-guide b{font-size:10px;line-height:1.1;letter-spacing:.03em}
  .cmpt-player-top-controls .cmpt-player-gesture-hints .cmpt-stage-gesture-guide small{display:none !important}
  .cmpt-stage-copy{padding-top:136px}
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-top-controls .cmpt-player-gesture-hints .cmpt-stage-gesture-guide{color:#0a2342}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-top-controls .cmpt-player-gesture-hints .cmpt-stage-gesture-guide span + span::before{background:rgba(10,35,66,.14)}


/* =========================================================
   Com Marília Portal Tools 2.1.5 — correção do frame invisível
   ========================================================= */
@media (min-width:821px){
  .cmpt-stage-column{align-items:stretch !important;width:100%;min-width:0}
  .cmpt-player-top-controls{align-self:center;width:auto;max-width:100%}
  .cmpt-segment-progress,.cmpt-stage-wrap,.cmpt-sponsor-strip{width:100%;min-width:0}
  .cmpt-story-stage{display:block;width:100%;min-width:0;visibility:visible;opacity:1}
}
.cmpt-stage-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:28px;text-align:center;color:#fff;background:linear-gradient(180deg,#071524,#02070d)}
.cmpt-stage-empty strong{font:700 18px/1.2 Poppins,sans-serif}.cmpt-stage-empty span{max-width:280px;color:#9caabd;font-size:13px;line-height:1.45}


/* 2.1.6 refinements */
.cmpt-footer{border-top:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(3,11,21,.76),rgba(3,11,21,.92))}
.cmpt-footer__inner{align-items:start}
.cmpt-footer__inner>div,.cmpt-footer__inner nav{min-width:0}
.cmpt-footer p{max-width:320px}
@media(max-width:820px){.cmpt-footer__inner{grid-template-columns:1fr;gap:20px}.cmpt-footer p{max-width:none}}
.cmpt-player-ad[hidden]{display:none!important}
@media(max-width:820px){.cmpt-player-gesture-hints{display:none!important}.cmpt-player-top-controls{gap:0}.cmpt-stage-copy{padding-top:118px}}


/* 2.1.7 release cleanup */
body.cmpt-player-no-ad .cmpt-player-shell{padding-top:0}
body.cmpt-player-no-ad .cmpt-player-toolbar{margin-bottom:4px}
body.cmpt-player-no-ad .cmpt-player-grid{padding-top:0}
@media(min-width:821px){body.cmpt-player-no-ad .cmpt-player-grid{margin-top:-2px}}

/* =========================================================
   Com Marília Portal Tools 2.2.0 — navegação e onboarding
   ========================================================= */
.cmpt-player-onboarding[hidden]{display:none!important}
.cmpt-player-onboarding{position:fixed;z-index:360;inset:0;display:none;align-items:center;justify-content:center;padding:24px;opacity:0;transition:opacity .18s ease}
.cmpt-player-onboarding.is-visible{opacity:1}
.cmpt-player-onboarding__backdrop{position:absolute;inset:0;background:rgba(1,8,16,.78);backdrop-filter:blur(10px)}
.cmpt-player-onboarding__card{position:relative;width:min(360px,calc(100vw - 36px));border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:24px;background:linear-gradient(180deg,rgba(14,34,56,.98),rgba(5,18,32,.98));box-shadow:0 28px 80px rgba(0,0,0,.48);color:#f4f7fb;transform:translateY(10px) scale(.985);transition:transform .22s cubic-bezier(.16,1,.3,1)}
.cmpt-player-onboarding.is-visible .cmpt-player-onboarding__card{transform:translateY(0) scale(1)}
.cmpt-player-onboarding__eyebrow{display:block;margin-bottom:7px;color:var(--cmpt-orange);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.cmpt-player-onboarding__card h2{margin:0 0 18px;font:800 27px/1.05 Poppins,sans-serif;letter-spacing:-.6px}
.cmpt-player-onboarding__items{display:grid;gap:10px;margin-bottom:20px}
.cmpt-player-onboarding__items>div{display:grid;grid-template-columns:44px 1fr;align-items:center;gap:12px;padding:13px 14px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.045)}
.cmpt-player-onboarding__items i{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(255,84,40,.13);color:var(--cmpt-orange);font:normal 700 22px/1 Inter,sans-serif}
.cmpt-player-onboarding__items p{margin:0;color:#dce4ed;font-size:13px;line-height:1.4}
.cmpt-player-onboarding__card>button{appearance:none;width:100%;border:0;border-radius:12px;padding:13px 18px;background:var(--cmpt-orange);color:#fff;font:800 12px/1 Inter,sans-serif;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}

.cmpt-story-stage.is-tap-prev::before,.cmpt-story-stage.is-tap-next::after{content:"";position:absolute;z-index:8;top:0;bottom:0;width:34%;pointer-events:none;opacity:0;background:radial-gradient(circle at center,rgba(255,255,255,.16),rgba(255,255,255,0) 72%);animation:cmptTapPulse .17s ease-out}
.cmpt-story-stage.is-tap-prev::before{left:0}
.cmpt-story-stage.is-tap-next::after{right:0}
@keyframes cmptTapPulse{0%{opacity:0}35%{opacity:1}100%{opacity:0}}

@media(min-width:821px){.cmpt-player-onboarding{display:none!important}.cmpt-tap-zone{display:none!important}}
@media(max-width:820px){
  .cmpt-player-onboarding{display:flex}
  .cmpt-tap-zone{display:block}
  .cmpt-story-stage{touch-action:pan-y pinch-zoom}
}
@media(prefers-reduced-motion:reduce){.cmpt-player-onboarding,.cmpt-player-onboarding__card{transition:none}.cmpt-story-stage.is-tap-prev::before,.cmpt-story-stage.is-tap-next::after{animation:none}}
.cmpt-sponsor-strip[hidden]{display:none!important}


/* 2.4.0 — discovery and incremental feed */
.cmpt-feed-loader{display:flex;align-items:center;justify-content:center;gap:10px;min-height:56px;margin:12px 0;color:var(--cmpt-muted);font-size:12px}.cmpt-feed-loader[hidden]{display:none}.cmpt-feed-loader span{width:16px;height:16px;border:2px solid rgba(255,255,255,.15);border-top-color:var(--cmpt-orange);border-radius:50%;animation:cmpt-spin .8s linear infinite}.cmpt-search-result small{display:block;margin-bottom:3px;color:var(--cmpt-orange);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.cmpt-search-loading{padding:18px;color:var(--cmpt-muted);text-align:center}@keyframes cmpt-spin{to{transform:rotate(360deg)}}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-feed-loader{color:#66758a}body.cmpt-webstories-page.cm-color-scheme-light .cmpt-feed-loader span{border-color:rgba(10,35,66,.14);border-top-color:var(--cmpt-orange)}

.cmpt-all-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.cmpt-all-grid .cmpt-story-card{width:100%;min-width:0;aspect-ratio:2/3}.cmpt-all-stories-section{scroll-margin-top:90px}@media(max-width:1180px){.cmpt-all-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:820px){.cmpt-all-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cmpt-all-grid .cmpt-card-button{display:none}}@media(max-width:390px){.cmpt-all-grid{grid-template-columns:1fr 1fr}}


/* 2.5.0 — SSR and responsive media */
body.cmpt-player-ssr .cmpt-player{display:block}
body.cmpt-player-ssr .cmpt-story-stage>.cmpt-stage-media{position:absolute;inset:0}
body.cmpt-player-ssr .cmpt-story-stage>.cmpt-stage-media img,body.cmpt-player-ssr .cmpt-story-stage>.cmpt-stage-media video{width:100%;height:100%;object-fit:cover}

.cmpt-app[data-state="hydrating"] .cmpt-next-panel,.cmpt-app[data-state="hydrating"] .cmpt-more-panel{visibility:hidden}


/* 2.6.0 — publicidade nativa entre histórias */
.cmpt-story-ad{position:absolute;z-index:320;inset:0;display:grid;place-items:center;padding:18px;opacity:0;pointer-events:none;transition:opacity .18s ease}.cmpt-story-ad[hidden]{display:none!important}.cmpt-story-ad.is-visible{opacity:1;pointer-events:auto}.cmpt-story-ad__backdrop{position:absolute;inset:0;background:rgba(1,7,13,.88);backdrop-filter:blur(12px)}.cmpt-story-ad__panel{position:relative;z-index:2;width:min(430px,calc(100vw - 32px));max-height:calc(100dvh - 36px);display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:#071323;box-shadow:0 28px 90px rgba(0,0,0,.52)}.cmpt-story-ad__panel>header{min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 18px;border-bottom:1px solid rgba(255,255,255,.08)}.cmpt-story-ad__panel>header span{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#aeb9c8}.cmpt-story-ad__panel>header button{appearance:none;width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;font-size:22px;cursor:pointer}.cmpt-story-ad__content{min-height:120px;overflow:auto;padding:14px}.cmpt-story-ad__panel>footer{padding:12px 14px 14px;border-top:1px solid rgba(255,255,255,.08)}.cmpt-story-ad__panel>footer button{appearance:none;width:100%;min-height:42px;border:1px solid rgba(255,84,40,.72);border-radius:10px;background:transparent;color:#fff;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.cmpt-story-ad__panel>footer button span{margin-left:8px;color:var(--cmpt-orange)}
@media(max-width:820px){.cmpt-story-ad{position:fixed;padding:0}.cmpt-story-ad__panel{width:100%;height:100dvh;max-height:none;border:0;border-radius:0;background:#030b15}.cmpt-story-ad__panel>header{padding-top:env(safe-area-inset-top);min-height:calc(52px + env(safe-area-inset-top))}.cmpt-story-ad__content{display:flex;flex:1;align-items:center;justify-content:center;padding:14px 18px;overflow:auto}.cmpt-story-ad__content>.cmads-slot{width:min(100%,420px)}.cmpt-story-ad__panel>footer{padding-bottom:calc(14px + env(safe-area-inset-bottom))}}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-story-ad__panel{background:#081d37;color:#fff}

/* 3.0.0 — recomendações laterais resilientes */
.cmpt-more-empty{margin:4px 0 0;color:#8796aa;font-size:10px;line-height:1.5}.cmpt-more-panel.is-empty{opacity:.88}

/* =========================================================
   Com Marília Portal Tools 3.1.0 — controles mais discretos no player
   ========================================================= */
.cmpt-player-top-controls{
  gap:8px;
}

.cmpt-content-mode-switch{
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:4px;
  margin:0;
  padding:3px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  background:rgba(3,11,21,.42);
  backdrop-filter:blur(14px);
  box-shadow:none;
}

.cmpt-content-mode-switch button{
  min-height:32px;
  padding:0 12px;
  border:1px solid transparent;
  border-radius:999px;
  color:rgba(234,241,248,.78);
  font-size:10px;
  font-weight:700;
  letter-spacing:.03em;
  text-transform:none;
  background:transparent;
}

.cmpt-content-mode-switch button svg{
  width:15px;
  height:15px;
}

.cmpt-content-mode-switch button:hover,
.cmpt-content-mode-switch button:focus-visible{
  color:#fff;
  border-color:rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
}

.cmpt-content-mode-switch button.is-active{
  color:#fff;
  background:rgba(255,84,40,.18);
  border-color:rgba(255,84,40,.34);
  box-shadow:none;
}

.cmpt-content-mode-switch.is-compact{
  width:auto;
  grid-template-columns:34px 34px;
  justify-content:center;
  padding:3px;
  gap:4px;
  border-radius:999px;
}

.cmpt-content-mode-switch.is-compact button{
  width:34px;
  min-height:34px;
  padding:0;
}

.cmpt-player-help{
  appearance:none;
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.10);
  border-radius:50%;
  background:rgba(3,11,21,.42);
  color:rgba(234,241,248,.78);
  backdrop-filter:blur(14px);
  cursor:pointer;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease;
}

.cmpt-player-help:hover,
.cmpt-player-help:focus-visible{
  color:#fff;
  border-color:rgba(255,255,255,.16);
  background:rgba(255,255,255,.06);
  transform:translateY(-1px);
}

.cmpt-player-help svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.cmpt-player-onboarding[hidden]{display:none!important}
.cmpt-player-onboarding{
  position:fixed;
  z-index:360;
  inset:0;
  display:none;
  align-items:flex-start;
  justify-content:center;
  padding:calc(112px + env(safe-area-inset-top)) 12px 0;
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
}

.cmpt-player-onboarding.is-visible{opacity:1}
.cmpt-player-onboarding__backdrop{display:none}

.cmpt-player-onboarding__card{
  position:relative;
  width:min(320px,calc(100vw - 24px));
  padding:12px 14px 12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  background:rgba(5,18,32,.88);
  color:#f3f7fb;
  box-shadow:0 14px 36px rgba(0,0,0,.30);
  backdrop-filter:blur(18px);
  pointer-events:auto;
  transform:translateY(8px);
  transition:transform .18s cubic-bezier(.16,1,.3,1);
}

.cmpt-player-onboarding.is-visible .cmpt-player-onboarding__card{transform:translateY(0)}

.cmpt-player-onboarding__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:4px;
}

.cmpt-player-onboarding__eyebrow{
  margin:0;
  color:rgba(255,255,255,.62);
  font-size:9px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.cmpt-player-onboarding__close{
  appearance:none;
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  background:transparent;
  color:rgba(255,255,255,.72);
  font-size:18px;
  line-height:1;
  cursor:pointer;
}

.cmpt-player-onboarding__close:hover,
.cmpt-player-onboarding__close:focus-visible{color:#fff;background:rgba(255,255,255,.06)}

.cmpt-player-onboarding__card h2{
  margin:0 0 10px;
  font:700 14px/1.1 Poppins,sans-serif;
  letter-spacing:-.02em;
}

.cmpt-player-onboarding__items{
  display:grid;
  gap:8px;
  margin:0;
}

.cmpt-player-onboarding__items > div{
  display:grid;
  grid-template-columns:22px 1fr;
  align-items:start;
  gap:10px;
  padding:0;
  border:0;
  background:transparent;
}

.cmpt-player-onboarding__items i{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(255,84,40,.16);
  color:var(--cmpt-orange);
  font:normal 700 12px/1 Inter,sans-serif;
}

.cmpt-player-onboarding__items p{
  margin:1px 0 0;
  color:rgba(236,242,248,.88);
  font-size:11.5px;
  line-height:1.35;
}

.cmpt-player-onboarding__actions{
  display:flex;
  justify-content:flex-start;
  margin-top:10px;
}

.cmpt-player-onboarding__actions button{
  appearance:none;
  width:auto;
  padding:7px 11px;
  border:1px solid rgba(255,84,40,.28);
  border-radius:999px;
  background:rgba(255,84,40,.14);
  color:#fff;
  font:700 10px/1 Inter,sans-serif;
  letter-spacing:.04em;
  text-transform:uppercase;
  cursor:pointer;
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-content-mode-switch,
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-help{
  background:rgba(255,255,255,.92);
  border-color:rgba(10,35,66,.10);
  color:#36506f;
  box-shadow:0 10px 22px rgba(10,35,66,.08);
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-content-mode-switch button{
  color:#4d627d;
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-content-mode-switch button:hover,
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-content-mode-switch button:focus-visible,
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-help:hover,
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-help:focus-visible{
  color:#0a2342;
  background:rgba(10,35,66,.05);
  border-color:rgba(10,35,66,.12);
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-content-mode-switch button.is-active{
  color:#0a2342;
  background:rgba(10,35,66,.08);
  border-color:rgba(10,35,66,.12);
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-onboarding__card{
  background:rgba(255,255,255,.96);
  border-color:rgba(10,35,66,.10);
  color:#0a2342;
  box-shadow:0 16px 36px rgba(10,35,66,.12);
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-onboarding__eyebrow,
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-onboarding__close,
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-onboarding__items p{
  color:#4b6078;
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-onboarding__close:hover,
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-onboarding__close:focus-visible{
  color:#0a2342;
  background:rgba(10,35,66,.05);
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-onboarding__actions button{
  color:#0a2342;
  background:rgba(10,35,66,.06);
  border-color:rgba(10,35,66,.12);
}

@media (min-width:821px){
  .cmpt-player-help,
  .cmpt-player-onboarding{display:none!important}
}

@media (max-width:820px){
  .cmpt-player-top-controls{
    left:12px;
    right:12px;
    justify-content:center;
    align-items:center;
    gap:8px;
    flex-wrap:nowrap;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-first-segment,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact{
    position:static;
    width:auto!important;
    min-width:auto;
    margin:0;
    transform:none;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch button span{
    position:static;
    width:auto;
    height:auto;
    overflow:visible;
    clip:auto;
    white-space:nowrap;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact button span{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
  }

  .cmpt-player-help{
    width:32px;
    height:32px;
    flex-basis:32px;
  }

  .cmpt-player-help svg{width:15px;height:15px}

  .cmpt-stage-copy{padding-top:114px}
}

/* =========================================================
   Com Marília Portal Tools 3.1.2 — estabilidade e player refinado
   ========================================================= */

/* Desktop: devolver protagonismo ao player sem sacrificar o 9:16. */
@media (min-width:1181px){
  .cmpt-player-shell{
    width:min(calc(100% - 36px),1540px) !important;
  }

  .cmpt-player-grid{
    grid-template-columns:240px minmax(390px,460px) 310px !important;
    gap:34px !important;
    align-items:start !important;
    padding-top:6px !important;
  }

  .cmpt-stage-column{
    width:min(460px,calc((100dvh - 120px) * .5625)) !important;
    min-width:360px !important;
    justify-self:center;
  }

  .cmpt-story-stage{
    width:100% !important;
    aspect-ratio:9 / 16 !important;
    max-height:none !important;
  }

  .cmpt-next-panel,
  .cmpt-more-panel{
    align-self:start !important;
    margin-top:54px;
  }
}

@media (min-width:821px) and (max-width:1180px){
  .cmpt-player-grid{
    grid-template-columns:minmax(360px,430px) 290px !important;
    gap:28px !important;
    align-items:start !important;
  }

  .cmpt-stage-column{
    width:min(430px,calc((100dvh - 120px) * .5625)) !important;
    min-width:340px !important;
  }

  .cmpt-story-stage{
    aspect-ratio:9 / 16 !important;
    max-height:none !important;
  }
}

/* Mobile: controles empilhados e presos à lateral esquerda. */
@media (max-width:820px){
  .cmpt-player-top-controls{
    position:absolute !important;
    z-index:30 !important;
    top:calc(58px + env(safe-area-inset-top)) !important;
    left:10px !important;
    right:auto !important;
    width:42px !important;
    max-width:42px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:5px !important;
    margin:0 !important;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-first-segment,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact{
    position:static !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:5px !important;
    width:42px !important;
    min-width:42px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    transform:none !important;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch button,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact button{
    position:relative !important;
    width:42px !important;
    min-width:42px !important;
    height:42px !important;
    min-height:42px !important;
    padding:0 !important;
    border:1px solid rgba(255,255,255,.12) !important;
    border-radius:11px !important;
    background:rgba(7,19,33,.68) !important;
    color:rgba(239,244,249,.82) !important;
    box-shadow:0 7px 18px rgba(0,0,0,.16) !important;
    backdrop-filter:blur(12px) !important;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch button.is-active{
    color:#fff !important;
    border-color:rgba(255,84,40,.58) !important;
    background:rgba(255,84,40,.20) !important;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch button svg{
    width:18px !important;
    height:18px !important;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch button span{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
    clip:rect(0,0,0,0) !important;
    white-space:nowrap !important;
  }

  .cmpt-player-help{
    position:static !important;
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    flex:0 0 42px !important;
    margin:0 !important;
    border:1px solid rgba(255,255,255,.12) !important;
    border-radius:11px !important;
    background:rgba(7,19,33,.68) !important;
    color:rgba(239,244,249,.78) !important;
    box-shadow:0 7px 18px rgba(0,0,0,.16) !important;
    backdrop-filter:blur(12px) !important;
  }

  .cmpt-player-help svg{
    width:18px !important;
    height:18px !important;
  }

  .cmpt-player-onboarding{
    position:fixed !important;
    z-index:360 !important;
    inset:auto !important;
    top:calc(154px + env(safe-area-inset-top)) !important;
    left:58px !important;
    display:block !important;
    width:min(244px,calc(100vw - 76px)) !important;
    padding:0 !important;
    opacity:0;
    pointer-events:none;
  }

  .cmpt-player-onboarding.is-visible{
    opacity:1;
  }

  .cmpt-player-onboarding__backdrop,
  .cmpt-player-onboarding__header,
  .cmpt-player-onboarding__card h2,
  .cmpt-player-onboarding__actions{
    display:none !important;
  }

  .cmpt-player-onboarding__card{
    width:100% !important;
    padding:10px 12px !important;
    border:1px solid rgba(255,255,255,.11) !important;
    border-radius:12px !important;
    background:rgba(5,18,32,.92) !important;
    box-shadow:0 12px 30px rgba(0,0,0,.30) !important;
    backdrop-filter:blur(16px) !important;
    pointer-events:auto !important;
    transform:translateX(-5px) !important;
  }

  .cmpt-player-onboarding.is-visible .cmpt-player-onboarding__card{
    transform:translateX(0) !important;
  }

  .cmpt-player-onboarding__items{
    gap:7px !important;
  }

  .cmpt-player-onboarding__items > div{
    grid-template-columns:20px 1fr !important;
    gap:8px !important;
  }

  .cmpt-player-onboarding__items i{
    width:20px !important;
    height:20px !important;
    font-size:11px !important;
  }

  .cmpt-player-onboarding__items p{
    margin:1px 0 0 !important;
    font-size:10.5px !important;
    line-height:1.3 !important;
  }

  .cmpt-stage-copy{
    padding-top:70px !important;
    padding-left:58px !important;
  }
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-top-controls .cmpt-content-mode-switch button,
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-help{
  background:rgba(255,255,255,.86) !important;
  color:#36506f !important;
  border-color:rgba(10,35,66,.12) !important;
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-top-controls .cmpt-content-mode-switch button.is-active{
  color:#0a2342 !important;
  background:rgba(255,84,40,.13) !important;
  border-color:rgba(255,84,40,.35) !important;
}


/* =========================================================
   Com Marília Portal Tools 3.1.3 — centralização real do player
   ========================================================= */
@media (min-width:1181px){
  .cmpt-player-grid{
    grid-template-columns:minmax(240px,1fr) minmax(360px,460px) minmax(240px,1fr) !important;
    gap:28px !important;
    width:100% !important;
    justify-content:stretch !important;
  }

  .cmpt-stage-column{
    grid-column:2 !important;
    justify-self:center !important;
    align-self:start !important;
  }

  .cmpt-next-panel{
    grid-column:1 !important;
    justify-self:end !important;
    width:min(240px,100%) !important;
  }

  .cmpt-more-panel{
    grid-column:3 !important;
    justify-self:start !important;
    width:min(310px,100%) !important;
  }
}

@media (min-width:821px) and (max-width:1180px){
  .cmpt-player-grid{
    grid-template-columns:minmax(0,1fr) minmax(340px,430px) minmax(0,1fr) !important;
    gap:22px !important;
    width:100% !important;
    justify-content:stretch !important;
  }

  .cmpt-stage-column{grid-column:2 !important;justify-self:center !important}
  .cmpt-next-panel{display:none !important}
  .cmpt-more-panel{grid-column:3 !important;justify-self:start !important;width:min(280px,100%) !important}
}


/* =========================================================
   Com Marília Portal Tools 3.1.4 — navegação mobile minimalista
   Baseline funcional preservada da 3.1.3.
   ========================================================= */
@media (max-width:820px){
  .cmpt-player-top-controls{
    top:calc(76px + env(safe-area-inset-top)) !important;
    left:8px !important;
    right:auto !important;
    width:28px !important;
    max-width:28px !important;
    display:block !important;
    margin:0 !important;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-first-segment,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact{
    position:static !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:4px !important;
    width:28px !important;
    min-width:28px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    transform:none !important;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch button,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact button{
    width:28px !important;
    min-width:28px !important;
    height:28px !important;
    min-height:28px !important;
    padding:0 !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:7px !important;
    background:rgba(7,19,33,.80) !important;
    color:rgba(244,247,250,.9) !important;
    box-shadow:0 3px 10px rgba(0,0,0,.16) !important;
    backdrop-filter:blur(9px) !important;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch button.is-active{
    color:#fff !important;
    background:#ff5428 !important;
    border-color:rgba(255,255,255,.16) !important;
    box-shadow:0 3px 10px rgba(255,84,40,.14) !important;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch button svg,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact button svg{
    width:13px !important;
    height:13px !important;
    stroke-width:1.7 !important;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch button span,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-first-segment button span,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact button span{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
    clip:rect(0,0,0,0) !important;
    clip-path:inset(50%) !important;
    white-space:nowrap !important;
  }

  .cmpt-player-help,
  .cmpt-player-onboarding,
  .cmpt-player-gesture-hints{
    display:none !important;
  }

  .cmpt-player-toolbar .cmpt-share{
    width:32px !important;
    height:32px !important;
    box-shadow:none !important;
  }
  .cmpt-player-toolbar .cmpt-share svg{width:15px !important;height:15px !important}
  .cmpt-back-feed{min-height:32px !important;padding:0 9px !important;box-shadow:none !important}
  .cmpt-back-feed svg{width:14px !important;height:14px !important}

  .cmpt-stage-copy{
    padding-left:40px !important;
    padding-top:66px !important;
  }
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-top-controls .cmpt-content-mode-switch button{
  background:rgba(255,255,255,.90) !important;
  color:#27415f !important;
  border-color:rgba(10,35,66,.10) !important;
}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-top-controls .cmpt-content-mode-switch button.is-active{
  color:#fff !important;
  background:#ff5428 !important;
  border-color:rgba(255,84,40,.42) !important;
}


/* v3.1.5 — mobile player controls + article modal cleanup */
@media (max-width: 820px){
  .cmpt-player-top-controls{
    position:absolute !important;
    top:calc(88px + env(safe-area-inset-top));
    left:12px !important;
    right:auto !important;
    width:auto !important;
    display:flex !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:0 !important;
    z-index:32;
    pointer-events:none;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-first-segment,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    transform:none !important;
    display:flex !important;
    flex-direction:column !important;
    width:56px !important;
    min-width:56px !important;
    padding:0 !important;
    gap:0 !important;
    overflow:hidden !important;
    border-radius:0 18px 18px 0 !important;
    border:1px solid rgba(255,255,255,.10) !important;
    background:rgba(4,15,29,.96) !important;
    box-shadow:0 12px 28px rgba(0,0,0,.34) !important;
    backdrop-filter:blur(10px);
    pointer-events:auto;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact button{
    width:56px !important;
    min-width:56px !important;
    height:62px !important;
    min-height:62px !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:transparent !important;
    color:#eef3f8 !important;
    box-shadow:none !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button + button{
    border-top:1px solid rgba(255,255,255,.08) !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button.is-active{
    background:linear-gradient(180deg,#ff6a35 0%, #e55822 100%) !important;
    color:#fff !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button svg,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact button svg{
    width:23px !important;
    height:23px !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button span,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact button span{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    padding:0 !important;
    margin:-1px !important;
    overflow:hidden !important;
    clip:rect(0,0,0,0) !important;
    white-space:nowrap !important;
    border:0 !important;
  }
  .cmpt-player-top-controls .cmpt-player-gesture-hints{
    display:none !important;
  }
  .cmpt-stage-copy{padding-top:112px !important;}
}
.cmpt-modal-footer{justify-content:center;}
.cmpt-modal-footer button{min-width:220px;}

/* remove widgets/utility boxes inside article modal content */


/* v3.1.6 — light theme alignment + player edge navigation + modal switch */
.cmpt-player-shell{position:relative;}
.cmpt-player-toolbar{
  width:100vw;
  margin-left:calc(50% - 50vw);
  padding-inline:max(12px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-right));
}
.cmpt-back-feed{margin-left:0 !important;}
.cmpt-modal-nav{
  position:absolute;
  z-index:12;
  top:18px;
  left:18px;
  display:flex;
  align-items:center;
  gap:10px;
}

body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player{
  background:
    radial-gradient(circle at 12% 0%, rgba(255,106,53,.08), transparent 24rem),
    radial-gradient(circle at 88% 12%, rgba(10,35,66,.06), transparent 30rem),
    linear-gradient(180deg,#f8fafd 0%,#eef3f8 100%);
}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-toolbar{
  background:linear-gradient(180deg, rgba(248,250,253,.96) 0%, rgba(248,250,253,.72) 54%, rgba(248,250,253,0) 100%);
}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-grid{gap:34px;}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-next-panel h2,
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-more-panel h2,
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-back-feed,
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-share{color:#0a2342;}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-back-feed, body.cmpt-webstories-page.cm-color-scheme-light .cmpt-share, body.cmpt-webstories-page.cm-color-scheme-light .cmpt-content-mode-switch, body.cmpt-webstories-page.cm-color-scheme-light .cmpt-more-panel, body.cmpt-webstories-page.cm-color-scheme-light .cmpt-next-card{
  background:rgba(255,255,255,.92);
  border-color:rgba(10,35,66,.12);
  box-shadow:0 18px 44px rgba(14,33,58,.10);
}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-stage-copy .cmpt-slide-text{color:#f0f4f8;}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-more-item p,
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-next-card p{color:#63748a;}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-top-controls .cmpt-content-mode-switch button.is-active{
  background:#0a2342 !important;
  color:#fff !important;
}

@media (max-width: 820px){
  .cmpt-player-top-controls{
    left:0 !important;
    top:calc(86px + env(safe-area-inset-top)) !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-first-segment,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact{
    margin-left:0 !important;
    left:0 !important;
    border-radius:0 18px 18px 0 !important;
  }
  .cmpt-modal-nav{
    top:calc(86px + env(safe-area-inset-top));
    left:0;
  }
}


/* v3.1.7 — mobile switch alignment + modal parity */
@media (max-width: 820px){
  /* player switch: same compact pill look, but glued to left edge */
  .cmpt-player-top-controls{
    position:fixed !important;
    z-index:1005 !important;
    top:calc(92px + env(safe-area-inset-top)) !important;
    left:0 !important;
    right:auto !important;
    width:auto !important;
    pointer-events:none !important;
    margin:0 !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-first-segment,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact{
    position:relative !important;
    left:0 !important;
    right:auto !important;
    top:auto !important;
    transform:none !important;
    width:auto !important;
    min-width:auto !important;
    display:grid !important;
    grid-template-columns:42px !important;
    grid-template-rows:repeat(2,42px) !important;
    gap:4px !important;
    padding:4px !important;
    border-radius:0 16px 16px 0 !important;
    background:rgba(3,11,21,.72) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    box-shadow:0 12px 28px rgba(0,0,0,.22) !important;
    backdrop-filter:blur(12px) !important;
    pointer-events:auto !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact button{
    width:42px !important;
    min-width:42px !important;
    height:42px !important;
    min-height:42px !important;
    padding:0 !important;
    border:1px solid transparent !important;
    border-radius:999px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:transparent !important;
    color:#d6dde7 !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button.is-active{
    background:rgba(255,90,42,.16) !important;
    border-color:rgba(255,90,42,.45) !important;
    color:#fff !important;
    box-shadow:inset 0 0 0 1px rgba(255,90,42,.14) !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button svg,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact button svg{
    width:18px !important;
    height:18px !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button span,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-first-segment button span,
  .cmpt-player-top-controls .cmpt-content-mode-switch.is-compact button span{
    position:absolute !important;
    width:1px !important;height:1px !important;overflow:hidden !important;clip:rect(0,0,0,0) !important;white-space:nowrap !important;
  }
  .cmpt-player-top-controls .cmpt-player-gesture-hints{display:none !important;}

  /* modal switch: same fixed left-edge position and same style as player */
  .cmpt-modal-nav{
    position:fixed !important;
    z-index:1006 !important;
    top:calc(92px + env(safe-area-inset-top)) !important;
    left:0 !important;
    right:auto !important;
    width:auto !important;
    margin:0 !important;
    pointer-events:none !important;
  }
}

/* desktop modal alignment closer to player language */
@media (min-width: 821px){
  .cmpt-modal-nav{
    position:fixed !important;
    z-index:1006 !important;
    top:108px !important;
    left:max(16px, calc((100vw - 1280px) / 2 + 8px)) !important;
    right:auto !important;
  }
}

/* light scheme parity for compact mobile pills */
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-top-controls .cmpt-content-mode-switch{
  background:rgba(255,255,255,.94) !important;
  border-color:rgba(10,35,66,.12) !important;
  box-shadow:0 14px 32px rgba(10,35,66,.12) !important;
}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-top-controls .cmpt-content-mode-switch button{
  color:#66788e !important;
}
body.cmpt-webstories-page.cm-color-scheme-light .cmpt-player-top-controls .cmpt-content-mode-switch button.is-active{
  background:rgba(255,90,42,.12) !important;
  border-color:rgba(255,90,42,.40) !important;
  color:#0a2342 !important;
}


/* v3.1.9 — modal/player parity + modal scroll fix */
@media (max-width: 820px){
  .cmpt-modal-nav{top:calc(92px + env(safe-area-inset-top)) !important; left:0 !important; right:auto !important;}
}
@media (min-width: 821px){
  .cmpt-modal-nav{top:108px !important; left:max(16px, calc((100vw - 1280px) / 2 + 8px)) !important; right:auto !important;}
}

/* v5.8.0 — accessibility hardening */
.cmpt-sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

/* cmpt-a11y-focus */
body.cmpt-webstories-page :where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid #ff5a2a!important;
  outline-offset:3px!important;
}
.cmpt-story-card[role="link"]:focus-visible,
.cmpt-landscape-card[role="link"]:focus-visible,
.cmpt-next-card[role="link"]:focus-visible,
.cmpt-more-item[role="link"]:focus-visible{
  box-shadow:0 0 0 4px rgba(255,90,42,.28),0 18px 36px rgba(0,0,0,.34)!important;
}
.cmpt-story-stage:focus-visible{
  outline-offset:-4px!important;
}

@media (max-width:820px){
  .cmpt-back-feed, .cmpt-share, .cmpt-mobile-menu, .cmpt-mobile-search, .cmpt-content-mode-switch button, .cmpt-media-controls button, .cmpt-search-overlay>button{
    min-width:44px;
    min-height:44px;
  }
}

@media (prefers-reduced-motion: reduce){
  body.cmpt-webstories-page *,
  body.cmpt-webstories-page *::before,
  body.cmpt-webstories-page *::after{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}


/* =========================================================
   Com Marília Portal Tools 5.8.1 — Polimento Visual Final V2
   - modal/player com navegação coerente
   - X mobile volta pelo histórico
   - compartilhamento removido do player
   - menu do modal fixo durante a leitura
   ========================================================= */

/* O player não exibe mais ação de compartilhar. */
.cmpt-player .cmpt-share{
  display:none !important;
}

/* X é exclusivo do mobile. O desktop preserva "Voltar para o feed". */
.cmpt-mobile-exit,
.cmpt-modal-exit{
  appearance:none;
  display:none;
  width:44px;
  height:44px;
  flex:0 0 44px;
  align-items:center;
  justify-content:center;
  padding:0;
  border:1px solid rgba(255,255,255,.13);
  border-radius:50%;
  background:rgba(4,15,29,.84);
  color:#fff;
  box-shadow:0 10px 30px rgba(0,0,0,.28);
  backdrop-filter:blur(12px);
  cursor:pointer;
}
.cmpt-mobile-exit svg,
.cmpt-modal-exit svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
}
.cmpt-mobile-exit:hover,
.cmpt-mobile-exit:focus-visible,
.cmpt-modal-exit:hover,
.cmpt-modal-exit:focus-visible{
  border-color:rgba(255,90,42,.70);
  background:rgba(255,90,42,.18);
}

/* Chrome do modal fica no topo do scroll. Isso evita que o menu "fuja"
   quando a matéria longa é rolada em telas touch. */
.cmpt-modal-chrome{
  position:sticky;
  z-index:1010;
  top:0;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:58px;
  padding:10px 16px;
  border-bottom:1px solid rgba(255,255,255,.07);
  background:linear-gradient(180deg,rgba(4,15,29,.98),rgba(4,15,29,.91));
  backdrop-filter:blur(14px);
}
.cmpt-modal-nav{
  position:static !important;
  inset:auto !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  width:auto !important;
  margin:0 !important;
  pointer-events:auto !important;
}

@media (max-width:820px){
  /* No mobile, somente o X: o antigo botão < fica oculto. */
  .cmpt-player-toolbar .cmpt-back-feed{
    display:none !important;
  }
  .cmpt-player-toolbar .cmpt-mobile-exit{
    display:inline-flex !important;
  }
  .cmpt-player-toolbar{
    align-items:center !important;
    min-height:58px !important;
    padding-top:calc(8px + env(safe-area-inset-top)) !important;
    background:linear-gradient(180deg,rgba(3,11,21,.84),rgba(3,11,21,0)) !important;
  }
  .cmpt-player-toolbar__spacer{
    flex:1 1 auto;
  }

  /* Modal: X e alternador permanecem presos ao topo enquanto o painel rola. */
  .cmpt-modal-chrome{
    min-height:calc(62px + env(safe-area-inset-top));
    justify-content:flex-start;
    padding:calc(9px + env(safe-area-inset-top)) 12px 9px;
    background:linear-gradient(180deg,rgba(3,11,21,.98),rgba(3,11,21,.92));
  }
  .cmpt-modal-exit{
    display:inline-flex !important;
    position:relative;
    z-index:2;
  }
  .cmpt-modal-nav{
    position:absolute !important;
    top:calc(92px + env(safe-area-inset-top)) !important;
    left:0 !important;
    right:auto !important;
    width:auto !important;
  }
}


/* =========================================================
   Com Marília Portal Tools 5.8.2 — Polimento Visual Final V2.2
   Ajustes: X agrupado ao menu, alinhamento desktop e botão Voltar.
   ========================================================= */
.cmpt-mode-exit{
  appearance:none;
  display:none;
}
.cmpt-modal-back{
  appearance:none;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  padding:0 14px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:12px;
  background:rgba(3,11,21,.44);
  color:#fff;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.cmpt-modal-back svg,
.cmpt-back-feed--inline svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.cmpt-player-grid-top-left,
.cmpt-player-grid-top-right,
.cmpt-stage-column-head{
  min-width:0;
}
@media (min-width:821px){
  .cmpt-player-toolbar{display:none !important;}
  .cmpt-player-grid{
    grid-template-columns:240px minmax(390px,460px) 310px !important;
    grid-template-areas:
      "top-left top-center top-right"
      "next stage more" !important;
    align-items:start !important;
    row-gap:18px !important;
    column-gap:34px !important;
    padding-top:0 !important;
  }
  .cmpt-player-grid-top-left{grid-area:top-left; align-self:start;}
  .cmpt-stage-column-head{grid-area:top-center; align-self:start;}
  .cmpt-player-grid-top-right{grid-area:top-right;}
  .cmpt-next-panel{grid-area:next; margin-top:0 !important;}
  .cmpt-stage-column{grid-area:stage;}
  .cmpt-more-panel{grid-area:more; margin-top:0 !important;}
  .cmpt-back-feed--inline{
    display:inline-flex !important;
    align-items:center;
    gap:8px;
    min-height:40px;
    padding:0 14px;
  }
  .cmpt-back-feed:not(.cmpt-back-feed--inline){display:none !important;}
  .cmpt-player-top-controls{
    justify-content:flex-start !important;
    gap:10px !important;
    margin:0 !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch{
    width:auto !important;
    grid-template-columns:1fr 1fr !important;
  }
  .cmpt-player-top-controls .cmpt-player-gesture-hints{display:none !important;}
  .cmpt-mode-exit{display:none !important;}

  .cmpt-modal-chrome{
    justify-content:space-between !important;
    gap:18px;
    padding:18px 22px 12px !important;
    min-height:auto !important;
  }
  .cmpt-modal-back{flex:0 0 auto;}
  .cmpt-modal-nav{position:static !important; flex:1 1 auto; justify-content:flex-start !important;}
  .cmpt-modal-chrome-spacer{flex:1 1 auto;}
}
@media (min-width:821px) and (max-width:1180px){
  .cmpt-player-grid{
    grid-template-columns:220px minmax(360px,430px) 290px !important;
  }
}
@media (max-width:820px){
  .cmpt-player-grid-top-left,
  .cmpt-player-grid-top-right,
  .cmpt-stage-column-head{display:none !important;}
  .cmpt-mode-exit{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  .cmpt-player-top-controls,
  .cmpt-modal-nav{
    position:fixed !important;
    top:calc(92px + env(safe-area-inset-top)) !important;
    left:0 !important;
    right:auto !important;
    width:auto !important;
    margin:0 !important;
    z-index:1006 !important;
    pointer-events:none !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch{
    pointer-events:auto !important;
    display:grid !important;
    grid-template-columns:42px !important;
    grid-template-rows:repeat(3,42px) !important;
    gap:4px !important;
    padding:4px !important;
    width:auto !important;
    min-width:auto !important;
    overflow:hidden !important;
    border-radius:0 16px 16px 0 !important;
    background:rgba(3,11,21,.78) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    box-shadow:0 12px 28px rgba(0,0,0,.25) !important;
    backdrop-filter:blur(12px) !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button{
    width:42px !important;
    min-width:42px !important;
    height:42px !important;
    min-height:42px !important;
    gap:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:999px !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button span{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    padding:0 !important;
    margin:-1px !important;
    overflow:hidden !important;
    clip:rect(0,0,0,0) !important;
    clip-path:inset(50%) !important;
    white-space:nowrap !important;
  }
  .cmpt-player-top-controls .cmpt-player-gesture-hints{display:none !important;}
  .cmpt-modal-back{display:none !important;}
  .cmpt-modal-chrome{display:block !important; min-height:0 !important; padding:0 !important; border-bottom:0 !important; background:transparent !important;}
}


/* =========================================================
   Com Marília Portal Tools 5.8.3 — Correções desktop do polimento
   - player desktop centralizado
   - cabeçalho do modal sem botão voltar
   - fechar alinhado com Story/Matéria
   - scrollbar temática e sem borda laranja no modal
   ========================================================= */
@media (min-width:821px){
  .cmpt-player-shell{
    width:min(calc(100% - 48px),1220px) !important;
  }
  .cmpt-player-grid{
    width:min(100%,1050px) !important;
    margin:0 auto !important;
    padding:12px 0 30px !important;
    grid-template-columns:220px minmax(360px,430px) 260px !important;
    grid-template-areas:
      "top-left top-center top-right"
      "next stage more" !important;
    column-gap:24px !important;
    row-gap:18px !important;
    justify-content:center !important;
    align-items:start !important;
  }
  .cmpt-player-grid-top-left{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    grid-area:top-left !important;
  }
  .cmpt-stage-column-head{
    grid-area:top-center !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
  }
  .cmpt-player-grid-top-right{
    grid-area:top-right !important;
  }
  .cmpt-player-top-controls{
    width:100% !important;
    margin:0 !important;
    justify-content:center !important;
    gap:0 !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch{
    margin:0 auto !important;
  }
  .cmpt-player-top-controls .cmpt-player-gesture-hints{
    display:none !important;
  }
  .cmpt-next-panel{
    grid-area:next !important;
    margin-top:0 !important;
  }
  .cmpt-stage-column{
    grid-area:stage !important;
    width:min(430px,calc((100dvh - 150px) * .5625)) !important;
    min-width:360px !important;
    justify-self:center !important;
    align-items:center !important;
  }
  .cmpt-stage-wrap{width:100% !important;}
  .cmpt-story-stage{width:100% !important;}
  .cmpt-more-panel{
    grid-area:more !important;
    margin-top:0 !important;
    justify-self:start !important;
    width:min(260px,100%) !important;
  }
  .cmpt-back-feed--inline{
    min-height:38px !important;
    padding:0 14px !important;
    border-radius:10px !important;
  }

  .cmpt-modal-chrome{
    justify-content:flex-start !important;
    gap:16px !important;
    padding:18px 22px 14px !important;
    min-height:auto !important;
  }
  .cmpt-modal-nav{
    position:static !important;
    flex:0 0 auto !important;
    justify-content:flex-start !important;
    width:auto !important;
  }
  .cmpt-modal-chrome-spacer,
  .cmpt-modal-back{
    display:none !important;
  }
}
@media (max-width:820px){
}


/* =========================================================
   Com Marília Portal Tools 5.8.4 — Hotfix mobile do player
   - restaura botões do player
   - remove degradê sobre o indicador
   - indicador em círculos estilo stories
   ========================================================= */
@media (max-width:820px){
  .cmpt-player-toolbar{
    display:none !important;
    background:transparent !important;
    height:0 !important;
    min-height:0 !important;
    padding:0 !important;
  }
  .cmpt-stage-column-head{
    display:block !important;
    position:static !important;
    height:0 !important;
    min-height:0 !important;
    overflow:visible !important;
  }
  .cmpt-player-top-controls{
    position:fixed !important;
    z-index:1008 !important;
    top:calc(26px + env(safe-area-inset-top)) !important;
    left:0 !important;
    right:auto !important;
    width:auto !important;
    margin:0 !important;
    pointer-events:none !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch{
    pointer-events:auto !important;
    display:grid !important;
    grid-template-columns:42px !important;
    grid-template-rows:repeat(3,42px) !important;
    gap:4px !important;
    padding:4px !important;
    border-radius:0 16px 16px 0 !important;
    background:rgba(3,11,21,.78) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    box-shadow:0 12px 28px rgba(0,0,0,.25) !important;
    backdrop-filter:blur(12px) !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button{
    width:42px !important;
    min-width:42px !important;
    height:42px !important;
    min-height:42px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 !important;
    gap:0 !important;
    border-radius:999px !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button span{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    padding:0 !important;
    margin:-1px !important;
    overflow:hidden !important;
    clip:rect(0,0,0,0) !important;
    clip-path:inset(50%) !important;
    white-space:nowrap !important;
    border:0 !important;
  }
  .cmpt-player-top-controls .cmpt-player-gesture-hints{
    display:none !important;
  }

  .cmpt-segment-progress{
    position:fixed !important;
    z-index:1009 !important;
    top:max(8px, env(safe-area-inset-top)) !important;
    left:50% !important;
    right:auto !important;
    transform:translateX(-50%) !important;
    width:auto !important;
    max-width:calc(100vw - 110px) !important;
    height:16px !important;
    padding:0 6px !important;
    gap:6px !important;
    justify-content:center !important;
    background:transparent !important;
  }
  .cmpt-segment-progress button{
    flex:0 0 auto !important;
    width:8px !important;
    min-width:8px !important;
    height:8px !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.28) !important;
    overflow:hidden !important;
  }
  .cmpt-segment-progress button span{
    width:100% !important;
    height:100% !important;
    border-radius:999px !important;
    background:transparent !important;
  }
  .cmpt-segment-progress button.is-complete{
    background:rgba(255,255,255,.58) !important;
  }
  .cmpt-segment-progress button.is-active{
    background:#ff5a2a !important;
    box-shadow:0 0 0 3px rgba(255,90,42,.18) !important;
  }

  .cmpt-stage-copy{
    padding-top:88px !important;
  }
}


/* =========================================================
   Com Marília Portal Tools 5.9.0 — Instagram Feed Beta
   Feed vertical por gesto, slides internos horizontais e snap visual.
   ========================================================= */
@media (max-width:820px){
  .cmpt-player{
    overflow:hidden !important;
    overscroll-behavior:none !important;
  }
  .cmpt-player-shell,
  .cmpt-player-grid,
  .cmpt-stage-column,
  .cmpt-stage-wrap{
    height:100dvh !important;
    min-height:100dvh !important;
    max-height:100dvh !important;
  }
  .cmpt-stage-wrap{
    position:relative !important;
    overflow:hidden !important;
    isolation:isolate;
    background:#02070d;
  }
  .cmpt-story-stage{
    position:relative !important;
    z-index:2 !important;
    will-change:transform,opacity;
    touch-action:none !important;
    backface-visibility:hidden;
  }
  .cmpt-feed-neighbor{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    width:100% !important;
    height:100dvh !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    margin:0 !important;
    border:0 !important;
    border-radius:0 !important;
    pointer-events:none !important;
    opacity:.98;
    will-change:transform,opacity;
  }
  .cmpt-feed-neighbor.is-next{transform:translate3d(0,100%,0);}
  .cmpt-feed-neighbor.is-previous{transform:translate3d(0,-100%,0);}
  .cmpt-feed-neighbor .cmpt-stage-cta,
  .cmpt-feed-neighbor .cmpt-media-controls,
  .cmpt-feed-neighbor .cmpt-tap-zone{display:none !important;}

  /* Controles ficam como uma pequena barra familiar, sem roubar a tela. */
  .cmpt-player-top-controls{
    top:calc(30px + env(safe-area-inset-top)) !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch{
    background:rgba(3,11,21,.70) !important;
    backdrop-filter:blur(16px) saturate(125%) !important;
  }

  /* Dots estilo stories: discretos, centralizados e acima da mídia. */
  .cmpt-segment-progress{
    top:max(8px,env(safe-area-inset-top)) !important;
    z-index:1012 !important;
    gap:7px !important;
  }
  .cmpt-segment-progress button{
    width:7px !important;
    min-width:7px !important;
    height:7px !important;
    box-shadow:none !important;
  }
  .cmpt-segment-progress button.is-active{
    width:9px !important;
    min-width:9px !important;
    height:9px !important;
    background:#ff5a2a !important;
    box-shadow:0 0 0 3px rgba(255,90,42,.16) !important;
  }

  /* A próxima publicação começa logo abaixo da atual durante o gesto. */
  .cmpt-player.is-feed-transitioning .cmpt-story-stage,
  .cmpt-player.is-feed-transitioning .cmpt-feed-neighbor{
    pointer-events:none !important;
  }

  /* Evita gradientes/cromos externos no topo do feed. */
  .cmpt-player-toolbar{
    display:none !important;
    background:none !important;
  }
}

@media (min-width:821px){
  /* Wheel/trackpad troca histórias com deslocamento vertical completo. */
  .cmpt-player.is-story-transitioning .cmpt-stage-wrap{
    overflow:hidden;
  }
}


/* =========================================================
   Com Marília Portal Tools 5.9.1 — Feed UX Refinement
   Referência funcional: navegação vertical contínua e viewport fixo.
   ========================================================= */
.cmpt-stage-wrap{position:relative !important;}
.cmpt-more-content-cue{
  appearance:none;
  position:absolute;
  z-index:18;
  top:50%;
  right:12px;
  width:34px;
  height:34px;
  margin-top:-17px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(255,255,255,.46);
  border-radius:50%;
  background:rgba(247,241,208,.92);
  color:#40502b;
  box-shadow:0 5px 18px rgba(0,0,0,.28);
  backdrop-filter:blur(8px);
  cursor:pointer;
  transition:transform .16s ease,opacity .16s ease,background .16s ease;
}
.cmpt-more-content-cue:hover,
.cmpt-more-content-cue:focus-visible{transform:scale(1.08);background:#fff7cc;}
.cmpt-more-content-cue svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;}

/* Paginação em dots na base da mídia. */
.cmpt-segment-progress{
  position:absolute !important;
  z-index:22 !important;
  left:50% !important;
  right:auto !important;
  top:auto !important;
  bottom:14px !important;
  transform:translateX(-50%) !important;
  width:auto !important;
  height:18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  padding:4px 8px !important;
  border-radius:999px;
  background:rgba(2,8,15,.22);
  backdrop-filter:blur(5px);
}
.cmpt-segment-progress button{
  flex:0 0 auto !important;
  width:7px !important;
  min-width:7px !important;
  height:7px !important;
  min-height:7px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.36) !important;
  box-shadow:none !important;
  overflow:visible !important;
}
.cmpt-segment-progress button span{display:none !important;}
.cmpt-segment-progress button.is-complete{background:rgba(255,255,255,.72) !important;}
.cmpt-segment-progress button.is-active{
  width:9px !important;
  min-width:9px !important;
  height:9px !important;
  min-height:9px !important;
  background:#ff5a2a !important;
  box-shadow:0 0 0 3px rgba(255,90,42,.18) !important;
}

/* Os três controles são uma única unidade: X / Story / Matéria. */
.cmpt-player-grid-top-left, .cmpt-modal-back{display:none !important;}
.cmpt-content-mode-switch{
  grid-template-columns:repeat(3,1fr) !important;
}
.cmpt-mode-exit{display:inline-flex !important;}
.cmpt-content-mode-switch .cmpt-mode-exit{
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  opacity:1 !important;
}
.cmpt-content-mode-switch .cmpt-mode-exit svg{
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:2 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

@media (max-width:820px){
  .cmpt-player{overflow:hidden !important;overscroll-behavior:none !important;}
  .cmpt-player-top-controls{top:calc(22px + env(safe-area-inset-top)) !important;}
  .cmpt-player-top-controls .cmpt-content-mode-switch{
    grid-template-columns:42px !important;
    grid-template-rows:repeat(3,42px) !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button{
    width:42px !important;
    min-width:42px !important;
    height:42px !important;
    min-height:42px !important;
    padding:0 !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch .cmpt-mode-exit{
    display:flex !important;
  }
  .cmpt-segment-progress{
    bottom:calc(14px + env(safe-area-inset-bottom)) !important;
  }
  .cmpt-stage-copy{padding-bottom:calc(58px + env(safe-area-inset-bottom)) !important;}
  .cmpt-more-content-cue{
    right:10px;
    width:36px;
    height:36px;
    margin-top:-18px;
  }
  .cmpt-story-stage,
  .cmpt-feed-neighbor{
    transform:translateZ(0);
    contain:layout paint;
  }
}

@media (min-width:821px){
  html,body{overscroll-behavior:none;}
  body.cmpt-player-open{overflow:hidden !important;}
  .cmpt-player{
    overflow:hidden !important;
    overscroll-behavior:none !important;
  }
  .cmpt-player-shell{
    height:100dvh;
    max-height:100dvh;
    overflow:hidden;
  }
  .cmpt-player-grid{
    height:100%;
    overflow:hidden;
  }
  .cmpt-stage-column-head{justify-content:center !important;}
  .cmpt-player-top-controls{justify-content:center !important;}
  .cmpt-player-top-controls .cmpt-content-mode-switch{
    margin-inline:auto !important;
    grid-template-columns:repeat(3,auto) !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch button{
    min-width:92px !important;
  }
  .cmpt-player-top-controls .cmpt-content-mode-switch .cmpt-mode-exit{
    display:inline-flex !important;
  }
  .cmpt-modal-chrome{justify-content:center !important;}
  .cmpt-modal-nav{justify-content:center !important;}
  .cmpt-stage-copy{padding-bottom:52px !important;}
  .cmpt-more-content-cue{right:14px;}
}

/* =========================================================
   Com Marília Portal Tools 5.9.3 — Menu lateral retrátil fixo
   Base: 5.9.1 Feed UX (5.9.2 descartada).
   Funcionalidade inspirada no protótipo fornecido pelo usuário,
   sem dependências externas de Tailwind/Lucide.
   ========================================================= */
.cmpt-retractable-menu{
  position:fixed;
  z-index:310;
  left:0;
  top:50%;
  width:64px;
  transform:translate3d(0,-50%,0);
  transition:transform .4s cubic-bezier(.4,0,.2,1);
  will-change:transform;
  pointer-events:auto;
}
.cmpt-retractable-menu.is-collapsed{
  transform:translate3d(-54px,-50%,0);
}
.cmpt-retractable-menu__body{
  width:64px;
  padding:7px 7px;
  border:1px solid rgba(255,255,255,.08);
  border-left:0;
  border-radius:0 24px 24px 0;
  background:rgba(29,34,40,.94);
  box-shadow:5px 0 18px rgba(0,0,0,.34);
  backdrop-filter:blur(16px) saturate(120%);
  transition:opacity .22s ease;
}
.cmpt-retractable-menu.is-collapsed .cmpt-retractable-menu__body{
  opacity:0;
  pointer-events:none;
}
.cmpt-retractable-menu .cmpt-content-mode-switch{
  position:static !important;
  inset:auto !important;
  transform:none !important;
  display:grid !important;
  grid-template-columns:50px !important;
  grid-template-rows:repeat(3,50px) !important;
  width:50px !important;
  min-width:50px !important;
  gap:5px !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}
.cmpt-retractable-menu .cmpt-content-mode-switch button{
  appearance:none !important;
  position:relative !important;
  width:50px !important;
  min-width:50px !important;
  height:50px !important;
  min-height:50px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:1px solid transparent !important;
  border-radius:999px !important;
  background:#11161c !important;
  color:#d7dee7 !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025) !important;
  cursor:pointer !important;
  transition:transform .18s ease,background-color .18s ease,color .18s ease !important;
}
.cmpt-retractable-menu .cmpt-content-mode-switch button:hover{
  transform:scale(1.04);
  color:#fff !important;
  background:#181e25 !important;
}
.cmpt-retractable-menu .cmpt-content-mode-switch button.is-active{
  color:#fff !important;
  background:rgba(76,38,37,.96) !important;
  border-color:transparent !important;
  box-shadow:inset 0 0 0 1px rgba(255,90,42,.18) !important;
}
.cmpt-retractable-menu .cmpt-content-mode-switch button:focus{
  outline:none !important;
}
.cmpt-retractable-menu .cmpt-content-mode-switch button:focus-visible{
  outline:none !important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.72) !important;
}
.cmpt-retractable-menu .cmpt-content-mode-switch button svg{
  width:21px !important;
  height:21px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.85 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.cmpt-retractable-menu .cmpt-content-mode-switch button span{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
  border:0 !important;
}
.cmpt-retractable-menu__toggle{
  appearance:none;
  position:absolute;
  z-index:3;
  left:52px;
  top:50%;
  width:32px;
  height:48px;
  margin-top:-24px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 0 0 2px;
  border:1px solid rgba(255,255,255,.08);
  border-left:0;
  border-radius:0 13px 13px 0;
  background:rgba(29,34,40,.96);
  color:#cfd7e1;
  box-shadow:5px 0 14px rgba(0,0,0,.22);
  cursor:pointer;
  transition:background-color .18s ease,color .18s ease;
}
.cmpt-retractable-menu__toggle:hover{
  color:#fff;
  background:#242b33;
}
.cmpt-retractable-menu__toggle:focus,
.cmpt-retractable-menu__toggle:focus-visible{
  outline:none !important;
}
.cmpt-retractable-menu__toggle:focus-visible{
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.7),5px 0 14px rgba(0,0,0,.22) !important;
}
.cmpt-menu-chevron{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.cmpt-menu-chevron--expand{display:none;}
.cmpt-retractable-menu.is-collapsed .cmpt-menu-chevron--collapse{display:none;}
.cmpt-retractable-menu.is-collapsed .cmpt-menu-chevron--expand{display:block;}

/* O menu é independente do grid e permanece preso ao viewport. */
.cmpt-stage-column-head,
.cmpt-player-grid-top-left,
.cmpt-player-grid-top-right{
  display:none !important;
}
.cmpt-modal-chrome,
.cmpt-modal-nav{
  display:none !important;
}

@media (min-width:821px){
  .cmpt-player-grid{
    grid-template-areas:"next stage more" !important;
    grid-template-columns:220px minmax(390px,460px) 300px !important;
    grid-template-rows:minmax(0,1fr) !important;
    justify-content:center !important;
    align-items:start !important;
    gap:30px !important;
    padding-top:8px !important;
  }
  .cmpt-next-panel{grid-area:next !important;}
  .cmpt-stage-column{grid-area:stage !important;}
  .cmpt-more-panel{grid-area:more !important;}
  .cmpt-retractable-menu{
    top:50%;
  }
}

@media (max-width:820px){
  .cmpt-retractable-menu{
    top:50%;
    width:60px;
  }
  .cmpt-retractable-menu.is-collapsed{
    transform:translate3d(-50px,-50%,0);
  }
  .cmpt-retractable-menu__body{
    width:60px;
    padding:6px 6px;
    border-radius:0 22px 22px 0;
  }
  .cmpt-retractable-menu .cmpt-content-mode-switch{
    grid-template-columns:48px !important;
    grid-template-rows:repeat(3,48px) !important;
    width:48px !important;
    min-width:48px !important;
    gap:5px !important;
  }
  .cmpt-retractable-menu .cmpt-content-mode-switch button{
    width:48px !important;
    min-width:48px !important;
    height:48px !important;
    min-height:48px !important;
  }
  .cmpt-retractable-menu__toggle{
    left:50px;
    width:30px;
    height:46px;
    margin-top:-23px;
  }
}


/* =========================================================
   Com Marília Portal Tools 5.9.4 — menu mobile superior automático
   - mobile: centralizado no terço superior
   - recolhimento automático após scroll/swipe
   - sem controle manual para esconder
   - apenas acionador para mostrar novamente
   ========================================================= */

/* O acionador existe somente quando o menu está recolhido. */
.cmpt-retractable-menu__toggle{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.cmpt-retractable-menu.is-collapsed .cmpt-retractable-menu__toggle{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.cmpt-menu-chevron--mobile{display:none;}

@media (min-width:821px){
  /* Desktop mantém o menu lateral atual. Ao recolher automaticamente,
     sobra somente a aba para reabrir. */
  .cmpt-menu-chevron--desktop{display:block;}
  .cmpt-retractable-menu.is-collapsed{
    transform:translate3d(-54px,-50%,0);
  }
}

@media (max-width:820px){
  .cmpt-retractable-menu{
    position:fixed !important;
    z-index:1008 !important;
    left:50% !important;
    top:clamp(104px,16.666dvh,150px) !important;
    width:auto !important;
    transform:translate3d(-50%,-50%,0) !important;
    pointer-events:none !important;
  }

  .cmpt-retractable-menu__body{
    width:auto !important;
    padding:6px !important;
    border:1px solid rgba(255,255,255,.08) !important;
    border-radius:999px !important;
    background:rgba(29,34,40,.94) !important;
    box-shadow:0 8px 26px rgba(0,0,0,.34) !important;
    backdrop-filter:blur(16px) saturate(120%) !important;
    transform:translate3d(0,0,0) scale(1) !important;
    transform-origin:50% 0 !important;
    opacity:1 !important;
    pointer-events:auto !important;
    transition:
      opacity .22s ease,
      transform .34s cubic-bezier(.4,0,.2,1) !important;
  }

  .cmpt-retractable-menu.is-collapsed{
    transform:translate3d(-50%,-50%,0) !important;
  }

  .cmpt-retractable-menu.is-collapsed .cmpt-retractable-menu__body{
    opacity:0 !important;
    transform:translate3d(0,-14px,0) scale(.92) !important;
    pointer-events:none !important;
  }

  .cmpt-retractable-menu .cmpt-content-mode-switch{
    display:grid !important;
    grid-template-columns:repeat(3,48px) !important;
    grid-template-rows:48px !important;
    width:auto !important;
    min-width:0 !important;
    gap:5px !important;
  }

  .cmpt-retractable-menu .cmpt-content-mode-switch button{
    width:48px !important;
    min-width:48px !important;
    height:48px !important;
    min-height:48px !important;
  }

  /* O único controle de recolhimento é automático.
     Quando recolhido, um botão discreto fica disponível para reabrir. */
  .cmpt-retractable-menu__toggle{
    left:50% !important;
    top:50% !important;
    width:44px !important;
    height:30px !important;
    margin:0 !important;
    padding:0 !important;
    transform:translate(-50%,-50%) !important;
    border:1px solid rgba(255,255,255,.08) !important;
    border-radius:999px !important;
    background:rgba(29,34,40,.92) !important;
    color:#d7dee7 !important;
    box-shadow:0 6px 18px rgba(0,0,0,.28) !important;
    pointer-events:none !important;
  }
  .cmpt-retractable-menu.is-collapsed .cmpt-retractable-menu__toggle{
    pointer-events:auto !important;
  }
  .cmpt-menu-chevron--desktop{display:none !important;}
  .cmpt-menu-chevron--mobile{
    display:block !important;
    width:18px !important;
    height:18px !important;
  }
}


/* =========================================================
   Com Marília Portal Tools 5.9.5 — menu mobile lateral vertical
   - colado à lateral esquerda
   - X / Story / Matéria empilhados
   - recolhimento continua automático após rolagem/swipe
   - apenas acionador para mostrar novamente
   ========================================================= */
@media (max-width:820px){
  .cmpt-retractable-menu{
    position:fixed !important;
    z-index:1008 !important;
    left:0 !important;
    top:50% !important;
    width:60px !important;
    transform:translate3d(0,-50%,0) !important;
    pointer-events:none !important;
  }

  .cmpt-retractable-menu__body{
    width:60px !important;
    padding:6px !important;
    border:1px solid rgba(255,255,255,.08) !important;
    border-left:0 !important;
    border-radius:0 22px 22px 0 !important;
    background:rgba(29,34,40,.94) !important;
    box-shadow:5px 0 20px rgba(0,0,0,.34) !important;
    backdrop-filter:blur(16px) saturate(120%) !important;
    transform:translate3d(0,0,0) scale(1) !important;
    transform-origin:0 50% !important;
    opacity:1 !important;
    pointer-events:auto !important;
    transition:
      opacity .22s ease,
      transform .34s cubic-bezier(.4,0,.2,1) !important;
  }

  .cmpt-retractable-menu .cmpt-content-mode-switch{
    display:grid !important;
    grid-template-columns:48px !important;
    grid-template-rows:repeat(3,48px) !important;
    width:48px !important;
    min-width:48px !important;
    gap:5px !important;
  }

  .cmpt-retractable-menu .cmpt-content-mode-switch button{
    width:48px !important;
    min-width:48px !important;
    height:48px !important;
    min-height:48px !important;
  }

  .cmpt-retractable-menu.is-collapsed{
    transform:translate3d(0,-50%,0) !important;
  }

  .cmpt-retractable-menu.is-collapsed .cmpt-retractable-menu__body{
    opacity:0 !important;
    transform:translate3d(-54px,0,0) scale(.96) !important;
    pointer-events:none !important;
  }

  /* Só aparece quando o menu foi recolhido automaticamente. */
  .cmpt-retractable-menu__toggle{
    position:absolute !important;
    left:0 !important;
    top:50% !important;
    width:34px !important;
    height:48px !important;
    margin:0 !important;
    padding:0 0 0 3px !important;
    transform:translate3d(0,-50%,0) !important;
    border:1px solid rgba(255,255,255,.08) !important;
    border-left:0 !important;
    border-radius:0 14px 14px 0 !important;
    background:rgba(29,34,40,.92) !important;
    color:#d7dee7 !important;
    box-shadow:4px 0 16px rgba(0,0,0,.28) !important;
  }

  .cmpt-menu-chevron--mobile{
    display:none !important;
  }

  .cmpt-menu-chevron--desktop{
    display:block !important;
    width:18px !important;
    height:18px !important;
    transform:none !important;
  }
}


/* =========================================================
   Com Marília Portal Tools 5.9.6 — ajuste de posição do menu mobile
   - menu no centro do primeiro terço vertical
   - continua colado à lateral esquerda
   ========================================================= */
@media (max-width:820px){
  .cmpt-retractable-menu{
    top:33.333vh !important;
    top:33.333dvh !important;
    transform:translate3d(0,-50%,0) !important;
  }
  .admin-bar .cmpt-retractable-menu{
    top:calc(32px + 33.333dvh - 16px) !important;
  }
}


/* =========================================================
   Com Marília Portal Tools 5.9.7 — desktop clássico + mobile 5.9.6
   Apenas o mobile usa o menu lateral retrátil.
   ========================================================= */
.cmpt-desktop-menu-only{display:none !important;}

@media (min-width:821px){
  .cmpt-mobile-menu-only{display:none !important;}
  .cmpt-desktop-menu-only{display:flex !important;}

  .cmpt-stage-column-head.cmpt-desktop-menu-only{
    grid-area:top-center !important;
    width:100% !important;
    align-items:center !important;
    justify-content:center !important;
  }
  .cmpt-stage-column-head .cmpt-player-top-controls{
    width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
  }
  .cmpt-stage-column-head .cmpt-content-mode-switch{
    position:static !important;
    display:grid !important;
    grid-template-columns:repeat(3,auto) !important;
    grid-template-rows:1fr !important;
    width:auto !important;
    min-width:0 !important;
    margin:0 auto !important;
    padding:3px !important;
    gap:4px !important;
    border-radius:999px !important;
    background:rgba(3,11,21,.58) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    box-shadow:none !important;
    backdrop-filter:blur(12px) !important;
  }
  .cmpt-stage-column-head .cmpt-content-mode-switch button{
    width:auto !important;
    min-width:92px !important;
    height:34px !important;
    min-height:34px !important;
    padding:0 14px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:7px !important;
    border-radius:999px !important;
  }
  .cmpt-stage-column-head .cmpt-content-mode-switch button span{
    position:static !important;
    width:auto !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
    clip:auto !important;
    clip-path:none !important;
    white-space:nowrap !important;
  }

  /* Desktop nunca recolhe o menu. */
  .cmpt-retractable-menu__toggle{display:none !important;}
}

@media (max-width:820px){
  .cmpt-desktop-menu-only{display:none !important;}
  .cmpt-mobile-menu-only{display:block !important;}
}


/* =========================================================
   Com Marília Portal Tools 5.9.8
   - restaura menu desktop clássico
   - sobe menu mobile para o centro real do primeiro terço
   - modal usa o HTML real da notícia publicada
   ========================================================= */

/* Modal: a matéria pública renderizada pelo tema vira o conteúdo do leitor. */
.cmpt-modal-full-article{
  --cm-bg:#07111f;
  --cm-bg-deep:#040b15;
  --cm-surface:#0d192b;
  --cm-surface-2:#121f33;
  --cm-border:#26364e;
  --cm-border-soft:rgba(150,172,207,.18);
  --cm-text:#f7f8fb;
  --cm-muted:#9eabc0;
  --cm-accent:#ff5a2a;
  --cm-accent-2:#ff7a52;
  --cm-radius:18px;
  --cm-reading-width:850px;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:22px clamp(18px,4vw,44px) 48px !important;
  color:var(--cm-text) !important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-size:16px !important;
  line-height:1.55 !important;
}
.cmpt-modal-full-article *,
.cmpt-modal-full-article *::before,
.cmpt-modal-full-article *::after{box-sizing:border-box;}
.cmpt-modal-full-article img{display:block;max-width:100%;}
.cmpt-modal-full-article a{color:inherit;text-decoration:none;}
.cmpt-modal-full-article .cm-reading-container{
  width:min(100%,850px) !important;
  max-width:850px !important;
}
.cmpt-modal-full-article .cm-article-header,
.cmpt-modal-full-article .cm-article-hero,
.cmpt-modal-full-article .cm-article-content,
.cmpt-modal-full-article .cm-ad-slot,
.cmpt-modal-full-article .cm-ad-slot--wide{
  width:min(100%,850px) !important;
  max-width:850px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.cmpt-modal-full-article .cm-article-header{
  padding:22px 0 18px !important;
}
.cmpt-modal-full-article .cm-article-header .cm-badge{
  display:inline-flex !important;
  min-height:23px !important;
  align-items:center !important;
  margin-bottom:14px !important;
  padding:4px 10px !important;
  color:#fff !important;
  background:var(--cm-accent) !important;
  border-radius:4px !important;
  font-size:.62rem !important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
  line-height:1 !important;
  text-transform:uppercase !important;
}
.cmpt-modal-full-article .cm-article-header h1{
  margin:0 !important;
  color:#f7f8fb !important;
  font-family:Poppins,Inter,sans-serif !important;
  font-size:clamp(2rem,3.35vw,3.35rem) !important;
  line-height:1.08 !important;
  letter-spacing:-.04em !important;
}
.cmpt-modal-full-article .cm-article-lead{
  margin:14px 0 8px !important;
  color:#a9b5c5 !important;
  font-size:1.05rem !important;
  line-height:1.55 !important;
}
.cmpt-modal-full-article .cm-article-hero{
  aspect-ratio:16/9 !important;
  max-height:460px !important;
  margin-top:4px !important;
  overflow:hidden !important;
  border-radius:var(--cm-radius) !important;
  background:var(--cm-surface) !important;
}
.cmpt-modal-full-article .cm-article-hero img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:inherit !important;
}
.cmpt-modal-full-article .cm-article-layout,
.cmpt-modal-full-article .cm-article-layout--no-sidebar,
.cmpt-modal-full-article .cmpt-modal-article-layout{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:20px 0 0 !important;
}
.cmpt-modal-full-article .cm-article-content{
  padding:0 0 60px !important;
  color:#d5dce7 !important;
  font-size:1.05rem !important;
  line-height:1.7 !important;
  overflow-wrap:break-word !important;
}
.cmpt-modal-full-article .cm-article-content h2,
.cmpt-modal-full-article .cm-article-content h3,
.cmpt-modal-full-article .cm-article-content h4{
  color:#fff !important;
  font-family:Poppins,Inter,sans-serif !important;
  line-height:1.2 !important;
}
.cmpt-modal-full-article .cm-article-content a{
  color:var(--cm-accent) !important;
  text-decoration:underline !important;
  text-underline-offset:3px !important;
}
.cmpt-modal-full-article .cm-article-content blockquote{
  margin:2rem 0 !important;
  padding:1rem 1.5rem !important;
  border-left:4px solid var(--cm-accent) !important;
  background:var(--cm-surface) !important;
}
.cmpt-modal-full-article .cm-article-content figure,
.cmpt-modal-full-article .cm-article-content img,
.cmpt-modal-full-article .cm-article-content video,
.cmpt-modal-full-article .cm-article-content iframe{
  max-width:100% !important;
}
.cmpt-modal-full-article .cm-ad-slot{
  position:relative !important;
  margin-block:16px !important;
  overflow:hidden !important;
  border:1px solid rgba(255,90,42,.65) !important;
  border-radius:var(--cm-radius) !important;
  background:linear-gradient(135deg,rgba(48,21,11,.82),rgba(10,22,37,.96)) !important;
}
.cmpt-modal-full-article .cm-ad-slot > .cm-ad-label{
  position:absolute !important;
  z-index:3 !important;
  top:0 !important;
  left:50% !important;
  margin:0 !important;
  padding:3px 10px !important;
  transform:translate(-50%,-50%) !important;
  background:var(--cm-bg) !important;
  border-radius:99px !important;
}
.cmpt-modal-full-article .cm-ad-slot img{width:100% !important;height:auto !important;}
.cmpt-modal-full-article .cm-article-share-rail,
.cmpt-modal-full-article .cm-article-sidebar,
.cmpt-modal-full-article .cm-article-actions-mobile,
.cmpt-modal-full-article .cm-related-section,
.cmpt-modal-full-article .cm-breadcrumbs,
.cmpt-modal-full-article .cm-single-story-action{
  display:none !important;
}

/* Desktop: restaura de verdade a linha superior do grid para o menu clássico. */
@media (min-width:821px){
  .cmpt-player-grid{
    grid-template-areas:
      "top-left top-center top-right"
      "next stage more" !important;
    grid-template-columns:220px minmax(390px,460px) 300px !important;
    grid-template-rows:auto minmax(0,1fr) !important;
    align-items:start !important;
  }
  .cmpt-stage-column-head.cmpt-desktop-menu-only{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    position:relative !important;
    z-index:12 !important;
    min-height:46px !important;
    overflow:visible !important;
    grid-area:top-center !important;
  }
  .cmpt-stage-column-head.cmpt-desktop-menu-only .cmpt-player-top-controls{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
  .cmpt-stage-column-head.cmpt-desktop-menu-only .cmpt-content-mode-switch{
    display:grid !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
}

/* Mobile: centro do primeiro terço real = ~16,7% da altura do viewport. */
@media (max-width:820px){
  .cmpt-retractable-menu{
    left:0 !important;
    top:clamp(108px,16.667dvh,150px) !important;
    transform:translate3d(0,-50%,0) !important;
  }
  .admin-bar .cmpt-retractable-menu{
    top:clamp(132px,calc(46px + 16.667dvh),190px) !important;
  }
  .cmpt-modal-full-article{
    padding:12px 14px 38px !important;
  }
  .cmpt-modal-full-article .cm-article-header{
    padding:12px 0 12px !important;
  }
  .cmpt-modal-full-article .cm-article-header h1{
    font-size:clamp(1.85rem,7.4vw,2.7rem) !important;
  }
  .cmpt-modal-full-article .cm-article-lead{
    font-size:.98rem !important;
  }
  .cmpt-modal-full-article .cm-article-hero{
    width:100% !important;
    aspect-ratio:16/10 !important;
    max-height:250px !important;
    margin-top:2px !important;
    border-radius:12px !important;
  }
  .cmpt-modal-full-article .cm-article-layout,
  .cmpt-modal-full-article .cm-article-layout--no-sidebar,
  .cmpt-modal-full-article .cmpt-modal-article-layout{
    margin-top:14px !important;
  }
  .cmpt-modal-full-article .cm-article-content,
  .cmpt-modal-full-article .cm-article-header,
  .cmpt-modal-full-article .cm-article-hero,
  .cmpt-modal-full-article .cm-ad-slot,
  .cmpt-modal-full-article .cm-ad-slot--wide,
  .cmpt-modal-full-article .cm-reading-container{
    width:100% !important;
    max-width:100% !important;
  }
  .cmpt-modal-full-article .cm-article-content{
    padding-bottom:38px !important;
  }
}


/* =========================================================
   Com Marília Portal Tools 5.9.9 — navegação de slides
   Setas soltas, translúcidas e sem círculo/fundo.
   Primeiro slide: sem seta anterior.
   Último slide: sem seta próxima.
   ========================================================= */
.cmpt-more-content-cue{display:none !important;}

.cmpt-slide-navigation{
  position:absolute;
  z-index:18;
  inset:0;
  pointer-events:none;
}
.cmpt-slide-nav{
  appearance:none;
  position:absolute;
  top:50%;
  width:56px;
  height:64px;
  margin-top:-32px;
  padding:8px;
  border:0 !important;
  outline:0;
  border-radius:10px;
  background:transparent !important;
  color:#fff;
  opacity:.62;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,.85));
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  pointer-events:auto;
  transition:opacity .2s ease,transform .2s ease,background-color .2s ease;
  -webkit-tap-highlight-color:transparent;
}
.cmpt-slide-nav--prev{left:8px;}
.cmpt-slide-nav--next{right:8px;}
.cmpt-slide-nav svg{
  width:44px;
  height:44px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.cmpt-slide-nav:hover{
  opacity:1;
  transform:scale(1.16);
}
.cmpt-slide-nav:active{
  opacity:.82;
  transform:scale(.95);
}
.cmpt-slide-nav:focus{outline:0 !important;box-shadow:none !important;}
.cmpt-slide-nav:focus-visible{
  opacity:1;
  outline:2px solid var(--cmpt-orange) !important;
  outline-offset:2px !important;
}

@media (max-width:820px){
  .cmpt-slide-nav{
    width:46px;
    height:58px;
    margin-top:-29px;
    padding:6px;
    opacity:.58;
  }
  .cmpt-slide-nav--prev{left:2px;}
  .cmpt-slide-nav--next{right:2px;}
  .cmpt-slide-nav svg{width:36px;height:36px;}
  /* Mantém o toque lateral invisível atrás da seta, mas somente quando
     existe realmente um slide naquela direção. */
  .cmpt-slide-navigation{z-index:19;}
}

@media (min-width:821px){
  .cmpt-slide-nav--prev{left:10px;}
  .cmpt-slide-nav--next{right:10px;}
}


/* =========================================================
   Com Marília Portal Tools 5.9.11 — Desktop Feed Nativo
   Referências funcionais: feed desktop do Instagram + UOL Flash.
   IMPORTANTE: regras abaixo são exclusivamente desktop.
   O mobile permanece visual e funcionalmente igual à 5.9.10.
   ========================================================= */
@media (min-width:821px){
  body.cmpt-player-open{overflow:hidden !important;}
  .cmpt-player{
    overflow:hidden !important;
    padding-top:10px !important;
  }
  .cmpt-player-shell{
    width:min(calc(100% - 40px),1320px) !important;
    height:calc(100dvh - 10px) !important;
    min-height:0 !important;
    overflow:hidden !important;
  }
  .cmpt-player-toolbar{display:none !important;}
  .cmpt-player-grid{
    flex:1 !important;
    min-height:0 !important;
    height:100% !important;
    grid-template-areas:
      "top-left top-center top-right"
      "next stage more" !important;
    grid-template-columns:220px minmax(390px,460px) 300px !important;
    grid-template-rows:auto minmax(0,1fr) !important;
    align-items:stretch !important;
    justify-content:center !important;
    gap:26px !important;
    padding:0 0 16px !important;
  }
  .cmpt-stage-column-head.cmpt-desktop-menu-only{
    grid-area:top-center !important;
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:48px !important;
    margin:0 !important;
  }
  .cmpt-player-top-controls{
    width:100% !important;
    justify-content:center !important;
  }
  .cmpt-next-panel{
    grid-area:next !important;
    align-self:center !important;
    position:sticky !important;
    top:76px !important;
  }
  .cmpt-more-panel{
    grid-area:more !important;
    align-self:center !important;
    position:sticky !important;
    top:76px !important;
    max-height:calc(100dvh - 120px) !important;
    overflow:auto !important;
  }
  .cmpt-stage-column{
    grid-area:stage !important;
    height:100% !important;
    min-height:0 !important;
    overflow:hidden !important;
    display:block !important;
  }

  /* O player antigo fica preservado no DOM para o mobile, mas sai do desktop. */
  .cmpt-stage-column > .cmpt-stage-wrap,
  .cmpt-stage-column > .cmpt-sponsor-strip{
    display:none !important;
  }

  /* Feed real: cards empilhados e rolagem nativa, sem snap e sem transição. */
  .cmpt-desktop-feed{
    position:relative;
    width:100%;
    height:100%;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    scrollbar-color:rgba(255,255,255,.16) transparent;
    padding:4px 8px 90px;
    scroll-behavior:auto !important;
  }
  .cmpt-desktop-feed::-webkit-scrollbar{width:7px;}
  .cmpt-desktop-feed::-webkit-scrollbar-track{background:transparent;}
  .cmpt-desktop-feed::-webkit-scrollbar-thumb{
    background:rgba(255,255,255,.15);
    border-radius:999px;
  }
  .cmpt-desktop-feed-card{
    position:relative;
    width:100%;
    aspect-ratio:9/12.4;
    margin:0 auto 28px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.10);
    border-radius:12px;
    background:#000;
    box-shadow:0 18px 50px rgba(0,0,0,.30);
    user-select:none;
    contain:layout paint;
  }
  .cmpt-desktop-feed-card:last-child{margin-bottom:110px;}
  .cmpt-desktop-feed-card.is-active{
    border-color:rgba(255,90,42,.26);
    box-shadow:0 22px 62px rgba(0,0,0,.38);
  }
  .cmpt-desktop-feed-card__media,
  .cmpt-desktop-feed-card__media img,
  .cmpt-desktop-feed-card__media video,
  .cmpt-desktop-feed-card__media iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
  }
  .cmpt-desktop-feed-card__media img,
  .cmpt-desktop-feed-card__media video,
  .cmpt-desktop-feed-card__media iframe{
    object-fit:cover;
    border:0;
  }
  .cmpt-desktop-feed-card .cmpt-stage-overlay{z-index:2;}
  .cmpt-desktop-feed-card .cmpt-stage-copy{
    z-index:4;
    padding:48px 34px 32px !important;
  }
  .cmpt-desktop-feed-card .cmpt-stage-copy h2{
    font-size:40px !important;
  }
  .cmpt-desktop-feed-card .cmpt-stage-copy .cmpt-slide-text{
    font-size:15px !important;
  }
  .cmpt-desktop-feed-slide-nav{
    position:absolute;
    z-index:8;
    inset:0;
    pointer-events:none;
  }
  .cmpt-desktop-feed-slide-nav button{
    appearance:none;
    position:absolute;
    top:50%;
    width:52px;
    height:62px;
    margin-top:-31px;
    padding:7px;
    border:0;
    border-radius:10px;
    background:transparent;
    color:#fff;
    opacity:.56;
    cursor:pointer;
    pointer-events:auto;
    filter:drop-shadow(0 2px 5px rgba(0,0,0,.9));
    transition:opacity .16s ease,transform .16s ease;
  }
  .cmpt-desktop-feed-slide-nav button:first-child{left:6px;}
  .cmpt-desktop-feed-slide-nav button:last-child{right:6px;}
  .cmpt-desktop-feed-slide-nav button:hover{opacity:1;transform:scale(1.12);}
  .cmpt-desktop-feed-slide-nav svg{
    width:38px;
    height:38px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.5;
    stroke-linecap:round;
    stroke-linejoin:round;
  }
  .cmpt-desktop-feed-progress{
    position:absolute;
    z-index:9;
    left:50%;
    bottom:12px;
    transform:translateX(-50%);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    padding:7px 10px;
    border-radius:999px;
    background:rgba(2,9,16,.42);
    backdrop-filter:blur(8px);
  }
  .cmpt-desktop-feed-progress button{
    appearance:none;
    width:7px;
    height:7px;
    min-width:7px;
    padding:0;
    border:0;
    border-radius:999px;
    background:rgba(255,255,255,.34);
    cursor:pointer;
  }
  .cmpt-desktop-feed-progress button.is-active{
    width:9px;
    height:9px;
    min-width:9px;
    background:var(--cmpt-orange);
    box-shadow:0 0 0 3px rgba(255,90,42,.14);
  }
  .cmpt-player.is-transitioning .cmpt-next-panel,
  .cmpt-player.is-transitioning .cmpt-more-panel{
    animation:none !important;
    transform:none !important;
    opacity:1 !important;
  }
}

/* =========================================================
   Com Marília Portal Tools 5.12.1-RC10 — Reader polish hotfix
   - evita overflow horizontal no mobile dentro da matéria
   - garante largura estável do conteúdo e anúncios no modal
   ========================================================= */
@media (max-width:820px){
  .cmpt-modal-full-article, .cmpt-modal-full-article .cm-article, .cmpt-modal-full-article .cm-article-content, .cmpt-modal-full-article .cm-ad-slot{
    max-width:100% !important;
    overflow-x:hidden !important;
  }
  .cmpt-modal-full-article{
    padding-right:22px !important;
    padding-left:22px !important;
  }
}
/* ===== END PLAYER CASCADE SECTION: BASE / HUB ===== */

/* ===== BEGIN PLAYER CASCADE SECTION: DESKTOP ===== */
/*
 * Com Marília Portal Tools 5.9.24 FINAL
 * Desktop player RC authoritative stylesheet.
 * This file intentionally has a release-specific filename so browser/CDN caches
 * cannot reuse a previous desktop layout. Mobile is untouched.
 */
@media (min-width: 821px) {
  :root {
    --cmpt-desktop-player-h: 75vh;
    --cmpt-desktop-player-w: calc(var(--cmpt-desktop-player-h) * 9 / 16);
    --cmpt-desktop-left-w: 205px;
    --cmpt-desktop-right-w: 255px;
    --cmpt-desktop-gap: 10px;
  }

  html, body { overscroll-behavior: none; }
  body.cmpt-player-open { overflow: hidden !important; }

  .cmpt-player {
    overflow: hidden !important;
    padding-top: 10px !important;
  }

  .cmpt-player-shell {
    width: min(calc(100vw - 24px), 1500px) !important;
    height: calc(100dvh - 10px) !important;
    min-height: 0 !important;
    overflow: hidden !important;
    margin: 0 auto !important;
  }

  .cmpt-player-toolbar { display: none !important; }

  .cmpt-player-grid {
    flex: 1 !important;
    min-height: 0 !important;
    height: 100% !important;
    display: grid !important;
    grid-template-areas:
      "top-left top-center top-right"
      "next stage more" !important;
    grid-template-columns:
      var(--cmpt-desktop-left-w)
      var(--cmpt-desktop-player-w)
      var(--cmpt-desktop-right-w) !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    justify-content: center !important;
    align-items: start !important;
    column-gap: var(--cmpt-desktop-gap) !important;
    row-gap: 8px !important;
    max-width: none !important;
    padding: 0 0 12px !important;
  }

  .cmpt-stage-column-head.cmpt-desktop-menu-only {
    grid-area: top-center !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: var(--cmpt-desktop-player-w) !important;
    min-height: 52px !important;
    margin: 0 !important;
  }

  .cmpt-player-top-controls {
    width: 100% !important;
    justify-content: center !important;
    margin: 0 !important;
  }

  .cmpt-player-top-controls .cmpt-content-mode-switch {
    transform: scale(1.06) !important;
    transform-origin: center !important;
  }

  .cmpt-stage-column {
    grid-area: stage !important;
    width: var(--cmpt-desktop-player-w) !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    display: block !important;
  }

  /* Keep the legacy single-stage DOM only for mobile. */
  .cmpt-stage-column > .cmpt-stage-wrap,
  .cmpt-stage-column > .cmpt-sponsor-strip {
    display: none !important;
  }

  /* ---------- Native desktop feed ---------- */
  .cmpt-desktop-feed {
    position: relative !important;
    width: var(--cmpt-desktop-player-w) !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 4px 0 100px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    overscroll-behavior: contain !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    scroll-behavior: auto !important;
  }
  .cmpt-desktop-feed::-webkit-scrollbar { display: none !important; width: 0 !important; height: 0 !important; }

  .cmpt-desktop-feed-card {
    position: relative !important;
    display: block !important;
    width: var(--cmpt-desktop-player-w) !important;
    height: auto !important;
    aspect-ratio: auto !important;
    margin: 0 auto 58px !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    outline: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    contain: none !important;
    user-select: none !important;
  }
  .cmpt-desktop-feed-card:last-child { margin-bottom: 120px !important; }
  .cmpt-desktop-feed-card.is-active { border: 0 !important; outline: 0 !important; box-shadow: none !important; }

  /* Player = visual 9:16 only. Caption/progress are outside this box. */
  .cmpt-desktop-feed-card__visual {
    position: relative !important;
    width: var(--cmpt-desktop-player-w) !important;
    height: var(--cmpt-desktop-player-h) !important;
    min-width: var(--cmpt-desktop-player-w) !important;
    max-width: var(--cmpt-desktop-player-w) !important;
    min-height: var(--cmpt-desktop-player-h) !important;
    max-height: var(--cmpt-desktop-player-h) !important;
    aspect-ratio: 9 / 16 !important;
    margin: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    outline: 0 !important;
    border-radius: 20px !important;
    background: #07111c !important;
    box-shadow: 0 20px 52px rgba(0,0,0,.30) !important;
  }
  .cmpt-desktop-feed-card.is-active .cmpt-desktop-feed-card__visual,
  .cmpt-desktop-feed-card__visual:focus,
  .cmpt-desktop-feed-card__visual:focus-visible {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: 0 20px 52px rgba(0,0,0,.30) !important;
  }

  .cmpt-desktop-feed-card__media {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    background: #07111c !important;
    border-radius: 20px !important;
  }
  .cmpt-desktop-feed-card__media-backdrop { display: none !important; }
  .cmpt-desktop-feed-card__media-main,
  .cmpt-desktop-feed-card__media img,
  .cmpt-desktop-feed-card__media video,
  .cmpt-desktop-feed-card__media iframe {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    border: 0 !important;
    border-radius: 20px !important;
    background: transparent !important;
    transform: none !important;
  }

  .cmpt-desktop-feed-card .cmpt-stage-overlay {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    border-radius: 20px !important;
  }
  .cmpt-desktop-feed-card .cmpt-stage-copy {
    position: absolute !important;
    inset: 0 !important;
    z-index: 4 !important;
    padding: 56px 34px 34px !important;
    border-radius: 20px !important;
  }
  .cmpt-desktop-feed-card .cmpt-stage-copy h2 { font-size: 40px !important; }
  .cmpt-desktop-feed-card .cmpt-stage-copy.is-small h2 { font-size: 31px !important; }
  .cmpt-desktop-feed-card .cmpt-stage-copy.is-large h2 { font-size: 48px !important; }
  .cmpt-desktop-feed-card .cmpt-stage-copy .cmpt-slide-text { font-size: 15px !important; line-height: 1.46 !important; }

  /* Arrows are inside the player and conditional JS determines which exists. */
  .cmpt-desktop-feed-slide-nav {
    position: absolute !important;
    inset: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    z-index: 12 !important;
  }
  .cmpt-desktop-feed-slide-nav button {
    appearance: none !important;
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 42px !important;
    height: 68px !important;
    padding: 7px !important;
    border: 0 !important;
    outline: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: rgba(255,255,255,.88) !important;
    opacity: .86 !important;
    cursor: pointer !important;
    pointer-events: auto !important;
    box-shadow: none !important;
    filter: drop-shadow(0 3px 9px rgba(0,0,0,.82)) !important;
  }
  .cmpt-desktop-feed-slide-nav button[data-cmpt-desktop-prev-segment] { left: 8px !important; right: auto !important; }
  .cmpt-desktop-feed-slide-nav button[data-cmpt-desktop-next-segment] { right: 8px !important; left: auto !important; }
  .cmpt-desktop-feed-slide-nav button:hover { opacity: 1 !important; }
  .cmpt-desktop-feed-slide-nav button:focus-visible { outline: 2px solid rgba(255,255,255,.8) !important; outline-offset: -2px !important; }
  .cmpt-desktop-feed-slide-nav svg {
    width: 32px !important;
    height: 32px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.9 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
  }

  /* Meta is in normal document flow. This is what prevents overlap with next card. */
  .cmpt-desktop-feed-card__meta {
    position: relative !important;
    display: block !important;
    width: var(--cmpt-desktop-player-w) !important;
    max-width: var(--cmpt-desktop-player-w) !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 12px 4px 18px !important;
    overflow: visible !important;
    clear: both !important;
    z-index: 2 !important;
  }

  /* Pagination outside the player, above the caption. */
  .cmpt-desktop-feed-progress {
    position: static !important;
    left: auto !important;
    bottom: auto !important;
    transform: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 10px !important;
    gap: 6px !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    backdrop-filter: none !important;
  }
  .cmpt-desktop-feed-progress button {
    appearance: none !important;
    width: 5px !important;
    min-width: 5px !important;
    height: 5px !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.38) !important;
    box-shadow: none !important;
  }
  .cmpt-desktop-feed-progress button.is-active {
    width: 7px !important;
    min-width: 7px !important;
    height: 7px !important;
    background: var(--cmpt-orange) !important;
  }

  .cmpt-desktop-feed-caption {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 0 8px !important;
    color: #eef3f8 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
  }
  .cmpt-desktop-feed-caption p {
    display: -webkit-box !important;
    width: 100% !important;
    margin: 0 0 8px !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    white-space: normal !important;
  }
  .cmpt-desktop-feed-caption strong { color: #fff !important; font-weight: 700 !important; margin-right: 4px !important; }
  .cmpt-desktop-feed-caption__actions { display: flex !important; align-items: center !important; min-height: 20px !important; }
  .cmpt-caption-more {
    appearance: none !important;
    display: inline-flex !important;
    align-items: center !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: #aeb8c5 !important;
    padding: 0 !important;
    font: 700 13px/1.2 Inter, sans-serif !important;
    cursor: pointer !important;
  }
  .cmpt-caption-more:hover { color: #fff !important; }
  .cmpt-caption-article { display: none !important; }

  /* ---------- Side panels ---------- */
  .cmpt-next-panel {
    grid-area: next !important;
    position: sticky !important;
    top: 60px !important;
    align-self: start !important;
    width: var(--cmpt-desktop-left-w) !important;
    max-width: var(--cmpt-desktop-left-w) !important;
    margin: 0 !important;
    overflow: visible !important;
  }
  .cmpt-next-panel h2,
  .cmpt-more-panel h2 { margin: 0 0 10px !important; font-size: 10px !important; }
  .cmpt-next-card {
    width: 100% !important;
    height: 270px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
  }
  .cmpt-next-card__content { padding: 16px !important; }
  .cmpt-next-card h3 { margin: 8px 0 6px !important; font-size: 15px !important; line-height: 1.15 !important; }

  .cmpt-more-panel {
    grid-area: more !important;
    position: sticky !important;
    top: 60px !important;
    align-self: start !important;
    width: var(--cmpt-desktop-right-w) !important;
    max-width: var(--cmpt-desktop-right-w) !important;
    max-height: calc(100dvh - 82px) !important;
    margin: 0 !important;
    padding: 14px !important;
    overflow: auto !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
  }
  .cmpt-more-panel::-webkit-scrollbar { display: none !important; width: 0 !important; }
  .cmpt-more-list { gap: 10px !important; }
  .cmpt-more-item {
    display: grid !important;
    grid-template-columns: 76px minmax(0,1fr) !important;
    gap: 9px !important;
    align-items: start !important;
    width: 100% !important;
  }
  .cmpt-more-item > i { display: none !important; }
  .cmpt-more-item img { width: 76px !important; height: 58px !important; border-radius: 7px !important; object-fit: cover !important; }
  .cmpt-more-item > div { min-width: 0 !important; overflow: visible !important; }
  .cmpt-more-item h3 {
    margin: 5px 0 0 !important;
    font-size: 11px !important;
    line-height: 1.18 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    word-break: normal !important;
  }
  .cmpt-more-panel > button { margin-top: 14px !important; padding: 8px !important; }

  /* Remove orange focus/border artifacts on player and modal while retaining a neutral focus ring on controls. */
  .cmpt-desktop-feed-card, .cmpt-desktop-feed-card:focus, .cmpt-desktop-feed-card:focus-visible, .cmpt-desktop-feed-card__visual, .cmpt-desktop-feed-card__visual:focus, .cmpt-desktop-feed-card__visual:focus-visible {
    border-color: transparent !important;
    outline: 0 !important;
  }
}


/* =========================================================
   5.9.24 FINAL — pré-final desktop
   - menu superior responsivo para notebooks (sem transform scale)
   - laterais um pouco maiores e com distância moderada
   - modal mais compacto
   - foco do teclado neutro no modal (sem laranja)
   - mobile intocado
   ========================================================= */
@media (min-width:821px){
  :root{
    --cmpt-desktop-left-w:220px;
    --cmpt-desktop-right-w:275px;
    --cmpt-desktop-gap:18px;
  }

  /* Um pouco mais de espaço entre player e laterais sem deixar o conjunto disperso. */
  .cmpt-player-shell{
    width:min(calc(100vw - 28px),1560px) !important;
  }
  .cmpt-player-grid{
    column-gap:var(--cmpt-desktop-gap) !important;
  }

  /* MENU SUPERIOR: dimensões reais, sem scale(), para não cortar em notebooks. */
  .cmpt-stage-column-head.cmpt-desktop-menu-only{
    width:var(--cmpt-desktop-player-w) !important;
    min-height:54px !important;
    overflow:visible !important;
  }
  .cmpt-stage-column-head .cmpt-player-top-controls{
    width:100% !important;
    min-width:0 !important;
    overflow:visible !important;
  }
  .cmpt-stage-column-head .cmpt-content-mode-switch,
  .cmpt-player-top-controls .cmpt-content-mode-switch{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    width:min(100%,320px) !important;
    max-width:320px !important;
    min-width:0 !important;
    height:auto !important;
    margin:0 auto !important;
    padding:4px !important;
    gap:4px !important;
    transform:none !important;
    overflow:visible !important;
    border-radius:999px !important;
  }
  .cmpt-stage-column-head .cmpt-content-mode-switch button,
  .cmpt-player-top-controls .cmpt-content-mode-switch button{
    width:100% !important;
    min-width:0 !important;
    height:38px !important;
    min-height:38px !important;
    padding:0 10px !important;
    gap:6px !important;
    font-size:10px !important;
    white-space:nowrap !important;
    overflow:hidden !important;
  }
  .cmpt-stage-column-head .cmpt-content-mode-switch button svg,
  .cmpt-player-top-controls .cmpt-content-mode-switch button svg{
    width:16px !important;
    height:16px !important;
    flex:0 0 16px !important;
  }
  .cmpt-stage-column-head .cmpt-content-mode-switch button span,
  .cmpt-player-top-controls .cmpt-content-mode-switch button span{
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  /* Laterais levemente maiores. */
  .cmpt-next-panel{
    width:var(--cmpt-desktop-left-w) !important;
    max-width:var(--cmpt-desktop-left-w) !important;
  }
  .cmpt-next-card{
    height:288px !important;
  }
  .cmpt-next-card__content{
    padding:17px !important;
  }
  .cmpt-next-card h3{
    font-size:16px !important;
    line-height:1.16 !important;
  }

  .cmpt-more-panel{
    width:var(--cmpt-desktop-right-w) !important;
    max-width:var(--cmpt-desktop-right-w) !important;
    padding:16px !important;
  }
  .cmpt-more-list{
    gap:11px !important;
  }
  .cmpt-more-item{
    grid-template-columns:82px minmax(0,1fr) !important;
    gap:10px !important;
  }
  .cmpt-more-item img{
    width:82px !important;
    height:62px !important;
  }
  .cmpt-more-item h3{
    font-size:11.5px !important;
    line-height:1.2 !important;
  }

  /* MODAL: reduz escala geral sem alterar a matéria/slots renderizados. */

  .cmpt-modal-full-article{
    --cm-reading-width:680px !important;
    padding:14px 26px 38px !important;
    font-size:15px !important;
    line-height:1.52 !important;
  }
  .cmpt-modal-full-article .cm-reading-container,
  .cmpt-modal-full-article .cm-article-header,
  .cmpt-modal-full-article .cm-article-hero,
  .cmpt-modal-full-article .cm-article-content,
  .cmpt-modal-full-article .cm-ad-slot,
  .cmpt-modal-full-article .cm-ad-slot--wide{
    width:min(100%,680px) !important;
    max-width:680px !important;
  }
  .cmpt-modal-full-article .cm-article-header{
    padding:14px 0 12px !important;
  }
  .cmpt-modal-full-article .cm-article-header .cm-badge{
    min-height:20px !important;
    margin-bottom:10px !important;
    padding:3px 8px !important;
    font-size:.56rem !important;
  }
  .cmpt-modal-full-article .cm-article-header h1{
    font-size:clamp(1.75rem,2.5vw,2.55rem) !important;
    line-height:1.08 !important;
  }
  .cmpt-modal-full-article .cm-article-lead{
    margin:10px 0 6px !important;
    font-size:.94rem !important;
    line-height:1.5 !important;
  }
  .cmpt-modal-full-article .cm-article-hero{
    max-height:350px !important;
    border-radius:14px !important;
  }
  .cmpt-modal-full-article .cm-article-layout,
  .cmpt-modal-full-article .cm-article-layout--no-sidebar,
  .cmpt-modal-full-article .cmpt-modal-article-layout{
    margin-top:14px !important;
  }
  .cmpt-modal-full-article .cm-article-content{
    padding-bottom:42px !important;
    font-size:.96rem !important;
    line-height:1.64 !important;
  }
  .cmpt-modal-full-article .cm-article-content h2{
    font-size:1.45rem !important;
  }
  .cmpt-modal-full-article .cm-article-content h3{
    font-size:1.22rem !important;
  }
  .cmpt-modal-full-article .cm-article-content h4{
    font-size:1.05rem !important;
  }
  .cmpt-modal-full-article .cm-article-content figure,
  .cmpt-modal-full-article .cm-article-content img,
  .cmpt-modal-full-article .cm-article-content video,
  .cmpt-modal-full-article .cm-article-content iframe{
    max-width:100% !important;
  }

  /* Remove o outline laranja global do painel e usa foco neutro nos controles. */
}

/* Notebook / desktop compacto: preserva o menu sem clipping e reduz laterais só o necessário. */
@media (min-width:821px) and (max-width:1280px){
  :root{
    --cmpt-desktop-left-w:190px;
    --cmpt-desktop-right-w:230px;
    --cmpt-desktop-gap:14px;
  }
  .cmpt-player-shell{
    width:calc(100vw - 20px) !important;
  }
  .cmpt-stage-column-head .cmpt-content-mode-switch,
  .cmpt-player-top-controls .cmpt-content-mode-switch{
    width:min(100%,282px) !important;
    max-width:282px !important;
  }
  .cmpt-stage-column-head .cmpt-content-mode-switch button,
  .cmpt-player-top-controls .cmpt-content-mode-switch button{
    height:34px !important;
    min-height:34px !important;
    padding:0 7px !important;
    gap:5px !important;
    font-size:9px !important;
  }
  .cmpt-stage-column-head .cmpt-content-mode-switch button svg,
  .cmpt-player-top-controls .cmpt-content-mode-switch button svg{
    width:14px !important;
    height:14px !important;
    flex-basis:14px !important;
  }
  .cmpt-next-card{height:252px !important;}
  .cmpt-next-card h3{font-size:14px !important;}
  .cmpt-more-panel{padding:12px !important;}
  .cmpt-more-item{grid-template-columns:70px minmax(0,1fr) !important;gap:8px !important;}
  .cmpt-more-item img{width:70px !important;height:54px !important;}
  .cmpt-more-item h3{font-size:10.5px !important;}
}
/* ===== END PLAYER CASCADE SECTION: DESKTOP ===== */

/* ===== BEGIN PLAYER CASCADE SECTION: MOBILE ===== */
/*
 * Com Marília Portal Tools 5.9.29 — Native Horizontal Slide Track
 * Exclusive mobile stylesheet. Desktop 5.9.24 FINAL is untouched.
 */
@media (max-width: 820px) {
  :root {
    --cmpt-mobile-bar-h: 64px;
    --cmpt-mobile-bar-bottom: calc(10px + env(safe-area-inset-bottom));
    --cmpt-mobile-side-gap: 12px;
  }

  html, body { overscroll-behavior: none !important; }
  body.cmpt-player-open { overflow: hidden !important; }
  body.cmpt-modal-open { overflow: hidden !important; }

  .cmpt-player {
    overflow: hidden !important;
    padding: 0 !important;
    background: #030b15 !important;
  }
  .cmpt-player-shell,
  .cmpt-player-grid,
  .cmpt-stage-column {
    width: 100% !important;
    height: 100dvh !important;
    min-height: 0 !important;
    max-height: 100dvh !important;
  }
  .cmpt-player-shell { margin: 0 !important; }
  .cmpt-player-grid { display: block !important; padding: 0 !important; }
  .cmpt-stage-column { display: block !important; padding: 0 !important; overflow: hidden !important; }

  /* Original single-screen mobile player is replaced by the native feed. */
  .cmpt-stage-column > .cmpt-stage-wrap,
  .cmpt-stage-column > .cmpt-sponsor-strip,
  .cmpt-next-panel,
  .cmpt-more-panel,
  .cmpt-player-toolbar,
  .cmpt-stage-column-head,
  .cmpt-player-grid-top-left,
  .cmpt-player-grid-top-right { display: none !important; }

  .cmpt-mobile-feed {
    position: relative !important;
    width: 100% !important;
    height: 100dvh !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior-y: contain !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding: 12px 0 calc(112px + env(safe-area-inset-bottom)) !important;
    scroll-behavior: auto !important;
    background: #030b15 !important;
  }
  .cmpt-mobile-feed::-webkit-scrollbar { display: none !important; }

  .cmpt-mobile-feed-card {
    width: 100% !important;
    margin: 0 0 34px !important;
    padding: 0 var(--cmpt-mobile-side-gap) !important;
    box-sizing: border-box !important;
  }
  .cmpt-mobile-feed-card__visual {
    position: relative !important;
    width: min(calc(100vw - (var(--cmpt-mobile-side-gap) * 2)), 430px) !important;
    aspect-ratio: 9 / 16 !important;
    margin: 0 auto !important;
    overflow: hidden !important;
    border: 0 !important;
    outline: 0 !important;
    border-radius: 20px !important;
    background: #07111c !important;
    box-shadow: 0 14px 34px rgba(0,0,0,.28) !important;
  }
  .cmpt-mobile-feed-card__media,
  .cmpt-mobile-feed-card__media-main {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }
  .cmpt-mobile-feed-card__media { overflow: hidden !important; }
  .cmpt-mobile-feed-card__media-main,
  .cmpt-mobile-feed-card__media img,
  .cmpt-mobile-feed-card__media video,
  .cmpt-mobile-feed-card__media iframe {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    border: 0 !important;
    background: transparent !important;
  }
  .cmpt-mobile-feed-card .cmpt-stage-overlay,
  .cmpt-mobile-feed-card .cmpt-stage-copy {
    position: absolute !important;
    inset: 0 !important;
  }
  .cmpt-mobile-feed-card .cmpt-stage-copy {
    padding: 68px 22px 30px !important;
  }
  .cmpt-mobile-feed-card .cmpt-stage-copy h2 {
    font-size: clamp(29px, 8.2vw, 38px) !important;
    line-height: 1.03 !important;
  }
  .cmpt-mobile-feed-card .cmpt-stage-copy .cmpt-slide-text {
    font-size: clamp(13px, 3.7vw, 15px) !important;
    line-height: 1.45 !important;
  }

  /* Slide arrows inside the media; visual icon small, tap area generous. */
  .cmpt-mobile-feed-slide-nav {
    position: absolute !important;
    inset: 0 !important;
    z-index: 18 !important;
    pointer-events: none !important;
  }
  .cmpt-mobile-feed-slide-nav button {
    appearance: none !important;
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 48px !important;
    height: 76px !important;
    padding: 10px !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: rgba(255,255,255,.72) !important;
    filter: drop-shadow(0 2px 6px rgba(0,0,0,.9)) !important;
    pointer-events: auto !important;
  }
  .cmpt-mobile-feed-slide-nav [data-cmpt-mobile-prev-segment] { left: 1px !important; }
  .cmpt-mobile-feed-slide-nav [data-cmpt-mobile-next-segment] { right: 1px !important; }
  .cmpt-mobile-feed-slide-nav svg {
    width: 28px !important;
    height: 28px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.7 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
  }

  /* Pagination OUTSIDE the player. */
  .cmpt-mobile-feed-card__meta {
    width: min(calc(100vw - (var(--cmpt-mobile-side-gap) * 2)), 430px) !important;
    margin: 0 auto !important;
    padding: 9px 3px 0 !important;
  }
  .cmpt-mobile-feed-progress {
    width: 100% !important;
    min-height: 13px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 0 0 8px !important;
  }
  .cmpt-mobile-feed-progress button {
    appearance: none !important;
    width: 5px !important;
    min-width: 5px !important;
    height: 5px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,.38) !important;
    box-shadow: none !important;
  }
  .cmpt-mobile-feed-progress button.is-active {
    width: 7px !important;
    min-width: 7px !important;
    height: 7px !important;
    background: var(--cmpt-orange) !important;
  }

  /* Instagram-like caption outside the media. */
  .cmpt-mobile-feed-caption {
    width: 100% !important;
    color: #eef3f8 !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
  }
  .cmpt-mobile-feed-caption p {
    margin: 0 0 5px !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
  }
  .cmpt-mobile-feed-caption strong { color: #fff !important; font-weight: 800 !important; }
  .cmpt-mobile-caption-more {
    appearance: none !important;
    border: 0 !important;
    background: transparent !important;
    color: #aeb9c8 !important;
    padding: 2px 0 !important;
    font: 700 13px/1.2 Inter, sans-serif !important;
    cursor: pointer !important;
  }
  .cmpt-mobile-caption-more:active { color: #fff !important; }

  /* Unified mobile bottom menu: icon-only, Instagram-inspired, same in player and modal. */
  .cmpt-mobile-menu-only[data-cmpt-retractable-menu] {
    display: block !important;
    position: fixed !important;
    left: 50% !important;
    right: auto !important;
    top: auto !important;
    bottom: var(--cmpt-mobile-bar-bottom) !important;
    width: min(calc(100vw - 64px), 264px) !important;
    height: var(--cmpt-mobile-bar-h) !important;
    min-height: var(--cmpt-mobile-bar-h) !important;
    transform: translateX(-50%) !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    z-index: 1200 !important;
  }
  .cmpt-mobile-menu-only .cmpt-retractable-menu__body,
  .cmpt-mobile-menu-only.is-collapsed .cmpt-retractable-menu__body {
    position: static !important;
    width: 100% !important;
    height: 100% !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
    padding: 5px 6px !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 999px !important;
    background: rgba(7, 16, 28, .50) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.05) !important;
    backdrop-filter: blur(16px) saturate(135%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(135%) !important;
  }
  .cmpt-mobile-menu-only .cmpt-retractable-menu__toggle,
  .cmpt-mobile-menu-only .cmpt-menu-chevron { display: none !important; }
  .cmpt-mobile-menu-only .cmpt-content-mode-switch {
    width: 100% !important;
    height: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: center !important;
    gap: 4px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }
  .cmpt-mobile-menu-only .cmpt-content-mode-switch button {
    appearance: none !important;
    min-width: 0 !important;
    width: 100% !important;
    height: 54px !important;
    min-height: 54px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 3px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: rgba(241,246,252,.92) !important;
    box-shadow: none !important;
    outline: 0 !important;
  }
  .cmpt-mobile-menu-only .cmpt-content-mode-switch button.is-active {
    background: rgba(255,84,40,.22) !important;
    color: #fff !important;
    box-shadow: inset 0 0 0 1px rgba(255,84,40,.55) !important;
  }
  .cmpt-mobile-menu-only .cmpt-content-mode-switch button:active {
    transform: scale(.985) !important;
  }
  .cmpt-mobile-menu-only .cmpt-content-mode-switch button svg {
    width: 22px !important;
    height: 22px !important;
    flex: 0 0 22px !important;
    stroke-width: 2.15 !important;
  }
  .cmpt-mobile-menu-only .cmpt-content-mode-switch button span {
    position: static !important;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
    white-space: nowrap !important;
    border: 0 !important;
    display: block !important;
    font: 700 10px/1 Inter, sans-serif !important;
    letter-spacing: .01em !important;
    color: currentColor !important;
    opacity: .9 !important;
    text-align: center !important;
  }
  /* Modal keeps same persistent bar and reserves its space. */

  /* No orange outlines around player/modal containers. */
  .cmpt-mobile-feed-card, .cmpt-mobile-feed-card__visual, .cmpt-mobile-feed-card:focus, .cmpt-mobile-feed-card:focus-visible {
    outline: 0 !important;
    border-color: transparent !important;
  }

  @media (max-width: 380px) {
    :root { --cmpt-mobile-bar-h: 60px; --cmpt-mobile-side-gap: 10px; }
    .cmpt-mobile-menu-only[data-cmpt-retractable-menu] { width: min(calc(100vw - 42px), 244px) !important; }
    .cmpt-mobile-menu-only .cmpt-content-mode-switch button { height: 50px !important; min-height: 50px !important; padding: 0 !important; gap: 2px !important; }
    .cmpt-mobile-menu-only .cmpt-content-mode-switch button span { font-size: 9px !important; line-height: 1 !important; }
  }

  @media (min-width: 481px) {
    .cmpt-mobile-menu-only[data-cmpt-retractable-menu] { width: 280px !important; }
  }

  @media (max-width: 380px) {
  }

  .cmpt-mobile-feed-card__visual {
    touch-action: pan-y pinch-zoom !important;
    user-select: none !important;
    -webkit-user-select: none !important;
    -webkit-touch-callout: none !important;
  }
  .cmpt-mobile-feed-card__media,
  .cmpt-mobile-feed-card .cmpt-stage-copy,
  .cmpt-mobile-feed-card .cmpt-stage-overlay,
  .cmpt-mobile-feed-slide-nav,
  .cmpt-mobile-feed-card__meta {
    transition: opacity .18s ease, transform .18s ease !important;
  }
  body.cmpt-mobile-ui-hidden .cmpt-mobile-menu-only[data-cmpt-retractable-menu] {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateX(-50%) translateY(14px) !important;
  }
  .cmpt-mobile-feed-card.cmpt-mobile-feed-card--focus-image .cmpt-stage-copy,
  .cmpt-mobile-feed-card.cmpt-mobile-feed-card--focus-image .cmpt-stage-overlay,
  .cmpt-mobile-feed-card.cmpt-mobile-feed-card--focus-image .cmpt-mobile-feed-slide-nav,
  .cmpt-mobile-feed-card.cmpt-mobile-feed-card--focus-image .cmpt-mobile-feed-card__meta {
    opacity: 0 !important;
    pointer-events: none !important;
  }
  .cmpt-mobile-feed-card.cmpt-mobile-feed-card--focus-image .cmpt-mobile-feed-card__meta {
    max-height: 0 !important;
    min-height: 0 !important;
    padding-top: 0 !important;
    overflow: hidden !important;
  }
}


/* =========================================================
   5.9.30 — native horizontal scroll-snap
   All slides remain mounted side-by-side. The track follows
   the finger and snaps to the destination slide on release.
   ========================================================= */
@media (max-width: 820px) {
  .cmpt-mobile-feed-card__visual {
    overflow: hidden !important;
    touch-action: pan-y pinch-zoom !important;
  }

  .cmpt-mobile-feed-track {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: stretch !important;
    will-change: transform !important;
    transition: transform 300ms cubic-bezier(.22,1,.36,1) !important;
    z-index: 1 !important;
  }

  .cmpt-mobile-feed-slide {
    position: relative !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
  }

  .cmpt-mobile-feed-slide .cmpt-mobile-feed-card__media,
  .cmpt-mobile-feed-slide .cmpt-stage-overlay,
  .cmpt-mobile-feed-slide .cmpt-stage-copy {
    position: absolute !important;
    inset: 0 !important;
  }

  .cmpt-mobile-feed-slide[aria-hidden="true"] video,
  .cmpt-mobile-feed-slide[aria-hidden="true"] iframe {
    pointer-events: none !important;
  }

  .cmpt-mobile-feed-slide-nav {
    z-index: 22 !important;
  }

  .cmpt-mobile-feed-slide-nav button[hidden] {
    display: none !important;
  }

  body.cmpt-mobile-ui-hidden .cmpt-mobile-menu-only[data-cmpt-retractable-menu] {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .cmpt-mobile-feed-card.cmpt-mobile-feed-card--focus-image .cmpt-mobile-feed-track .cmpt-stage-copy,
  .cmpt-mobile-feed-card.cmpt-mobile-feed-card--focus-image .cmpt-mobile-feed-track .cmpt-stage-overlay,
  .cmpt-mobile-feed-card.cmpt-mobile-feed-card--focus-image .cmpt-mobile-feed-slide-nav,
  .cmpt-mobile-feed-card.cmpt-mobile-feed-card--focus-image .cmpt-mobile-feed-card__meta {
    opacity: 0 !important;
    pointer-events: none !important;
  }
}


/* =========================================================
   5.9.30 — native horizontal scroll-snap + modal back
   Removes transform-based dragging to avoid flicker / blur.
   ========================================================= */
@media (max-width: 820px) {
  .cmpt-mobile-feed-card__visual {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: auto !important;
    overscroll-behavior-x: contain !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-x pan-y pinch-zoom !important;
    scrollbar-width: none !important;
    background: #07111c !important;
  }
  .cmpt-mobile-feed-card__visual::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
  }
  .cmpt-mobile-feed-track {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: stretch !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
    z-index: 1 !important;
  }
  .cmpt-mobile-feed-slide {
    position: relative !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    scroll-snap-align: start !important;
    scroll-snap-stop: always !important;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
  }
  .cmpt-mobile-feed-slide .cmpt-mobile-feed-card__media-main,
  .cmpt-mobile-feed-slide .cmpt-mobile-feed-card__media img,
  .cmpt-mobile-feed-slide .cmpt-mobile-feed-card__media video,
  .cmpt-mobile-feed-slide .cmpt-mobile-feed-card__media iframe {
    transform: none !important;
    filter: none !important;
    -webkit-filter: none !important;
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
    image-rendering: auto !important;
  }

  /* Eliminate residual focus ring after returning from article modal. */
  .cmpt-mobile-menu-only .cmpt-content-mode-switch button:focus, .cmpt-mobile-menu-only .cmpt-content-mode-switch button:focus-visible {
    outline: 0 !important;
    outline-offset: 0 !important;
  }
  .cmpt-mobile-menu-only .cmpt-content-mode-switch button:not(.is-active):focus, .cmpt-mobile-menu-only .cmpt-content-mode-switch button:not(.is-active):focus-visible {
    box-shadow: none !important;
    border-color: transparent !important;
  }

  /* The first modal action is Back to player, not Exit. */

  /* Dynamic viewport + safe area: browser chrome still remains browser-controlled. */
  .cmpt-player, .cmpt-player-shell, .cmpt-player-grid, .cmpt-stage-column, .cmpt-mobile-feed {
    min-height: 100dvh !important;
  }
}

/* =========================================================
   5.9.31 — fixed slide navigation layer
   The horizontal scroller is now a child of the visual card;
   navigation arrows stay outside the scroller so they never
   travel away with the slide track.
   ========================================================= */
@media (max-width: 820px) {
  .cmpt-mobile-feed-card__visual {
    position: relative !important;
    overflow: hidden !important;
    touch-action: pan-y pinch-zoom !important;
  }

  .cmpt-mobile-feed-scroller {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scroll-snap-type: x mandatory !important;
    scroll-behavior: auto !important;
    overscroll-behavior-x: contain !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-x pan-y pinch-zoom !important;
    scrollbar-width: none !important;
    z-index: 1 !important;
  }
  .cmpt-mobile-feed-scroller::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
  }

  .cmpt-mobile-feed-track {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: stretch !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
    z-index: 1 !important;
  }

  .cmpt-mobile-feed-slide {
    position: relative !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
    scroll-snap-align: start !important;
    scroll-snap-stop: always !important;
  }

  .cmpt-mobile-feed-slide-nav {
    position: absolute !important;
    inset: 0 !important;
    z-index: 30 !important;
    pointer-events: none !important;
    overflow: visible !important;
  }
  .cmpt-mobile-feed-slide-nav button {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 31 !important;
    pointer-events: auto !important;
    touch-action: manipulation !important;
  }
  .cmpt-mobile-feed-slide-nav [data-cmpt-mobile-prev-segment] {
    left: 2px !important;
    right: auto !important;
  }
  .cmpt-mobile-feed-slide-nav [data-cmpt-mobile-next-segment] {
    right: 2px !important;
    left: auto !important;
  }
  .cmpt-mobile-feed-slide-nav button[hidden] {
    display: none !important;
    pointer-events: none !important;
  }

  /* Long-press focus still hides the fixed nav layer. */
  .cmpt-mobile-feed-card.cmpt-mobile-feed-card--focus-image .cmpt-mobile-feed-slide-nav {
    opacity: 0 !important;
    pointer-events: none !important;
  }
}
/* ===== END PLAYER CASCADE SECTION: MOBILE ===== */

/* ===== BEGIN PLAYER CASCADE SECTION: VIDEO / MEDIA ===== */
/*
 * Com Marília Portal Tools 5.10.0-RC16 — Desktop Drag + Video Controls Top Right
 * Video-only behavior/UI. Page layout remains unchanged.
 */

.cmpt-player iframe[data-cmpt-video-provider] {
  pointer-events: none !important;
}

.cmpt-player .cmpt-video-clean-ui {
  position: absolute !important;
  inset: 0 !important;
  z-index: 14 !important;
  overflow: hidden !important;
  border-radius: inherit !important;
  pointer-events: none !important;
}

.cmpt-player .cmpt-video-clean-interaction {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: transparent !important;
  pointer-events: none !important;
  touch-action: pan-x pan-y !important;
  -webkit-tap-highlight-color: transparent !important;
}

.cmpt-player .cmpt-video-clean-active > .cmpt-video-clean-ui .cmpt-video-clean-interaction {
  pointer-events: auto !important;
}

.cmpt-player .cmpt-video-clean-controls {
  position: absolute !important;
  right: 14px !important;
  bottom: 14px !important;
  z-index: 5 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.cmpt-player .cmpt-video-clean-control {
  appearance: none !important;
  width: 40px !important;
  height: 40px !important;
  display: grid !important;
  place-items: center !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  outline: 0 !important;
  border-radius: 999px !important;
  background: rgba(4,10,18,.52) !important;
  color: #fff !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.22) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  opacity: 0 !important;
  transform: translateY(6px) !important;
  transition: opacity .18s ease, transform .18s ease, background .18s ease !important;
  -webkit-tap-highlight-color: transparent !important;
}

body.cmpt-video-clean-ui-visible .cmpt-player .cmpt-video-clean-active .cmpt-video-clean-control {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

.cmpt-player .cmpt-video-clean-control:hover,
.cmpt-player .cmpt-video-clean-control:focus-visible {
  background: rgba(4,10,18,.72) !important;
}

.cmpt-player .cmpt-video-clean-control svg {
  width: 19px !important;
  height: 19px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.cmpt-player .cmpt-video-clean-sound svg path:first-child {
  fill: currentColor !important;
  stroke: none !important;
}

.cmpt-player .cmpt-video-clean-feedback {
  position: absolute !important;
  z-index: 4 !important;
  top: 50% !important;
  left: 50% !important;
  width: 58px !important;
  height: 58px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: rgba(2,8,14,.42) !important;
  color: #fff !important;
  opacity: 0 !important;
  transform: translate(-50%,-50%) scale(.90) !important;
  transition: opacity .12s ease, transform .16s ease !important;
  pointer-events: none !important;
}

.cmpt-player .cmpt-video-clean-feedback.is-showing {
  opacity: 1 !important;
  transform: translate(-50%,-50%) scale(1) !important;
}

.cmpt-player .cmpt-video-clean-feedback svg {
  width: 28px !important;
  height: 28px !important;
  fill: currentColor !important;
  stroke: none !important;
}

.cmpt-player .cmpt-video-clean-fallback {
  appearance: none !important;
  position: absolute !important;
  z-index: 6 !important;
  top: 50% !important;
  left: 50% !important;
  width: 62px !important;
  height: 62px !important;
  display: none !important;
  place-items: center !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 999px !important;
  background: rgba(2,8,14,.56) !important;
  color: #fff !important;
  transform: translate(-50%,-50%) !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}

.cmpt-player .cmpt-video-clean-fallback.is-visible { display: grid !important; }
.cmpt-player .cmpt-video-clean-fallback svg { width: 31px !important; height: 31px !important; fill: currentColor !important; margin-left: 3px !important; }

/* In video mode, the media is the content. Remove slide copy/navigation overlays over it. */
.cmpt-video-clean-stage .cmpt-stage-overlay,
.cmpt-video-clean-stage .cmpt-stage-copy,
.cmpt-video-clean-stage .cmpt-stage-actions,
.cmpt-video-clean-stage .cmpt-desktop-feed-slide-nav,
.cmpt-video-clean-stage .cmpt-mobile-feed-slide-nav {
  display: none !important;
}

.cmpt-video-clean-stage .cmpt-stage-media,
.cmpt-video-clean-stage .cmpt-desktop-feed-card__media,
.cmpt-video-clean-stage .cmpt-mobile-feed-card__media {
  z-index: 3 !important;
}

@media (max-width: 820px) {
  .cmpt-player .cmpt-video-clean-controls {
    right: 12px !important;
    bottom: 12px !important;
    gap: 7px !important;
  }
  .cmpt-player .cmpt-video-clean-control {
    width: 38px !important;
    height: 38px !important;
  }
  .cmpt-player .cmpt-video-clean-feedback {
    width: 54px !important;
    height: 54px !important;
  }
  body.cmpt-video-clean-playing:not(.cmpt-video-clean-ui-visible)
  .cmpt-mobile-menu-only[data-cmpt-retractable-menu] {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateX(-50%) translateY(12px) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cmpt-player .cmpt-video-clean-control,
  .cmpt-player .cmpt-video-clean-feedback {
    transition-duration: .01ms !important;
  }
}


/* RC10: native WordPress video side controls */
.cmpt-player .cmpt-video-clean-controls {
  top: 50% !important;
  right: 14px !important;
  bottom: auto !important;
  transform: translateY(-50%) !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 10px !important;
}

.cmpt-player .cmpt-media-controls.cmpt-media-controls--side {
  position: absolute !important;
  z-index: 16 !important;
  top: 50% !important;
  right: 14px !important;
  transform: translateY(-50%) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control {
  appearance: none !important;
  width: 42px !important;
  height: 42px !important;
  display: grid !important;
  place-items: center !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 999px !important;
  background: rgba(4,10,18,.58) !important;
  color: #fff !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.22) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  cursor: pointer !important;
  -webkit-tap-highlight-color: transparent !important;
}

.cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control:hover,
.cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control:focus-visible {
  background: rgba(4,10,18,.76) !important;
}

.cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control svg {
  width: 18px !important;
  height: 18px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.cmpt-player .cmpt-media-controls.cmpt-media-controls--side [data-cmpt-toggle-mute] svg path:first-child {
  fill: currentColor !important;
  stroke: none !important;
}

@media (max-width: 820px) {
  .cmpt-player .cmpt-video-clean-controls,
  .cmpt-player .cmpt-media-controls.cmpt-media-controls--side {
    right: 12px !important;
    gap: 8px !important;
  }
  .cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control {
    width: 40px !important;
    height: 40px !important;
  }
}


/* RC11: ensure native controls are visible in the actual desktop/mobile feed cards. */
.cmpt-desktop-feed-card__visual > .cmpt-media-controls.cmpt-media-controls--side,
.cmpt-mobile-feed-slide > .cmpt-media-controls.cmpt-media-controls--side,
.cmpt-story-stage > .cmpt-media-controls.cmpt-media-controls--side {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.cmpt-desktop-feed-card__visual > .cmpt-media-controls.cmpt-media-controls--side {
  position: absolute !important;
  top: 50% !important;
  right: 14px !important;
  bottom: auto !important;
  left: auto !important;
  transform: translateY(-50%) !important;
}

.cmpt-mobile-feed-slide > .cmpt-media-controls.cmpt-media-controls--side {
  position: absolute !important;
  top: 50% !important;
  right: 12px !important;
  bottom: auto !important;
  left: auto !important;
  transform: translateY(-50%) !important;
}

.cmpt-mobile-feed-slide[aria-hidden="true"] > .cmpt-media-controls.cmpt-media-controls--side {
  pointer-events: none !important;
}


/* RC13: safe 4s auto-hide for native WordPress video controls. */
.cmpt-player .cmpt-media-controls.cmpt-media-controls--side {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity .18s ease, visibility .18s ease !important;
}

.cmpt-player .cmpt-media-controls.cmpt-media-controls--side.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

.cmpt-player .cmpt-media-controls.cmpt-media-controls--side.is-visible .cmpt-media-control {
  pointer-events: auto !important;
}


/* RC15: move video controls away from the slide-navigation area. */
.cmpt-player .cmpt-video-clean-controls,
.cmpt-player .cmpt-media-controls.cmpt-media-controls--side {
  top: 14px !important;
  right: 14px !important;
  bottom: auto !important;
  transform: none !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 9px !important;
}

/* Desktop mouse drag between slides. */
@media (min-width: 821px) {
  .cmpt-desktop-feed-card.is-active .cmpt-desktop-feed-card__visual {
    cursor: grab !important;
    touch-action: pan-y !important;
  }
  .cmpt-desktop-feed-card.is-active .cmpt-desktop-feed-card__visual.is-cmpt-slide-dragging {
    cursor: grabbing !important;
    user-select: none !important;
    -webkit-user-select: none !important;
  }
  .cmpt-desktop-feed-card__visual.is-cmpt-slide-dragging .cmpt-desktop-feed-slide-nav,
  .cmpt-desktop-feed-card__visual.is-cmpt-slide-dragging [data-cmpt-native-video-controls] {
    pointer-events: none !important;
  }
}

@media (max-width: 820px) {
  .cmpt-player .cmpt-video-clean-controls,
  .cmpt-player .cmpt-media-controls.cmpt-media-controls--side {
    top: 12px !important;
    right: 12px !important;
    bottom: auto !important;
  }
}


/* RC15: compact horizontal controls, softer background, 3s inactivity handled in JS. */
.cmpt-player .cmpt-video-clean-controls,
.cmpt-player .cmpt-media-controls.cmpt-media-controls--side,
.cmpt-desktop-feed-card__visual > .cmpt-media-controls.cmpt-media-controls--side,
.cmpt-mobile-feed-slide > .cmpt-media-controls.cmpt-media-controls--side,
.cmpt-story-stage > .cmpt-media-controls.cmpt-media-controls--side {
  top: 14px !important;
  right: 14px !important;
  bottom: auto !important;
  left: auto !important;
  transform: none !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 4px !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 999px !important;
  background: rgba(5,12,20,.24) !important;
  box-shadow: 0 5px 18px rgba(0,0,0,.10) !important;
  backdrop-filter: blur(10px) saturate(115%) !important;
  -webkit-backdrop-filter: blur(10px) saturate(115%) !important;
}

.cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control,
.cmpt-player .cmpt-video-clean-control {
  width: 36px !important;
  height: 36px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.075) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transition: background .16s ease, opacity .18s ease, transform .18s ease !important;
}

.cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control:hover,
.cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control:focus-visible,
.cmpt-player .cmpt-video-clean-control:hover,
.cmpt-player .cmpt-video-clean-control:focus-visible {
  background: rgba(255,255,255,.14) !important;
}

.cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control svg,
.cmpt-player .cmpt-video-clean-control svg {
  width: 18px !important;
  height: 18px !important;
}

@media (max-width: 820px) {
  .cmpt-player .cmpt-video-clean-controls,
  .cmpt-player .cmpt-media-controls.cmpt-media-controls--side,
  .cmpt-mobile-feed-slide > .cmpt-media-controls.cmpt-media-controls--side {
    top: 12px !important;
    right: 12px !important;
    gap: 4px !important;
    padding: 3px !important;
  }

  .cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control,
  .cmpt-player .cmpt-video-clean-control {
    width: 35px !important;
    height: 35px !important;
  }
}


/* RC16 base: refined desktop drag with a lightweight adjacent-slide peek. */
@media (min-width: 821px) {
  .cmpt-desktop-feed-card.is-active {
    isolation: isolate !important;
  }

  .cmpt-desktop-feed-card.is-active .cmpt-desktop-feed-card__visual {
    position: relative !important;
    z-index: 2 !important;
    will-change: transform !important;
  }

  .cmpt-desktop-drag-preview {
    position: absolute !important;
    z-index: 1 !important;
    top: 0 !important;
    left: 0 !important;
    width: var(--cmpt-desktop-player-w) !important;
    height: var(--cmpt-desktop-player-h) !important;
    overflow: hidden !important;
    border-radius: 20px !important;
    background: #07111c !important;
    box-shadow: 0 20px 52px rgba(0,0,0,.24) !important;
    pointer-events: none !important;
  }

  .cmpt-desktop-drag-preview__media,
  .cmpt-desktop-drag-preview__media .cmpt-desktop-feed-card__media-main,
  .cmpt-desktop-drag-preview__media img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    border: 0 !important;
    border-radius: 20px !important;
  }

  .cmpt-desktop-drag-preview__media .cmpt-desktop-feed-card__media-backdrop {
    display: none !important;
  }

  .cmpt-desktop-drag-preview__fallback {
    position: absolute !important;
    inset: 0 !important;
    display: grid !important;
    place-items: center !important;
    background: #07111c !important;
    color: rgba(255,255,255,.34) !important;
  }

  .cmpt-desktop-drag-preview__fallback svg {
    width: 42px !important;
    height: 42px !important;
    fill: currentColor !important;
  }

  .cmpt-desktop-feed-card__visual.is-cmpt-slide-dragging,
  .cmpt-desktop-feed-card__visual.is-cmpt-slide-snapping {
    box-shadow: 0 24px 60px rgba(0,0,0,.34) !important;
  }
}


/* RC17.2: Instagram/mobile-like continuous slide drag + native video progress/tap feedback. */
.cmpt-player .cmpt-native-video-progress {
  position: absolute !important;
  z-index: 17 !important;
  left: 10px !important;
  right: 10px !important;
  bottom: 7px !important;
  height: 2px !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.20) !important;
  pointer-events: none !important;
}

.cmpt-player .cmpt-native-video-progress > span {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: inherit !important;
  background: var(--cmpt-orange, #ff5a2a) !important;
  transform: scaleX(0);
  transform-origin: left center !important;
  will-change: transform !important;
}

.cmpt-player .cmpt-native-video-feedback {
  position: absolute !important;
  z-index: 18 !important;
  top: 50% !important;
  left: 50% !important;
  width: 54px !important;
  height: 54px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: rgba(3,10,17,.38) !important;
  color: #fff !important;
  opacity: 0 !important;
  transform: translate(-50%,-50%) scale(.88) !important;
  transition: opacity .12s ease, transform .16s ease !important;
  pointer-events: none !important;
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
}

.cmpt-player .cmpt-native-video-feedback.is-showing {
  opacity: 1 !important;
  transform: translate(-50%,-50%) scale(1) !important;
}

.cmpt-player .cmpt-native-video-feedback svg {
  width: 26px !important;
  height: 26px !important;
  fill: currentColor !important;
  stroke: none !important;
}

@media (min-width: 821px) {
  .cmpt-desktop-drag-preview {
    transform: translate3d(100%,0,0);
    will-change: transform !important;
  }

  .cmpt-desktop-feed-card.is-active .cmpt-desktop-feed-card__visual video {
    cursor: inherit !important;
  }

  .cmpt-desktop-feed-card__visual.is-cmpt-slide-dragging,
  .cmpt-desktop-feed-card__visual.is-cmpt-slide-snapping,
  .cmpt-desktop-drag-preview {
    backface-visibility: hidden !important;
    -webkit-backface-visibility: hidden !important;
  }
}

@media (max-width: 820px) {
  .cmpt-player .cmpt-native-video-progress {
    left: 8px !important;
    right: 8px !important;
    bottom: 6px !important;
  }
  .cmpt-player .cmpt-native-video-feedback {
    width: 50px !important;
    height: 50px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cmpt-player .cmpt-native-video-feedback {
    transition-duration: .01ms !important;
  }
}


/* =========================================================
   RC17.2 — Desktop fullscreen aspect hotfix
   Fullscreen uses the viewport as a black canvas and keeps
   the native video's intrinsic aspect ratio without cropping.
   ========================================================= */
@media (min-width: 821px) {
  .cmpt-player .cmpt-desktop-feed-card__visual:fullscreen,
  .cmpt-player .cmpt-desktop-feed-card__visual:-webkit-full-screen {
    width: 100vw !important;
    height: 100vh !important;
    min-width: 100vw !important;
    max-width: 100vw !important;
    min-height: 100vh !important;
    max-height: 100vh !important;
    aspect-ratio: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #000 !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  .cmpt-player .cmpt-desktop-feed-card__visual:fullscreen .cmpt-desktop-feed-card__media,
  .cmpt-player .cmpt-desktop-feed-card__visual:-webkit-full-screen .cmpt-desktop-feed-card__media {
    position: absolute !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    border-radius: 0 !important;
    background: #000 !important;
    overflow: hidden !important;
  }

  .cmpt-player .cmpt-desktop-feed-card__visual:fullscreen .cmpt-desktop-feed-card__media-main,
  .cmpt-player .cmpt-desktop-feed-card__visual:fullscreen .cmpt-desktop-feed-card__media video,
  .cmpt-player .cmpt-desktop-feed-card__visual:-webkit-full-screen .cmpt-desktop-feed-card__media-main,
  .cmpt-player .cmpt-desktop-feed-card__visual:-webkit-full-screen .cmpt-desktop-feed-card__media video {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    border-radius: 0 !important;
    background: #000 !important;
    transform: none !important;
  }

  .cmpt-player .cmpt-desktop-feed-card__visual:fullscreen .cmpt-media-controls--side,
  .cmpt-player .cmpt-desktop-feed-card__visual:-webkit-full-screen .cmpt-media-controls--side {
    top: max(18px, env(safe-area-inset-top)) !important;
    right: max(18px, env(safe-area-inset-right)) !important;
  }

  .cmpt-player .cmpt-desktop-feed-card__visual:fullscreen .cmpt-native-video-progress,
  .cmpt-player .cmpt-desktop-feed-card__visual:-webkit-full-screen .cmpt-native-video-progress {
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    border-radius: 0 !important;
  }
}
/* ===== END PLAYER CASCADE SECTION: VIDEO / MEDIA ===== */

/* ===== BEGIN PLAYER CASCADE SECTION: MULTI-ASPECT MOBILE ===== */
/*
 * Com Marília Portal Tools 5.11.0-RC3 — Player Multi-Aspect Mobile
 * Isolated aspect-ratio layer. 9:16 intentionally inherits the approved mobile baseline.
 */

@media (max-width: 820px) {
  /* 4:5 Stories use the same width and interaction model as 9:16; only frame height changes. */
  .cmpt-player [data-cmpt-mobile-feed-card][data-cmpt-aspect="4x5"] .cmpt-mobile-feed-card__visual,
  .cmpt-player .cmpt-mobile-feed-card__visual[data-cmpt-aspect="4x5"] {
    aspect-ratio: 4 / 5 !important;
  }

  /* Keep every mounted slide locked to the Story-level aspect frame. */
  .cmpt-player [data-cmpt-mobile-slide][data-cmpt-aspect="4x5"] {
    width: 100% !important;
    min-width: 100% !important;
    height: 100% !important;
  }

  /* 4:5 has less vertical space, so editorial overlays get a compact safe treatment. */
  .cmpt-player [data-cmpt-mobile-feed-card][data-cmpt-aspect="4x5"] .cmpt-stage-copy {
    padding: 52px 20px 24px !important;
  }

  .cmpt-player [data-cmpt-mobile-feed-card][data-cmpt-aspect="4x5"] .cmpt-stage-copy h2 {
    font-size: clamp(24px, 6.9vw, 32px) !important;
    line-height: 1.04 !important;
  }

  .cmpt-player [data-cmpt-mobile-feed-card][data-cmpt-aspect="4x5"] .cmpt-stage-copy .cmpt-slide-text {
    font-size: clamp(12px, 3.35vw, 14px) !important;
    line-height: 1.4 !important;
  }

  /* Native media remains edge-to-edge inside the selected frame. */
  .cmpt-player [data-cmpt-mobile-feed-card][data-cmpt-aspect="4x5"] .cmpt-mobile-feed-card__media-main,
  .cmpt-player [data-cmpt-mobile-feed-card][data-cmpt-aspect="4x5"] .cmpt-mobile-feed-card__media img,
  .cmpt-player [data-cmpt-mobile-feed-card][data-cmpt-aspect="4x5"] .cmpt-mobile-feed-card__media video,
  .cmpt-player [data-cmpt-mobile-feed-card][data-cmpt-aspect="4x5"] .cmpt-mobile-feed-card__media iframe {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
}
/* ===== END PLAYER CASCADE SECTION: MULTI-ASPECT MOBILE ===== */

/* ===== BEGIN PLAYER CASCADE SECTION: MULTI-ASPECT DESKTOP ===== */
/*
 * Com Marília Portal Tools 5.11.0-RC4 — Player Multi-Aspect Desktop
 * Isolated desktop layer. 9:16 inherits the approved 5.9.24 desktop baseline.
 */

@media (min-width: 821px) {
  /*
   * Only an active 4:5 Story changes the grid width. 9:16 receives no root
   * override, preserving the approved desktop dimensions and side spacing.
   * The available-width guard keeps 4:5 proportional on narrow desktops.
   */
  .cmpt-player[data-cmpt-active-aspect="4x5"] {
    --cmpt-desktop-player-w: min(
      calc(75vh * 4 / 5),
      calc(100vw - var(--cmpt-desktop-left-w) - var(--cmpt-desktop-right-w) - var(--cmpt-desktop-gap) - var(--cmpt-desktop-gap) - 40px)
    );
    --cmpt-desktop-player-h: calc(var(--cmpt-desktop-player-w) * 5 / 4);
  }

  /*
   * Every card keeps stable Story-level dimensions even while inactive. This
   * prevents vertical feed jumps when a mixed 9:16 / 4:5 card becomes active.
   */
  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="9x16"] {
    --cmpt-story-player-w: calc(75vh * 9 / 16);
    --cmpt-story-player-h: 75vh;
    width: var(--cmpt-story-player-w) !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
  }

  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="4x5"] {
    --cmpt-story-player-w: min(
      calc(75vh * 4 / 5),
      calc(100vw - var(--cmpt-desktop-left-w) - var(--cmpt-desktop-right-w) - var(--cmpt-desktop-gap) - var(--cmpt-desktop-gap) - 40px)
    );
    --cmpt-story-player-h: calc(var(--cmpt-story-player-w) * 5 / 4);
    width: var(--cmpt-story-player-w) !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
  }

  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="9x16"] .cmpt-desktop-feed-card__visual {
    width: var(--cmpt-story-player-w) !important;
    height: var(--cmpt-story-player-h) !important;
    min-width: var(--cmpt-story-player-w) !important;
    max-width: var(--cmpt-story-player-w) !important;
    min-height: var(--cmpt-story-player-h) !important;
    max-height: var(--cmpt-story-player-h) !important;
    aspect-ratio: 9 / 16 !important;
  }

  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__visual {
    width: var(--cmpt-story-player-w) !important;
    height: var(--cmpt-story-player-h) !important;
    min-width: var(--cmpt-story-player-w) !important;
    max-width: var(--cmpt-story-player-w) !important;
    min-height: var(--cmpt-story-player-h) !important;
    max-height: var(--cmpt-story-player-h) !important;
    aspect-ratio: 4 / 5 !important;
  }

  /* Progress/caption stay aligned to each Story frame. */
  .cmpt-player [data-cmpt-desktop-feed-card] .cmpt-desktop-feed-card__meta {
    width: var(--cmpt-story-player-w) !important;
    max-width: var(--cmpt-story-player-w) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Active card exactly matches the grid variable that positions the side panels/menu. */
  .cmpt-player [data-cmpt-desktop-feed-card].is-active {
    width: var(--cmpt-desktop-player-w) !important;
  }
  .cmpt-player [data-cmpt-desktop-feed-card].is-active .cmpt-desktop-feed-card__visual,
  .cmpt-player [data-cmpt-desktop-feed-card].is-active .cmpt-desktop-feed-card__meta {
    width: var(--cmpt-desktop-player-w) !important;
    max-width: var(--cmpt-desktop-player-w) !important;
  }
  .cmpt-player [data-cmpt-desktop-feed-card].is-active .cmpt-desktop-feed-card__visual {
    height: var(--cmpt-desktop-player-h) !important;
    min-width: var(--cmpt-desktop-player-w) !important;
    min-height: var(--cmpt-desktop-player-h) !important;
    max-height: var(--cmpt-desktop-player-h) !important;
  }

  /* Drag preview follows the active frame and therefore keeps snap geometry correct. */
  .cmpt-player .cmpt-desktop-drag-preview {
    width: var(--cmpt-desktop-player-w) !important;
    height: var(--cmpt-desktop-player-h) !important;
  }
  .cmpt-player[data-cmpt-active-aspect="4x5"] .cmpt-desktop-drag-preview {
    aspect-ratio: 4 / 5 !important;
  }

  /* Native and external media stay edge-to-edge inside the selected frame. */
  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__media,
  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__media-main,
  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__media img,
  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__media video,
  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__media iframe {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  /* RC17.2 fullscreen remains authoritative: black canvas + contain, no crop. */
  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__visual:fullscreen,
  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__visual:-webkit-full-screen {
    aspect-ratio: auto !important;
  }
}
/* ===== END PLAYER CASCADE SECTION: MULTI-ASPECT DESKTOP ===== */

/* ===== BEGIN PLAYER CASCADE SECTION: MULTI-ASPECT INTEGRATION ===== */
/*
 * Com Marília Portal Tools 5.11.0-RC5 — Multi-Aspect Integration
 * Final compatibility layer. Existing feed geometry remains owned by RC3/RC4.
 */

/* Prevent a 9:16 flash when a 4:5 Story is opened directly by URL before JS mounts the feed. */
@media (min-width: 821px) {
  body.cmpt-player-ssr .cmpt-player[data-cmpt-active-aspect="4x5"] .cmpt-story-stage[data-cmpt-aspect="4x5"] {
    width: var(--cmpt-desktop-player-w) !important;
    height: var(--cmpt-desktop-player-h) !important;
    min-width: var(--cmpt-desktop-player-w) !important;
    max-width: var(--cmpt-desktop-player-w) !important;
    min-height: var(--cmpt-desktop-player-h) !important;
    max-height: var(--cmpt-desktop-player-h) !important;
    aspect-ratio: 4 / 5 !important;
    margin-inline: auto !important;
  }
}

@media (max-width: 820px) {
  body.cmpt-player-ssr .cmpt-story-stage[data-cmpt-aspect="4x5"] {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 4 / 5 !important;
  }
}
/* ===== END PLAYER CASCADE SECTION: MULTI-ASPECT INTEGRATION ===== */

/* ===== BEGIN PLAYER CASCADE SECTION: DESKTOP WIDTH CONTRACT ===== */
/*
 * Com Marília Portal Tools 5.11.0-RC5.1 — Desktop 4:5 Width Hotfix
 * Keep desktop player width stable when a 4:5 Story becomes active.
 */
@media (min-width: 821px) {
  /*
   * Desktop must preserve the same feed width used by the approved 9:16 layout.
   * For 4:5 Stories only the height changes; the player width and side columns remain stable.
   */
  .cmpt-player[data-cmpt-active-aspect="4x5"] {
    --cmpt-desktop-player-w: calc(75vh * 9 / 16) !important;
    --cmpt-desktop-player-h: calc(var(--cmpt-desktop-player-w) * 5 / 4) !important;
  }

  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="4x5"] {
    --cmpt-story-player-w: calc(75vh * 9 / 16) !important;
    --cmpt-story-player-h: calc(var(--cmpt-story-player-w) * 5 / 4) !important;
    width: var(--cmpt-story-player-w) !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
  }

  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__visual,
  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__meta {
    width: var(--cmpt-story-player-w) !important;
    max-width: var(--cmpt-story-player-w) !important;
  }

  .cmpt-player [data-cmpt-desktop-feed-card][data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__visual {
    height: var(--cmpt-story-player-h) !important;
    min-width: var(--cmpt-story-player-w) !important;
    max-width: var(--cmpt-story-player-w) !important;
    min-height: var(--cmpt-story-player-h) !important;
    max-height: var(--cmpt-story-player-h) !important;
    aspect-ratio: 4 / 5 !important;
  }

  .cmpt-player [data-cmpt-desktop-feed-card].is-active[data-cmpt-aspect="4x5"] {
    width: var(--cmpt-desktop-player-w) !important;
  }

  .cmpt-player [data-cmpt-desktop-feed-card].is-active[data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__visual,
  .cmpt-player [data-cmpt-desktop-feed-card].is-active[data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__meta {
    width: var(--cmpt-desktop-player-w) !important;
    max-width: var(--cmpt-desktop-player-w) !important;
  }

  .cmpt-player [data-cmpt-desktop-feed-card].is-active[data-cmpt-aspect="4x5"] .cmpt-desktop-feed-card__visual {
    height: var(--cmpt-desktop-player-h) !important;
    min-width: var(--cmpt-desktop-player-w) !important;
    min-height: var(--cmpt-desktop-player-h) !important;
    max-height: var(--cmpt-desktop-player-h) !important;
  }

  body.cmpt-player-ssr .cmpt-player[data-cmpt-active-aspect="4x5"] .cmpt-story-stage[data-cmpt-aspect="4x5"] {
    width: var(--cmpt-desktop-player-w) !important;
    height: var(--cmpt-desktop-player-h) !important;
    min-width: var(--cmpt-desktop-player-w) !important;
    max-width: var(--cmpt-desktop-player-w) !important;
    min-height: var(--cmpt-desktop-player-h) !important;
    max-height: var(--cmpt-desktop-player-h) !important;
    aspect-ratio: 4 / 5 !important;
    margin-inline: auto !important;
  }
}
/* ===== END PLAYER CASCADE SECTION: DESKTOP WIDTH CONTRACT ===== */

/* ===== BEGIN PLAYER CASCADE SECTION: UI POLISH ===== */
/*
 * Com Marília Portal Tools 5.12.0-RC1 — UI Cleanup
 * Phase 2: remove the shared capsule around native/external video controls.
 * Playback, fullscreen, audio state and 3-second auto-hide remain owned by the
 * existing player JS and RC17.2 CSS.
 */

.cmpt-player .cmpt-video-clean-controls,
.cmpt-player .cmpt-media-controls.cmpt-media-controls--side,
.cmpt-desktop-feed-card__visual > .cmpt-media-controls.cmpt-media-controls--side,
.cmpt-mobile-feed-slide > .cmpt-media-controls.cmpt-media-controls--side,
.cmpt-story-stage > .cmpt-media-controls.cmpt-media-controls--side {
  gap: 6px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control,
.cmpt-player .cmpt-video-clean-control {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 50% !important;
  background: rgba(5,12,20,.34) !important;
  box-shadow: 0 3px 12px rgba(0,0,0,.10) !important;
  backdrop-filter: blur(7px) !important;
  -webkit-backdrop-filter: blur(7px) !important;
}

.cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control:hover,
.cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control:focus-visible,
.cmpt-player .cmpt-video-clean-control:hover,
.cmpt-player .cmpt-video-clean-control:focus-visible {
  border-color: rgba(255,255,255,.24) !important;
  background: rgba(5,12,20,.52) !important;
}

.cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control svg,
.cmpt-player .cmpt-video-clean-control svg {
  width: 16px !important;
  height: 16px !important;
}

@media (max-width: 820px) {
  .cmpt-player .cmpt-video-clean-controls,
  .cmpt-player .cmpt-media-controls.cmpt-media-controls--side,
  .cmpt-mobile-feed-slide > .cmpt-media-controls.cmpt-media-controls--side {
    gap: 5px !important;
  }

  .cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control,
  .cmpt-player .cmpt-video-clean-control {
    width: 31px !important;
    height: 31px !important;
    min-width: 31px !important;
    min-height: 31px !important;
  }

  .cmpt-player .cmpt-media-controls.cmpt-media-controls--side .cmpt-media-control svg,
  .cmpt-player .cmpt-video-clean-control svg {
    width: 15px !important;
    height: 15px !important;
  }
}
/* ===== END PLAYER CASCADE SECTION: UI POLISH ===== */
