:root{--brown:#23294b;--orange:#f8a232;--blue:#23294b;--yellow:#f8a232;--bg:#ffffff;--card:#fff;--text:#23294b;--muted:#23294b;--line:rgba(35,41,75,.14);--shadow:0 16px 45px rgba(35,41,75,.10)}
*{box-sizing:border-box}.entry-content:has(.of-app),.entry-content:has(.of-login-wrap){max-width:none!important;margin:0!important;padding:0!important}.of-app,.of-login-wrap{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text)}
body:has(.of-app),body:has(.of-login-wrap){margin:0;background:var(--bg)}body:has(.of-app) header,body:has(.of-app) footer,body:has(.of-login-wrap) header,body:has(.of-login-wrap) footer{display:none!important}
.of-login-wrap{min-height:100vh;display:grid;place-items:center;padding:32px 20px;background:radial-gradient(circle at top right,rgba(248,162,50,.18),transparent 30%),linear-gradient(135deg,#23294b,#23294b)}.of-login-card{width:min(460px,100%);background:#fff;border-radius:28px;padding:38px;box-shadow:0 30px 80px rgba(0,0,0,.25)}.of-brand-mark,.of-logo span{display:grid;place-items:center;background:var(--orange);color:#fff;font-weight:900}.of-brand-mark{width:58px;height:58px;border-radius:18px;margin-bottom:22px}.of-login-card h1{font-size:42px;margin:0 0 8px}.of-eyebrow,.of-kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--orange);margin:0 0 6px}.of-form{display:grid;gap:15px}.of-form label{display:grid;gap:7px;font-size:13px;font-weight:700}.of-form input,.of-form select,.of-form textarea,.of-search input{width:100%;border:1px solid var(--line);border-radius:13px;padding:13px 14px;background:#fff;font:inherit;color:inherit}.of-form input:focus,.of-form select:focus,.of-form textarea:focus,.of-search input:focus{outline:2px solid rgba(248,162,50,.2);border-color:var(--orange)}.of-demo-credentials{margin-top:20px;padding:15px;border-radius:14px;background:rgba(248,162,50,.10);display:grid;gap:5px;font-size:12px}.of-btn{appearance:none;border:0;border-radius:13px;padding:12px 16px;font-weight:800;cursor:pointer}.of-btn.primary{background:var(--orange);color:#fff}.of-btn.soft{background:rgba(248,162,50,.14);color:var(--brown)}.of-btn.ghost{background:transparent;border:1px solid var(--line)}.of-btn.full{width:100%;margin-top:15px}.of-link{border:0;background:none;color:var(--orange);font-weight:800;cursor:pointer}
.of-app{display:grid;grid-template-columns:250px 1fr;min-height:100vh;padding-top:0}.of-sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:var(--brown);color:#fff;padding:24px 18px;display:flex;flex-direction:column;z-index:40}.of-logo{display:flex;align-items:center;gap:11px;padding:4px 8px 22px}.of-logo span{width:42px;height:42px;border-radius:13px}.of-logo div{display:grid}.of-logo small,.of-user small{color:rgba(255,255,255,.62)}.of-user{display:flex;align-items:center;gap:10px;padding:15px 10px;border:1px solid rgba(255,255,255,.1);border-radius:16px;margin-bottom:20px}.of-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.13);font-weight:900}.of-user>div:last-child{display:grid;font-size:13px}.of-nav{display:grid;gap:5px}.of-nav button{border:0;background:transparent;color:rgba(255,255,255,.72);text-align:left;border-radius:12px;padding:12px 13px;font-weight:700;cursor:pointer}.of-nav button:hover,.of-nav button.active{background:rgba(255,255,255,.11);color:#fff}.of-logout{margin-top:auto;color:#fff;text-decoration:none;padding:12px 13px}.of-main{grid-column:2;min-width:0;height:100vh;overflow:auto}.of-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:24px 34px 16px;background:rgba(247,244,239,.92);backdrop-filter:blur(14px)}.of-topbar h1{font-size:26px;margin:0}.of-topbar .of-eyebrow{margin:0}.of-menu-toggle{display:none}.of-notify-btn,.of-menu-toggle{border:1px solid var(--line);background:#fff;border-radius:12px;width:42px;height:42px}.of-content{padding:8px 34px 50px}.of-section{display:none}.of-section.active{display:block}.of-hero{background:linear-gradient(135deg,var(--brown),#23294b);color:#fff;border-radius:26px;padding:30px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow);margin-bottom:20px}.of-hero.student{background:linear-gradient(135deg,#f8a232,#f8a232);color:#23294b}.of-hero.student p{color:rgba(35,41,75,.76)}.of-hero.student .of-chip,.of-hero.student .of-hero-number{background:rgba(35,41,75,.10)}.of-hero h2{font-size:34px;line-height:1.05;margin:10px 0}.of-hero p{margin:0;color:rgba(255,255,255,.72)}.of-chip{display:inline-flex;background:rgba(255,255,255,.12);padding:7px 10px;border-radius:999px;font-size:11px;font-weight:800}.of-hero-number{width:92px;height:92px;border-radius:24px;background:rgba(255,255,255,.12);display:grid;place-items:center;font-size:42px;font-weight:900;line-height:1}.of-hero-number small{font-size:12px;text-transform:uppercase;margin-top:-22px}.of-grid{display:grid;gap:16px}.of-grid.stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.of-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}.of-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 8px 28px rgba(35,41,75,.05)}.of-card h3{margin:4px 0 12px}.of-card.stat{display:grid;gap:5px}.of-card.stat span,.of-mini-grid span{font-size:12px;color:var(--muted)}.of-card.stat strong{font-size:28px}.of-card.stat small{color:var(--muted)}.of-card-head,.of-section-head,.of-row,.of-accordion-toggle,.of-attendance-row{display:flex;justify-content:space-between;align-items:center;gap:16px}.of-section-head{margin:10px 0 18px}.of-section-head h2{font-size:30px;margin:4px 0}.of-section-head p{margin:0;color:var(--muted)}.of-timeline{display:grid}.of-timeline>div{display:grid;grid-template-columns:60px 1fr auto;gap:10px;padding:12px 0;border-bottom:1px solid var(--line);align-items:center}.of-timeline span{font-weight:900;color:var(--orange)}.of-timeline small,.of-row small,.of-accordion-toggle small,.of-attendance-row small{color:var(--muted)}.of-row{padding:11px 0;border-bottom:1px solid var(--line)}.of-row>div{display:grid}.of-badge{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:900}.of-badge.ok{background:rgba(35,41,75,.10);color:#23294b}.of-badge.warn{background:rgba(248,162,50,.14);color:#23294b}.of-badge.muted{background:rgba(35,41,75,.10);color:#23294b}.of-search{margin-bottom:14px}.of-accordion{display:grid;gap:10px}.of-student-item{border:1px solid var(--line);background:#fff;border-radius:17px;overflow:hidden}.of-accordion-toggle{width:100%;border:0;background:#fff;padding:16px 18px;text-align:left;cursor:pointer}.of-accordion-toggle>div:first-child{display:grid}.of-student-summary{display:flex;align-items:center;gap:12px}.of-accordion-panel{display:none;padding:0 18px 18px}.of-student-item.open .of-accordion-panel{display:block}.of-student-item.open .of-accordion-toggle b{transform:rotate(180deg)}.of-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.of-mini-grid>div{background:rgba(35,41,75,.05);border-radius:13px;padding:12px;display:grid;gap:4px}.of-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.of-class-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.of-time-pill{background:rgba(248,162,50,.14);color:var(--orange);border-radius:999px;padding:7px 10px;font-weight:900}.of-attendance-row{padding:11px 0;border-bottom:1px solid var(--line)}.of-attendance-row>div:first-child{display:grid}.of-choice{display:flex;gap:7px}.of-choice button{width:38px;height:38px;border-radius:11px;border:1px solid var(--line);background:#fff;font-weight:900;cursor:pointer}.of-choice button:first-child.active{background:#23294b;color:#fff;border-color:#23294b}.of-choice button:last-child.active{background:#f8a232;color:#fff;border-color:#f8a232}.grid-form{grid-template-columns:repeat(2,minmax(0,1fr))}.span-2{grid-column:span 2}.of-pix{display:grid;gap:4px}.of-pix strong,.of-pix-value{font-size:30px;color:var(--orange)}.of-pix code,.of-pix-card code{display:block;background:rgba(35,41,75,.06);border-radius:12px;padding:12px;word-break:break-all;margin:10px 0}.of-alert{border-radius:16px;padding:16px 18px;margin:14px 0}.of-alert.warn{background:rgba(248,162,50,.14);border:1px solid #f8a232}.of-alert.error{background:rgba(248,162,50,.14);color:#23294b}.of-package-bar{height:12px;background:rgba(35,41,75,.10);border-radius:999px;overflow:hidden;margin-bottom:18px}.of-package-bar span{display:block;height:100%;background:var(--orange)}.of-note{margin-top:14px;padding:14px;border-radius:13px;background:rgba(248,162,50,.10)}.of-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.of-photo-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.of-photo-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.of-photo-card div{padding:14px}.of-notice-list{display:grid;gap:10px}.of-notice-list>div{padding:14px;border-radius:14px;background:rgba(35,41,75,.05)}.of-progress-ring{width:130px;height:130px;border-radius:50%;display:grid;place-items:center;text-align:center;background:conic-gradient(var(--orange) calc(var(--progress)*1%),rgba(255,255,255,.14) 0);position:relative}.of-progress-ring:before{content:"";position:absolute;inset:10px;border-radius:50%;background:#f8a232}.of-progress-ring strong,.of-progress-ring small{position:relative;z-index:1}.of-progress-ring strong{font-size:34px}.of-progress-ring small{font-size:11px;max-width:70px}.of-modal{position:fixed;inset:0;background:rgba(35,41,75,.52);display:none;place-items:center;padding:20px;z-index:100}.of-modal.open{display:grid}.of-modal-card{width:min(480px,100%);background:#fff;border-radius:22px;padding:24px;position:relative}.of-modal-close{position:absolute;right:14px;top:12px;border:0;background:transparent;font-size:28px}.of-toast{position:fixed;right:24px;bottom:24px;max-width:380px;padding:14px 18px;border-radius:13px;color:#fff;transform:translateY(30px);opacity:0;pointer-events:none;transition:.25s;z-index:150}.of-toast.show{opacity:1;transform:none}.of-toast.ok{background:#23294b}.of-toast.error{background:#23294b}
@media(max-width:1100px){.of-grid.stats{grid-template-columns:repeat(2,1fr)}.of-photo-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.of-app{display:block;padding-top:24px}.of-sidebar{transform:translateX(-105%);transition:.25s}.of-app.menu-open .of-sidebar{transform:none}.of-main{height:auto;min-height:100vh}.of-topbar{padding:18px 20px 12px;top:0}.of-menu-toggle{display:block}.of-content{padding:8px 18px 40px}.of-grid.two,.of-class-grid{grid-template-columns:1fr}.of-hero h2{font-size:28px}.of-hero-number{width:74px;height:74px}.of-mini-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.of-login-card{padding:27px 22px}.of-login-card h1{font-size:36px}.of-grid.stats{grid-template-columns:1fr 1fr}.of-card.stat strong{font-size:23px}.of-hero{padding:22px;align-items:flex-start}.of-hero-number,.of-progress-ring{width:78px;height:78px}.of-progress-ring strong{font-size:24px}.of-section-head{align-items:flex-start}.of-section-head .of-btn{white-space:nowrap}.of-photo-grid,.grid-form{grid-template-columns:1fr}.span-2{grid-column:auto}.of-student-summary>span:first-child{display:none}.of-accordion-toggle{padding:14px}.of-mini-grid{grid-template-columns:1fr 1fr}.of-actions .of-btn{flex:1 1 45%}.of-topbar h1{font-size:22px}}

/* Mobile navigation and responsive hardening — v0.1.2 */
.of-sidebar-head{display:block}
.of-menu-close,.of-mobile-overlay{display:none}
.of-menu-toggle span{display:block;width:19px;height:2px;border-radius:2px;background:var(--brown);margin:3px auto}
.of-card,.of-hero,.of-section,.of-section-head,.of-card-head,.of-row,.of-accordion-toggle,.of-attendance-row,.of-student-summary,.of-main,.of-content{min-width:0}
img,video,iframe,svg{max-width:100%;height:auto}

@media (max-width:820px){
  html:has(.of-app),body:has(.of-app){max-width:100%;overflow-x:hidden}
  .of-app{display:block;width:100%;max-width:100%;min-height:100vh;padding-top:0;overflow-x:hidden}
  .of-main{width:100%;max-width:100%;height:auto;min-height:100vh;overflow:visible}
  .of-topbar{position:sticky;top:0;width:100%;min-height:72px;padding:14px 16px;gap:11px;background:rgba(247,244,239,.97);border-bottom:1px solid rgba(232,224,218,.8)}
  .of-topbar>div{min-width:0;flex:1}
  .of-topbar h1{font-size:21px;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .of-topbar .of-eyebrow{font-size:9px}
  .of-menu-toggle{display:grid;place-content:center;flex:0 0 42px;padding:0;cursor:pointer}
  .of-notify-btn{flex:0 0 42px}
  .of-content{width:100%;max-width:100%;padding:16px 14px 42px;overflow-x:hidden}

  .of-sidebar{display:flex;inset:0 auto 0 0;width:min(86vw,320px);max-width:320px;height:100dvh;padding:18px 14px;transform:translateX(-105%);transition:transform .28s ease;box-shadow:18px 0 50px rgba(26,14,11,.24);overflow-y:auto;overscroll-behavior:contain;visibility:hidden}
  .of-app.menu-open .of-sidebar{transform:translateX(0);visibility:visible}
  .of-sidebar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
  .of-sidebar .of-logo{min-width:0;flex:1;padding:2px 4px 18px}
  .of-sidebar .of-logo div{min-width:0}
  .of-menu-close{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;padding:0;border:1px solid rgba(255,255,255,.15);border-radius:11px;background:rgba(255,255,255,.08);color:#fff;font-size:27px;line-height:1;cursor:pointer}
  .of-nav button{width:100%;min-height:44px;padding:12px 13px;font-size:14px}
  .of-mobile-overlay{display:block;position:fixed;inset:0;z-index:35;border:0;background:rgba(26,14,11,.48);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility .25s ease}
  .of-app.menu-open .of-mobile-overlay{opacity:1;visibility:visible;pointer-events:auto}
  body.of-menu-is-open{overflow:hidden!important;touch-action:none}

  .of-grid,.of-grid.stats,.of-grid.two,.of-class-grid,.of-photo-grid,.grid-form,.of-mini-grid{width:100%;max-width:100%;grid-template-columns:1fr}
  .span-2{grid-column:auto}
  .of-card{width:100%;max-width:100%;padding:16px;border-radius:17px;overflow:hidden}
  .of-grid{gap:12px}
  .of-grid.stats{gap:10px;margin-bottom:12px}
  .of-card.stat{grid-template-columns:1fr auto;align-items:center}
  .of-card.stat span,.of-card.stat small{grid-column:1}
  .of-card.stat strong{grid-column:2;grid-row:1/3;font-size:24px;text-align:right}
  .of-hero{width:100%;max-width:100%;padding:20px 17px;border-radius:19px;gap:14px;overflow:hidden}
  .of-hero>div:first-child{min-width:0;flex:1}
  .of-hero h2{font-size:26px;overflow-wrap:anywhere}
  .of-hero p{font-size:13px;line-height:1.45}
  .of-hero-number,.of-progress-ring{flex:0 0 72px;width:72px;height:72px;border-radius:18px;font-size:30px}
  .of-progress-ring strong{font-size:22px}
  .of-section-head,.of-card-head{align-items:flex-start;flex-wrap:wrap;gap:10px}
  .of-section-head{margin:4px 0 14px}
  .of-section-head h2{font-size:25px;line-height:1.15}
  .of-section-head .of-btn,.of-card-head .of-btn{max-width:100%;white-space:normal}
  .of-row,.of-attendance-row,.of-accordion-toggle{gap:10px}
  .of-row>div,.of-attendance-row>div:first-child,.of-accordion-toggle>div{min-width:0}
  .of-row strong,.of-row small,.of-attendance-row strong,.of-attendance-row small,.of-accordion-toggle strong,.of-accordion-toggle small{overflow-wrap:anywhere}
  .of-timeline>div{grid-template-columns:52px minmax(0,1fr);gap:8px}
  .of-timeline>div>*:last-child{grid-column:2}
  .of-student-summary{min-width:0;flex:1}
  .of-accordion-toggle{padding:14px}
  .of-accordion-panel{padding:0 14px 14px}
  .of-choice{flex:0 0 auto;gap:5px}
  .of-choice button{width:36px;height:36px}
  .of-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}
  .of-actions .of-btn{width:100%;min-width:0;padding:11px 9px;white-space:normal}
  .of-form{width:100%;max-width:100%}
  .of-form label{min-width:0}
  .of-form input,.of-form select,.of-form textarea,.of-search input{display:block;min-width:0;max-width:100%;font-size:16px}
  .of-pix strong,.of-pix-value{font-size:24px;overflow-wrap:anywhere}
  .of-pix code,.of-pix-card code{max-width:100%;overflow-wrap:anywhere;word-break:break-word;white-space:normal}
  .of-photo-card{min-width:0;width:100%}
  .of-modal{padding:12px;align-items:end}
  .of-modal-card{width:100%;max-width:100%;max-height:90dvh;overflow-y:auto;border-radius:20px 20px 14px 14px;padding:22px 16px 18px}
  .of-toast{left:14px;right:14px;bottom:14px;max-width:none;text-align:center}
}

@media (max-width:420px){
  .of-content{padding-left:12px;padding-right:12px}
  .of-topbar{padding-left:12px;padding-right:12px}
  .of-topbar h1{font-size:19px}
  .of-hero{align-items:flex-start}
  .of-hero-number,.of-progress-ring{flex-basis:64px;width:64px;height:64px}
  .of-actions{grid-template-columns:1fr}
  .of-attendance-row{align-items:flex-start}
  .of-choice{padding-top:2px}
}

@media (min-width:821px){
  .of-menu-toggle,.of-menu-close,.of-mobile-overlay{display:none!important}
  .of-sidebar{visibility:visible!important;transform:none!important}
}

/* Robust mobile navigation fallback — v0.1.3 */
.of-app.of-device-mobile .of-menu-toggle{display:grid!important;place-content:center}
.of-app.of-device-mobile .of-sidebar{transform:translateX(-105%);visibility:hidden}
.of-app.of-device-mobile.menu-open .of-sidebar{transform:translateX(0);visibility:visible}
.of-app.of-device-mobile .of-mobile-overlay{display:block}
.of-app.of-device-mobile.menu-open .of-mobile-overlay{opacity:1;visibility:visible;pointer-events:auto}
@media (min-width:821px){
  .of-app:not(.of-device-mobile) .of-menu-toggle{display:none!important}
}

/* v0.1.4 — 25px global breathing room and mobile menu hardening */
.of-app{padding-top:25px!important}
.of-sidebar{top:25px!important;height:calc(100vh - 25px)!important}
@media (max-width:900px){
  .of-app{display:block!important;width:100%!important;max-width:100%!important;padding-top:25px!important;overflow-x:hidden!important}
  .of-main{width:100%!important;max-width:100%!important;height:auto!important;min-height:calc(100vh - 25px)!important;margin:0!important;grid-column:auto!important;overflow:visible!important}
  .of-topbar{top:25px!important;z-index:900!important}
  #of-mobile-menu-toggle{display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:2px!important;flex:0 0 44px!important;width:44px!important;height:44px!important;padding:0!important;visibility:visible!important;opacity:1!important}
  #of-mobile-menu-toggle span{display:block!important;width:20px!important;height:2px!important;margin:0!important;background:var(--brown)!important;border-radius:3px!important}
  .of-sidebar{display:flex!important;position:fixed!important;top:25px!important;left:0!important;right:auto!important;bottom:auto!important;width:min(86vw,320px)!important;max-width:320px!important;height:calc(100dvh - 25px)!important;transform:translateX(-110%)!important;visibility:hidden!important;transition:transform .28s ease,visibility .28s ease!important;z-index:1001!important}
  .of-app.menu-open .of-sidebar{transform:translateX(0)!important;visibility:visible!important}
  .of-mobile-overlay{display:block!important;position:fixed!important;inset:25px 0 0 0!important;z-index:1000!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;background:rgba(26,14,11,.5)!important}
  .of-app.menu-open .of-mobile-overlay{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
}
@media (min-width:901px){#of-mobile-menu-toggle{display:none!important}}


/* v0.1.5 — floating mobile menu trigger independent from theme/header */
.of-mobile-floating-menu{display:none!important}
@media (max-width:900px){
  .of-mobile-floating-menu{display:flex!important;position:fixed!important;top:calc(25px + env(safe-area-inset-top,0px))!important;left:16px!important;z-index:2147483000!important;width:48px!important;height:48px!important;padding:0!important;border:1px solid rgba(35,41,75,.16)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 10px 30px rgba(35,41,75,.18)!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:4px!important;visibility:visible!important;opacity:1!important}
  .of-mobile-floating-menu span{display:block!important;width:22px!important;height:2px!important;margin:0!important;border-radius:3px!important;background:#23294b!important}
  .of-app.menu-open .of-mobile-floating-menu{opacity:0!important;pointer-events:none!important}
  .of-content{padding-top:78px!important}
  .of-sidebar{z-index:2147483002!important}
  .of-mobile-overlay{z-index:2147483001!important}
}
@media (min-width:901px){.of-mobile-floating-menu{display:none!important}}

/* v0.1.6 — menu mobile em fluxo, sem sobrepor título */
.of-mobile-toolbar{display:none}
@media (max-width:900px){
  .of-mobile-toolbar{display:flex!important;width:100%!important;justify-content:flex-end!important;padding:12px 24px 16px!important;box-sizing:border-box!important}
  .of-mobile-floating-menu{display:inline-flex!important;position:relative!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;width:auto!important;min-width:112px!important;height:46px!important;padding:0 15px!important;flex-direction:row!important;gap:4px!important}
  .of-mobile-floating-menu strong{display:block!important;margin-left:8px!important;font-size:14px!important}
  .of-sidebar{pointer-events:none!important}
  .of-app.menu-open .of-sidebar{pointer-events:auto!important}
}
@media (min-width:901px){.of-mobile-toolbar{display:none!important}}

/* v0.1.7 — cadastros, fotos e correções de data no mobile */
.of-stat-link{font:inherit;color:inherit;text-align:left;cursor:pointer;width:100%}
.of-stat-link:hover{border-color:rgba(248,162,50,.45);transform:translateY(-1px)}
.of-photo-filter{display:flex;justify-content:flex-end;margin:0 0 14px}
.of-photo-filter label{width:min(280px,100%)}
.of-photo-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}
.of-download-photo{white-space:nowrap;text-decoration:none}
.of-form label{min-width:0;max-width:100%;overflow:hidden}
.of-form input[type="date"]{display:block;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;-webkit-appearance:none;appearance:none;font-size:16px!important}
@media(max-width:900px){
  .of-form input[type="date"]{inline-size:100%!important;max-inline-size:100%!important;min-inline-size:0!important}
  .of-photo-meta{align-items:stretch;flex-direction:column}
  .of-download-photo{width:100%;text-align:center}
  .of-stat-link{min-height:112px}
}


/* v0.1.8 — cards discretamente clicáveis, galeria da gestora e ícone de halter */
.of-stat-navigation{cursor:pointer}
.of-stat-navigation:hover,.of-stat-navigation:focus-visible{transform:none;border-color:var(--line);box-shadow:0 10px 30px rgba(35,41,75,.06)}
.of-stat-navigation:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.of-mobile-floating-menu .of-menu-dumbbell{display:block;width:25px;height:18px;flex:0 0 25px;fill:currentColor}
.of-photo-upload-card{margin-bottom:22px}
.of-gallery-heading{margin-top:8px}
.of-photo-accordion{display:grid;gap:10px}
.of-photo-group{border:1px solid var(--line);border-radius:17px;background:#fff;overflow:hidden}
.of-photo-group-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;gap:14px;padding:17px 18px;border:0;background:#fff;color:var(--ink);text-align:left;cursor:pointer}
.of-photo-group-toggle div{display:grid;gap:3px;min-width:0}
.of-photo-group-toggle strong{font-size:15px}
.of-photo-group-toggle small{color:var(--muted)}
.of-photo-group-toggle>span{font-size:22px;transition:transform .2s ease;color:var(--brown)}
.of-photo-group.open .of-photo-group-toggle>span{transform:rotate(180deg)}
.of-photo-group-panel{display:none;padding:0 18px 18px}
.of-photo-group.open .of-photo-group-panel{display:block}
.of-manager-photo-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(180px,240px);gap:12px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;padding:2px 2px 10px;scrollbar-width:thin}
.of-manager-photo-item{margin:0;scroll-snap-align:start;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--cream)}
.of-manager-photo-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.of-manager-photo-item figcaption{padding:9px 11px;color:var(--muted);font-size:12px;font-weight:600}
.of-empty-gallery{margin:0;padding:4px 0;color:var(--muted)}
@media(max-width:900px){
  .of-mobile-floating-menu{min-width:102px!important;height:42px!important;padding:0 13px!important;border-radius:13px!important}
  .of-mobile-floating-menu strong{font-size:13px!important;margin-left:6px!important}
  .of-mobile-floating-menu .of-menu-dumbbell{width:23px;height:16px;flex-basis:23px}
  .of-manager-photo-carousel{grid-auto-columns:minmax(165px,78vw)}
  .of-photo-group-toggle{padding:15px}
  .of-photo-group-panel{padding:0 15px 15px}
}

.of-card.stat.of-stat-navigation{font:inherit;color:inherit;text-align:left;width:100%}


/* v0.1.9 — restauração definitiva da navegação desktop */
@media (min-width:901px){
  .of-app{display:grid!important;grid-template-columns:250px minmax(0,1fr)!important;overflow:visible!important}
  .of-sidebar{display:flex!important;position:fixed!important;left:0!important;right:auto!important;top:25px!important;width:250px!important;height:calc(100vh - 25px)!important;transform:none!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;z-index:40!important}
  .of-main{grid-column:2!important;width:auto!important;max-width:none!important;margin:0!important}
  .of-mobile-toolbar,.of-mobile-floating-menu,.of-mobile-overlay,.of-menu-close,#of-mobile-menu-toggle{display:none!important}
}

/* Orbis Fit 1.0 — consolidação da navegação e acabamento final */
:root{--ink:var(--text);--cream:var(--bg)}
.of-btn:disabled{opacity:.65;cursor:wait;transform:none!important}
.of-stat-navigation{-webkit-appearance:none;appearance:none;background:var(--card)}
.of-stat-navigation:hover{transform:none!important;border-color:var(--line)!important;box-shadow:0 10px 30px rgba(35,41,75,.06)!important}

@media (min-width:901px){
  .of-app{display:grid!important;grid-template-columns:250px minmax(0,1fr)!important;min-height:100vh!important;padding-top:25px!important;overflow:visible!important}
  .of-sidebar{display:flex!important;position:fixed!important;inset:25px auto auto 0!important;width:250px!important;height:calc(100vh - 25px)!important;transform:none!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;z-index:40!important}
  .of-main{display:block!important;grid-column:2!important;width:auto!important;min-width:0!important;max-width:none!important;margin:0!important}
  .of-mobile-toolbar,.of-mobile-floating-menu,.of-mobile-overlay,.of-menu-close,#of-mobile-menu-toggle{display:none!important}
}

@media (max-width:900px){
  body.of-menu-is-open{overflow:hidden!important}
  .of-app{display:block!important;width:100%!important;max-width:100%!important;min-height:100vh!important;padding-top:25px!important;overflow-x:hidden!important}
  .of-main{display:block!important;width:100%!important;max-width:100%!important;min-height:calc(100vh - 25px)!important;margin:0!important}
  .of-mobile-toolbar{display:flex!important;position:relative!important;justify-content:flex-end!important;width:100%!important;padding:12px 24px 16px!important;z-index:80!important}
  .of-mobile-floating-menu{display:inline-flex!important;position:relative!important;inset:auto!important;min-width:102px!important;height:42px!important;padding:0 13px!important;align-items:center!important;justify-content:center!important;gap:6px!important;border:1px solid rgba(35,41,75,.16)!important;border-radius:13px!important;background:#fff!important;color:var(--brown)!important;box-shadow:0 8px 22px rgba(35,41,75,.12)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  .of-sidebar{display:flex!important;position:fixed!important;inset:25px auto auto 0!important;width:min(86vw,320px)!important;max-width:320px!important;height:calc(100dvh - 25px)!important;transform:translateX(-110%)!important;visibility:hidden!important;pointer-events:none!important;transition:transform .28s ease,visibility .28s ease!important;z-index:1002!important}
  .of-app.menu-open .of-sidebar{transform:translateX(0)!important;visibility:visible!important;pointer-events:auto!important}
  .of-mobile-overlay{display:block!important;position:fixed!important;inset:25px 0 0!important;background:rgba(26,14,11,.5)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .28s ease,visibility .28s ease!important;z-index:1001!important}
  .of-app.menu-open .of-mobile-overlay{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  #of-mobile-menu-toggle{display:none!important}
  .of-content{padding-top:8px!important}
}

/* Orbis Fit 1.1 — login, perfil do aluno e comparativo de medidas */
html:has(.of-login-wrap),body:has(.of-login-wrap){height:100%;min-height:100%;overflow:hidden!important}
body:has(.of-login-wrap){position:fixed;inset:0;width:100%}
.of-login-wrap{height:100dvh;min-height:100dvh;max-height:100dvh;overflow:hidden;padding:clamp(14px,3vw,28px);background:radial-gradient(circle at 50% 0,rgba(248,162,50,.18),transparent 32%),linear-gradient(145deg,#23294b,#23294b);place-items:center}
.of-login-card{width:min(420px,100%);max-height:calc(100dvh - 28px);overflow:hidden;border-radius:26px;padding:clamp(24px,5vh,38px);display:grid;gap:20px}
.of-login-brand{text-align:center;display:grid;gap:5px}
.of-login-presenter{margin:0;color:var(--orange);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.of-login-card h1{margin:0;font-family:"Arial Narrow",Impact,Haettenschweiler,sans-serif;font-size:clamp(29px,5vw,38px);font-stretch:condensed;font-style:italic;letter-spacing:-.025em;text-transform:uppercase;color:var(--brown)}
.of-login-brand>p:last-child{margin:0;color:var(--muted);font-size:13px;line-height:1.45}
.of-login-form{gap:13px}
.of-login-form .of-btn{margin-top:2px}
.of-remember{display:flex!important;grid-template-columns:none!important;align-items:center;gap:9px!important;font-weight:600!important;color:var(--muted);cursor:pointer}
.of-remember input{width:17px!important;height:17px;flex:0 0 17px;margin:0;accent-color:var(--orange)}
.of-mobile-brand{display:none}
.of-student-overview-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-bottom:16px}
.of-student-identity{display:flex;align-items:center;gap:17px}
.of-student-photo-wrap{width:82px;height:82px;flex:0 0 82px;border-radius:23px;overflow:hidden;background:linear-gradient(135deg,var(--orange),#f8a232);display:grid;place-items:center;color:#fff;font-size:30px;font-weight:900;box-shadow:0 10px 24px rgba(248,162,50,.18)}
.of-student-photo-wrap img{width:100%;height:100%;object-fit:cover}
.of-student-photo-wrap.large{width:112px;height:112px;flex-basis:112px;border-radius:28px}
.of-profile-editor{display:flex;align-items:center;gap:20px;padding-bottom:4px}
.of-profile-editor label{flex:1}
.of-profile-editor label small{font-weight:500;color:var(--muted);line-height:1.4}
.of-measure-highlight{margin-bottom:16px}
.of-current-measures{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.of-current-measure{background:rgba(35,41,75,.05);border-radius:15px;padding:14px;display:grid;gap:5px;min-width:0}
.of-current-measure>span{font-size:12px;color:var(--muted)}
.of-current-measure strong{font-size:25px;line-height:1;color:var(--brown)}
.of-current-measure strong small{font-size:11px;color:var(--muted)}
.of-current-measure em{font-size:11px;font-style:normal;font-weight:900}
.of-current-measure em.up{color:#23294b}.of-current-measure em.down{color:#23294b}.of-current-measure em.same{color:var(--muted)}
.of-measure-caption{margin-top:10px;color:var(--muted);font-size:11px;text-align:right}

@media(max-width:900px){
  .of-mobile-toolbar{display:none!important}
  .of-content{padding-top:16px!important}
  .of-topbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"brand notify" "section section";row-gap:8px;padding:12px 16px!important}
  .of-mobile-brand{grid-area:brand;display:flex;align-items:center;gap:10px;min-width:0}
  .of-mobile-brand strong{font-family:"Arial Narrow",Impact,Haettenschweiler,sans-serif;font-style:italic;text-transform:uppercase;font-size:20px;letter-spacing:-.02em;white-space:nowrap}
  .of-mobile-brand .of-menu-toggle{display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;gap:3px!important;width:40px!important;height:40px!important;flex:0 0 40px!important}
  .of-current-section{grid-area:section;display:flex!important;align-items:center;gap:7px;min-width:0}
  .of-current-section .of-eyebrow{margin:0!important}
  .of-current-section h1{font-size:17px!important;margin:0!important}
  .of-notify-btn{grid-area:notify}
  .of-student-overview-grid{grid-template-columns:1fr}
  .of-current-measures{grid-template-columns:repeat(2,minmax(0,1fr))}
  .of-profile-editor{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){
  .of-login-wrap{padding:12px}
  .of-login-card{max-height:calc(100dvh - 24px);padding:24px 20px;gap:17px;border-radius:22px}
  .of-login-card h1{font-size:29px}
  .of-login-brand>p:last-child{font-size:12px}
  .of-login-form{gap:11px}
  .of-login-form input{padding:11px 12px}
  .of-student-identity{align-items:flex-start}
  .of-student-photo-wrap{width:70px;height:70px;flex-basis:70px;border-radius:19px}
  .of-current-measure strong{font-size:22px}
}
@media(max-height:620px){
  .of-login-card{padding-top:18px;padding-bottom:18px;gap:12px}
  .of-login-brand>p:last-child{display:none}
  .of-login-card h1{font-size:27px}
  .of-login-form{gap:9px}
  .of-login-form label{gap:4px}
  .of-login-form input{padding:9px 11px}
}

/* Orbis Fit 1.2 — correções mobile, login compacto e medidas */
html:has(.of-login-wrap),body:has(.of-login-wrap){width:100%;height:100%;max-width:100%;max-height:100%;margin:0!important;overflow:hidden!important;overscroll-behavior:none}
body:has(.of-login-wrap){position:fixed!important;inset:0!important;background:#23294b!important}
body:has(.of-login-wrap) #wpadminbar,body:has(.of-login-wrap) header,body:has(.of-login-wrap) footer{display:none!important}
.of-login-wrap{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;min-height:0!important;max-height:100dvh!important;padding:20px!important;overflow:hidden!important;display:grid!important;place-items:center!important;background:#23294b!important}
.of-login-card{width:min(360px,calc(100vw - 40px))!important;max-height:calc(100dvh - 40px)!important;padding:0!important;margin:0!important;overflow:hidden!important;display:grid!important;gap:14px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.of-login-brand{display:none!important}
.of-login-form{width:100%;gap:12px!important}
.of-login-form label:not(.of-remember){color:#fff!important;text-align:left!important}
.of-login-form input{width:100%;box-sizing:border-box;background:#fff!important;border-color:rgba(255,255,255,.22)!important}
.of-login-form .of-remember{justify-content:center!important;color:#fff!important;text-align:center!important}
.of-login-form .of-remember input{width:18px!important;height:18px!important;flex:0 0 18px!important}
.of-login-form .of-btn{width:100%;min-height:46px}
.of-login-card .of-alert{margin:0}
.of-measure-history-action{display:flex;justify-content:flex-end;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}

@media (max-width:900px){
  .of-topbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-areas:"brand notify" "section section"!important;align-items:center!important;gap:8px 12px!important}
  .of-mobile-brand{grid-area:brand!important;display:flex!important;align-items:center!important;gap:10px!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:5!important}
  #of-mobile-menu-toggle.of-menu-toggle{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;position:relative!important;transform:none!important}
  .of-current-section{grid-area:section!important}
  .of-notify-btn{grid-area:notify!important}
  .of-sidebar{display:flex!important;position:fixed!important;top:0!important;bottom:0!important;left:0!important;width:min(82vw,320px)!important;height:100dvh!important;z-index:1002!important;transform:translateX(-110%)!important;visibility:hidden!important;pointer-events:none!important;transition:transform .26s ease,visibility .26s ease!important}
  .of-app.menu-open .of-sidebar{transform:translateX(0)!important;visibility:visible!important;pointer-events:auto!important}
  .of-mobile-overlay{display:block!important;position:fixed!important;inset:0!important;z-index:1001!important}
}
@media (max-height:700px){
  .of-login-wrap{padding:12px!important}
  .of-login-card{width:min(340px,calc(100vw - 24px))!important;max-height:calc(100dvh - 24px)!important;gap:9px!important}
  .of-login-form{gap:8px!important}
  .of-login-form input{padding:9px 11px!important}
  .of-login-form .of-btn{min-height:42px!important}
}

/* Orbis Fit 1.2.1 — cabeçalho mobile definitivo */
@media (max-width:1024px){
  .of-app .of-topbar{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"brand notify" "section section"!important;
    padding:10px 14px 11px!important;
    gap:6px 10px!important;
    overflow:visible!important;
  }
  .of-app .of-mobile-brand{
    grid-area:brand!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    min-width:0!important;
    overflow:visible!important;
    visibility:visible!important;
    opacity:1!important;
    position:relative!important;
    z-index:2147483000!important;
  }
  .of-app #of-mobile-menu-toggle.of-menu-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    flex:0 0 38px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid rgba(35,41,75,.14)!important;
    border-radius:11px!important;
    background:#fff!important;
    color:#23294b!important;
    box-shadow:0 5px 16px rgba(35,41,75,.09)!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    z-index:2147483001!important;
    cursor:pointer!important;
    -webkit-appearance:none!important;
    appearance:none!important;
  }
  .of-app #of-mobile-menu-toggle svg{
    display:block!important;
    width:20px!important;
    height:20px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:2!important;
    stroke-linecap:round!important;
  }
  .of-app .of-mobile-brand strong{
    display:block!important;
    max-width:calc(100vw - 132px)!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-family:"Arial Narrow","Roboto Condensed","Helvetica Neue",Arial,sans-serif!important;
    font-size:15px!important;
    line-height:1!important;
    font-weight:800!important;
    font-style:italic!important;
    font-stretch:condensed!important;
    letter-spacing:.035em!important;
    text-transform:uppercase!important;
    color:#23294b!important;
  }
  .of-app .of-notify-btn{grid-area:notify!important;width:38px!important;height:38px!important}
  .of-app .of-current-section{grid-area:section!important}
}

/* Fallback para celulares detectados pelo WordPress/JavaScript, mesmo quando o tema altera o viewport. */
.of-app.of-device-mobile .of-mobile-brand{display:flex!important;visibility:visible!important;opacity:1!important}
.of-app.of-device-mobile #of-mobile-menu-toggle.of-menu-toggle{display:inline-flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}


/* Orbis Fit 1.2.2 — cabeçalho mobile com haltere e ação de medidas centralizada */
.of-measure-history-action{
  justify-content:center!important;
  align-items:center!important;
  width:100%!important;
}
.of-measure-history-action .of-btn{
  margin-inline:auto!important;
  text-align:center!important;
}

@media (max-width:1024px){
  .of-app .of-topbar,
  .of-app.of-device-mobile .of-topbar{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-areas:"brand"!important;
    min-height:58px!important;
    padding:9px 16px!important;
    background:#23294b!important;
    border-bottom:0!important;
    box-shadow:0 5px 20px rgba(41,24,20,.16)!important;
    overflow:visible!important;
    position:sticky!important;
    top:0!important;
    z-index:990!important;
  }
  .of-app .of-mobile-brand,
  .of-app.of-device-mobile .of-mobile-brand{
    grid-area:brand!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
    visibility:visible!important;
    opacity:1!important;
    position:relative!important;
    z-index:2147483000!important;
  }
  .of-app #of-mobile-menu-toggle.of-menu-toggle,
  .of-app.of-device-mobile #of-mobile-menu-toggle.of-menu-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 42px!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    margin:0!important;
    padding:5px!important;
    border:0!important;
    border-radius:10px!important;
    background:transparent!important;
    color:#fff!important;
    box-shadow:none!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    z-index:2147483001!important;
    cursor:pointer!important;
    -webkit-appearance:none!important;
    appearance:none!important;
  }
  .of-app #of-mobile-menu-toggle .of-header-dumbbell,
  .of-app.of-device-mobile #of-mobile-menu-toggle .of-header-dumbbell{
    display:block!important;
    width:31px!important;
    height:22px!important;
    overflow:visible!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:3.5!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }
  .of-app .of-mobile-brand>strong,
  .of-app.of-device-mobile .of-mobile-brand>strong{
    display:block!important;
    max-width:none!important;
    margin:0!important;
    overflow:visible!important;
    white-space:nowrap!important;
    font-family:"Arial Narrow","Roboto Condensed","Helvetica Neue",Arial,sans-serif!important;
    font-size:14px!important;
    line-height:1!important;
    font-weight:750!important;
    font-style:normal!important;
    letter-spacing:.01em!important;
    text-transform:none!important;
    color:#fff!important;
  }
  .of-app .of-mobile-brand>strong small,
  .of-app.of-device-mobile .of-mobile-brand>strong small{
    font-size:8px!important;
    font-weight:800!important;
    letter-spacing:.08em!important;
    text-transform:uppercase!important;
    vertical-align:2px!important;
    opacity:.82!important;
  }
  .of-app .of-current-section,
  .of-app .of-notify-btn,
  .of-app.of-device-mobile .of-current-section,
  .of-app.of-device-mobile .of-notify-btn{
    display:none!important;
  }
  .of-app .of-sidebar,
  .of-app.of-device-mobile .of-sidebar{
    top:0!important;
    height:100dvh!important;
  }
}

@media (max-width:380px){
  .of-app .of-topbar,.of-app.of-device-mobile .of-topbar{padding-inline:11px!important}
  .of-app .of-mobile-brand,.of-app.of-device-mobile .of-mobile-brand{gap:8px!important}
  .of-app .of-mobile-brand>strong,.of-app.of-device-mobile .of-mobile-brand>strong{font-size:13px!important}
}

/* Orbis Fit 1.2.4 — nova identidade da tela de login */
html:has(.of-login-wrap),body:has(.of-login-wrap){width:100%;height:100%;min-width:100%;min-height:100%;margin:0!important;overflow:hidden!important;overscroll-behavior:none;background:#23294b!important}
body:has(.of-login-wrap){position:fixed!important;inset:0!important}
body:has(.of-login-wrap) #wpadminbar,body:has(.of-login-wrap) header,body:has(.of-login-wrap) footer{display:none!important}
.of-login-wrap{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;min-height:0!important;max-height:100dvh!important;padding:clamp(10px,2.2vh,22px)!important;overflow:hidden!important;display:grid!important;place-items:center!important;background:#23294b!important}
.of-login-card{width:min(520px,calc(100vw - 24px))!important;max-height:calc(100dvh - 20px)!important;margin:0!important;padding:clamp(22px,4vh,38px) clamp(20px,4vw,40px)!important;overflow:hidden!important;display:grid!important;gap:clamp(12px,2vh,20px)!important;background:#fff!important;border:0!important;border-radius:clamp(20px,4vw,30px)!important;box-shadow:0 22px 60px rgba(20,8,5,.28)!important}
.of-login-brand{display:grid!important;justify-items:center!important;gap:clamp(8px,1.5vh,14px)!important;text-align:center!important}
.of-login-brand img{display:block;width:min(330px,78vw)!important;max-width:100%!important;height:auto!important;margin:0 auto!important;object-fit:contain!important}
.of-login-brand p{max-width:370px;margin:0!important;color:#23294b!important;font-size:clamp(13px,1.9vw,17px)!important;line-height:1.42!important;font-weight:500!important;text-align:center!important}
.of-login-form{display:grid!important;gap:clamp(10px,1.55vh,15px)!important;width:100%!important}
.of-login-form label:not(.of-remember){display:grid!important;gap:6px!important;color:#23294b!important;font-size:14px!important;font-weight:750!important;text-align:left!important}
.of-login-form input[type="text"],.of-login-form input[type="password"],.of-login-form input[name="login"]{width:100%!important;min-height:48px!important;padding:12px 14px!important;border:1px solid rgba(35,41,75,.14)!important;border-radius:13px!important;background:#fff!important;color:#23294b!important;-webkit-text-fill-color:#23294b!important;caret-color:#23294b!important;font-family:inherit!important;font-size:16px!important;line-height:1.25!important;box-shadow:none!important}
.of-login-form input::placeholder{color:#23294b!important;-webkit-text-fill-color:#23294b!important;opacity:1!important}
.of-login-form input:focus{outline:3px solid rgba(35,41,75,.12)!important;border-color:#23294b!important}
.of-login-form input:-webkit-autofill,.of-login-form input:-webkit-autofill:hover,.of-login-form input:-webkit-autofill:focus{-webkit-text-fill-color:#23294b!important;caret-color:#23294b!important;-webkit-box-shadow:0 0 0 1000px #fff inset!important;box-shadow:0 0 0 1000px #fff inset!important;transition:background-color 9999s ease-out 0s}
.of-login-form .of-remember{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;color:#23294b!important;font-size:13px!important;font-weight:550!important;text-align:left!important;cursor:pointer!important}
.of-login-form .of-remember input{width:18px!important;height:18px!important;min-width:18px!important;margin:0!important;accent-color:#23294b!important}
.of-login-form .of-btn.primary{width:100%!important;min-height:48px!important;margin:0!important;border-radius:13px!important;background:#23294b!important;color:#fff!important;font-size:14px!important;font-weight:850!important;letter-spacing:.055em!important;text-transform:uppercase!important;box-shadow:none!important}
.of-login-form .of-btn.primary:hover,.of-login-form .of-btn.primary:focus-visible{background:#23294b!important;transform:none!important}
.of-forgot-password{display:block!important;margin:0 auto!important;color:#23294b!important;font-size:13px!important;font-weight:600!important;text-align:center!important;text-decoration:underline!important;text-underline-offset:3px!important}
.of-login-card .of-alert{margin:0!important;padding:10px 12px!important;font-size:12px!important}
@media(max-height:720px){
  .of-login-wrap{padding:8px!important}
  .of-login-card{max-height:calc(100dvh - 16px)!important;padding:16px 18px!important;gap:9px!important;border-radius:20px!important}
  .of-login-brand{gap:6px!important}
  .of-login-brand img{width:min(255px,70vw)!important}
  .of-login-brand p{font-size:12px!important;line-height:1.3!important}
  .of-login-form{gap:8px!important}
  .of-login-form label:not(.of-remember){gap:3px!important;font-size:12px!important}
  .of-login-form input[type="text"],.of-login-form input[type="password"],.of-login-form input[name="login"]{min-height:40px!important;padding:8px 11px!important}
  .of-login-form .of-btn.primary{min-height:41px!important}
  .of-forgot-password{font-size:12px!important}
}
@media(max-width:390px){
  .of-login-card{width:calc(100vw - 20px)!important;padding-inline:18px!important}
  .of-login-brand img{width:min(275px,76vw)!important}
}

/* Orbis Fit 1.3.1 — marca oficial no topo do menu */
.of-sidebar-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  margin:0 0 18px;
}
.of-sidebar-brand{
  appearance:none;
  border:0;
  background:transparent;
  padding:4px 8px;
  margin:0;
  min-width:0;
  flex:1 1 auto;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  cursor:pointer;
}
.of-sidebar-brand img{
  display:block;
  width:min(176px,100%);
  max-height:44px;
  object-fit:contain;
  object-position:left center;
}
.of-sidebar-brand:focus-visible{
  outline:2px solid rgba(255,255,255,.82);
  outline-offset:4px;
  border-radius:10px;
}
.of-sidebar .of-logo{display:none!important}

@media (max-width:820px){
  .of-sidebar-head{align-items:center;margin-bottom:14px}
  .of-sidebar-brand{padding:3px 4px}
  .of-sidebar-brand img{width:min(150px,100%);max-height:38px}
}

@media (max-width:420px){
  .of-sidebar-brand img{width:min(138px,100%);max-height:35px}
}


/* Orbis Fit 1.3.2 — refinamento de interações e cabeçalho mobile */
.of-app button,
.of-app a,
.of-app [role="button"]{
  -webkit-tap-highlight-color:transparent;
}
.of-app button:hover,
.of-app button:active,
.of-app a:hover,
.of-app a:active,
.of-app [role="button"]:hover,
.of-app [role="button"]:active{
  transform:none!important;
  translate:none!important;
  margin-top:0!important;
  margin-bottom:0!important;
  box-shadow:none!important;
}
.of-sidebar-brand:hover,
.of-sidebar-brand:active,
.of-topbar-logo:hover,
.of-topbar-logo:active,
.of-instagram-link:hover,
.of-instagram-link:active,
.of-menu-toggle:hover,
.of-menu-toggle:active{
  background:transparent!important;
  border-color:transparent!important;
  opacity:1!important;
}
.of-sidebar-brand:focus-visible,
.of-topbar-logo:focus-visible,
.of-instagram-link:focus-visible,
.of-menu-toggle:focus-visible{
  outline:2px solid rgba(255,255,255,.82)!important;
  outline-offset:3px!important;
  border-radius:6px!important;
}

/* Botão do histórico com a mesma linguagem do link Editar perfil. */
.of-measure-history-action .of-btn{
  appearance:none!important;
  width:auto!important;
  min-width:0!important;
  padding:5px 2px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--orange)!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:800!important;
  box-shadow:none!important;
}
.of-measure-history-action .of-btn:hover,
.of-measure-history-action .of-btn:active{
  background:transparent!important;
  color:var(--orange)!important;
  text-decoration:none!important;
}

/* Destaque inicial do aluno em laranja. */
.of-hero.student{
  background:linear-gradient(135deg,#f8a232,#f8a232)!important;
}

.of-mobile-header-actions{display:none}

@media (max-width:1024px){
  .of-app .of-topbar,
  .of-app.of-device-mobile .of-topbar{
    grid-template-columns:1fr!important;
    grid-template-areas:"mobile-actions"!important;
    min-height:62px!important;
    padding:8px 14px!important;
  }
  .of-mobile-header-actions{
    grid-area:mobile-actions!important;
    display:grid!important;
    grid-template-columns:minmax(82px,1fr) auto minmax(44px,1fr)!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    gap:10px!important;
  }
  .of-app #of-mobile-menu-toggle.of-menu-toggle,
  .of-app.of-device-mobile #of-mobile-menu-toggle.of-menu-toggle{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:7px!important;
    width:auto!important;
    min-width:0!important;
    height:42px!important;
    padding:0!important;
    color:#fff!important;
    border:0!important;
    background:transparent!important;
  }
  .of-app #of-mobile-menu-toggle .of-header-dumbbell{
    width:29px!important;
    height:20px!important;
    flex:0 0 auto!important;
  }
  .of-app #of-mobile-menu-toggle span{
    display:inline-block!important;
    color:#fff!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:800!important;
    letter-spacing:.08em!important;
  }
  .of-topbar-logo{
    appearance:none!important;
    border:0!important;
    background:transparent!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:0!important;
    cursor:pointer!important;
  }
  .of-topbar-logo img{
    display:block!important;
    width:min(126px,34vw)!important;
    max-height:31px!important;
    object-fit:contain!important;
  }
  .of-instagram-link{
    justify-self:end!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:38px!important;
    height:38px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    color:#fff!important;
    text-decoration:none!important;
  }
  .of-instagram-link svg{
    width:23px!important;
    height:23px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }
  .of-instagram-link .of-instagram-dot{fill:currentColor!important;stroke:none!important}
  .of-mobile-brand{display:none!important}
}

@media (max-width:380px){
  .of-mobile-header-actions{grid-template-columns:minmax(76px,1fr) auto minmax(38px,1fr)!important;gap:6px!important}
  .of-app #of-mobile-menu-toggle.of-menu-toggle{gap:5px!important}
  .of-app #of-mobile-menu-toggle .of-header-dumbbell{width:26px!important}
  .of-app #of-mobile-menu-toggle span{font-size:11px!important}
  .of-topbar-logo img{width:min(112px,32vw)!important;max-height:28px!important}
  .of-instagram-link{width:34px!important;height:34px!important}
  .of-instagram-link svg{width:21px!important;height:21px!important}
}


/* Orbis Fit 1.3.3 — logout confiável, menu mobile vertical e progresso circular */
.of-logout{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-height:44px!important;
  margin-top:auto!important;
  padding:12px 13px!important;
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.of-logout:hover,.of-logout:active,.of-logout:visited{
  color:#fff!important;
  background:transparent!important;
  opacity:1!important;
  transform:none!important;
  box-shadow:none!important;
}

/* O progresso usa branco para a parte já realizada e transparência para o restante. */
.of-hero.student{
  background:linear-gradient(135deg,#f8a232,#f8a232)!important;
}
.of-hero.student .of-progress-ring{
  --ring-track:rgba(255,255,255,.24);
  width:124px!important;
  height:124px!important;
  flex:0 0 124px!important;
  border-radius:50%!important;
  background:conic-gradient(#fff calc(var(--progress)*1%),var(--ring-track) 0)!important;
  box-shadow:none!important;
  color:#fff!important;
}
.of-hero.student .of-progress-ring:before{
  inset:8px!important;
  background:#f8a232!important;
  border:1px solid rgba(255,255,255,.10)!important;
}
.of-hero.student .of-progress-ring strong{
  display:block!important;
  align-self:end!important;
  margin-bottom:0!important;
  color:#fff!important;
  font-size:35px!important;
  line-height:.92!important;
  font-weight:900!important;
}
.of-hero.student .of-progress-ring small{
  display:block!important;
  align-self:start!important;
  max-width:76px!important;
  margin-top:5px!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1.12!important;
  font-weight:700!important;
}
.of-hero.student .of-progress-ring{
  grid-template-rows:1fr 1fr!important;
  padding:26px 15px 23px!important;
}

@media (max-width:1024px){
  .of-app #of-mobile-menu-toggle.of-menu-toggle,
  .of-app.of-device-mobile #of-mobile-menu-toggle.of-menu-toggle{
    flex-direction:column!important;
    justify-content:center!important;
    align-items:center!important;
    gap:2px!important;
    width:58px!important;
    min-width:58px!important;
    height:50px!important;
    padding:2px 0!important;
  }
  .of-app #of-mobile-menu-toggle .of-header-dumbbell,
  .of-app.of-device-mobile #of-mobile-menu-toggle .of-header-dumbbell{
    width:23px!important;
    height:13px!important;
    flex:0 0 13px!important;
  }
  .of-app #of-mobile-menu-toggle span,
  .of-app.of-device-mobile #of-mobile-menu-toggle span{
    display:block!important;
    margin:0!important;
    font-size:14px!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:.055em!important;
  }
}

@media (max-width:560px){
  .of-hero.student .of-progress-ring{
    width:96px!important;
    height:96px!important;
    flex-basis:96px!important;
    padding:19px 10px 17px!important;
  }
  .of-hero.student .of-progress-ring:before{inset:7px!important}
  .of-hero.student .of-progress-ring strong{font-size:28px!important}
  .of-hero.student .of-progress-ring small{font-size:10px!important;max-width:62px!important;margin-top:3px!important}
}

@media (max-width:380px){
  .of-app #of-mobile-menu-toggle.of-menu-toggle,
  .of-app.of-device-mobile #of-mobile-menu-toggle.of-menu-toggle{
    width:52px!important;
    min-width:52px!important;
    height:46px!important;
  }
  .of-app #of-mobile-menu-toggle .of-header-dumbbell{width:21px!important;height:12px!important}
  .of-app #of-mobile-menu-toggle span{font-size:13px!important}
}

/* Orbis Fit 1.3.4 — navegação estável, cabeçalho limpo, fotos e rodapé */
.of-app .of-sidebar-brand,
.of-app .of-sidebar-brand:hover,
.of-app .of-sidebar-brand:focus,
.of-app .of-sidebar-brand:focus-visible,
.of-app .of-menu-close,
.of-app .of-menu-close:hover,
.of-app .of-menu-close:focus,
.of-app .of-menu-close:focus-visible,
.of-app .of-topbar-logo,
.of-app .of-topbar-logo:hover,
.of-app .of-topbar-logo:focus,
.of-app .of-topbar-logo:focus-visible,
.of-app .of-instagram-link,
.of-app .of-instagram-link:hover,
.of-app .of-instagram-link:focus,
.of-app .of-instagram-link:focus-visible{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  margin:0!important;
  transform:none!important;
  background:transparent!important;
  text-decoration:none!important;
}
.of-app .of-sidebar-brand img,
.of-app .of-topbar-logo img{border:0!important;outline:0!important;box-shadow:none!important;margin:0!important}
.of-app .of-menu-close{color:#fff!important;background:transparent!important}

.of-app .of-logout,
.of-app .of-logout:link,
.of-app .of-logout:visited,
.of-app .of-logout:hover,
.of-app .of-logout:active,
.of-app .of-logout:focus,
.of-app .of-logout:focus-visible{
  position:relative!important;
  inset:auto!important;
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-height:42px!important;
  margin:8px 0 0!important;
  padding:11px 12px!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  color:#fff!important;
  opacity:.78!important;
  transform:none!important;
  translate:none!important;
  transition:none!important;
  text-decoration:none!important;
  cursor:pointer!important;
  z-index:20!important;
}
.of-app .of-logout:hover,.of-app .of-logout:focus{opacity:1!important}

.of-manager-photo-item figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px}
.of-photo-actions{display:flex;align-items:center;gap:9px}
.of-photo-action{appearance:none;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;margin:0!important;font:inherit;font-size:12px;font-weight:800;text-decoration:none!important;cursor:pointer;transform:none!important}
.of-photo-download{color:var(--brown)!important}
.of-delete-photo{color:#23294b!important}
.of-photo-action:hover,.of-photo-action:focus{transform:none!important;text-decoration:none!important}

.of-app-footer{margin-top:auto;background:var(--brown);color:rgba(255,255,255,.72);text-align:center;padding:13px 18px;font-size:11px;line-height:1.4;letter-spacing:.01em}
.of-app-footer a,.of-app-footer a:visited,.of-app-footer a:hover,.of-app-footer a:focus{color:#fff!important;font-style:italic;text-decoration:none!important;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;transform:none!important}
.of-main{display:flex!important;flex-direction:column!important;min-height:100vh!important}
.of-content{flex:1 0 auto}

@media (max-width:900px){
  .of-mobile-header-actions{grid-template-columns:72px minmax(0,1fr) 72px!important;align-items:center!important}
  .of-app #of-mobile-menu-toggle.of-menu-toggle,
  .of-app.of-device-mobile #of-mobile-menu-toggle.of-menu-toggle{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    justify-self:center!important;
    gap:4px!important;
    width:56px!important;
    min-width:56px!important;
    height:50px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    background:transparent!important;
    transform:none!important;
  }
  .of-app #of-mobile-menu-toggle .of-header-dumbbell{display:block!important;width:23px!important;height:13px!important;flex:0 0 13px!important;margin:0 auto!important}
  .of-app #of-mobile-menu-toggle span{display:block!important;margin:0!important;font-size:14px!important;line-height:1!important;text-align:center!important}
  .of-app-footer{padding-bottom:calc(13px + env(safe-area-inset-bottom,0px))}
}

/* v1.3.5 — perfil real e visão geral do aluno */
.of-avatar{overflow:hidden}
.of-avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.of-student-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%}
.of-student-stats .of-card.stat{min-height:104px}
@media(max-width:560px){.of-student-stats{grid-template-columns:1fr 1fr!important}.of-student-stats .of-card.stat{min-height:96px}}


/* Orbis Fit 1.3.6 — cards mobile, semântica das medidas e alinhamento do menu */
.of-current-measure em.good{color:#23294b!important}
.of-current-measure em.bad{color:#f8a232!important}
.of-current-measure em.same{color:var(--muted)!important}

@media (max-width:560px){
  .of-student-stats{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  .of-student-stats .of-card.stat{
    min-height:116px!important;
    padding:16px 12px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    text-align:center!important;
  }
  .of-student-stats .of-card.stat span{
    display:block!important;
    margin:0!important;
    font-size:12px!important;
    line-height:1.15!important;
    font-weight:700!important;
  }
  .of-student-stats .of-card.stat strong{
    display:block!important;
    margin:0!important;
    font-size:28px!important;
    line-height:1!important;
    color:var(--brown)!important;
  }
  .of-student-stats .of-card.stat small{
    display:block!important;
    margin:0!important;
    font-size:11px!important;
    line-height:1.25!important;
    text-align:center!important;
  }
}

@media (max-width:900px){
  .of-mobile-header-actions{
    align-items:center!important;
  }
  .of-app #of-mobile-menu-toggle.of-menu-toggle,
  .of-app.of-device-mobile #of-mobile-menu-toggle.of-menu-toggle{
    display:grid!important;
    grid-template-rows:auto auto!important;
    place-items:center!important;
    align-self:center!important;
    justify-self:center!important;
    gap:2px!important;
    width:58px!important;
    min-width:58px!important;
    height:48px!important;
    padding:0!important;
    margin:0!important;
    line-height:1!important;
  }
  .of-app #of-mobile-menu-toggle .of-header-dumbbell,
  .of-app.of-device-mobile #of-mobile-menu-toggle .of-header-dumbbell{
    display:block!important;
    width:22px!important;
    height:12px!important;
    margin:0 auto!important;
    flex:none!important;
  }
  .of-app #of-mobile-menu-toggle span,
  .of-app.of-device-mobile #of-mobile-menu-toggle span{
    display:block!important;
    margin:0!important;
    font-size:14px!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:.06em!important;
    text-align:center!important;
  }
  .of-topbar-logo,
  .of-instagram-link{
    align-self:center!important;
  }
}

/* Orbis Fit 1.3.7 — cabeçalho marrom fixo durante a navegação */
@media (max-width:1024px){
  .of-app .of-topbar,
  .of-app.of-device-mobile .of-topbar{
    position:fixed!important;
    top:0!important;
    right:0!important;
    left:0!important;
    width:100%!important;
    z-index:1100!important;
    min-height:calc(62px + env(safe-area-inset-top,0px))!important;
    padding-top:calc(8px + env(safe-area-inset-top,0px))!important;
    background:var(--brown)!important;
    box-shadow:0 5px 18px rgba(35,41,75,.16)!important;
    transform:translateZ(0)!important;
    -webkit-transform:translateZ(0)!important;
  }
  .of-app .of-main,
  .of-app.of-device-mobile .of-main{
    padding-top:calc(62px + env(safe-area-inset-top,0px))!important;
  }
  .of-app .of-mobile-header-actions,
  .of-app.of-device-mobile .of-mobile-header-actions{
    min-height:46px!important;
  }
}


/* Orbis Fit 1.3.8 — histórico da gestora e galeria moderna */
.of-manager-measure-history-card{margin-top:18px}
.of-history-student-select{display:grid;gap:7px;max-width:560px;margin:18px 0 16px;font-size:12px;font-weight:800;color:var(--brown)}
.of-manager-measure-history{min-height:90px}
.of-history-empty,.of-history-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:90px;padding:20px;border:1px solid rgba(35,41,75,.08);border-radius:16px;background:rgba(248,162,50,.06);color:var(--muted);text-align:center}
.of-history-empty.error{color:#23294b}
.of-history-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;margin-bottom:12px;border-radius:14px;background:rgba(248,162,50,.10)}
.of-history-summary strong{color:var(--brown);font-size:16px}.of-history-summary span{color:var(--muted);font-size:12px}
.of-history-records{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.of-history-record{padding:17px;border:1px solid rgba(35,41,75,.08);border-radius:18px;background:#fff}
.of-history-record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.of-history-record-head span{display:block;color:var(--orange);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.of-history-record-head strong{display:block;margin-top:3px;color:var(--brown);font-size:15px}.of-history-record-head time{padding:5px 8px;border-radius:999px;background:rgba(248,162,50,.12);color:var(--orange);font-size:10px;font-weight:800}
.of-history-measures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.of-history-measures div{padding:10px;border-radius:12px;background:rgba(248,162,50,.06)}.of-history-measures span{display:block;color:var(--muted);font-size:10px}.of-history-measures strong{display:block;margin-top:3px;color:var(--brown);font-size:14px}.of-history-note{margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.5}

.of-photo-accordion{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;align-items:start!important}
.of-photo-group{margin:0!important;border:1px solid rgba(35,41,75,.08)!important;border-radius:18px!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important;transform:none!important;transition:none!important}
.of-photo-group:hover,.of-photo-group:focus-within{margin:0!important;box-shadow:none!important;transform:none!important}
.of-photo-group-toggle,.of-photo-group-toggle:hover,.of-photo-group-toggle:focus,.of-photo-group-toggle:focus-visible{width:100%!important;min-height:84px!important;margin:0!important;padding:17px!important;border:0!important;outline:0!important;box-shadow:none!important;background:rgba(248,162,50,.06)!important;transform:none!important;transition:none!important;text-align:left!important}
.of-photo-group-toggle>div{display:grid;gap:4px}.of-photo-group-toggle strong{color:var(--brown);font-size:14px}.of-photo-group-toggle small{color:var(--muted);font-size:11px}.of-photo-group-toggle>span{color:var(--orange);font-size:18px}
.of-photo-group-panel{padding:0 12px 12px!important}.of-photo-group.open .of-photo-group-panel{padding-top:12px!important}
.of-manager-photo-carousel{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;overflow:visible!important;padding:0!important;scroll-snap-type:none!important}
.of-manager-photo-item{min-width:0!important;width:100%!important;margin:0!important;border:0!important;border-radius:14px!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important;transform:none!important}
.of-manager-photo-item:hover{transform:none!important;box-shadow:none!important;margin:0!important}
.of-manager-photo-item img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.of-manager-photo-item figcaption{padding:10px 2px 2px!important}.of-photo-actions{gap:12px!important}.of-photo-action{min-height:30px;padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;transform:none!important;transition:none!important}
.of-photo-action:hover,.of-photo-action:focus,.of-photo-action:active{margin:0!important;border:0!important;box-shadow:none!important;transform:none!important;background:transparent!important}
.of-empty-gallery{margin:0;padding:14px 4px;color:var(--muted);font-size:12px}

@media(max-width:1100px){.of-photo-accordion{grid-template-columns:repeat(2,minmax(0,1fr))!important}.of-history-records{grid-template-columns:1fr}}
@media(max-width:600px){.of-photo-accordion{grid-template-columns:1fr!important;gap:12px!important}.of-photo-group-toggle{min-height:76px!important}.of-history-summary{align-items:flex-start;flex-direction:column}.of-history-measures{grid-template-columns:1fr 1fr}.of-manager-measure-history-card{padding:16px!important}}

/* Orbis Fit 1.4.0 — dashboard financeiro e padronização Orbis */
:root{}
.of-app a,.of-app button,.of-app [role="button"],.of-login-wrap a,.of-login-wrap button{transition:background-color .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease!important}
.of-app a:hover,.of-app a:focus,.of-app button:hover,.of-app button:focus,.of-login-wrap a:hover,.of-login-wrap a:focus,.of-login-wrap button:hover,.of-login-wrap button:focus{outline-color:var(--orange)!important}
.of-btn,.of-btn:hover,.of-btn:focus,.of-btn:active{margin:0!important;transform:none!important;box-shadow:none!important}
.of-btn.primary,.of-btn.soft{background:var(--orange)!important;color:#fff!important;border:1px solid var(--orange)!important}
.of-btn.primary:hover,.of-btn.primary:focus,.of-btn.soft:hover,.of-btn.soft:focus{background:#23294b!important;color:#fff!important;border-color:#23294b!important}
.of-btn.ghost,.of-btn.outline-orange{background:#fff!important;color:var(--orange)!important;border:1px solid var(--orange)!important}
.of-btn.ghost:hover,.of-btn.ghost:focus,.of-btn.outline-orange:hover,.of-btn.outline-orange:focus{background:var(--orange)!important;color:#fff!important;border-color:var(--orange)!important}
.of-link,.of-link:hover,.of-link:focus{color:var(--orange)!important;background:transparent!important;border:0!important;box-shadow:none!important;transform:none!important}
.of-logo-link:hover,.of-logo-link:focus,.of-topbar-logo:hover,.of-topbar-logo:focus,.of-instagram-link:hover,.of-instagram-link:focus,.of-menu-close:hover,.of-menu-close:focus{outline:0!important;border:0!important;box-shadow:none!important;background:transparent!important;transform:none!important}
.of-nav button:hover,.of-nav button.active{background:rgba(248,162,50,.23)!important;color:#fff!important}
.of-form input:focus,.of-form select:focus,.of-form textarea:focus,.of-search input:focus{outline:2px solid rgba(248,162,50,.24)!important;border-color:var(--orange)!important}

.of-finance-heading{align-items:flex-end}
.of-finance-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.of-finance-setup{margin-bottom:18px!important}
.of-finance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 16px}
.of-finance-kpi{display:grid;gap:6px;min-height:132px;padding:20px;border:1px solid rgba(35,41,75,.08);border-radius:20px;background:#fff}
.of-finance-kpi span{color:var(--muted);font-size:12px;font-weight:700}
.of-finance-kpi strong{color:var(--brown);font-size:clamp(23px,2.4vw,32px);line-height:1.05;overflow-wrap:anywhere}
.of-finance-kpi small{color:var(--muted);font-size:11px;line-height:1.4}
.of-finance-kpi.balance{background:var(--orange);border-color:var(--orange)}
.of-finance-kpi.balance span,.of-finance-kpi.balance strong,.of-finance-kpi.balance small{color:#fff}
.of-finance-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:16px;margin-bottom:16px}
.of-finance-chart-card,.of-finance-summary-card{min-width:0}
.of-finance-legend{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:10px;font-weight:700;white-space:nowrap}
.of-finance-legend i{display:inline-block;width:9px;height:9px;border-radius:3px;background:var(--orange)}
.of-finance-legend i:nth-of-type(2){margin-left:7px;background:var(--brown)}
.of-finance-chart{height:260px;display:grid;grid-template-columns:repeat(6,minmax(42px,1fr));gap:14px;align-items:end;padding:22px 4px 2px;border-bottom:1px solid var(--line)}
.of-finance-chart-column{height:100%;display:grid;grid-template-rows:1fr auto;gap:8px;min-width:0;text-align:center}
.of-finance-bars{height:100%;display:flex;align-items:flex-end;justify-content:center;gap:5px}
.of-finance-bars span{display:block;width:min(18px,36%);min-height:4px;border-radius:7px 7px 2px 2px;background:var(--orange)}
.of-finance-bars span.expense{background:var(--brown)}
.of-finance-chart-column small{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}
.of-finance-composition{display:grid;gap:22px;place-items:center;margin-top:20px}
.of-finance-donut{--entry:50%;width:150px;height:150px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--orange) 0 var(--entry),var(--brown) var(--entry) 100%);position:relative}
.of-finance-donut:before{content:"";position:absolute;inset:20px;border-radius:50%;background:#fff}
.of-finance-donut>div{position:relative;z-index:1;display:grid;text-align:center}
.of-finance-donut strong{font-size:28px;color:var(--brown)}
.of-finance-donut small{font-size:10px;color:var(--muted);text-transform:uppercase;font-weight:800}
.of-finance-composition-copy{display:grid;width:100%;gap:10px}
.of-finance-composition-copy p{display:flex;justify-content:space-between;gap:12px;margin:0;padding-bottom:9px;border-bottom:1px solid var(--line)}
.of-finance-composition-copy span{color:var(--muted);font-size:12px}
.of-finance-composition-copy strong{color:var(--brown);font-size:13px}
.of-cashflow-card{margin-bottom:16px}
.of-cashflow-head{align-items:flex-end}
.of-cashflow-head p{margin:3px 0 0;color:var(--muted);font-size:12px}
.of-cashflow-filters{display:flex;gap:6px;padding:4px;border-radius:13px;background:rgba(248,162,50,.10)}
.of-cashflow-filters button{min-height:34px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--orange);font-weight:800;cursor:pointer;margin:0!important;box-shadow:none!important;transform:none!important}
.of-cashflow-filters button:hover,.of-cashflow-filters button:focus,.of-cashflow-filters button.active{background:var(--orange)!important;color:#fff!important}
.of-cashflow-list{display:grid;margin-top:12px}
.of-cashflow-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px 2px;border-bottom:1px solid var(--line)}
.of-cashflow-row[hidden]{display:none!important}
.of-cashflow-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:21px;font-weight:900;background:rgba(248,162,50,.14);color:var(--orange)}
.of-cashflow-icon.expense{background:rgba(35,41,75,.08);color:var(--brown)}
.of-cashflow-main{display:grid;gap:3px;min-width:0}
.of-cashflow-main strong{color:var(--brown);font-size:13px;overflow-wrap:anywhere}
.of-cashflow-main small{color:var(--muted);font-size:10px;line-height:1.4}
.of-cashflow-amount{font-size:13px;white-space:nowrap;color:var(--orange)}
.of-cashflow-amount.expense{color:var(--brown)}
.of-cashflow-empty{padding:28px 10px;text-align:center;color:var(--muted)}

@media(max-width:1100px){
  .of-finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .of-finance-dashboard-grid{grid-template-columns:1fr}
  .of-finance-composition{grid-template-columns:160px 1fr}
}
@media(max-width:700px){
  .of-finance-heading,.of-cashflow-head{align-items:stretch;flex-direction:column}
  .of-finance-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .of-finance-actions .of-btn{width:100%}
  .of-finance-kpis{grid-template-columns:1fr 1fr;gap:10px}
  .of-finance-kpi{min-height:122px;padding:16px}
  .of-finance-chart{height:220px;gap:7px;overflow-x:auto}
  .of-finance-legend{white-space:normal}
  .of-finance-composition{grid-template-columns:1fr}
  .of-cashflow-filters{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}
  .of-cashflow-filters button{padding:0 5px}
  .of-cashflow-row{grid-template-columns:38px minmax(0,1fr);gap:10px}
  .of-cashflow-amount{grid-column:2;justify-self:start}
}
@media(max-width:420px){
  .of-finance-kpis{grid-template-columns:1fr}
  .of-finance-actions{grid-template-columns:1fr}
}


/* Orbis Fit 1.4.1 — financeiro por período e ações instantâneas */
.of-finance-period-card{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(420px,1.5fr);gap:18px;align-items:center;margin-bottom:16px}
.of-finance-period-card h3{margin:4px 0 5px}.of-finance-period-card p{margin:0;color:var(--muted)}
.of-period-presets{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.of-period-presets button,.of-cashflow-filters button{border:1px solid var(--orange)!important;background:#fff!important;color:var(--orange)!important;border-radius:999px;padding:9px 13px;font-weight:800;cursor:pointer;box-shadow:none!important;transform:none!important;outline:none!important}
.of-period-presets button:hover,.of-period-presets button:focus,.of-period-presets button.active,.of-cashflow-filters button:hover,.of-cashflow-filters button:focus,.of-cashflow-filters button.active{background:var(--orange)!important;color:#fff!important;border-color:var(--orange)!important;box-shadow:none!important;transform:none!important}
.of-custom-period{grid-column:1/-1;display:flex;align-items:end;gap:10px;justify-content:flex-end}.of-custom-period[hidden]{display:none!important}.of-custom-period label{display:grid;gap:5px;color:var(--brown);font-size:12px;font-weight:800}.of-custom-period input{min-width:170px}
.of-period-label{grid-column:1/-1;text-align:right!important;color:var(--orange)!important;font-weight:800}
.of-finance-entry-grid{align-items:start;margin-bottom:18px!important}.of-finance-entry-grid .of-card{height:100%}.of-finance-entry-grid textarea{resize:vertical}
.of-modal-description{color:var(--muted);margin-top:-6px}
.of-section[data-section="students"] .of-btn,.of-section[data-section="students"] button{box-shadow:none!important;transform:none!important}
.of-section[data-section="students"] .of-btn:hover,.of-section[data-section="students"] .of-btn:focus{border-color:var(--orange)!important;background:var(--orange)!important;color:#fff!important;box-shadow:none!important;transform:none!important}
.of-section[data-section="students"] .of-btn.ghost:hover,.of-section[data-section="students"] .of-btn.ghost:focus{background:#fff!important;color:var(--orange)!important;border-color:var(--orange)!important}
@media(max-width:900px){.of-finance-period-card{grid-template-columns:1fr}.of-period-presets{justify-content:flex-start}.of-period-label{text-align:left!important}.of-custom-period{justify-content:flex-start;flex-wrap:wrap}}
@media(max-width:620px){.of-period-presets{display:grid;grid-template-columns:1fr 1fr}.of-period-presets button{width:100%;padding:10px 8px}.of-custom-period{display:grid;grid-template-columns:1fr 1fr;width:100%}.of-custom-period label,.of-custom-period input{min-width:0;width:100%}.of-custom-period .of-btn{grid-column:1/-1;width:100%}.of-finance-entry-grid{grid-template-columns:1fr!important}}

/* Orbis Fit 1.4.3 — identidade marrom da página Alunos (painel da gestora) */
.of-section[data-section="students"]{
  --students-brown:#23294b;
  --students-brown-deep:#23294b;
  --students-orange:#f8a232;
  --students-white:#ffffff;
  --students-line:rgba(35,41,75,.14);
}
.of-section[data-section="students"] .of-section-head .of-kicker,
.of-section[data-section="students"] .of-section-head h2,
.of-section[data-section="students"] .of-student-item:not(.open) .of-accordion-toggle strong,
.of-section[data-section="students"] .of-student-item:not(.open) .of-accordion-toggle b,
.of-section[data-section="students"] .of-student-item:not(.open) .of-student-summary > span:last-child{
  color:var(--students-brown)!important;
}
.of-section[data-section="students"] .of-search input{
  border:1px solid var(--students-line)!important;
  color:var(--students-brown)!important;
  caret-color:var(--students-brown)!important;
  background:#fff!important;
  box-shadow:none!important;
}
.of-section[data-section="students"] .of-search input:focus{
  border-color:var(--students-brown)!important;
  outline:2px solid rgba(35,41,75,.12)!important;
  outline-offset:0!important;
}
.of-section[data-section="students"] .of-student-item{
  border-color:var(--students-line)!important;
  box-shadow:none!important;
}
.of-section[data-section="students"] .of-accordion-toggle{
  background:#fff!important;
  color:var(--students-brown)!important;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
}
.of-section[data-section="students"] .of-accordion-toggle:hover,
.of-section[data-section="students"] .of-accordion-toggle:focus{
  background:#fff!important;
  color:var(--students-brown)!important;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
}
.of-section[data-section="students"] .of-student-item.open .of-accordion-toggle{
  background:linear-gradient(135deg,var(--students-brown),#23294b)!important;
  color:#fff!important;
}
.of-section[data-section="students"] .of-student-item.open .of-accordion-toggle strong,
.of-section[data-section="students"] .of-student-item.open .of-accordion-toggle small,
.of-section[data-section="students"] .of-student-item.open .of-accordion-toggle b,
.of-section[data-section="students"] .of-student-item.open .of-student-summary > span:last-child{
  color:#fff!important;
}
.of-section[data-section="students"] .of-student-item.open .of-accordion-toggle:hover,
.of-section[data-section="students"] .of-student-item.open .of-accordion-toggle:focus{
  background:linear-gradient(135deg,var(--students-brown),#23294b)!important;
  color:#fff!important;
}
.of-section[data-section="students"] .of-mini-grid>div{
  background:rgba(35,41,75,.05)!important;
  border:1px solid rgba(35,41,75,.10)6e0!important;
}
.of-section[data-section="students"] .of-mini-grid span{color:#23294b!important}
.of-section[data-section="students"] .of-mini-grid strong{color:var(--students-brown)!important}
.of-section[data-section="students"] .of-actions .of-btn{
  margin:0!important;
  box-shadow:none!important;
  transform:none!important;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease!important;
}
.of-section[data-section="students"] .of-actions .of-btn.soft{
  background:var(--students-brown)!important;
  border-color:var(--students-brown)!important;
  color:#fff!important;
}
.of-section[data-section="students"] .of-actions .of-btn.soft:hover,
.of-section[data-section="students"] .of-actions .of-btn.soft:focus{
  background:var(--students-orange)!important;
  border-color:var(--students-orange)!important;
  color:#fff!important;
}
.of-section[data-section="students"] .of-actions .of-btn.ghost{
  background:#fff!important;
  border-color:var(--students-brown)!important;
  color:var(--students-brown)!important;
}
.of-section[data-section="students"] .of-actions .of-btn.ghost:hover,
.of-section[data-section="students"] .of-actions .of-btn.ghost:focus{
  background:var(--students-brown)!important;
  border-color:var(--students-brown)!important;
  color:#fff!important;
}
.of-section[data-section="students"] .of-section-head>.of-btn,
.of-section[data-section="students"] .of-section-head>.of-btn.primary{
  background:var(--students-orange)!important;
  border-color:var(--students-orange)!important;
  color:#fff!important;
  box-shadow:none!important;
  transform:none!important;
}
.of-section[data-section="students"] .of-section-head>.of-btn:hover,
.of-section[data-section="students"] .of-section-head>.of-btn:focus{
  background:var(--students-brown)!important;
  border-color:var(--students-brown)!important;
  color:#fff!important;
}
.of-section[data-section="students"] .of-badge.ok{background:rgba(35,41,75,.10)!important;color:#23294b!important}
.of-section[data-section="students"] *:focus-visible{
  outline:2px solid var(--students-orange)!important;
  outline-offset:2px!important;
}


/* Orbis Fit 1.4.4 — linha do tempo financeira e enquadramento superior de perfis */
.of-finance-dashboard-grid{align-items:stretch}
.of-finance-chart-head{align-items:flex-start;flex-wrap:wrap}
.of-finance-chart-head p,.of-expense-category-card p{margin:3px 0 0;color:var(--muted)}
.of-line-chart-filters{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.of-line-chart-filters button{border:1px solid rgba(35,41,75,.16);background:#fff;color:var(--brown);border-radius:999px;padding:8px 11px;font-weight:800;cursor:pointer}
.of-line-chart-filters button:hover,.of-line-chart-filters button.active{background:var(--orange);border-color:var(--orange);color:#fff}
.of-line-chart-legend{display:flex;gap:18px;align-items:center;margin:8px 0 4px;color:var(--muted);font-size:12px;font-weight:800}
.of-line-chart-legend span{display:inline-flex;gap:7px;align-items:center}.of-line-chart-legend i{width:22px;height:3px;border-radius:999px;display:block}
.of-line-chart-legend .entry i{background:var(--orange)}.of-line-chart-legend .expense i{background:var(--brown)}
.of-finance-line-chart{width:100%;min-height:360px;overflow-x:auto;padding-top:5px}
.of-finance-line-chart svg{display:block;width:100%;min-width:680px;height:auto;overflow:visible}
.of-finance-line-chart .grid line{stroke:rgba(35,41,75,.11);stroke-width:1}.of-finance-line-chart text{fill:var(--muted);font-size:12px;font-family:inherit}
.of-finance-line-chart .series path{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.of-finance-line-chart .series circle{stroke:#fff;stroke-width:3;cursor:help}
.of-finance-line-chart .series.entry path,.of-finance-line-chart .series.entry circle{stroke:var(--orange);fill:var(--orange)}
.of-finance-line-chart .series.expense path,.of-finance-line-chart .series.expense circle{stroke:var(--brown);fill:var(--brown)}
.of-expense-category-chart{display:grid;gap:16px;margin-top:18px}.of-expense-category-row{display:grid;gap:7px}.of-expense-category-label{display:flex;align-items:center;justify-content:space-between;gap:12px}.of-expense-category-label span{font-weight:800;color:var(--brown)}.of-expense-category-label strong{font-size:14px;color:var(--brown)}
.of-expense-category-track{height:12px;border-radius:999px;background:rgba(35,41,75,.10)7e1;overflow:hidden}.of-expense-category-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--orange),#f8a232)}.of-expense-category-row small{min-height:14px;color:var(--orange);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.of-avatar img,.of-student-photo-wrap img{object-position:center top!important}
@media(max-width:767px){.of-finance-chart-head{display:grid}.of-line-chart-filters{justify-content:flex-start}.of-line-chart-filters button{flex:1 1 auto}.of-finance-line-chart{min-height:300px}.of-finance-line-chart svg{min-width:620px}.of-finance-dashboard-grid{grid-template-columns:1fr!important}}


/* Orbis Fit 1.4.5 — gráfico de linhas diário e ajustes visuais nos telefones */
.of-finance-line-chart .axes .axis-line{stroke:rgba(35,41,75,.32);stroke-width:1.2}
.of-finance-line-chart .axis-labels .daily-label{font-size:10px;fill:var(--brown);font-weight:700}
.of-finance-line-chart .axis-labels .period-label{font-size:11px;fill:var(--muted);font-weight:700}
.of-finance-line-chart .series path{vector-effect:non-scaling-stroke}
.of-finance-line-chart .series.entry path{stroke:var(--orange)!important}
.of-finance-line-chart .series.expense path{stroke:var(--brown)!important}
.of-section[data-section="students"] .of-student-phone-inline{color:var(--students-orange)!important;font-weight:700}
.of-section[data-section="students"] .of-mini-grid>div:first-child strong{color:var(--students-orange)!important}
@media(max-width:767px){
  .of-finance-line-chart svg{min-width:920px}
  .of-section[data-section="students"] .of-student-phone-inline{display:inline;color:var(--students-orange)!important}
}

/* Orbis Fit 1.4.6 — gráfico financeiro limpo, sem preenchimento e com detalhamento interativo */
.of-finance-chart-stage{position:relative;width:100%;background:#fff}
.of-finance-line-chart svg{background:#fff}
.of-finance-line-chart .series path{fill:none!important;stroke-width:2px!important;stroke-linecap:round;stroke-linejoin:round}
.of-finance-line-chart .series.entry path{stroke:var(--orange)!important}
.of-finance-line-chart .series.expense path{stroke:var(--brown)!important}
.of-finance-line-chart .series circle{stroke:#fff!important;stroke-width:2px!important;cursor:pointer;transition:none!important}
.of-finance-line-chart .series.entry circle{fill:var(--orange)!important}
.of-finance-line-chart .series.expense circle{fill:var(--brown)!important}
.of-finance-line-chart .series circle:hover,.of-finance-line-chart .series circle:focus{r:6;outline:none}
.of-finance-line-chart .axes .x-axis{stroke:var(--brown);stroke-width:1.4}
.of-finance-line-chart .axis-labels text{dominant-baseline:middle}
.of-finance-chart-tooltip{position:absolute;z-index:12;width:min(330px,calc(100% - 16px));padding:14px;border:1px solid rgba(35,41,75,.15);border-radius:14px;background:#fff;color:var(--brown);box-shadow:0 12px 30px rgba(35,41,75,.16);pointer-events:auto}
.of-finance-chart-tooltip[hidden]{display:none}
.of-tooltip-head{display:grid;gap:3px;padding-bottom:10px;border-bottom:1px solid rgba(35,41,75,.1)}
.of-tooltip-head strong{font-size:14px}.of-tooltip-head span{font-size:11px;color:var(--muted)}
.of-finance-chart-tooltip ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px;max-height:190px;overflow:auto}
.of-finance-chart-tooltip li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid rgba(35,41,75,.07)}
.of-finance-chart-tooltip li:last-child{border-bottom:0}.of-finance-chart-tooltip li span{display:grid;gap:2px}.of-finance-chart-tooltip li strong{font-size:12px}.of-finance-chart-tooltip li small{font-size:10px;color:var(--muted)}
.of-finance-chart-tooltip li b{white-space:nowrap;font-size:12px}.of-finance-chart-tooltip li.entry b{color:var(--orange)}.of-finance-chart-tooltip li.expense b{color:var(--brown)}
@media(max-width:767px){.of-finance-chart-tooltip{position:sticky;left:8px!important;top:8px!important;margin:8px;width:calc(100% - 16px)}}


/* Orbis Fit 1.4.7 — tooltip financeiro livre dos limites do gráfico */
.of-finance-chart-card,.of-finance-dashboard-grid,.of-finance-chart-stage{overflow:visible!important}
.of-finance-chart-tooltip.of-floating-tooltip{position:fixed!important;z-index:10000!important;max-width:min(340px,calc(100vw - 16px));width:330px;margin:0!important;pointer-events:auto!important}
.of-finance-line-chart .series circle{overflow:visible;paint-order:stroke fill;stroke-width:2.5px!important}
.of-finance-line-chart .series.expense circle{r:5.5}
@media(max-width:767px){
  .of-finance-chart-tooltip.of-floating-tooltip{position:fixed!important;left:auto;top:auto;width:calc(100vw - 20px);max-width:360px;margin:0!important}
}

/* Orbis Fit 1.4.8 — ajustes solicitados em alunos, financeiro, avatar e cabeçalho. */
.of-section[data-section="students"] .of-student-phone-inline{display:none!important}
.of-section[data-section="students"] .of-mini-grid>div:first-child strong{color:var(--brown)!important}
.of-section[data-section="students"] .of-btn.danger-outline{background:#fff!important;color:var(--brown)!important;border:1px solid var(--brown)!important;box-shadow:none!important;transform:none!important}
.of-section[data-section="students"] .of-btn.danger-outline:hover,.of-section[data-section="students"] .of-btn.danger-outline:focus{background:var(--brown)!important;color:#fff!important;border-color:var(--brown)!important;box-shadow:none!important;transform:none!important}
.of-avatar img,.of-student-photo-wrap img{object-position:50% 25%!important}
.of-finance-entry-grid{margin-bottom:16px}
.of-finance-period-card{margin-bottom:16px}

.of-class-create-card{margin-bottom:18px}.of-class-card-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.of-class-card-tools .of-btn{padding:8px 10px;font-size:11px}

/* Waléria Personal App 1.5.1 — edição de acesso do aluno */
.of-profile-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0 16px;padding:5px;background:rgba(35,41,75,.06);border-radius:14px}.of-profile-tabs button{border:0;background:transparent;color:var(--muted);padding:11px 10px;border-radius:10px;font:inherit;font-size:13px;font-weight:850;cursor:pointer}.of-profile-tabs button.active{background:#fff;color:var(--brown);box-shadow:0 4px 14px rgba(35,41,75,.10)}.of-student-tab-panel{display:none;gap:15px}.of-student-tab-panel.active{display:grid}.of-student-tab-panel label small{font-weight:500;color:var(--muted);line-height:1.4}.of-access-warning{padding:12px 14px;border:1px solid rgba(248,162,50,.35);background:rgba(248,162,50,.10);border-radius:13px;color:#23294b;font-size:12px;line-height:1.45}.of-modal-description{color:var(--muted);margin-top:-6px}.of-edit-student input[name="username"]{text-transform:lowercase}
@media(max-width:480px){.of-profile-tabs{grid-template-columns:1fr}.of-profile-tabs button{padding:10px}}


/* Waléria Personal App 1.5.2 — contraste do painel do aluno */
.of-hero.student,
.of-hero.student h2,
.of-hero.student p,
.of-hero.student .of-chip,
.of-hero.student strong,
.of-hero.student small{color:#fff!important}
.of-hero.student p{color:rgba(255,255,255,.88)!important}
.of-hero.student .of-chip{background:rgba(255,255,255,.16)!important}

/* Informação segura sobre a senha atual */
.of-current-password-info{display:grid;gap:5px;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:#ffffff}
.of-current-password-info strong{font-size:13px;color:var(--brown)}
.of-current-password-info span{font-size:12px;line-height:1.45;color:var(--muted)}

/* Restauração da galeria da gestora conforme a base 1.4.8 */
.of-photo-upload-card{margin-bottom:18px!important}
.of-gallery-heading{margin-top:24px!important}
.of-photo-accordion{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;align-items:start!important}
.of-photo-group{margin:0!important;border:1px solid rgba(35,41,75,.08)!important;border-radius:18px!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important;transform:none!important;transition:none!important}
.of-photo-group-toggle{width:100%!important;min-height:84px!important;margin:0!important;padding:17px!important;border:0!important;background:rgba(248,162,50,.06)!important;text-align:left!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
.of-photo-group-toggle>div{display:grid!important;gap:4px!important}.of-photo-group-toggle strong{color:var(--brown)!important;font-size:14px!important}.of-photo-group-toggle small{color:var(--muted)!important;font-size:11px!important}.of-photo-group-toggle>span{color:var(--orange)!important;font-size:18px!important;transition:transform .2s ease!important}
.of-photo-group.open .of-photo-group-toggle>span{transform:rotate(180deg)!important}
.of-photo-group-panel{display:none!important;padding:0 14px 14px!important}.of-photo-group.open .of-photo-group-panel{display:block!important}
.of-manager-photo-carousel{display:flex!important;gap:12px!important;overflow-x:auto!important;overscroll-behavior-inline:contain!important;scroll-snap-type:x proximity!important;padding:14px 2px 5px!important;scrollbar-width:thin!important}
.of-manager-photo-item{flex:0 0 min(285px,82vw)!important;margin:0!important;border:1px solid var(--line)!important;border-radius:16px!important;overflow:hidden!important;background:#fff!important;scroll-snap-align:start!important}
.of-manager-photo-item img{display:block!important;width:100%!important;aspect-ratio:4/3!important;object-fit:cover!important}
.of-manager-photo-item figcaption{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:12px!important}
.of-photo-actions{display:flex!important;gap:8px!important;flex-wrap:wrap!important}.of-photo-action{border:0!important;border-radius:10px!important;padding:8px 10px!important;font-size:11px!important;font-weight:800!important;cursor:pointer!important}.of-photo-download{background:rgba(35,41,75,.08)!important;color:var(--brown)!important}.of-delete-photo{background:rgba(248,162,50,.14)!important;color:#23294b!important}
.of-empty-gallery{margin:0!important;padding:16px 2px 2px!important;color:var(--muted)!important;font-size:13px!important}
@media(max-width:1100px){.of-photo-accordion{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){.of-photo-accordion{grid-template-columns:1fr!important}.of-manager-photo-item{flex-basis:86vw!important}.of-manager-photo-item figcaption{align-items:flex-start!important;flex-direction:column!important}}


/* Waléria Personal App 1.5.4 — consolidação final da identidade visual */
:root{--brown:#23294b;--orange:#f8a232;--blue:#23294b;--yellow:#f8a232;--bg:#ffffff;--card:#ffffff;--text:#23294b;--muted:#23294b;--line:rgba(35,41,75,.14)}
.of-app,.of-main,.of-content{background:#ffffff;color:#23294b}
.of-topbar{background:rgba(255,255,255,.96)}
.of-sidebar,.of-mobile-header-actions{background:#23294b!important}
.of-nav button:hover,.of-nav button.active{background:#f8a232!important;color:#ffffff!important}
.of-btn.primary,.of-btn.primary:hover,.of-btn.primary:focus{background:#f8a232!important;color:#ffffff!important;border-color:#f8a232!important}
.of-btn.soft,.of-btn.soft:hover,.of-btn.soft:focus{background:#23294b!important;color:#ffffff!important;border-color:#23294b!important}
.of-badge.ok,.of-toast.ok,.of-choice button:first-child.active{background:#23294b!important;color:#ffffff!important;border-color:#23294b!important}
.of-badge.warn,.of-toast.error,.of-choice button:last-child.active,.of-alert.error{background:#f8a232!important;color:#23294b!important;border-color:#f8a232!important}
.of-card,.of-student-item,.of-photo-group,.of-photo-card,.of-modal-card{background:#ffffff!important;border-color:rgba(35,41,75,.14)!important}
.of-mini-grid>div,.of-notice-list>div,.of-current-measure,.of-history-empty,.of-history-loading,.of-history-measures div,.of-photo-group-toggle,.of-current-password-info,.of-profile-tabs,.of-cashflow-filters{background:rgba(35,41,75,.05)!important}
.of-time-pill,.of-note,.of-demo-credentials,.of-history-summary,.of-history-record-head time,.of-cashflow-icon,.of-access-warning{background:rgba(248,162,50,.13)!important;color:#23294b!important}
.of-expense-category-track,.of-package-bar{background:rgba(35,41,75,.12)!important}
.of-cashflow-icon.expense{background:rgba(35,41,75,.10)!important;color:#23294b!important}
.of-photo-download{background:#23294b!important;color:#ffffff!important}.of-delete-photo{background:#f8a232!important;color:#23294b!important}
.of-hero.student{background:#f8a232!important;color:#ffffff!important}.of-hero.student h2,.of-hero.student p,.of-hero.student strong,.of-hero.student small,.of-hero.student .of-chip{color:#ffffff!important}

/* Waléria Personal App 1.5.5 — ajustes finais em Turmas e logo do menu */
.of-section[data-section="classes"] .of-btn.danger-outline,
.of-section[data-section="classes"] .of-delete-class{
  background:#ffffff!important;
  color:#23294b!important;
  border:1px solid #23294b!important;
  box-shadow:none!important;
  transform:none!important;
}
.of-section[data-section="classes"] .of-btn.danger-outline:hover,
.of-section[data-section="classes"] .of-btn.danger-outline:focus,
.of-section[data-section="classes"] .of-btn.danger-outline:active,
.of-section[data-section="classes"] .of-delete-class:hover,
.of-section[data-section="classes"] .of-delete-class:focus,
.of-section[data-section="classes"] .of-delete-class:active{
  background:#23294b!important;
  color:#ffffff!important;
  border-color:#23294b!important;
  box-shadow:none!important;
  transform:none!important;
}
.of-section[data-section="classes"] .of-choice button{
  background:#ffffff!important;
  color:#23294b!important;
  border-color:rgba(35,41,75,.22)!important;
  box-shadow:none!important;
}
.of-section[data-section="classes"] .of-choice button:hover,
.of-section[data-section="classes"] .of-choice button:focus{
  background:rgba(35,41,75,.08)!important;
  color:#23294b!important;
  border-color:#23294b!important;
}
.of-section[data-section="classes"] .of-choice button:first-child.active{
  background:#23294b!important;
  color:#ffffff!important;
  border-color:#23294b!important;
}
.of-section[data-section="classes"] .of-choice button:last-child.active{
  background:#f8a232!important;
  color:#ffffff!important;
  border-color:#f8a232!important;
}

.of-sidebar-head{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  margin:0 0 20px!important;
  padding:0!important;
  gap:0!important;
  position:relative!important;
}
.of-sidebar-brand,
.of-sidebar-brand:hover,
.of-sidebar-brand:focus,
.of-sidebar-brand:focus-visible,
.of-sidebar-brand:active{
  appearance:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  flex:1 1 100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  opacity:1!important;
  transform:none!important;
  cursor:pointer!important;
}
.of-sidebar-brand img{
  display:block!important;
  width:210px!important;
  max-width:100%!important;
  height:auto!important;
  max-height:76px!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  object-fit:contain!important;
  object-position:center!important;
  box-shadow:none!important;
}
.of-sidebar-brand:hover img,
.of-sidebar-brand:focus img,
.of-sidebar-brand:active img{
  margin:0 auto!important;
  opacity:1!important;
  transform:none!important;
  filter:none!important;
  box-shadow:none!important;
}
.of-menu-close{
  position:absolute!important;
  right:0!important;
  top:50%!important;
  transform:translateY(-50%)!important;
}
@media(max-width:820px){
  .of-sidebar-head{margin-bottom:18px!important}
  .of-sidebar-brand img{width:190px!important;max-height:68px!important}
}
@media(max-width:420px){
  .of-sidebar-brand img{width:175px!important;max-height:62px!important}
}

/* v1.6.2 — perfis, medidas dinâmicas e histórico de aulas */
.of-choice-field{border:1px solid rgba(35,41,75,.14);border-radius:14px;padding:14px;display:flex;gap:18px;flex-wrap:wrap}.of-choice-field legend{font-weight:700;padding:0 6px}.of-choice-field label{display:flex;align-items:center;gap:8px;margin:0}.of-dynamic-measurements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.of-history-table-wrap{overflow:auto}.of-history-table{width:100%;border-collapse:collapse;min-width:820px}.of-history-table th,.of-history-table td{text-align:left;padding:14px;border-bottom:1px solid rgba(35,41,75,.1);vertical-align:middle}.of-history-table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:#23294b}.of-attendance-stats{margin-top:18px}.of-history-filters{align-items:end}@media(max-width:700px){.of-dynamic-measurements{grid-template-columns:1fr}.of-choice-field{gap:10px}.of-history-table-card{padding:12px}}


/* v1.6.3 — Histórico individual dentro de Alunos */
.of-student-tabs{display:flex;gap:8px;margin:0 0 20px;padding:5px;background:rgba(35,41,75,.06);border-radius:16px;max-width:430px}.of-student-tab{flex:1;border:0;background:transparent;padding:12px 18px;border-radius:12px;font:inherit;font-weight:700;color:#23294b;cursor:pointer}.of-student-tab.active{background:#fff;box-shadow:0 4px 14px rgba(35,41,75,.1)}.of-student-tab-panel{display:none}.of-student-tab-panel.active{display:block}.of-student-history-selector{max-width:620px;margin-bottom:18px}.of-student-history-selector label{display:grid;gap:8px;margin-top:15px}.of-lesson-history-content{display:grid;gap:18px}.of-lesson-history-list{display:grid;gap:10px}.of-lesson-history-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid rgba(35,41,75,.1)}.of-lesson-history-row:last-child{border-bottom:0}.of-lesson-history-row div{display:grid;gap:4px}.of-lesson-history-row small{color:rgba(35,41,75,.65)}.of-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.of-calendar-navigation{display:flex;gap:6px}.of-calendar-legend{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:18px;font-size:13px}.of-calendar-legend span{display:flex;align-items:center;gap:7px}.of-calendar-legend i{width:11px;height:11px;border-radius:50%;border:1px solid rgba(35,41,75,.25)}.of-calendar-legend .planned{background:#f8a232}.of-calendar-legend .present{background:#2f9e63}.of-calendar-legend .absent{background:#d84b4b}.of-calendar-legend .unmarked{background:#fff}.of-lesson-calendar-weekdays,.of-lesson-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.of-lesson-calendar-weekdays{margin-bottom:7px;text-align:center;font-size:12px;font-weight:700;color:rgba(35,41,75,.55)}.of-calendar-day{aspect-ratio:1/1;border:1px solid rgba(35,41,75,.12);border-radius:13px;background:#fff;color:#23294b;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font:inherit;cursor:default;position:relative}.of-calendar-day.empty{visibility:hidden}.of-calendar-day i{width:7px;height:7px;border-radius:50%}.of-calendar-day.planned{background:rgba(248,162,50,.14);border-color:rgba(248,162,50,.55)}.of-calendar-day.planned i{background:#f8a232}.of-calendar-day.present{background:rgba(47,158,99,.13);border-color:rgba(47,158,99,.55)}.of-calendar-day.present i{background:#2f9e63}.of-calendar-day.absent{background:rgba(216,75,75,.12);border-color:rgba(216,75,75,.55)}.of-calendar-day.absent i{background:#d84b4b}.of-calendar-day.unmarked{border-style:dashed}.of-calendar-day.unmarked i{background:#fff;border:1px solid rgba(35,41,75,.3)}.of-calendar-day.today:after{content:'';position:absolute;inset:3px;border:1px solid #23294b;border-radius:10px}.of-calendar-note{margin:15px 0 0;color:rgba(35,41,75,.66);font-size:13px}@media(max-width:700px){.of-student-tabs{max-width:none}.of-calendar-head{align-items:flex-start;flex-direction:column}.of-lesson-calendar-weekdays,.of-lesson-calendar{gap:4px}.of-calendar-day{border-radius:9px;font-size:12px}.of-lesson-history-row{align-items:flex-start;flex-direction:column}.of-calendar-legend{gap:9px}}

/* v1.6.4 — identidade visual, detalhes e exclusões seguras */
:root{}
.of-modal-close{color:#23294b;border:1px solid rgba(35,41,75,.12);background:#fff;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;line-height:1;cursor:pointer;transition:none}
.of-modal-close:hover,.of-modal-close:focus{color:#23294b!important;background:rgba(35,41,75,.06)!important;border-color:rgba(35,41,75,.2)!important;box-shadow:none!important;outline:none}
.of-student-tabs{max-width:460px;background:rgba(35,41,75,.055);border:1px solid rgba(35,41,75,.08);padding:5px;border-radius:14px}
.of-student-tab{color:#23294b;border:0!important;box-shadow:none!important;transition:none}
.of-student-tab:hover{color:#23294b!important;background:transparent!important;border-color:transparent!important;box-shadow:none!important}
.of-student-tab.active,.of-student-tab.active:hover{background:#fff!important;color:#23294b!important;box-shadow:0 5px 16px rgba(35,41,75,.08)!important}
.of-calendar-day{transition:none!important;box-shadow:none!important;transform:none!important}
.of-calendar-day:hover,.of-calendar-day:focus,.of-calendar-day:active{transform:none!important;box-shadow:none!important;filter:none!important;outline:none}
.of-calendar-day.present:hover{background:rgba(47,158,99,.13)!important;border-color:rgba(47,158,99,.55)!important}
.of-calendar-day.absent:hover{background:rgba(216,75,75,.12)!important;border-color:rgba(216,75,75,.55)!important}
.of-calendar-day.planned:hover{background:rgba(248,162,50,.14)!important;border-color:rgba(248,162,50,.55)!important}
.of-calendar-day.unmarked:hover{background:#fff!important;border-color:rgba(35,41,75,.12)!important}
.of-calendar-day[data-calendar-date]{cursor:pointer}
.of-calendar-lesson-summary{margin-top:16px;padding:18px 20px;border:1px solid rgba(35,41,75,.12);border-radius:16px;background:rgba(35,41,75,.035)}
.of-calendar-lesson-summary h4{margin:5px 0 7px;font-size:18px}.of-calendar-lesson-summary p{margin:0;color:rgba(35,41,75,.72)}
.of-lesson-history-actions,.of-cashflow-actions{display:flex;align-items:center;gap:10px}
.of-icon-button{width:38px;height:38px;border-radius:11px;border:1px solid rgba(35,41,75,.14);background:#fff;color:#23294b;display:grid;place-items:center;font-size:18px;line-height:1;cursor:pointer;transition:none}
.of-icon-button:hover,.of-icon-button:focus{background:rgba(35,41,75,.06)!important;color:#23294b!important;border-color:rgba(35,41,75,.24)!important;box-shadow:none!important;outline:none!important}
.of-icon-button:disabled{opacity:.45;cursor:not-allowed}
.of-cashflow-row{grid-template-columns:42px minmax(0,1fr) auto}
@media(max-width:700px){.of-lesson-history-actions{width:100%;justify-content:space-between}.of-cashflow-actions{grid-column:2;justify-content:space-between}.of-student-tabs{max-width:none}}


/* =========================================================
   WALÉRIA PERSONAL APP — BRAND UI CLEANUP v1.6.5
   Centraliza os controles interativos na identidade oficial.
   ========================================================= */
:root{
  --wpa-blue:#23294b;
  --wpa-orange:#f8a232;
  --wpa-white:#ffffff;
  --wpa-line:rgba(35,41,75,.14);
  --wpa-soft:rgba(35,41,75,.055);
  --wpa-green:#16794c;
  --wpa-red:#b42318;
}
.of-app,
.of-login-wrap{
  accent-color:var(--wpa-blue)!important;
}
.of-app button,
.of-app [role="button"],
.of-login-wrap button{
  -webkit-appearance:none!important;
  appearance:none!important;
  -webkit-tap-highlight-color:transparent!important;
}
.of-app button:focus,
.of-app button:focus-visible,
.of-app [role="button"]:focus,
.of-app [role="button"]:focus-visible{
  outline:2px solid rgba(248,162,50,.28)!important;
  outline-offset:2px!important;
  box-shadow:none!important;
}
.of-app button::selection,
.of-app a::selection{background:rgba(248,162,50,.24)!important;color:var(--wpa-blue)!important}

/* Abas internas */
.of-student-tabs,
.of-profile-tabs{
  background:var(--wpa-soft)!important;
  border:1px solid rgba(35,41,75,.09)!important;
  box-shadow:none!important;
}
.of-student-tab,
.of-profile-tabs button{
  color:var(--wpa-blue)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
}
.of-student-tab:hover,
.of-student-tab:focus,
.of-profile-tabs button:hover,
.of-profile-tabs button:focus{
  color:var(--wpa-blue)!important;
  background:rgba(255,255,255,.55)!important;
  box-shadow:none!important;
}
.of-student-tab.active,
.of-student-tab.active:hover,
.of-student-tab.active:focus,
.of-profile-tabs button.active,
.of-profile-tabs button.active:hover,
.of-profile-tabs button.active:focus{
  color:var(--wpa-white)!important;
  background:var(--wpa-blue)!important;
  border-color:var(--wpa-blue)!important;
  box-shadow:none!important;
}

/* Fechar modais */
.of-modal-close,
.of-modal-close:visited{
  color:var(--wpa-blue)!important;
  background:var(--wpa-white)!important;
  border:1px solid var(--wpa-line)!important;
  box-shadow:none!important;
}
.of-modal-close:hover,
.of-modal-close:focus,
.of-modal-close:active{
  color:var(--wpa-white)!important;
  background:var(--wpa-blue)!important;
  border-color:var(--wpa-blue)!important;
  box-shadow:none!important;
}

/* Ícones de ação e lixeiras */
.of-icon-button,
.of-icon-button:visited{
  color:var(--wpa-blue)!important;
  background:var(--wpa-white)!important;
  border:1px solid var(--wpa-line)!important;
  box-shadow:none!important;
}
.of-icon-button svg{
  width:18px;
  height:18px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  pointer-events:none;
}
.of-icon-button:hover,
.of-icon-button:focus,
.of-icon-button:active{
  color:var(--wpa-white)!important;
  background:var(--wpa-blue)!important;
  border-color:var(--wpa-blue)!important;
  box-shadow:none!important;
}

/* Calendário: sem hover colorido, status por indicador */
.of-calendar-day,
.of-calendar-day:hover,
.of-calendar-day:focus,
.of-calendar-day:active{
  color:var(--wpa-blue)!important;
  background:var(--wpa-white)!important;
  border:1px solid var(--wpa-line)!important;
  box-shadow:none!important;
  transform:none!important;
  filter:none!important;
}
.of-calendar-day.present,
.of-calendar-day.present:hover,
.of-calendar-day.present:focus{
  background:var(--wpa-white)!important;
  border-color:rgba(22,121,76,.38)!important;
}
.of-calendar-day.absent,
.of-calendar-day.absent:hover,
.of-calendar-day.absent:focus{
  background:var(--wpa-white)!important;
  border-color:rgba(180,35,24,.38)!important;
}
.of-calendar-day.planned,
.of-calendar-day.planned:hover,
.of-calendar-day.planned:focus{
  background:var(--wpa-white)!important;
  border-color:rgba(248,162,50,.58)!important;
}
.of-calendar-day.unmarked,
.of-calendar-day.unmarked:hover,
.of-calendar-day.unmarked:focus{
  background:var(--wpa-white)!important;
  border-color:rgba(35,41,75,.20)!important;
  border-style:dashed!important;
}
.of-calendar-day.present i{background:var(--wpa-green)!important}
.of-calendar-day.absent i{background:var(--wpa-red)!important}
.of-calendar-day.planned i{background:var(--wpa-orange)!important}
.of-calendar-day.unmarked i{background:var(--wpa-white)!important;border:1px solid rgba(35,41,75,.35)!important}
.of-calendar-day.today:after{border-color:var(--wpa-blue)!important}
.of-calendar-navigation .of-btn,
.of-calendar-navigation .of-btn:hover,
.of-calendar-navigation .of-btn:focus{
  color:var(--wpa-orange)!important;
  background:var(--wpa-white)!important;
  border-color:var(--wpa-orange)!important;
  box-shadow:none!important;
}
.of-calendar-navigation .of-btn:active{
  color:var(--wpa-white)!important;
  background:var(--wpa-orange)!important;
}
.of-calendar-legend .present{background:var(--wpa-green)!important}
.of-calendar-legend .absent{background:var(--wpa-red)!important}
.of-calendar-legend .planned{background:var(--wpa-orange)!important}

/* Estados de presença e falta: vermelho profundo, nunca rosado */
.of-badge.warn{background:rgba(180,35,24,.09)!important;color:var(--wpa-red)!important}
.of-badge.ok{background:rgba(22,121,76,.10)!important;color:var(--wpa-green)!important}

/* Botões de exclusão textuais */
.of-btn.danger-outline,
.of-btn.danger-outline:hover,
.of-btn.danger-outline:focus,
.of-btn.danger-outline:active{
  color:var(--wpa-blue)!important;
  background:var(--wpa-white)!important;
  border-color:var(--wpa-blue)!important;
  box-shadow:none!important;
}
.of-btn.danger-outline:hover,
.of-btn.danger-outline:focus{
  color:var(--wpa-white)!important;
  background:var(--wpa-blue)!important;
}

/* v1.6.7 — calendário compacto e leitura imediata de status */
.of-lesson-calendar-card{
  width:min(100%,760px);
  max-width:760px;
  margin-right:auto;
  padding:18px 20px;
}
.of-calendar-head{
  margin-bottom:12px;
}
.of-calendar-head h3{
  margin:3px 0 0;
  font-size:21px;
}
.of-calendar-legend{
  gap:12px;
  margin-bottom:12px;
  font-size:12px;
}
.of-calendar-legend i{
  width:10px;
  height:10px;
}
.of-lesson-calendar-weekdays,
.of-lesson-calendar{
  grid-template-columns:repeat(7,54px);
  justify-content:start;
  gap:6px;
}
.of-lesson-calendar-weekdays{
  margin-bottom:6px;
  font-size:11px;
}
.of-calendar-day{
  width:54px;
  height:54px;
  aspect-ratio:auto;
  border-radius:10px;
  font-size:13px;
  font-weight:700;
  gap:3px;
}
.of-calendar-day i{
  width:6px;
  height:6px;
}
.of-calendar-day.present,
.of-calendar-day.present:hover,
.of-calendar-day.present:focus,
.of-calendar-day.present:active{
  border:3px solid #66c992!important;
}
.of-calendar-day.absent,
.of-calendar-day.absent:hover,
.of-calendar-day.absent:focus,
.of-calendar-day.absent:active{
  border:3px solid #d84b4b!important;
}
.of-calendar-day.planned,
.of-calendar-day.planned:hover,
.of-calendar-day.planned:focus,
.of-calendar-day.planned:active{
  border:3px solid var(--wpa-orange)!important;
}
.of-calendar-day.unmarked,
.of-calendar-day.unmarked:hover,
.of-calendar-day.unmarked:focus,
.of-calendar-day.unmarked:active{
  border-width:2px!important;
}
.of-calendar-day.today:after{
  inset:3px;
  border-width:1px;
  border-radius:7px;
}
.of-calendar-note{
  margin-top:12px;
  font-size:12px;
}
.of-calendar-lesson-summary{
  margin-top:12px;
  padding:14px 16px;
}
@media(max-width:900px){
  .of-lesson-calendar-card{max-width:100%;width:100%}
  .of-lesson-calendar-weekdays,.of-lesson-calendar{
    grid-template-columns:repeat(7,minmax(38px,1fr));
  }
  .of-calendar-day{width:100%;height:auto;min-height:46px}
}
@media(max-width:520px){
  .of-lesson-calendar-card{padding:14px 12px}
  .of-lesson-calendar-weekdays,.of-lesson-calendar{gap:4px}
  .of-calendar-day{min-height:40px;border-radius:8px;font-size:12px}
  .of-calendar-day.present,.of-calendar-day.absent,.of-calendar-day.planned{border-width:2px!important}
}


/* v1.6.8 — detalhes do calendário ao lado no desktop */
.of-calendar-layout{
  display:grid;
  grid-template-columns:390px minmax(250px,1fr);
  align-items:start;
  gap:22px;
}
.of-calendar-grid-panel{
  width:390px;
  max-width:100%;
}
.of-calendar-lesson-summary{
  margin-top:0;
  min-height:150px;
  align-self:stretch;
}
.of-calendar-lesson-summary[hidden]{
  display:block!important;
  visibility:hidden;
}
@media(min-width:901px){
  .of-lesson-calendar-card{
    width:min(100%,980px);
    max-width:980px;
  }
}
@media(max-width:900px){
  .of-calendar-layout{
    display:block;
  }
  .of-calendar-grid-panel{
    width:100%;
  }
  .of-calendar-lesson-summary{
    margin-top:12px;
    min-height:0;
  }
  .of-calendar-lesson-summary[hidden]{
    display:none!important;
  }
}
@media(max-width:520px){
  .of-calendar-head,
  .of-calendar-legend,
  .of-calendar-grid-panel,
  .of-calendar-note{
    width:100%;
  }
  .of-calendar-grid-panel{
    margin-left:auto;
    margin-right:auto;
  }
  .of-lesson-calendar-weekdays,
  .of-lesson-calendar{
    justify-content:center;
  }
}


/* v1.6.9 — calendário aprovado: workspace amplo, moderno e harmônico */
.of-calendar-workspace{
  display:grid;
  grid-template-columns:minmax(480px,.98fr) minmax(430px,1.02fr);
  gap:24px;
  align-items:stretch;
  width:100%;
  margin-top:18px;
}
.of-calendar-workspace .of-lesson-calendar-card,
.of-calendar-workspace .of-calendar-lesson-summary{
  width:100%;
  max-width:none;
  min-width:0;
  margin:0;
  padding:28px;
  border-radius:20px;
  border:1px solid rgba(35,41,75,.12);
  box-shadow:0 12px 32px rgba(35,41,75,.06);
  background:#fff;
}
.of-calendar-workspace .of-lesson-calendar-card{
  display:flex;
  flex-direction:column;
}
.of-calendar-workspace .of-calendar-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
}
.of-calendar-workspace .of-calendar-head h3{
  margin-top:6px;
  font-size:25px;
  line-height:1.15;
}
.of-calendar-workspace .of-calendar-navigation{
  display:flex;
  gap:8px;
  flex-shrink:0;
}
.of-calendar-workspace .of-calendar-navigation .of-btn{
  min-width:48px;
  height:48px;
  padding:0 16px;
  border-radius:9px;
}
.of-calendar-workspace .of-calendar-legend{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  margin:0 0 22px;
  font-size:13px;
}
.of-calendar-workspace .of-calendar-legend span{
  display:inline-flex;
  align-items:center;
  gap:7px;
}
.of-calendar-workspace .of-calendar-legend i{
  width:12px;
  height:12px;
  border-radius:50%;
}
.of-calendar-workspace .of-calendar-grid-panel{
  width:100%;
  max-width:620px;
  margin:0 auto;
}
.of-calendar-workspace .of-lesson-calendar-weekdays,
.of-calendar-workspace .of-lesson-calendar{
  grid-template-columns:repeat(7,minmax(48px,1fr));
  gap:10px;
  width:100%;
}
.of-calendar-workspace .of-lesson-calendar-weekdays{
  margin-bottom:10px;
  font-size:12px;
  font-weight:700;
  color:rgba(35,41,75,.68);
}
.of-calendar-workspace .of-calendar-day{
  width:100%;
  min-width:0;
  height:auto;
  min-height:62px;
  border-radius:9px;
  background:#fff!important;
  font-size:14px;
  box-shadow:none!important;
}
.of-calendar-workspace .of-calendar-day.present{border:2px solid #38b878!important}
.of-calendar-workspace .of-calendar-day.absent{border:2px solid #e24a4a!important}
.of-calendar-workspace .of-calendar-day.planned{border:2px solid #f8a232!important}
.of-calendar-workspace .of-calendar-day.unmarked{border:2px dashed rgba(35,41,75,.22)!important}
.of-calendar-workspace .of-calendar-day i{display:none!important}
.of-calendar-workspace .of-calendar-day.today:after{inset:4px;border-radius:6px}
.of-calendar-workspace .of-calendar-note{
  border-top:1px solid rgba(35,41,75,.1);
  padding-top:18px;
  margin:20px 0 0;
  font-size:13px;
  line-height:1.55;
}
.of-calendar-workspace .of-calendar-lesson-summary{
  min-height:100%;
  display:flex!important;
  flex-direction:column;
  visibility:visible!important;
}
.of-calendar-summary-empty{
  margin:auto 0;
  padding:24px;
  text-align:center;
  color:rgba(35,41,75,.62);
}
.of-calendar-summary-empty h3{margin:8px 0;font-size:22px;color:#23294b}
.of-summary-header{padding-bottom:22px;border-bottom:1px solid rgba(35,41,75,.11)}
.of-summary-header h3{margin:12px 0 16px;font-size:25px;line-height:1.25;color:#23294b}
.of-summary-status{display:inline-flex;align-items:center;padding:8px 13px;border-radius:7px;font-size:14px;font-weight:700}
.of-summary-status.present{background:rgba(56,184,120,.13);color:#168b57}
.of-summary-status.absent{background:rgba(226,74,74,.11);color:#b92f2f}
.of-summary-status.planned{background:rgba(248,162,50,.14);color:#bd6b00}
.of-summary-status.unmarked{background:rgba(35,41,75,.06);color:#59607c}
.of-summary-details{display:grid;margin-top:8px}
.of-summary-details>div{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(170px,1fr);gap:18px;align-items:center;padding:15px 4px;border-bottom:1px solid rgba(35,41,75,.1)}
.of-summary-details span{color:rgba(35,41,75,.68);font-size:14px}
.of-summary-details strong{color:#23294b;font-size:14px;font-weight:600;text-align:left}
.of-summary-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:auto;padding-top:24px}
.of-summary-delete{display:inline-flex;align-items:center;gap:8px;height:46px;padding:0 15px;border:1px solid rgba(226,74,74,.24);border-radius:9px;background:#fff;color:#c53535;font-weight:700;cursor:pointer}
.of-summary-delete svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.of-summary-delete:hover,.of-summary-delete:focus{background:rgba(226,74,74,.05);border-color:#c53535}
.of-summary-history-button{height:46px}
@media(max-width:1180px){
  .of-calendar-workspace{grid-template-columns:minmax(430px,.95fr) minmax(360px,1.05fr);gap:18px}
  .of-calendar-workspace .of-lesson-calendar-card,.of-calendar-workspace .of-calendar-lesson-summary{padding:22px}
  .of-calendar-workspace .of-calendar-day{min-height:54px}
}
@media(max-width:900px){
  .of-calendar-workspace{grid-template-columns:1fr;gap:16px}
  .of-calendar-workspace .of-lesson-calendar-card,.of-calendar-workspace .of-calendar-lesson-summary{width:100%;max-width:760px;margin-left:auto;margin-right:auto}
  .of-calendar-workspace .of-calendar-grid-panel{margin-left:auto;margin-right:auto}
  .of-calendar-workspace .of-calendar-lesson-summary{min-height:0}
}
@media(max-width:560px){
  .of-calendar-workspace .of-lesson-calendar-card,.of-calendar-workspace .of-calendar-lesson-summary{padding:18px 14px;border-radius:16px}
  .of-calendar-workspace .of-calendar-head{align-items:flex-start;gap:12px}
  .of-calendar-workspace .of-calendar-head h3{font-size:21px}
  .of-calendar-workspace .of-calendar-navigation .of-btn{height:42px;min-width:42px;padding:0 11px}
  .of-calendar-workspace .of-calendar-grid-panel{max-width:420px}
  .of-calendar-workspace .of-lesson-calendar-weekdays,.of-calendar-workspace .of-lesson-calendar{grid-template-columns:repeat(7,minmax(34px,1fr));gap:5px;justify-content:center}
  .of-calendar-workspace .of-calendar-day{min-height:42px;font-size:12px;border-radius:7px}
  .of-summary-details>div{grid-template-columns:1fr;gap:4px;padding:12px 2px}
  .of-summary-actions{align-items:stretch;flex-direction:column-reverse}
  .of-summary-actions>*{width:100%;justify-content:center}
}


/* Minha Jornada — v1.7.0 */
.of-journey-student-select{display:grid;grid-template-columns:minmax(260px,420px) 1fr;gap:28px;align-items:end;margin-bottom:22px}.of-journey-student-select p{margin:0;color:#68708b}.of-journey-summary{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:20px;margin-bottom:20px}.of-journey-total,.of-journey-next{min-height:170px;display:flex;flex-direction:column;justify-content:center}.of-journey-total>strong{font-size:clamp(28px,3vw,44px);color:#23294b;margin:8px 0}.of-journey-next>strong{font-size:22px;color:#23294b;margin:10px 0 4px}.of-journey-main-progress,.of-achievement-detail-progress{height:10px;background:#eef0f5;border-radius:999px;overflow:hidden}.of-journey-main-progress span,.of-achievement-detail-progress span{display:block;height:100%;background:#f8a232;border-radius:inherit}.of-achievement-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.of-achievement-filter{border:1px solid #dfe2ea;background:#fff;color:#23294b;border-radius:999px;padding:9px 16px;font:inherit;cursor:pointer}.of-achievement-filter.active{background:#23294b;border-color:#23294b;color:#fff}.of-achievement-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:16px}.of-achievement-card{appearance:none;border:1px solid #e2e5ec;background:#fff;border-radius:20px;padding:18px 14px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;min-height:210px;color:#23294b;cursor:pointer;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.of-achievement-card:hover,.of-achievement-card.is-selected{border-color:#f8a232;box-shadow:0 12px 28px rgba(35,41,75,.08);transform:translateY(-2px)}.of-achievement-ring{--achievement-progress:0;width:104px;height:104px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#f8a232 calc(var(--achievement-progress)*1%),#e7e9ef 0);position:relative}.of-achievement-ring:before{content:"";position:absolute;inset:7px;background:#fff;border-radius:50%}.of-achievement-diamond{width:62px;height:62px;display:grid;place-items:center;background:#e6e8ed;border:1px solid #d5d8e0;transform:rotate(45deg);border-radius:13px;position:relative;z-index:1;color:#8c92a3}.of-achievement-diamond b{transform:rotate(-45deg);font-size:17px;line-height:1}.of-achievement-card.is-unlocked .of-achievement-diamond,.of-achievement-celebration .of-achievement-diamond{background:#23294b;border-color:#23294b;color:#fff;box-shadow:0 8px 18px rgba(35,41,75,.18)}.of-achievement-card.is-unlocked .of-achievement-ring{background:conic-gradient(#f8a232 100%,#e7e9ef 0)}.of-achievement-card.is-locked{background:#fafafa;color:#7b8192}.of-achievement-copy{display:flex;flex-direction:column;gap:5px}.of-achievement-copy strong{font-size:15px;color:inherit}.of-achievement-copy small{color:#7b8192}.of-achievement-card.is-unlocked .of-achievement-copy small{color:#138a5b}.of-achievement-detail{margin-top:22px;border:1px solid #e2e5ec;border-radius:22px;background:#f8f9fb;padding:24px}.of-achievement-detail h3{margin:7px 0}.of-achievement-detail p{margin:0 0 16px;color:#626a82}.of-achievement-detail strong,.of-achievement-detail small{display:block;margin-top:9px}.of-achievement-celebration{position:fixed;inset:0;z-index:100000;background:rgba(20,25,48,.72);display:grid;place-items:center;padding:24px}.of-achievement-celebration-card{width:min(440px,100%);background:#fff;border-radius:28px;padding:34px;text-align:center;box-shadow:0 28px 80px rgba(0,0,0,.25)}.of-achievement-celebration-card .of-achievement-ring{margin:22px auto}.of-achievement-celebration-card h2{color:#23294b}.of-achievement-celebration-card p{color:#68708b;margin-bottom:24px}.of-manager-journey-empty>.of-card{text-align:center;padding:42px}
@media(max-width:900px){.of-journey-student-select,.of-journey-summary{grid-template-columns:1fr}.of-achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.of-achievement-card{min-height:190px}.of-achievement-ring{width:92px;height:92px}.of-achievement-diamond{width:54px;height:54px}}
@media(max-width:480px){.of-achievement-grid{grid-template-columns:1fr 1fr;gap:10px}.of-achievement-card{padding:14px 8px;min-height:175px;border-radius:16px}.of-achievement-ring{width:78px;height:78px}.of-achievement-diamond{width:46px;height:46px;border-radius:10px}.of-achievement-copy strong{font-size:13px}.of-achievement-copy small{font-size:11px}.of-achievement-detail{padding:19px}.of-achievement-celebration-card{padding:26px 20px}}

/* Minha Jornada — v1.7.1 | identidade oficial e cards centralizados */
:root{
  --wpa-blue:#23294b;
  --wpa-orange:#f8a232;
  --wpa-white:#ffffff;
  --wpa-neutral-50:#fafbfc;
  --wpa-neutral-100:#f1f3f7;
  --wpa-neutral-200:#dfe3eb;
  --wpa-neutral-500:#747c91;
}

/* Impede cores de destaque nativas ou herdadas em rosa/roxo. */
.of-app,
.of-login-wrap,
.of-modal,
.of-achievement-celebration{
  accent-color:var(--wpa-orange)!important;
}
.of-app button,
.of-app a,
.of-app input,
.of-app select,
.of-app textarea,
.of-app [role="button"]{
  -webkit-tap-highlight-color:rgba(248,162,50,.18)!important;
}
.of-app button:focus,
.of-app button:focus-visible,
.of-app a:focus,
.of-app a:focus-visible,
.of-app input:focus,
.of-app input:focus-visible,
.of-app select:focus,
.of-app select:focus-visible,
.of-app textarea:focus,
.of-app textarea:focus-visible,
.of-app [role="button"]:focus,
.of-app [role="button"]:focus-visible{
  outline:2px solid rgba(248,162,50,.32)!important;
  outline-offset:2px!important;
  border-color:var(--wpa-orange)!important;
  box-shadow:0 0 0 3px rgba(248,162,50,.12)!important;
}
.of-app ::selection{
  background:rgba(248,162,50,.24)!important;
  color:var(--wpa-blue)!important;
}

/* Filtros e controles da Jornada. */
.of-achievement-filter{
  border-color:var(--wpa-neutral-200)!important;
  background:var(--wpa-white)!important;
  color:var(--wpa-blue)!important;
  border-radius:10px!important;
  min-height:42px;
}
.of-achievement-filter:hover{
  border-color:var(--wpa-orange)!important;
  background:rgba(248,162,50,.07)!important;
  color:var(--wpa-blue)!important;
}
.of-achievement-filter.active,
.of-achievement-filter.active:hover,
.of-achievement-filter.active:focus{
  border-color:var(--wpa-blue)!important;
  background:var(--wpa-blue)!important;
  color:var(--wpa-white)!important;
}

/* Grade harmônica e cards quadrados, com todo o conteúdo centralizado. */
.of-achievement-grid{
  grid-template-columns:repeat(6,minmax(150px,1fr))!important;
  gap:16px!important;
  align-items:stretch;
}
.of-achievement-card{
  width:100%;
  min-width:0;
  min-height:0!important;
  aspect-ratio:1 / 1.08;
  padding:18px 14px!important;
  border:1px solid var(--wpa-neutral-200)!important;
  border-radius:16px!important;
  background:var(--wpa-white)!important;
  color:var(--wpa-blue)!important;
  display:grid!important;
  grid-template-rows:minmax(94px,1fr) auto;
  place-items:center;
  align-content:center;
  justify-content:center;
  gap:12px!important;
  overflow:hidden;
  text-align:center!important;
  transform:none!important;
  box-shadow:none!important;
}
.of-achievement-card:hover,
.of-achievement-card.is-selected{
  border-color:var(--wpa-orange)!important;
  background:var(--wpa-white)!important;
  color:var(--wpa-blue)!important;
  transform:none!important;
  box-shadow:0 8px 22px rgba(35,41,75,.07)!important;
}
.of-achievement-card.is-selected{
  box-shadow:inset 0 0 0 1px var(--wpa-orange),0 8px 22px rgba(35,41,75,.07)!important;
}
.of-achievement-card.is-locked{
  background:var(--wpa-neutral-50)!important;
  color:var(--wpa-neutral-500)!important;
}
.of-achievement-ring{
  width:92px!important;
  height:92px!important;
  margin:0 auto!important;
  align-self:center;
  justify-self:center;
  background:conic-gradient(var(--wpa-orange) calc(var(--achievement-progress)*1%),var(--wpa-neutral-200) 0)!important;
}
.of-achievement-ring:before{
  inset:6px!important;
  background:var(--wpa-white)!important;
}
.of-achievement-diamond{
  width:54px!important;
  height:54px!important;
  margin:0!important;
  background:#e8ebf1!important;
  border-color:#d4d9e3!important;
  color:#858da1!important;
  border-radius:11px!important;
  box-shadow:none!important;
}
.of-achievement-card.is-unlocked .of-achievement-diamond,
.of-achievement-celebration .of-achievement-diamond{
  background:var(--wpa-blue)!important;
  border-color:var(--wpa-blue)!important;
  color:var(--wpa-white)!important;
  box-shadow:0 7px 16px rgba(35,41,75,.18)!important;
}
.of-achievement-card.is-unlocked .of-achievement-ring{
  background:conic-gradient(var(--wpa-orange) 100%,var(--wpa-neutral-200) 0)!important;
}
.of-achievement-copy{
  width:100%;
  min-width:0;
  min-height:58px;
  display:flex!important;
  flex-direction:column;
  justify-content:flex-start;
  align-items:center;
  gap:5px!important;
  text-align:center!important;
}
.of-achievement-copy strong{
  width:100%;
  color:inherit!important;
  font-size:14px!important;
  line-height:1.2;
  overflow-wrap:anywhere;
}
.of-achievement-copy small{
  width:100%;
  color:var(--wpa-neutral-500)!important;
  font-size:12px;
  line-height:1.25;
}
.of-achievement-card.is-unlocked .of-achievement-copy small{
  color:#16794e!important;
}
.of-journey-main-progress span,
.of-achievement-detail-progress span{
  background:var(--wpa-orange)!important;
}

@media(max-width:1280px){
  .of-achievement-grid{grid-template-columns:repeat(5,minmax(145px,1fr))!important}
}
@media(max-width:1080px){
  .of-achievement-grid{grid-template-columns:repeat(4,minmax(145px,1fr))!important}
}
@media(max-width:820px){
  .of-achievement-grid{grid-template-columns:repeat(3,minmax(140px,1fr))!important}
  .of-achievement-card{aspect-ratio:1 / 1.05}
}
@media(max-width:580px){
  .of-achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .of-achievement-card{aspect-ratio:auto;min-height:174px!important;padding:14px 10px!important}
  .of-achievement-ring{width:78px!important;height:78px!important}
  .of-achievement-diamond{width:46px!important;height:46px!important}
}


/* Minha Jornada — v1.7.3 | filtros funcionais e detalhes por linha */
.of-achievement-card[hidden]{
  display:none!important;
}
.of-achievement-detail-inline{
  grid-column:1 / -1;
  width:100%;
  margin:0!important;
  border:1px solid var(--wpa-neutral-200)!important;
  border-left:5px solid var(--wpa-orange)!important;
  border-radius:16px!important;
  background:var(--wpa-white)!important;
  color:var(--wpa-blue)!important;
  padding:22px 24px!important;
  box-shadow:0 8px 24px rgba(35,41,75,.06)!important;
  animation:wpaAchievementDetailIn .18s ease-out;
}
.of-achievement-detail-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
}
.of-achievement-detail-heading h3{
  margin:6px 0 0!important;
  color:var(--wpa-blue)!important;
}
.of-achievement-detail-percentage{
  flex:0 0 auto;
  font-size:24px;
  color:var(--wpa-orange)!important;
  margin:0!important;
}
.of-achievement-detail-inline p{
  margin:12px 0 16px!important;
  color:var(--wpa-neutral-500)!important;
}
.of-achievement-detail-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:10px;
}
.of-achievement-detail-meta strong,
.of-achievement-detail-meta small{
  margin:0!important;
}
.of-achievement-detail-meta small{
  color:var(--wpa-neutral-500)!important;
  text-align:right;
}
@keyframes wpaAchievementDetailIn{
  from{opacity:0;transform:translateY(-6px)}
  to{opacity:1;transform:translateY(0)}
}
@media(max-width:580px){
  .of-achievement-detail-inline{padding:18px!important}
  .of-achievement-detail-heading,
  .of-achievement-detail-meta{align-items:flex-start;flex-direction:column;gap:8px}
  .of-achievement-detail-meta small{text-align:left}
}

/* Primeiro acesso e senha provisória — v1.7.4 */
.of-password-required-shell{max-width:680px;margin:48px auto;padding:0 20px}
.of-password-required-card{padding:36px}
.of-password-required-card h2{margin:8px 0 10px;color:#23294b}
.of-password-required-card>p{margin:0 0 24px;color:#687087;line-height:1.65}
.of-password-required-card .of-form{max-width:480px}
.of-password-required-card input:focus{border-color:#f8a232!important;box-shadow:0 0 0 3px rgba(248,162,50,.16)!important;outline:none!important}
#of-student-initial-access{border-left:4px solid #f8a232}
@media(max-width:900px){.of-password-required-shell{margin:24px auto;padding:0 12px}.of-password-required-card{padding:24px}}

/* Minha Jornada — v1.7.8 | faixas de níveis corrigidas */
.of-journey-level-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin:10px 0 14px;
}
.of-journey-level-row>div:first-child{min-width:0}
.of-journey-level-row>div:first-child strong{display:block}
.of-journey-level-row>div:first-child p{margin:4px 0 0!important}
.of-journey-medal{
  flex:0 0 auto;
  width:112px;
  min-height:92px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  border:1px solid var(--wpa-neutral-200)!important;
  border-radius:16px;
  background:var(--wpa-white)!important;
  color:var(--wpa-blue)!important;
  text-align:center;
}
.of-journey-medal span{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:12px;
  transform:rotate(45deg);
  background:var(--wpa-neutral-100)!important;
  color:var(--wpa-blue)!important;
  border:2px solid var(--wpa-neutral-300)!important;
  font-size:18px;
}
.of-journey-medal span::first-letter{transform:rotate(-45deg)}
.of-journey-medal b{font-size:12px;letter-spacing:.04em;text-transform:uppercase}
.of-journey-medal.is-bronze span{border-color:var(--wpa-orange)!important;background:rgba(248,162,50,.12)!important}
.of-journey-medal.is-silver span{border-color:var(--wpa-neutral-400)!important;background:var(--wpa-neutral-100)!important}
.of-journey-medal.is-gold span{border-color:var(--wpa-orange)!important;background:var(--wpa-orange)!important;color:var(--wpa-white)!important}
.of-journey-medal.is-platinum span{border-color:var(--wpa-blue)!important;background:var(--wpa-blue)!important;color:var(--wpa-white)!important}
.of-level-caption{display:block;margin-top:10px;color:var(--wpa-neutral-500)!important}
@media(max-width:580px){
  .of-journey-level-row{align-items:flex-start;gap:14px}
  .of-journey-medal{width:96px;min-height:84px}
}


.of-badge.warning{background:rgba(248,162,50,.12);color:#9a5a00}

/* Waléria Personal App 1.9.1 — Financeiro Inteligente */
.of-smart-billing-card{display:grid;gap:20px}
.of-smart-finance-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.of-smart-finance-kpis>div{padding:16px;border:1px solid #e7e8ee;border-radius:16px;background:#fff;display:grid;gap:6px}
.of-smart-finance-kpis span{color:#6d7280;font-size:.84rem}
.of-smart-finance-kpis strong{color:#23294b;font-size:1.35rem}
.of-billing-filters{display:flex;flex-wrap:wrap;gap:8px}
.of-billing-filters button{border:1px solid #23294b;background:#fff;color:#23294b;border-radius:999px;padding:9px 14px;font:inherit;font-weight:700;cursor:pointer;transition:none;box-shadow:none}
.of-billing-filters button:hover{background:#fff;color:#23294b;border-color:#23294b;box-shadow:none;transform:none}
.of-billing-filters button:focus-visible{outline:2px solid #f8a232;outline-offset:2px;background:#fff;color:#23294b;border-color:#23294b}
.of-billing-filters button.active,.of-billing-filters button.active:hover,.of-billing-filters button.active:focus-visible{background:#23294b;border-color:#23294b;color:#fff;box-shadow:none}
.of-billing-more{justify-self:start;border:1px solid #23294b;background:#fff;color:#23294b;border-radius:999px;padding:9px 16px;font:inherit;font-weight:800;cursor:pointer;transition:none}
.of-billing-more:hover{background:#fff;color:#23294b;border-color:#23294b;box-shadow:none;transform:none}
.of-billing-more:focus-visible{outline:2px solid #f8a232;outline-offset:2px}
.of-smart-billing-list{display:grid;gap:10px}
.of-smart-billing-row{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(150px,.9fr) auto auto;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid #eceef2}
.of-smart-billing-row:last-child{border-bottom:0}
.of-smart-billing-row>div{display:grid;gap:3px}
.of-smart-billing-row small{color:#737887}
.of-smart-billing-date span{font-weight:800;color:#23294b}
.of-student-finance-summary{margin-top:18px;padding:18px;border:1px solid #eceef2;border-radius:18px;background:#fafafa}
.of-student-finance-summary h4{margin:2px 0 0;color:#23294b}
@media(max-width:900px){.of-smart-finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.of-smart-billing-row{grid-template-columns:1fr auto}.of-smart-billing-date{grid-column:1}.of-smart-billing-row>.of-btn{grid-column:2;grid-row:1/3}}
@media(max-width:600px){.of-smart-finance-kpis{grid-template-columns:1fr 1fr}.of-smart-billing-row{grid-template-columns:1fr}.of-smart-billing-row>.of-btn{grid-column:auto;grid-row:auto;width:100%}}


/* Waléria Personal App 1.9.2 — regra permanente para controles do Financeiro
 * Nenhum botão/filtro desta área pode herdar rosa, magenta ou roxo do navegador,
 * tema ou bibliotecas externas. Identidade oficial: azul, laranja, branco e neutros.
 */
.of-smart-billing-card .of-billing-more,
.of-smart-billing-card .of-billing-more:link,
.of-smart-billing-card .of-billing-more:visited,
.of-smart-billing-card .of-billing-more:hover,
.of-smart-billing-card .of-billing-more:focus,
.of-smart-billing-card .of-billing-more:focus-visible,
.of-smart-billing-card .of-billing-more:active{
  -webkit-appearance:none!important;
  appearance:none!important;
  background:#ffffff!important;
  border:1px solid #23294b!important;
  color:#23294b!important;
  box-shadow:none!important;
  outline-color:#f8a232!important;
  text-decoration:none!important;
  transform:none!important;
  filter:none!important;
  accent-color:#23294b!important;
}
.of-smart-billing-card .of-billing-more:hover{
  background:#ffffff!important;
  border-color:#23294b!important;
  color:#23294b!important;
}
.of-smart-billing-card .of-billing-more:focus-visible{
  outline:2px solid #f8a232!important;
  outline-offset:2px!important;
}
.of-smart-billing-card .of-billing-filters button,
.of-smart-billing-card .of-billing-filters button:hover,
.of-smart-billing-card .of-billing-filters button:focus,
.of-smart-billing-card .of-billing-filters button:focus-visible,
.of-smart-billing-card .of-billing-filters button:active{
  -webkit-appearance:none!important;
  appearance:none!important;
  background:#ffffff!important;
  border-color:#23294b!important;
  color:#23294b!important;
  box-shadow:none!important;
  transform:none!important;
  filter:none!important;
  accent-color:#23294b!important;
}
.of-smart-billing-card .of-billing-filters button.active,
.of-smart-billing-card .of-billing-filters button.active:hover,
.of-smart-billing-card .of-billing-filters button.active:focus,
.of-smart-billing-card .of-billing-filters button.active:focus-visible,
.of-smart-billing-card .of-billing-filters button.active:active{
  background:#23294b!important;
  border-color:#23294b!important;
  color:#ffffff!important;
}
.of-smart-billing-card .of-billing-filters button:focus-visible{
  outline:2px solid #f8a232!important;
  outline-offset:2px!important;
}

/* Waléria Personal App 1.9.3 — gestão de medidas no painel da gestora */
.of-measure-record-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(35,41,75,.1)}
.of-measure-record-actions .of-btn,.of-measure-edit-actions .of-btn{border-color:#23294b!important;color:#23294b!important;background:#fff!important;box-shadow:none!important}
.of-measure-record-actions .of-btn:hover,.of-measure-record-actions .of-btn:focus,.of-measure-record-actions .of-btn:active,.of-measure-edit-actions .of-btn:hover,.of-measure-edit-actions .of-btn:focus,.of-measure-edit-actions .of-btn:active{border-color:#f8a232!important;color:#23294b!important;background:rgba(248,162,50,.1)!important;outline:2px solid rgba(248,162,50,.28)!important;outline-offset:2px}
.of-measure-edit-actions .of-btn.primary{background:#23294b!important;border-color:#23294b!important;color:#fff!important}
.of-measure-edit-actions .of-btn.primary:hover,.of-measure-edit-actions .of-btn.primary:focus{background:#f8a232!important;border-color:#f8a232!important;color:#23294b!important}
.of-history-record.editing{border-color:rgba(248,162,50,.7);box-shadow:0 0 0 3px rgba(248,162,50,.1)}
.of-measure-edit-form{margin-top:16px;padding:16px;border-radius:16px;background:#f7f8fa;border:1px solid rgba(35,41,75,.1)}
.of-measure-edit-form[hidden]{display:none!important}
.of-measure-edit-form>label,.of-measure-edit-grid label{display:flex;flex-direction:column;gap:7px;color:#23294b;font-size:12px;font-weight:800}
.of-measure-edit-form input,.of-measure-edit-form textarea{width:100%;border:1px solid rgba(35,41,75,.2)!important;border-radius:12px;background:#fff!important;color:#23294b!important;padding:11px 12px;box-shadow:none!important}
.of-measure-edit-form input:focus,.of-measure-edit-form textarea:focus{border-color:#f8a232!important;outline:2px solid rgba(248,162,50,.24)!important;outline-offset:1px}
.of-measure-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}
.of-measure-edit-notes{margin-top:12px}
.of-measure-edit-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
@media(max-width:760px){.of-measure-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.of-measure-record-actions,.of-measure-edit-actions{flex-direction:column}.of-measure-record-actions .of-btn,.of-measure-edit-actions .of-btn{width:100%}}
@media(max-width:460px){.of-measure-edit-grid{grid-template-columns:1fr}}


/* Waléria Personal App 1.10.0 — Dashboard da Valéria 2.0 */
.of-dashboard-insights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:16px 0}
.of-dashboard-insight{display:flex;flex-direction:column;gap:14px;min-height:156px}
.of-dashboard-insight-main{display:flex;flex-direction:column;gap:6px}
.of-dashboard-insight-main strong{font-size:30px;line-height:1;color:#23294b}
.of-dashboard-insight-main small{color:#656b82;line-height:1.5}
.of-dashboard-progress{height:9px;border-radius:999px;background:#eceef3;overflow:hidden;margin-top:auto}
.of-dashboard-progress i{display:block;height:100%;border-radius:inherit;background:#f8a232}
.of-dashboard-attention{border-left:4px solid #f8a232}
.of-dashboard-bottom-grid{align-items:stretch}
.of-dashboard-bottom-grid>.of-card{height:100%}
@media(max-width:980px){.of-dashboard-insights{grid-template-columns:1fr 1fr}.of-dashboard-insights .of-dashboard-insight:last-child{grid-column:1/-1}}
@media(max-width:680px){.of-dashboard-insights{grid-template-columns:1fr}.of-dashboard-insights .of-dashboard-insight:last-child{grid-column:auto}.of-dashboard-insight{min-height:auto}.of-dashboard-insight-main strong{font-size:26px}}


/* Histórico de aulas por aluno e por data — v1.10.1 */
.of-history-view-tabs{display:flex;gap:8px;max-width:430px;margin:0 0 18px;padding:5px;border-radius:16px;background:rgba(35,41,75,.06)}
.of-history-view-tab{flex:1;border:1px solid #23294b;background:#fff;color:#23294b;border-radius:12px;padding:11px 16px;font:inherit;font-weight:700;cursor:pointer;box-shadow:none;outline-color:#f8a232}
.of-history-view-tab:hover{background:#fff;color:#23294b;border-color:#23294b;box-shadow:none}
.of-history-view-tab.active{background:#23294b;color:#fff;border-color:#23294b}
.of-history-view-tab.active:hover{background:#23294b;color:#fff}
.of-history-view-panel{display:none}.of-history-view-panel.active{display:block}
.of-date-history-layout{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(420px,1.18fr);gap:22px;align-items:start;margin-bottom:18px}
.of-date-history-calendar-card,.of-date-history-results-card{min-width:0}
.of-date-history-calendar .of-calendar-day{cursor:pointer}
.of-date-history-calendar .of-calendar-day:hover{background:#fff;border-color:rgba(35,41,75,.22);box-shadow:none;transform:none}
.of-date-history-calendar .of-calendar-day.has-records{border-width:2px;border-color:#f8a232}
.of-date-history-calendar .of-calendar-day.selected{background:#23294b;color:#fff;border-color:#23294b}
.of-date-history-calendar .of-calendar-day small{display:flex;align-items:center;gap:3px;font-size:10px;font-weight:700}
.of-date-history-calendar .of-calendar-day small i{width:6px;height:6px;border-radius:50%}
.of-date-history-calendar .present-dot{background:#2f9e63}.of-date-history-calendar .absent-dot{background:#d84b4b}
.of-date-history-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 18px}
.of-date-history-summary>div{display:grid;gap:4px;padding:13px;border:1px solid rgba(35,41,75,.1);border-radius:13px;background:rgba(35,41,75,.025)}
.of-date-history-summary span{font-size:12px;color:rgba(35,41,75,.65)}.of-date-history-summary strong{font-size:24px;color:#23294b}
.of-date-history-results{display:grid;gap:14px}
.of-date-history-group{border:1px solid rgba(35,41,75,.12);border-radius:16px;padding:16px;background:#fff}
.of-date-history-group-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:10px;border-bottom:1px solid rgba(35,41,75,.1)}
.of-date-history-group-head span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#f8a232;font-weight:800}.of-date-history-group-head h4{margin:3px 0 0;color:#23294b}.of-date-history-group-head b{color:#23294b;font-size:13px}
.of-date-history-list{display:grid}.of-date-history-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid rgba(35,41,75,.08)}.of-date-history-row:last-child{border-bottom:0}.of-date-history-row>div{display:grid;gap:3px}.of-date-history-row small{color:rgba(35,41,75,.6)}
.of-date-history-more{margin-top:12px;width:100%;background:#fff!important;color:#23294b!important;border-color:#23294b!important;box-shadow:none!important}.of-date-history-more:hover,.of-date-history-more:focus,.of-date-history-more:active{background:#23294b!important;color:#fff!important;border-color:#23294b!important;box-shadow:none!important;outline-color:#f8a232!important}
@media(max-width:980px){.of-date-history-layout{grid-template-columns:1fr}}
@media(max-width:700px){.of-history-view-tabs{max-width:none}.of-date-history-summary{grid-template-columns:1fr 1fr}.of-date-history-summary>div:last-child{grid-column:1/-1}.of-date-history-layout{gap:16px}.of-date-history-calendar-card,.of-date-history-results-card{padding:16px}}

/* Histórico por data compacto e lista única — v1.10.2 */
.of-history-view-tabs{
  display:flex!important;
  gap:8px!important;
  max-width:430px!important;
  margin:0 0 18px!important;
  padding:5px!important;
  border:1px solid rgba(35,41,75,.10)!important;
  border-radius:14px!important;
  background:rgba(35,41,75,.045)!important;
}
.of-history-view-tab,
.of-history-view-tab:hover,
.of-history-view-tab:focus,
.of-history-view-tab:active{
  flex:1!important;
  border:1px solid #23294b!important;
  background:#fff!important;
  color:#23294b!important;
  border-radius:10px!important;
  padding:11px 16px!important;
  box-shadow:none!important;
  outline:2px solid transparent!important;
  transform:none!important;
}
.of-history-view-tab.active,
.of-history-view-tab.active:hover,
.of-history-view-tab.active:focus,
.of-history-view-tab.active:active{
  background:#23294b!important;
  color:#fff!important;
  border-color:#23294b!important;
  box-shadow:none!important;
}
.of-history-view-tab:focus-visible{outline-color:#f8a232!important;outline-offset:2px!important}
.of-date-history-date-card{margin-bottom:18px}
.of-date-history-date-field{display:grid;gap:8px;max-width:360px;color:#23294b;font-weight:700}
.of-date-history-date-field>span{display:flex;width:100%;min-width:0;border:1px solid rgba(35,41,75,.20);border-radius:12px;background:#fff;padding:11px 13px}
.of-date-history-date-field input{display:block;width:100%;min-width:0;border:0!important;background:transparent!important;padding:0!important;color:#23294b!important;font:inherit!important;box-shadow:none!important;outline:0!important}
.of-date-history-date-field>span:focus-within{border-color:#f8a232;box-shadow:0 0 0 3px rgba(248,162,50,.14)}
.of-date-history-results-full{width:100%;margin-bottom:18px}
.of-date-history-results{display:grid;gap:16px;width:100%}
.of-date-history-master-list{width:100%;border:1px solid rgba(35,41,75,.12);border-radius:16px;overflow:hidden;background:#fff}
.of-date-history-group{padding:0!important;border:0!important;border-radius:0!important;background:#fff!important}
.of-date-history-group+.of-date-history-group{border-top:1px solid rgba(35,41,75,.14)!important}
.of-date-history-group-head{padding:14px 18px!important;background:rgba(35,41,75,.035)!important;border-bottom:1px solid rgba(35,41,75,.09)!important}
.of-date-history-list{padding:0 18px}
.of-date-history-row{min-height:58px}
.of-date-history-more,
.of-date-history-more:hover,
.of-date-history-more:focus,
.of-date-history-more:active{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  margin:0!important;
  padding:10px 18px!important;
  border:1px solid #23294b!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#23294b!important;
  font:inherit!important;
  font-weight:700!important;
  box-shadow:none!important;
  outline:2px solid transparent!important;
  cursor:pointer!important;
  transform:none!important;
}
.of-date-history-more:focus-visible{outline-color:#f8a232!important;outline-offset:2px!important}
@media(max-width:700px){
  .of-history-view-tabs{max-width:none!important}
  .of-date-history-date-field{max-width:none}
  .of-date-history-group-head,.of-date-history-list{padding-left:14px!important;padding-right:14px!important}
}


/* Sprint 11 — Central de Comunicação */
.of-communication-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.of-communication-tab{appearance:none;border:1px solid #23294b;background:#fff;color:#23294b;border-radius:10px;padding:11px 18px;font:inherit;font-weight:700;cursor:pointer;box-shadow:none;outline-color:#23294b}.of-communication-tab:hover,.of-communication-tab:focus{background:#fff;color:#23294b;border-color:#23294b;box-shadow:0 0 0 3px rgba(35,41,75,.10)}.of-communication-tab.active,.of-communication-tab.active:hover,.of-communication-tab.active:focus{background:#23294b;color:#fff;border-color:#23294b}.of-communication-panel{display:none}.of-communication-panel.active{display:block}.of-communication-list,.of-student-communications{display:grid;gap:14px}.of-communication-card,.of-student-communication{border-left:4px solid #f8a232}.of-communication-card.priority-urgent,.of-student-communication.priority-urgent{border-left-color:#b42318}.of-communication-card.priority-important,.of-student-communication.priority-important{border-left-color:#f8a232}.of-communication-meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:16px;padding-top:14px;border-top:1px solid #e7e9ef;color:#59617a;font-size:14px}.of-communication-meta strong{color:#23294b}.of-modal-wide{max-width:760px}.of-empty-state{text-align:center;padding:34px}.of-empty-state p{margin-bottom:0}.of-form-actions{display:flex;justify-content:flex-end;gap:10px}.of-student-communication small{display:block;margin-top:15px;color:#6b7280}@media(max-width:700px){.of-communication-tabs{display:grid;grid-template-columns:1fr 1fr 1fr}.of-communication-tab{padding:10px 6px}.of-form-actions{flex-direction:column-reverse}.of-form-actions .of-btn{width:100%}}

/* Waléria Personal App 1.11.1 — estabilização visual da Central de Comunicação
 * Regra oficial: nenhum controle clicável desta área pode herdar rosa, magenta
 * ou roxo do tema, navegador ou bibliotecas externas.
 */
.of-app .of-section[data-section="notifications"] .of-communication-tab,
.of-app .of-section[data-section="notifications"] .of-communication-tab:hover,
.of-app .of-section[data-section="notifications"] .of-communication-tab:focus,
.of-app .of-section[data-section="notifications"] .of-communication-tab:focus-visible,
.of-app .of-section[data-section="notifications"] .of-communication-tab:active {
  appearance:none!important;
  -webkit-appearance:none!important;
  background:#fff!important;
  color:#23294b!important;
  border:1px solid #23294b!important;
  box-shadow:none!important;
  outline:2px solid transparent!important;
  outline-offset:2px!important;
  text-shadow:none!important;
  transform:none!important;
}
.of-app .of-section[data-section="notifications"] .of-communication-tab.active,
.of-app .of-section[data-section="notifications"] .of-communication-tab.active:hover,
.of-app .of-section[data-section="notifications"] .of-communication-tab.active:focus,
.of-app .of-section[data-section="notifications"] .of-communication-tab.active:focus-visible,
.of-app .of-section[data-section="notifications"] .of-communication-tab.active:active {
  background:#23294b!important;
  color:#fff!important;
  border-color:#23294b!important;
  box-shadow:none!important;
}
.of-app .of-section[data-section="notifications"] .of-communication-tab:focus-visible {
  outline-color:#f8a232!important;
}

/* Botões da página e do modal de nova comunicação. */
.of-app .of-section[data-section="notifications"] .of-btn,
.of-app .of-section[data-section="notifications"] .of-btn:hover,
.of-app .of-section[data-section="notifications"] .of-btn:focus,
.of-app .of-section[data-section="notifications"] .of-btn:focus-visible,
.of-app .of-section[data-section="notifications"] .of-btn:active,
.of-app [data-modal-id="new-communication"] .of-btn,
.of-app [data-modal-id="new-communication"] .of-btn:hover,
.of-app [data-modal-id="new-communication"] .of-btn:focus,
.of-app [data-modal-id="new-communication"] .of-btn:focus-visible,
.of-app [data-modal-id="new-communication"] .of-btn:active {
  appearance:none!important;
  -webkit-appearance:none!important;
  border:1px solid #23294b!important;
  border-radius:10px!important;
  box-shadow:none!important;
  outline:2px solid transparent!important;
  outline-offset:2px!important;
  text-shadow:none!important;
  transform:none!important;
}
.of-app .of-section[data-section="notifications"] .of-btn.primary,
.of-app .of-section[data-section="notifications"] .of-btn.primary:hover,
.of-app .of-section[data-section="notifications"] .of-btn.primary:focus,
.of-app .of-section[data-section="notifications"] .of-btn.primary:active,
.of-app [data-modal-id="new-communication"] .of-btn.primary,
.of-app [data-modal-id="new-communication"] .of-btn.primary:hover,
.of-app [data-modal-id="new-communication"] .of-btn.primary:focus,
.of-app [data-modal-id="new-communication"] .of-btn.primary:active {
  background:#23294b!important;
  color:#fff!important;
  border-color:#23294b!important;
}
.of-app .of-section[data-section="notifications"] .of-btn.ghost,
.of-app .of-section[data-section="notifications"] .of-btn.ghost:hover,
.of-app .of-section[data-section="notifications"] .of-btn.ghost:focus,
.of-app .of-section[data-section="notifications"] .of-btn.ghost:active,
.of-app [data-modal-id="new-communication"] .of-btn.ghost,
.of-app [data-modal-id="new-communication"] .of-btn.ghost:hover,
.of-app [data-modal-id="new-communication"] .of-btn.ghost:focus,
.of-app [data-modal-id="new-communication"] .of-btn.ghost:active {
  background:#fff!important;
  color:#23294b!important;
  border-color:#23294b!important;
}
.of-app .of-section[data-section="notifications"] .of-btn:focus-visible,
.of-app [data-modal-id="new-communication"] .of-btn:focus-visible {
  outline-color:#f8a232!important;
}

/* Botões de arquivar e outros controles de ação nos cards. */
.of-app .of-section[data-section="notifications"] button:not(.of-communication-tab):not(.of-btn),
.of-app .of-section[data-section="notifications"] button:not(.of-communication-tab):not(.of-btn):hover,
.of-app .of-section[data-section="notifications"] button:not(.of-communication-tab):not(.of-btn):focus,
.of-app .of-section[data-section="notifications"] button:not(.of-communication-tab):not(.of-btn):active {
  color:#23294b!important;
  border-color:#23294b!important;
  box-shadow:none!important;
  outline-color:#f8a232!important;
}

/* Campos, selects, datas, checkboxes e radios da comunicação. */
.of-app [data-modal-id="new-communication"] input,
.of-app [data-modal-id="new-communication"] select,
.of-app [data-modal-id="new-communication"] textarea {
  accent-color:#23294b!important;
  caret-color:#23294b!important;
}
.of-app [data-modal-id="new-communication"] input:hover,
.of-app [data-modal-id="new-communication"] select:hover,
.of-app [data-modal-id="new-communication"] textarea:hover {
  border-color:#23294b!important;
  box-shadow:none!important;
}
.of-app [data-modal-id="new-communication"] input:focus,
.of-app [data-modal-id="new-communication"] input:focus-visible,
.of-app [data-modal-id="new-communication"] select:focus,
.of-app [data-modal-id="new-communication"] select:focus-visible,
.of-app [data-modal-id="new-communication"] textarea:focus,
.of-app [data-modal-id="new-communication"] textarea:focus-visible {
  border-color:#f8a232!important;
  outline:2px solid rgba(248,162,50,.24)!important;
  outline-offset:1px!important;
  box-shadow:none!important;
}
.of-app [data-modal-id="new-communication"] .of-modal-close,
.of-app [data-modal-id="new-communication"] .of-modal-close:hover,
.of-app [data-modal-id="new-communication"] .of-modal-close:focus,
.of-app [data-modal-id="new-communication"] .of-modal-close:active {
  background:#fff!important;
  color:#23294b!important;
  border-color:#23294b!important;
  box-shadow:none!important;
  outline-color:#f8a232!important;
}

/* Sprint 12 — Minha Evolução */
.of-evolution-selector-card{max-width:520px;margin-bottom:18px}.of-evolution-selector-card label{display:grid;gap:8px}.of-evolution-panel{display:grid;gap:18px}.of-evolution-kpis{margin-bottom:18px}.of-evolution-main-grid{align-items:stretch}.of-evolution-progress-card{display:grid;gap:16px}.of-evolution-progress{height:10px;background:#edf0f6;border-radius:999px;overflow:hidden}.of-evolution-progress span{display:block;height:100%;background:#f8a232;border-radius:inherit}.of-evolution-split{display:flex;gap:10px;flex-wrap:wrap}.of-evolution-split span{padding:7px 10px;border:1px solid #e5e8ef;border-radius:999px;color:#23294b;background:#fff;font-size:.86rem}.of-evolution-measures-card{margin-top:18px}.of-evolution-measure-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-top:16px}.of-evolution-measure-grid>div{display:grid;gap:5px;justify-items:center;text-align:center;padding:16px 12px;border:1px solid #e7e9ef;border-radius:16px;background:#fff}.of-evolution-measure-grid span{font-size:.82rem;color:#6d7180}.of-evolution-measure-grid strong{font-size:1.35rem;color:#23294b}.of-evolution-measure-grid small{color:#f8a232;font-weight:700}.of-section[data-section="evolution"] .of-btn,.of-section[data-section="evolution-admin"] .of-btn{box-shadow:none!important}.of-section[data-section="evolution"] .of-btn:hover,.of-section[data-section="evolution-admin"] .of-btn:hover{border-color:#23294b!important;color:#23294b!important;background:#fff!important}@media(max-width:760px){.of-evolution-main-grid{grid-template-columns:1fr}.of-evolution-measure-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v1.12.1 — mensalidade personalizada e seletor de data das medidas */
.of-package-value-field{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px}
.of-package-value-field legend{width:100%}
.of-custom-package-value{flex:1 1 220px;min-width:200px}
.of-custom-package-value[hidden]{display:none!important}
.of-date-picker-field{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:8px;align-items:center}
.of-date-picker-field>.of-date-br{width:100%}
.of-date-picker-button{width:46px;height:46px;border:1px solid #23294b;border-radius:12px;background:#fff;color:#23294b;font-size:20px;line-height:1;cursor:pointer}
.of-date-picker-button:hover,.of-date-picker-button:focus-visible{background:#23294b;color:#fff;border-color:#23294b;outline:2px solid #f8a232;outline-offset:2px}
.of-native-date-picker{position:absolute!important;right:0!important;bottom:0!important;width:46px!important;height:46px!important;opacity:0!important;pointer-events:none!important}

/* v1.12.1 — aplicativo sem a barra frontal do WordPress */
body:not(.wp-admin) .of-app{padding-top:0!important}
body:not(.wp-admin) .of-topbar{top:0!important}
@media (min-width:861px){
  body:not(.wp-admin) .of-sidebar{top:0!important;inset:0 auto auto 0!important;height:100vh!important}
}
@media (max-width:860px){
  body:not(.wp-admin) .of-main{min-height:100vh!important}
  body:not(.wp-admin) .of-sidebar{top:0!important;inset:0 auto auto 0!important;height:100dvh!important}
  body:not(.wp-admin) .of-mobile-overlay{inset:0!important}
  body:not(.wp-admin) .of-mobile-floating-menu{top:calc(16px + env(safe-area-inset-top,0px))!important}
}
.of-date-picker-button svg{display:block;margin:auto}

/* Waléria Personal App 1.12.2 — calendário de medidas sem rosa/magenta */
.of-app .of-date-picker-button,
.of-app .of-date-picker-button:hover,
.of-app .of-date-picker-button:focus,
.of-app .of-date-picker-button:focus-visible,
.of-app .of-date-picker-button:active{
  -webkit-appearance:none!important;
  appearance:none!important;
  width:46px!important;
  height:46px!important;
  border:1px solid #f8a232!important;
  border-radius:12px!important;
  background:#ffffff!important;
  color:#23294b!important;
  box-shadow:none!important;
  filter:none!important;
  transform:none!important;
  outline:none!important;
}
.of-app .of-date-picker-button:hover{
  background:#f8a232!important;
  color:#ffffff!important;
  border-color:#f8a232!important;
}
.of-app .of-date-picker-button:focus,
.of-app .of-date-picker-button:focus-visible{
  background:#ffffff!important;
  color:#23294b!important;
  border-color:#f8a232!important;
  outline:2px solid rgba(248,162,50,.42)!important;
  outline-offset:2px!important;
  box-shadow:0 0 0 3px rgba(248,162,50,.12)!important;
}
.of-app .of-date-picker-button:active{
  background:#23294b!important;
  color:#ffffff!important;
  border-color:#23294b!important;
  outline:2px solid #f8a232!important;
  outline-offset:2px!important;
  box-shadow:none!important;
}
.of-app .of-date-picker-button svg,
.of-app .of-date-picker-button svg *{
  color:inherit!important;
  stroke:currentColor!important;
}

/* Waléria Personal App 1.13.2 — logo transparente e clicável */
.of-sidebar-brand,
.of-sidebar-brand:hover,
.of-sidebar-brand:focus,
.of-sidebar-brand:focus-visible,
.of-sidebar-brand:active,
.of-topbar-logo,
.of-topbar-logo:hover,
.of-topbar-logo:focus,
.of-topbar-logo:focus-visible,
.of-topbar-logo:active{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
}
.of-sidebar-brand img,
.of-topbar-logo img{
  background:transparent!important;
  mix-blend-mode:normal!important;
}

/* Waléria Personal App 1.13.4 — organização de alunos ativos/inativos */
.of-student-list-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:18px 0 10px;padding:0 2px 9px;border-bottom:2px solid #f8a232;color:#23294b}
.of-student-list-heading span{font-weight:800;font-size:17px}
.of-student-list-heading small{font-size:13px;color:#23294b;opacity:.68}
.of-student-list-heading.inactive{margin-top:30px;border-bottom-color:#23294b}
.of-student-item[data-student-status="inativo"]{opacity:.78}
.of-student-item[data-student-status="inativo"] .of-accordion-toggle{background:#fff}
@media(max-width:700px){.of-student-list-heading{align-items:flex-start;flex-direction:column;gap:2px}.of-student-list-heading small{font-size:12px}}

/* Waléria Personal App 1.14.2 — frequência por data */
.of-attendance-date-card{margin-bottom:18px}
.of-attendance-date-control{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;max-width:420px}
.of-attendance-date-control .of-date-picker-field{width:230px;max-width:100%}
.of-attendance-date-control small{width:100%;color:#23294b;opacity:.72}
@media(max-width:700px){.of-attendance-date-control,.of-attendance-date-control .of-date-picker-field{width:100%;max-width:none}}


/* Waléria Personal App 1.14.3 — somatório vitalício e frequência histórica sincronizada */
.of-lifetime-entry-card{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px;padding:22px 24px;border:1px solid rgba(35,41,75,.10);background:#fff}
.of-lifetime-entry-card>div{min-width:0}.of-lifetime-entry-card h3{margin:4px 0 5px}.of-lifetime-entry-card p{margin:0;max-width:720px;color:var(--muted)}
.of-lifetime-entry-card>strong{flex:0 0 auto;color:var(--orange);font-size:clamp(28px,3vw,42px);line-height:1;font-weight:800;letter-spacing:-.03em}
@media(max-width:700px){.of-lifetime-entry-card{align-items:flex-start;flex-direction:column;gap:14px}.of-lifetime-entry-card>strong{font-size:32px}}


/* v1.14.4 — frequência somente segunda, quarta e sexta */
.of-section[data-section="classes"] .of-choice button.of-attendance-day-locked,
.of-section[data-section="classes"] .of-choice button.of-attendance-day-locked:hover,
.of-section[data-section="classes"] .of-choice button.of-attendance-day-locked:focus,
.of-section[data-section="classes"] .of-choice button.of-attendance-day-locked:active{
  cursor:not-allowed!important;
  opacity:.48!important;
  background:#f7f4ef!important;
  color:#23294b!important;
  border-color:rgba(35,41,75,.16)!important;
  box-shadow:none!important;
  transform:none!important;
}
.of-section[data-section="classes"] .of-save-attendance.of-attendance-day-locked,
.of-section[data-section="classes"] .of-save-attendance.of-attendance-day-locked:hover,
.of-section[data-section="classes"] .of-save-attendance.of-attendance-day-locked:focus,
.of-section[data-section="classes"] .of-save-attendance.of-attendance-day-locked:active{
  cursor:not-allowed!important;
  opacity:.58!important;
  background:#ffffff!important;
  color:#23294b!important;
  border:1px solid rgba(35,41,75,.18)!important;
  box-shadow:none!important;
  transform:none!important;
}


/* v1.14.5 — chamada encerrada após salvar */
.of-choice button.of-attendance-saved-locked,
.of-save-attendance.of-attendance-saved-locked{cursor:not-allowed!important;opacity:.72;}
.of-choice button.of-attendance-saved-locked.active{opacity:1;}
.of-save-attendance.of-attendance-saved-locked{background:#f3f3f3!important;color:#6f6259!important;border-color:#d8d0ca!important;box-shadow:none!important;}


/* v1.16.0 — Central de Comunicação */
.of-communication-summary{margin:0 0 16px}
.of-communication-templates-card,.of-whatsapp-groups-card{margin:0 0 16px}
.of-template-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.of-template-actions .of-btn{min-height:42px}
.of-whatsapp-group-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.of-whatsapp-group-grid label{display:grid;gap:7px}
.of-whatsapp-group-grid input{width:100%}
.of-whatsapp-groups-form .of-form-actions{margin-top:14px}
.of-communication-card .of-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}
.of-send-whatsapp{border-color:#23294b!important;color:#23294b!important;background:#fff!important}
.of-send-whatsapp:hover,.of-send-whatsapp:focus,.of-send-whatsapp:active{border-color:#f8a232!important;background:#f8a232!important;color:#fff!important;box-shadow:none!important}
.of-communication-templates-card .of-btn:hover,.of-communication-templates-card .of-btn:focus{border-color:#f8a232!important;background:#fff!important;color:#23294b!important;box-shadow:0 0 0 3px rgba(248,162,50,.14)!important}
@media(max-width:980px){.of-whatsapp-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.of-whatsapp-group-grid{grid-template-columns:1fr}.of-template-actions{display:grid;grid-template-columns:1fr}.of-template-actions .of-btn{width:100%}.of-communication-card .of-actions{display:grid;grid-template-columns:1fr}.of-communication-card .of-actions .of-btn{width:100%}}

/* v1.16.1 — responsividade geral: widescreen, notebook, tablet e mobile */
@media (min-width:1600px){
  .of-sidebar{width:260px}
  .of-app{grid-template-columns:260px minmax(0,1fr)}
  .of-topbar{padding-left:40px;padding-right:40px}
  .of-content{padding-left:40px;padding-right:40px;max-width:1920px;width:100%;margin:0 auto}
}

/* Notebook / telas desktop compactas (ex.: 1366x768 e 1280x800). */
@media (min-width:1025px) and (max-width:1440px){
  .of-app{grid-template-columns:210px minmax(0,1fr)!important}
  .of-sidebar{width:210px!important;padding:16px 12px!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin}
  .of-sidebar-head{margin-bottom:10px!important;gap:8px!important}
  .of-sidebar-brand{padding:2px 4px!important;min-width:0!important}
  .of-sidebar-brand img{width:min(150px,100%)!important;max-height:38px!important;object-fit:contain!important}
  .of-user{padding:9px 8px!important;margin-bottom:10px!important;border-radius:12px!important;gap:8px!important}
  .of-avatar{width:32px!important;height:32px!important;min-width:32px!important;font-size:12px!important}
  .of-user>div:last-child{font-size:12px!important;line-height:1.2!important;min-width:0!important}
  .of-nav{gap:2px!important}
  .of-nav button{padding:8px 10px!important;border-radius:9px!important;font-size:12.5px!important;line-height:1.2!important;min-height:34px!important}
  .of-logout{margin-top:auto!important;padding:9px 10px!important;font-size:12.5px!important;line-height:1.2!important;position:sticky!important;bottom:0!important;background:var(--brown)!important;border-top:1px solid rgba(255,255,255,.08)!important;z-index:2!important}
  .of-main{grid-column:2!important;min-width:0!important}
  .of-topbar{padding:16px 24px 12px!important}
  .of-topbar h1{font-size:23px!important}
  .of-content{padding:6px 24px 38px!important}
  .of-section-head{margin:8px 0 14px!important}
  .of-section-head h2{font-size:26px!important}
  .of-hero{padding:24px!important;border-radius:20px!important}
  .of-hero h2{font-size:30px!important}
  .of-card{padding:17px!important;border-radius:17px!important}
  .of-grid{gap:13px!important}
  .of-grid.stats{gap:12px!important}
  .of-card.stat strong{font-size:25px!important}
  .of-mini-grid{gap:8px!important}
  .of-mini-grid>div{padding:10px!important}
  .of-class-grid{gap:13px!important}
  .of-accordion-toggle{padding:13px 15px!important}
  .of-accordion-panel{padding:0 15px 15px!important}
  .of-whatsapp-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* Notebook baixo: garante que Sair nunca seja empurrado para fora da tela. */
@media (min-width:1025px) and (max-height:820px){
  .of-sidebar{padding-top:11px!important;padding-bottom:8px!important}
  .of-sidebar-head{margin-bottom:6px!important}
  .of-sidebar-brand img{max-height:31px!important;width:min(138px,100%)!important}
  .of-user{padding:7px!important;margin-bottom:6px!important}
  .of-avatar{width:28px!important;height:28px!important;min-width:28px!important}
  .of-nav{gap:1px!important}
  .of-nav button{padding:6px 9px!important;min-height:29px!important;font-size:12px!important}
  .of-logout{padding:7px 9px!important;min-height:30px!important}
}

/* Tablet horizontal: menu vira drawer antes que o conteúdo fique espremido. */
@media (min-width:821px) and (max-width:1024px){
  .of-content{padding-left:20px!important;padding-right:20px!important}
  .of-grid.stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .of-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .of-class-grid,.of-grid.two{grid-template-columns:1fr!important}
}

/* Mobile retrato: preserva leitura e evita controles espremidos. */
@media (max-width:560px){
  .of-content{padding-left:12px!important;padding-right:12px!important;padding-bottom:32px!important}
  .of-card{padding:15px!important;border-radius:16px!important}
  .of-section-head{gap:10px!important;flex-wrap:wrap!important}
  .of-section-head h2{font-size:24px!important}
  .of-grid.stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .of-card.stat{padding:13px!important}
  .of-card.stat strong{font-size:22px!important}
  .of-hero{gap:14px!important;border-radius:18px!important}
  .of-hero h2{font-size:25px!important}
  .of-actions{display:grid!important;grid-template-columns:1fr!important}
  .of-actions .of-btn{width:100%!important;min-width:0!important}
  .of-row,.of-attendance-row{align-items:flex-start!important;flex-wrap:wrap!important}
  .of-choice{margin-left:auto!important}
  .of-toast{left:12px!important;right:12px!important;bottom:16px!important;max-width:none!important}
}

/* Hardening para qualquer breakpoint: tabelas e campos nunca alargam a página. */
.of-app img,.of-app svg{max-width:100%}
.of-app input,.of-app select,.of-app textarea,.of-app button{max-width:100%}
.of-history-table-wrap,.of-finance-line-chart{max-width:100%;-webkit-overflow-scrolling:touch}

/* Waléria Personal App 1.17.0 — Biblioteca de exercícios e treinos remotos */
.of-exercise-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px;padding:5px;background:rgba(35,41,75,.06);border-radius:16px;max-width:680px}
.of-exercise-tabs button{border:1px solid transparent;background:#fff;color:#23294b;padding:11px 16px;border-radius:12px;font:inherit;font-weight:800;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease}
.of-exercise-tabs button:hover,.of-exercise-tabs button:focus-visible{border-color:#f8a232;color:#23294b;outline:none;box-shadow:none}
.of-exercise-tabs button.active{background:#23294b;color:#fff;border-color:#23294b}
.of-exercise-panel{display:none}.of-exercise-panel.active{display:block}
.of-exercise-upload-card{margin-bottom:24px}
.of-exercise-file-field input[type=file]{width:100%;border:1px solid rgba(35,41,75,.16);border-radius:14px;padding:8px;background:#fff;color:#23294b}
.of-exercise-file-field input[type=file]::file-selector-button{border:0;border-radius:10px;padding:10px 14px;margin-right:12px;background:#23294b;color:#fff;font:inherit;font-weight:800;cursor:pointer}
.of-exercise-file-field input[type=file]::file-selector-button:hover{background:#f8a232;color:#23294b}
.of-exercise-meta-fields{display:grid;gap:14px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(35,41,75,.1)}
/* v1.23.0 — seletor de vídeos da galeria + cadastro em lote */
.of-exercise-gallery-picker{display:grid;gap:10px;justify-items:start}
.of-exercise-gallery-picker small{color:rgba(35,41,75,.62);line-height:1.45}
.of-visually-hidden-file{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}
.of-exercise-gallery-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;margin:0!important}
.of-exercise-batch-modal-card{width:min(860px,100%);max-height:92dvh;overflow:auto}
.of-exercise-batch-intro{margin:0 0 18px;color:rgba(35,41,75,.66)}
.of-exercise-batch-list{display:grid;gap:14px}
.of-exercise-batch-item{display:grid;grid-template-columns:180px minmax(0,1fr);gap:16px;padding:14px;border:1px solid rgba(35,41,75,.13);border-radius:16px;background:#fff}
.of-exercise-batch-item.is-saved{border-color:rgba(35,41,75,.22);background:rgba(35,41,75,.035)}
.of-exercise-batch-item.has-error{border-color:#f8a232}
.of-exercise-batch-preview{aspect-ratio:9/16;min-height:240px;border-radius:13px;overflow:hidden;background:#101426}
.of-exercise-batch-preview video{display:block;width:100%;height:100%;object-fit:cover;background:#101426}
.of-exercise-batch-fields{display:grid;gap:11px;align-content:start}
.of-exercise-batch-file{display:grid;gap:3px;padding-bottom:2px}
.of-exercise-batch-file strong{color:#23294b}.of-exercise-batch-file small{color:rgba(35,41,75,.56);overflow-wrap:anywhere}
.of-exercise-batch-status{min-height:20px;font-size:12px;font-weight:800;color:rgba(35,41,75,.62)}
.of-exercise-batch-status.is-uploading{color:#f8a232}.of-exercise-batch-status.is-saved{color:#23294b}.of-exercise-batch-status.has-error{color:#f8a232}
.of-exercise-batch-footer{position:sticky;bottom:-1px;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding:14px 0 2px;background:linear-gradient(to top,#fff 78%,rgba(255,255,255,.88))}
.of-exercise-batch-footer strong{font-size:13px;color:rgba(35,41,75,.66)}
.of-optional{font-size:12px;font-weight:600;color:rgba(35,41,75,.55)}
.of-exercise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.of-exercise-card{min-width:0;border:1px solid rgba(35,41,75,.1);border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 8px 24px rgba(35,41,75,.06)}
.of-exercise-video-shell{aspect-ratio:9/16;background:#101426;display:flex;align-items:center;justify-content:center;overflow:hidden}
.of-exercise-video-shell video{display:block;width:100%;height:100%;object-fit:cover;background:#101426}
.of-exercise-card-body{padding:16px;display:grid;gap:10px}
.of-exercise-card-body h3{margin:0;color:#23294b}.of-exercise-card-body p{margin:0;color:rgba(35,41,75,.72);line-height:1.55}
.of-exercise-card-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}
.of-exercise-select{display:flex!important;align-items:center;gap:7px!important;padding:7px 9px!important;border:1px solid rgba(35,41,75,.14)!important;border-radius:10px!important;background:#fff!important;color:#23294b!important;font-size:12px!important;font-weight:800!important;white-space:nowrap}
.of-exercise-select input{accent-color:#f8a232!important}
.of-workout-class-picker{border:1px solid rgba(35,41,75,.12);border-radius:16px;padding:15px;margin:4px 0 18px}
.of-workout-class-picker legend{padding:0 7px;font-weight:800;color:#23294b}.of-workout-class-picker>div{display:flex;gap:10px 18px;flex-wrap:wrap}.of-workout-class-picker label{display:flex;align-items:center;gap:7px;margin:0}.of-workout-class-picker input{accent-color:#f8a232}
.of-workout-exercise-title{margin:20px 0 12px}.of-workout-history{display:grid;gap:0}.of-workout-history-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;padding:15px 0;border-bottom:1px solid rgba(35,41,75,.1)}.of-workout-history-row:last-child{border-bottom:0}.of-workout-history-row>div{display:grid;gap:4px}.of-workout-history-row small{color:rgba(35,41,75,.62)}
.of-student-workouts{display:grid;gap:22px}.of-student-workout.is-latest{border:2px solid rgba(248,162,50,.5)}.of-workout-instructions{margin:0 0 18px;padding:14px 16px;border-left:4px solid #f8a232;background:rgba(248,162,50,.08);border-radius:0 12px 12px 0}.of-workout-instructions p{margin:6px 0 0}.of-student-exercise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.of-app .of-exercise-tabs button:focus,.of-app .of-exercise-tabs button:active,.of-app .of-exercise-file-field input[type=file]:focus{outline:2px solid #f8a232!important;outline-offset:2px!important;box-shadow:none!important}
/* v1.23.1 — vídeos de exercícios em formato vertical 9:16, sem barras laterais */
.of-exercise-video-shell,.of-exercise-batch-preview{background:#101426}
@media(max-width:1180px){.of-exercise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.of-exercise-tabs{max-width:none}.of-exercise-tabs button{flex:1 1 130px}.of-exercise-grid,.of-student-exercise-grid{grid-template-columns:1fr}.of-workout-history-row{grid-template-columns:1fr;gap:7px}.of-exercise-card-head{flex-direction:column}.of-exercise-select{width:100%;justify-content:center}.of-exercise-gallery-picker{justify-items:stretch}.of-exercise-gallery-button{width:100%}.of-exercise-batch-modal-card{max-height:94dvh;padding:20px 14px 16px}.of-exercise-batch-item{grid-template-columns:1fr;padding:12px}.of-exercise-batch-preview{aspect-ratio:9/16;min-height:0}.of-exercise-batch-footer{align-items:stretch;flex-direction:column}.of-exercise-batch-footer .of-btn{width:100%}}


/* Waléria Personal App 1.18.0 — pacote real + calendário baseado em registros */
.of-grid.three{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}
.of-current-package-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;margin-bottom:18px}
.of-current-package-toolbar h3{margin-bottom:6px}
.of-current-package-toolbar p{margin:0;color:rgba(35,41,75,.66);max-width:760px;line-height:1.5}
.of-current-package-dates{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:10px}
.of-current-package-dates>span{display:grid;gap:4px;padding:12px 14px;border-radius:13px;background:rgba(35,41,75,.05);font-size:11px;color:rgba(35,41,75,.62)}
.of-current-package-dates strong{font-size:14px;color:#23294b}
.of-student-home-hero{align-items:center}
.of-home-package-card{margin-bottom:16px;border-color:rgba(248,162,50,.34);box-shadow:0 12px 32px rgba(35,41,75,.07)}
.of-home-package-card .of-card-head{align-items:flex-start}
.of-home-package-card .of-card-head p{margin:4px 0 0;color:rgba(35,41,75,.64)}
.of-home-package-remaining{display:grid;text-align:right;font-size:30px;line-height:1;color:#23294b}
.of-home-package-remaining small{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgba(35,41,75,.54);margin-top:5px}
.of-home-package-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
.of-home-package-meta>div{display:grid;gap:5px;padding:12px;border-radius:13px;background:rgba(35,41,75,.05)}
.of-home-package-meta span{font-size:11px;color:rgba(35,41,75,.58)}
.of-home-package-meta strong{font-size:14px;color:#23294b}
.of-student-home-shortcuts{margin:16px 0}
.of-home-shortcut{display:flex;flex-direction:column;align-items:flex-start;min-height:190px}
.of-home-shortcut h3{margin-bottom:7px}
.of-home-shortcut p{margin:0 0 18px;color:rgba(35,41,75,.68);line-height:1.45}
.of-home-shortcut .of-btn{margin-top:auto}
.of-measure-history-action .of-measure-history-orange,
.of-measure-history-action .of-measure-history-orange:hover,
.of-measure-history-action .of-measure-history-orange:focus,
.of-measure-history-action .of-measure-history-orange:active{background:#f8a232!important;border-color:#f8a232!important;color:#fff!important;min-height:44px;padding:11px 17px!important;box-shadow:none!important;transform:none!important}
.of-student-package-summary .of-card-head{align-items:flex-start}
.of-package-big-number{display:grid;text-align:right;font-size:30px;line-height:1;color:#23294b}
.of-package-big-number small{margin-top:5px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:rgba(35,41,75,.54)}
.of-student-calendar-workspace{margin:18px 0}
.of-student-package-calendar .of-calendar-day[data-student-calendar-date]{cursor:pointer}
.of-student-package-calendar .of-calendar-day[data-student-calendar-date]:focus-visible{outline:2px solid #f8a232!important;outline-offset:2px;box-shadow:none!important}
.of-student-package-calendar .of-calendar-day:not([data-student-calendar-date]){pointer-events:none}
.of-calendar-legend .present{background:#2f9e63!important;border-color:#2f9e63!important}
.of-calendar-legend .absent{background:#d84b4b!important;border-color:#d84b4b!important}
.of-calendar-legend .planned{background:#f8a232!important;border-color:#f8a232!important}
.of-calendar-legend .unmarked{background:#fff!important;border-color:rgba(35,41,75,.3)!important}

@media(max-width:1180px){
  .of-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}
  .of-student-home-shortcuts .of-home-shortcut:last-child{grid-column:1/-1;min-height:0}
}
@media(max-width:900px){
  .of-current-package-toolbar{grid-template-columns:1fr}
  .of-current-package-dates{width:100%}
}
@media(max-width:700px){
  .of-grid.three{grid-template-columns:1fr}
  .of-student-home-shortcuts .of-home-shortcut:last-child{grid-column:auto}
  .of-home-shortcut{min-height:0}
  .of-home-package-card .of-card-head{gap:12px}
  .of-home-package-meta,.of-current-package-dates{grid-template-columns:1fr}
  .of-home-package-remaining,.of-package-big-number{text-align:left}
  .of-student-calendar-workspace .of-calendar-lesson-summary{width:100%}
}


/* ============================================================
   Waléria Personal App v1.18.2 — Login sem zoom + navegação protegida
   ============================================================ */
/* O login permanece responsivo, mas sua escala é fixa. Não há zoom por
   pinça, duplo toque ou foco automático em campos no celular. */
html:has(.of-login-wrap),
body:has(.of-login-wrap){
  width:100%!important;
  min-width:100%!important;
  height:auto!important;
  min-height:100%!important;
  max-height:none!important;
  overflow:auto!important;
  overscroll-behavior:auto!important;
  -webkit-text-size-adjust:100%!important;
}
body:has(.of-login-wrap){
  position:relative!important;
  inset:auto!important;
  min-height:100dvh!important;
  background:#23294b!important;
}
.of-login-wrap{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  min-width:100%!important;
  height:auto!important;
  min-height:100dvh!important;
  max-height:none!important;
  overflow:visible!important;
  touch-action:pan-x pan-y!important;
  -ms-touch-action:pan-x pan-y!important;
}
.of-login-card{
  max-height:none!important;
  touch-action:pan-x pan-y!important;
}
.of-login-form input,
.of-login-form button,
.of-login-form label,
.of-login-form a{
  touch-action:manipulation!important;
}
.of-login-form input,
.of-login-form select,
.of-login-form textarea{
  font-size:16px!important;
}

/* Evita overscroll horizontal dentro do app. A proteção efetiva de sessão e
   histórico é feita também em JS; esta regra reduz o gesto lateral onde o
   navegador respeita overscroll-behavior. */
html:has(.of-app),
body:has(.of-app),
.of-app{
  overscroll-behavior-x:none!important;
}


/* Waléria Personal 1.18.3 — login sem zoom automático ao focar campos (iOS/Safari) */
html:has(.of-login-wrap),body:has(.of-login-wrap){-webkit-text-size-adjust:100%!important;text-size-adjust:100%!important}
.of-login-wrap,.of-login-card,.of-login-form{touch-action:manipulation}
.of-login-form input[type="text"],
.of-login-form input[type="password"],
.of-login-form input[name="login"]{font-size:16px!important;line-height:1.25!important;transform:none!important;zoom:1!important}
@media(max-height:720px){
  .of-login-form input[type="text"],
  .of-login-form input[type="password"],
  .of-login-form input[name="login"]{font-size:16px!important}
}

/* Waléria Personal App 1.19.0 — Exercícios: identidade oficial + acompanhamento de treino */
.of-app .of-section[data-section="exercises"] .of-btn,
.of-app .of-section[data-section="exercises"] .of-btn:hover,
.of-app .of-section[data-section="exercises"] .of-btn:focus,
.of-app .of-section[data-section="exercises"] .of-btn:focus-visible,
.of-app .of-section[data-section="exercises"] .of-btn:active,
.of-app [data-modal-id="edit-exercise"] .of-btn,
.of-app [data-modal-id="edit-exercise"] .of-btn:hover,
.of-app [data-modal-id="edit-exercise"] .of-btn:focus,
.of-app [data-modal-id="edit-exercise"] .of-btn:active{box-shadow:none!important;outline-color:#f8a232!important;text-decoration:none!important}
.of-app .of-section[data-section="exercises"] .of-btn.primary,
.of-app .of-section[data-section="exercises"] .of-btn.primary:hover,
.of-app .of-section[data-section="exercises"] .of-btn.primary:focus,
.of-app .of-section[data-section="exercises"] .of-btn.primary:active,
.of-app [data-modal-id="edit-exercise"] .of-btn.primary,
.of-app [data-modal-id="edit-exercise"] .of-btn.primary:hover,
.of-app [data-modal-id="edit-exercise"] .of-btn.primary:focus,
.of-app [data-modal-id="edit-exercise"] .of-btn.primary:active{background:#f8a232!important;color:#fff!important;border:1px solid #f8a232!important}
.of-app .of-section[data-section="exercises"] .of-btn.soft,
.of-app .of-section[data-section="exercises"] .of-btn.soft:hover,
.of-app .of-section[data-section="exercises"] .of-btn.soft:focus,
.of-app .of-section[data-section="exercises"] .of-btn.soft:active{background:#23294b!important;color:#fff!important;border:1px solid #23294b!important}
.of-app .of-section[data-section="exercises"] .of-btn.ghost,
.of-app .of-section[data-section="exercises"] .of-btn.ghost:hover,
.of-app .of-section[data-section="exercises"] .of-btn.ghost:focus,
.of-app .of-section[data-section="exercises"] .of-btn.ghost:active{background:#fff!important;color:#23294b!important;border:1px solid #23294b!important}
.of-app .of-section[data-section="exercises"] .of-btn.ghost.is-done,
.of-app .of-section[data-section="exercises"] .of-btn.ghost.is-done:hover,
.of-app .of-section[data-section="exercises"] .of-btn.ghost.is-done:focus{background:#23294b!important;color:#fff!important;border-color:#23294b!important}
.of-app .of-section[data-section="exercises"] input[type="checkbox"]{accent-color:#f8a232!important}
.of-app .of-section[data-section="exercises"] input:focus,
.of-app .of-section[data-section="exercises"] textarea:focus,
.of-app .of-section[data-section="exercises"] select:focus{border-color:#f8a232!important;outline:2px solid rgba(248,162,50,.22)!important;box-shadow:none!important}

.of-student-workout-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px;padding:5px;background:rgba(35,41,75,.06);border-radius:16px;max-width:520px}
.of-student-workout-tabs button{appearance:none;border:1px solid #23294b;background:#fff;color:#23294b;border-radius:12px;padding:11px 16px;font:inherit;font-weight:800;cursor:pointer;box-shadow:none}
.of-student-workout-tabs button:hover,.of-student-workout-tabs button:focus{background:#fff;color:#23294b;border-color:#f8a232;outline:2px solid rgba(248,162,50,.18);outline-offset:1px}
.of-student-workout-tabs button.active,.of-student-workout-tabs button.active:hover,.of-student-workout-tabs button.active:focus{background:#23294b;color:#fff;border-color:#23294b;outline:none}
.of-student-workout-panel{display:none}.of-student-workout-panel.active{display:block}
.of-workout-tracking-status{display:grid;gap:4px;margin:0 0 18px;padding:14px 16px;border-radius:14px;background:rgba(35,41,75,.055);border:1px solid rgba(35,41,75,.1)}
.of-workout-tracking-status strong{color:#23294b}.of-workout-tracking-status span{color:rgba(35,41,75,.72);font-size:.92rem}
.of-workout-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.of-workout-actions .of-btn{min-width:150px}
.of-workout-package-note{margin:14px 0 0;padding-top:14px;border-top:1px solid rgba(35,41,75,.1);color:rgba(35,41,75,.72);font-size:.9rem;line-height:1.5}
.of-student-exercise-grid .of-exercise-card.is-done{border-color:#23294b;box-shadow:0 0 0 2px rgba(35,41,75,.08)}
.of-workout-exercise-check{width:100%;margin-top:4px}
.of-student-workout-history{display:grid;gap:18px}.of-completed-workout{display:grid;gap:16px}
.of-completed-workout-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.of-completed-workout-stats>div{display:grid;gap:4px;padding:13px;border-radius:13px;background:rgba(35,41,75,.05)}.of-completed-workout-stats span{font-size:.78rem;color:rgba(35,41,75,.66)}.of-completed-workout-stats strong{color:#23294b}
.of-completed-workout-details{border-top:1px solid rgba(35,41,75,.1);padding-top:14px}.of-completed-workout-details summary{cursor:pointer;color:#23294b;font-weight:800}.of-completed-exercise-list{display:grid;gap:0;margin-top:10px}.of-completed-exercise-list>div{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid rgba(35,41,75,.08)}.of-completed-exercise-list>div:last-child{border-bottom:0}.of-completed-exercise-list span{color:#f8a232;font-weight:900}.of-completed-exercise-list small{color:rgba(35,41,75,.62)}
@media(max-width:700px){.of-student-workout-tabs{max-width:none}.of-student-workout-tabs button{flex:1 1 145px}.of-workout-actions{display:grid;grid-template-columns:1fr}.of-workout-actions .of-btn{width:100%}.of-completed-workout-stats{grid-template-columns:1fr}.of-completed-exercise-list>div{grid-template-columns:24px minmax(0,1fr)}.of-completed-exercise-list small{grid-column:2}}
.of-workout-history-item{border-bottom:1px solid rgba(35,41,75,.1)}.of-workout-history-item:last-child{border-bottom:0}.of-workout-history-item .of-workout-history-row{border-bottom:0}.of-manager-workout-followup{padding:0 0 14px}.of-manager-workout-followup summary{cursor:pointer;color:#23294b;font-weight:800;font-size:.9rem}.of-manager-workout-students{display:grid;gap:0;margin-top:10px;border:1px solid rgba(35,41,75,.1);border-radius:12px;padding:0 12px}.of-manager-workout-students>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid rgba(35,41,75,.08)}.of-manager-workout-students>div:last-child{border-bottom:0}.of-manager-workout-students small{color:rgba(35,41,75,.65)}@media(max-width:700px){.of-manager-workout-students>div{grid-template-columns:1fr auto}.of-manager-workout-students small{grid-column:1/-1}}

/* v1.20.0 — identidade visual, menu mobile e centrais compactas */
.of-app .of-exercise-tabs button,
.of-app .of-student-workout-tabs button{background:#fff!important;color:#23294b!important;border:1px solid transparent!important;box-shadow:none!important}
.of-app .of-exercise-tabs button:hover,.of-app .of-exercise-tabs button:focus-visible,.of-app .of-exercise-tabs button:active,
.of-app .of-student-workout-tabs button:hover,.of-app .of-student-workout-tabs button:focus-visible,.of-app .of-student-workout-tabs button:active{background:rgba(248,162,50,.14)!important;color:#23294b!important;border-color:#f8a232!important;outline:2px solid rgba(248,162,50,.20)!important;box-shadow:none!important}
.of-app .of-exercise-tabs button.active,.of-app .of-student-workout-tabs button.active{background:#23294b!important;color:#fff!important;border-color:#23294b!important;outline:none!important}
.of-home-notification-center,.of-manager-notification-center{padding:16px 18px!important;margin:14px 0 18px}
.of-notification-center-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.of-notification-center-head h3{margin:2px 0 0}
.of-notification-compact-list{display:grid;gap:8px}.of-app-notification-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid rgba(35,41,75,.09)}.of-app-notification-item:last-child{border-bottom:0}.of-app-notification-copy{min-width:0}.of-app-notification-copy strong{display:block;color:#23294b}.of-app-notification-copy p{margin:3px 0 4px;color:rgba(35,41,75,.75);font-size:13px}.of-app-notification-copy small{color:rgba(35,41,75,.55);font-size:11px}.of-app-notification-actions{display:flex;gap:6px;align-items:center}.of-app-notification-actions .of-btn{padding:8px 11px;border-radius:10px;font-size:12px}.of-notification-empty{padding:8px 0;color:rgba(35,41,75,.62);font-size:13px}
.of-manager-notification-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.of-manager-notification-grid button{border:1px solid rgba(35,41,75,.1);background:rgba(35,41,75,.035);border-radius:14px;padding:12px;text-align:left;color:#23294b;cursor:pointer}.of-manager-notification-grid button:hover,.of-manager-notification-grid button:focus-visible{border-color:#f8a232;background:rgba(248,162,50,.10);outline:none}.of-manager-notification-grid strong{display:block;font-size:22px}.of-manager-notification-grid span{font-size:12px;color:rgba(35,41,75,.66)}
.of-btn:disabled,.of-btn[aria-disabled="true"]{opacity:.48!important;cursor:not-allowed!important;pointer-events:none!important}
@media(max-width:900px){.of-sidebar-head .of-sidebar-brand{display:none!important}.of-sidebar-head{justify-content:flex-end!important;margin-bottom:4px!important}.of-sidebar{padding-top:12px!important}.of-user{margin-top:0!important}.of-manager-notification-grid{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:700px){.of-home-notification-center,.of-manager-notification-center{padding:14px!important}.of-notification-center-head{align-items:flex-start;flex-direction:column}.of-notification-center-head .of-btn{width:100%}.of-app-notification-item{grid-template-columns:1fr;gap:8px}.of-app-notification-actions{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto}.of-app-notification-actions .of-btn{width:100%}.of-manager-notification-grid{grid-template-columns:1fr}.of-manager-notification-grid button{text-align:center}}

/* v1.22.5 — busca instantânea por início do nome + correção do seletor em Medidas */
.of-student-picker{
  position:relative;
  width:100%;
  margin:8px 0 10px;
  z-index:6;
}
.of-student-picker-search{
  width:100%;
  min-height:46px;
  margin:0;
  padding:11px 44px 11px 15px;
  border:1px solid rgba(35,41,75,.18);
  border-radius:14px;
  background:#fff;
  color:#23294b;
  font:inherit;
  font-size:14px;
  font-weight:650;
  outline:none;
  box-sizing:border-box;
  box-shadow:0 5px 18px rgba(35,41,75,.05);
  transition:border-color .18s ease,box-shadow .18s ease;
}
.of-student-picker:after{
  content:"⌕";
  position:absolute;
  right:15px;
  top:12px;
  color:#f8a232;
  font-size:21px;
  line-height:1;
  pointer-events:none;
  font-weight:900;
}
.of-student-picker-search::placeholder{color:rgba(35,41,75,.48);font-weight:500}
.of-student-picker-search:hover{border-color:rgba(35,41,75,.32)}
.of-student-picker-search:focus{
  border-color:#f8a232!important;
  box-shadow:0 0 0 3px rgba(248,162,50,.14),0 8px 22px rgba(35,41,75,.07)!important;
  outline:none!important;
}
.of-student-picker-native{
  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;
}
/* A lista participa do fluxo da página. Isso evita clipping/caixas vazias em Medidas
   e mantém o resultado imediatamente abaixo da pesquisa em qualquer breakpoint. */
.of-student-picker-results{
  position:relative;
  z-index:7;
  width:100%;
  margin-top:6px;
  max-height:310px;
  overflow:auto;
  padding:6px;
  background:#fff;
  border:1px solid rgba(35,41,75,.12);
  border-radius:15px;
  box-shadow:0 12px 30px rgba(35,41,75,.11);
  box-sizing:border-box;
}
.of-student-picker-results[hidden]{display:none!important}
.of-student-picker-option{
  width:100%;
  min-height:44px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 82px;
  align-items:center;
  gap:14px;
  padding:10px 12px;
  border:0!important;
  border-radius:10px;
  background:#fff!important;
  color:#23294b!important;
  text-align:left;
  cursor:pointer;
  box-shadow:none!important;
  outline:none!important;
}
.of-student-picker-option span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:750;
}
.of-student-picker-option small{
  display:block!important;
  width:82px;
  justify-self:end;
  text-align:right;
  color:rgba(35,41,75,.48);
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
}
.of-student-picker-option:hover,.of-student-picker-option:focus-visible,.of-student-picker-option.active{
  background:rgba(248,162,50,.12)!important;
  color:#23294b!important;
}
.of-student-picker-option:hover small,.of-student-picker-option.active small{color:#f8a232}
.of-student-picker-empty{padding:12px;color:rgba(35,41,75,.58);font-size:13px;text-align:center}
/* Garantia explícita para os dois seletores da área Medidas. */
.of-section[data-section="measurements"] .of-card,
.of-section[data-section="measurements"] .of-form,
.of-section[data-section="measurements"] label:has(.of-student-picker){overflow:visible!important}
.of-section[data-section="measurements"] .of-student-picker-results{min-height:0}
@media (max-width:820px){
  .of-card:has(.of-student-picker){overflow:visible!important}
}
@media (max-width:767px){
  .of-student-picker{margin:7px 0 9px}
  .of-student-picker-search{min-height:48px;font-size:16px;border-radius:13px;padding-left:14px}
  .of-student-picker-results{max-height:250px;box-shadow:0 8px 22px rgba(35,41,75,.09)}
  .of-student-picker-option{min-height:46px;grid-template-columns:minmax(0,1fr) 70px;padding:11px 10px;gap:8px}
  .of-student-picker-option small{width:70px;font-size:10.5px}
}

/* v1.22.0 — Pagamento = Aula 1 contabilizada */
.of-calendar-legend .payment{background:#23294b!important;border-color:#23294b!important}
.of-calendar-day.payment,
.of-calendar-day.payment:hover,
.of-calendar-day.payment:focus,
.of-calendar-day.payment:active{
  background:rgba(35,41,75,.10)!important;
  border-color:#23294b!important;
  color:#23294b!important;
  box-shadow:none!important;
}
.of-calendar-day.payment i{background:#23294b!important}
.of-summary-status.payment{background:rgba(35,41,75,.10)!important;color:#23294b!important}
@media(max-width:700px){
  .of-calendar-day.payment{border-width:2px!important}
}


/* Waléria Personal App 1.22.1 — histórico x pacote atual no calendário */
.of-calendar-day.historical,
.of-calendar-day.historical:hover,
.of-calendar-day.historical:focus,
.of-calendar-day.historical:active{
  opacity:.42!important;
  filter:none!important;
}
.of-calendar-day.historical.present,
.of-calendar-day.historical.present:hover,
.of-calendar-day.historical.present:focus,
.of-calendar-day.historical.present:active{border-color:#66c992!important}
.of-calendar-day.historical.absent,
.of-calendar-day.historical.absent:hover,
.of-calendar-day.historical.absent:focus,
.of-calendar-day.historical.absent:active{border-color:#d84b4b!important}
.of-calendar-day.present:not(.historical),
.of-calendar-day.absent:not(.historical),
.of-calendar-day.payment:not(.historical),
.of-calendar-day.planned:not(.historical){opacity:1!important}
.of-calendar-legend .of-history-legend{gap:6px}
.of-calendar-legend .historical-swatch{
  width:12px!important;height:12px!important;border-radius:50%!important;
  background:linear-gradient(90deg,rgba(22,121,76,.42) 0 50%,rgba(180,35,24,.42) 50% 100%)!important;
  border:1px solid rgba(35,41,75,.18)!important;
}
@media(max-width:700px){
  .of-calendar-legend{row-gap:8px!important}
  .of-calendar-legend .of-history-legend{width:100%;font-size:11px}
}

/* v1.22.6 — padronização global das buscas de alunos: exatamente 1 resultado por linha */
.of-app .of-student-picker-results{
  display:block!important;
  width:100%!important;
  padding:7px!important;
  box-sizing:border-box!important;
}
.of-app .of-student-picker-results[hidden]{display:none!important}
.of-app .of-student-picker-option{
  display:flex!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:48px!important;
  margin:0 0 6px 0!important;
  padding:11px 13px!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(35,41,75,.08)!important;
  border-radius:11px!important;
  background:#fff!important;
  float:none!important;
  clear:both!important;
  flex:none!important;
}
.of-app .of-student-picker-option:last-child{margin-bottom:0!important}
.of-app .of-student-picker-option span{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:calc(100% - 96px)!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  line-height:1.35!important;
}
.of-app .of-student-picker-option small{
  display:block!important;
  flex:0 0 82px!important;
  width:82px!important;
  margin-left:auto!important;
  text-align:right!important;
  white-space:nowrap!important;
  line-height:1.35!important;
}
.of-app .of-student-picker-option:hover,
.of-app .of-student-picker-option:focus-visible,
.of-app .of-student-picker-option.active{
  background:rgba(248,162,50,.11)!important;
  border-color:rgba(248,162,50,.32)!important;
  color:#23294b!important;
}
@media(max-width:767px){
  .of-app .of-student-picker-results{padding:6px!important}
  .of-app .of-student-picker-option{
    min-height:50px!important;
    padding:12px 11px!important;
    gap:10px!important;
    margin-bottom:6px!important;
  }
  .of-app .of-student-picker-option span{max-width:calc(100% - 78px)!important;font-size:14px!important}
  .of-app .of-student-picker-option small{flex-basis:68px!important;width:68px!important;font-size:10.5px!important}
}


/* v1.22.7 — alinhamento uniforme dos resultados de busca */
.of-app .of-student-picker-option span{
  text-align:left!important;
  margin-right:auto!important;
}
.of-app .of-student-picker-option small{
  text-align:right!important;
  margin-left:auto!important;
}

/* v1.22.8 — evolução de medidas incorporada à área Medidas */
.of-manager-measure-evolution,.of-measure-evolution-wrap{margin-top:18px}
.of-measure-evolution-card{overflow:hidden}
.of-measure-evolution-head{align-items:flex-start;gap:16px}
.of-measure-evolution-head p{max-width:720px;margin:6px 0 0;color:var(--muted);line-height:1.55}
.of-measure-evolution-period{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0;padding:14px 16px;border:1px solid rgba(35,41,75,.12);border-radius:14px;background:rgba(35,41,75,.035)}
.of-measure-evolution-period span{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#6d7180}
.of-measure-evolution-period strong{color:#23294b;font-size:.95rem;text-align:right}
.of-measure-evolution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.of-measure-evolution-metric{min-width:0;border:1px solid rgba(35,41,75,.12);border-radius:18px;background:#fff;padding:18px;box-shadow:none}
.of-measure-evolution-metric-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid rgba(35,41,75,.08)}
.of-measure-evolution-metric-head>div:first-child{min-width:0}
.of-measure-evolution-metric-head span{display:block;color:#6d7180;font-size:.8rem;font-weight:800}
.of-measure-evolution-metric-head strong{display:block;margin-top:4px;color:#23294b;font-size:1.35rem;line-height:1.1}
.of-measure-evolution-metric-head strong small{font-size:.72rem;color:#6d7180;font-weight:700}
.of-measure-total-change{flex:0 0 auto;min-width:90px;padding:9px 11px;border-radius:12px;text-align:right;border:1px solid rgba(35,41,75,.12);background:rgba(35,41,75,.04)}
.of-measure-total-change b,.of-measure-total-change small{display:block;white-space:nowrap}
.of-measure-total-change b{font-size:.88rem;color:#23294b}
.of-measure-total-change small{margin-top:2px;font-size:.73rem;font-weight:800;color:#6d7180}
.of-measure-total-change.is-up{border-color:rgba(248,162,50,.38);background:rgba(248,162,50,.09)}
.of-measure-total-change.is-up b{color:#23294b}
.of-measure-total-change.is-down{border-color:rgba(35,41,75,.24);background:rgba(35,41,75,.07)}
.of-measure-total-change.is-flat{background:#f7f8fa}
.of-measure-total-summary{margin:14px 0 12px;padding:13px 14px;border-radius:14px;background:rgba(248,162,50,.075);border-left:4px solid #f8a232}
.of-measure-total-summary span{font-size:.72rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:#f8a232}
.of-measure-total-summary strong{display:block;margin-top:3px;color:#23294b;font-size:.86rem}
.of-measure-total-summary p{margin:6px 0 0;color:#23294b;font-size:.92rem;font-weight:800;line-height:1.4}
.of-measure-baseline{margin-top:14px;padding:14px;border-radius:14px;background:rgba(35,41,75,.04);border:1px dashed rgba(35,41,75,.22)}
.of-measure-baseline span,.of-measure-baseline strong,.of-measure-baseline small{display:block}
.of-measure-baseline span{font-size:.74rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#6d7180}
.of-measure-baseline strong{margin-top:4px;color:#23294b}
.of-measure-baseline small{margin-top:5px;color:#6d7180;line-height:1.45}
.of-measure-step-list{display:grid;gap:8px}
.of-measure-step{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;border-top:1px solid rgba(35,41,75,.07)}
.of-measure-step:first-child{border-top:0}
.of-measure-step-index{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#23294b;color:#fff;font-size:.72rem;font-weight:900}
.of-measure-step-body{min-width:0}
.of-measure-step-body span,.of-measure-step-body strong{display:block}
.of-measure-step-body span{font-size:.72rem;color:#6d7180}
.of-measure-step-body strong{margin-top:2px;color:#23294b;font-size:.86rem}
.of-measure-step-change{text-align:right;white-space:nowrap}
.of-measure-step-change b,.of-measure-step-change small{display:block}
.of-measure-step-change b{font-size:.82rem;color:#23294b}
.of-measure-step-change small{margin-top:2px;color:#f8a232;font-size:.72rem;font-weight:900}
@media(max-width:980px){.of-measure-evolution-grid{grid-template-columns:1fr}}
@media(max-width:600px){
  .of-manager-measure-evolution,.of-measure-evolution-wrap{margin-top:14px}
  .of-measure-evolution-head{flex-direction:column}
  .of-measure-evolution-period{align-items:flex-start;flex-direction:column;gap:5px}
  .of-measure-evolution-period strong{text-align:left}
  .of-measure-evolution-metric{padding:15px}
  .of-measure-evolution-metric-head{gap:9px}
  .of-measure-total-change{min-width:82px;padding:8px}
  .of-measure-step{grid-template-columns:26px minmax(0,1fr);align-items:start}
  .of-measure-step-index{width:26px;height:26px}
  .of-measure-step-change{grid-column:2;text-align:left;display:flex;align-items:center;gap:8px;white-space:normal}
  .of-measure-step-change b,.of-measure-step-change small{display:inline}
}


/* v1.22.9 — 7 dobras, composição corporal e Glúteo feminino */
.of-skinfold-form-section{grid-column:1/-1;margin-top:4px;padding:18px;border:1px solid rgba(35,41,75,.12);border-radius:18px;background:rgba(35,41,75,.025)}
.of-skinfold-form-head{margin-bottom:14px}.of-skinfold-form-head h3,.of-skinfold-form-head h4{margin:4px 0 6px;color:#23294b}.of-skinfold-form-head p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.5}
.of-skinfold-input-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.of-skinfold-form-section>small{display:block;margin-top:12px;color:var(--muted);line-height:1.45}
.of-skinfold-edit-section{margin-top:15px;padding:15px;border:1px solid rgba(35,41,75,.12);border-radius:16px;background:rgba(35,41,75,.025)}.of-skinfold-edit-grid{margin-top:10px}
.of-body-composition-report{margin-top:15px;padding:17px;border:1px solid rgba(35,41,75,.13);border-left:4px solid #f8a232;border-radius:16px;background:#fff}
.of-body-composition-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.of-body-composition-head h4{margin:4px 0;color:#23294b;font-size:1.02rem}.of-body-composition-head p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.45}
.of-body-composition-results{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:14px}.of-body-composition-results>div{padding:11px;border-radius:12px;background:rgba(248,162,50,.075);min-width:0}.of-body-composition-results span,.of-body-composition-folds span{display:block;color:var(--muted);font-size:.68rem;font-weight:800;line-height:1.25}.of-body-composition-results strong{display:block;margin-top:5px;color:#23294b;font-size:1rem;line-height:1.1}.of-body-composition-results strong small{font-size:.67rem;color:var(--muted)}
.of-body-composition-folds{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-top:10px}.of-body-composition-folds>div{padding:9px;border:1px solid rgba(35,41,75,.08);border-radius:10px;background:rgba(35,41,75,.025)}.of-body-composition-folds strong{display:block;margin-top:4px;color:#23294b;font-size:.78rem}.of-body-composition-note{margin:11px 0 0;color:var(--muted);font-size:.72rem;line-height:1.45}
@media(max-width:1100px){.of-body-composition-results{grid-template-columns:repeat(3,minmax(0,1fr))}.of-body-composition-folds{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.of-skinfold-input-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.of-body-composition-results{grid-template-columns:repeat(2,minmax(0,1fr))}.of-body-composition-folds{grid-template-columns:repeat(2,minmax(0,1fr))}.of-body-composition-head{flex-direction:column}}
@media(max-width:460px){.of-skinfold-input-grid,.of-body-composition-results,.of-body-composition-folds{grid-template-columns:1fr}}

/* v1.23.6 — capas automáticas + exercícios compactos para Waléria e alunos */
.of-app .of-section[data-section="exercises"] .of-exercise-video-shell video[poster]{object-fit:cover;object-position:center}
.of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-selectable.is-selected{border-color:#f8a232;box-shadow:0 0 0 2px rgba(248,162,50,.16)}

@media(max-width:700px){
  /* Painel da Waléria: mantém 3 exercícios por linha na Biblioteca e em Montar treino. */
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-grid,
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-workout-exercise-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;align-items:start}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-grid>.of-empty-state{grid-column:1/-1}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card{border-radius:12px;box-shadow:0 4px 12px rgba(35,41,75,.05)}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-video-shell{aspect-ratio:9/16;border-radius:0;background:#101426}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-video-shell video{width:100%;height:100%;object-fit:cover}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-body{padding:8px 7px 7px;gap:6px;min-width:0}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-head{display:block;min-width:0}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-head>div{min-width:0}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-body .of-kicker{display:none}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-body h3{font-size:11px;line-height:1.2;min-height:26px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-body>p{display:none}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-library .of-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px!important;width:100%!important;margin-top:2px!important}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-library .of-actions .of-btn{width:100%!important;min-width:0!important;min-height:30px!important;padding:6px 2px!important;border-radius:8px!important;font-size:9px!important;line-height:1!important;white-space:nowrap!important}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-selectable .of-exercise-select{width:100%!important;justify-content:center!important;gap:4px!important;margin-top:5px!important;padding:6px 3px!important;border-radius:8px!important;font-size:9px!important;line-height:1!important;white-space:nowrap!important}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-selectable .of-exercise-select input{width:13px;height:13px;margin:0}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-workout-exercise-title{align-items:center;gap:8px}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-workout-exercise-title h3{font-size:18px}
  .of-app[data-role="manager"] .of-section[data-section="exercises"] #of-workout-selected-count{font-size:12px;white-space:nowrap}

  /* Painel do aluno: o treino recebido usa a mesma lógica de 3 miniaturas por linha. */
  .of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;align-items:start}
  .of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid>.of-empty-state{grid-column:1/-1}
  .of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid .of-exercise-card{border-radius:12px;box-shadow:0 4px 12px rgba(35,41,75,.05);min-width:0}
  .of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid .of-exercise-video-shell{aspect-ratio:9/16;background:#101426}
  .of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid .of-exercise-video-shell video{width:100%;height:100%;object-fit:cover}
  .of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid .of-exercise-card-body{padding:8px 6px 7px;gap:5px;min-width:0}
  .of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid .of-kicker{display:none}
  .of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid h3{margin:0;font-size:11px;line-height:1.2;min-height:27px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
  .of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid .of-exercise-card-body>p{display:none}
  .of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid .of-workout-exercise-check{width:100%!important;min-width:0!important;min-height:34px!important;margin-top:2px!important;padding:6px 3px!important;border-radius:8px!important;font-size:8.5px!important;line-height:1.08!important;white-space:normal!important}
}


/* v1.23.7 — exclusão de treinos, menu abaixo do cabeçalho e play compacto */
.of-workout-history-summary{display:grid;gap:4px;justify-items:end}
.of-workout-history-summary .of-delete-workout{margin-top:5px;padding:7px 10px!important;border-radius:9px!important;font-size:11px!important}
.of-exercise-video-shell{position:relative}
.of-compact-video-play{display:none;position:absolute;left:50%;top:50%;z-index:4;transform:translate(-50%,-50%);width:30px;height:30px;padding:0 0 0 2px;border:1px solid rgba(255,255,255,.88);border-radius:50%;background:rgba(35,41,75,.78);color:#fff;font-size:11px;line-height:1;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.2);cursor:pointer}
.of-compact-video-play[hidden]{display:none!important}
@media(max-width:900px){
  body:not(.wp-admin) .of-app .of-sidebar,
  body:not(.wp-admin) .of-app.of-device-mobile .of-sidebar{top:calc(62px + env(safe-area-inset-top,0px))!important;inset:calc(62px + env(safe-area-inset-top,0px)) auto auto 0!important;height:calc(100dvh - 62px - env(safe-area-inset-top,0px))!important;padding-top:12px!important;z-index:1090!important}
  body:not(.wp-admin) .of-app .of-mobile-overlay,
  body:not(.wp-admin) .of-app.of-device-mobile .of-mobile-overlay{inset:calc(62px + env(safe-area-inset-top,0px)) 0 0 0!important;z-index:1089!important}
  .of-compact-video-play{display:flex}
  .of-section[data-section="exercises"] .of-exercise-video-shell video::-webkit-media-controls-start-playback-button{display:none!important;-webkit-appearance:none!important}
  .of-section[data-section="exercises"] .of-exercise-video-shell video::-webkit-media-controls-overlay-play-button{display:none!important;-webkit-appearance:none!important}
  .of-workout-history-summary{justify-items:start}
  .of-workout-history-summary .of-delete-workout{width:auto!important;min-height:32px!important}
}


/* v1.23.8 — grade responsiva em todas as telas + play mobile discreto */
/* Desktop amplo: seis miniaturas. O mesmo padrão vale para Biblioteca, montagem de treino e treino do aluno. */
.of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-grid,
.of-app[data-role="manager"] .of-section[data-section="exercises"] .of-workout-exercise-grid,
.of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:start!important;
}
.of-app .of-section[data-section="exercises"] .of-exercise-card{min-width:0}
.of-app .of-section[data-section="exercises"] .of-exercise-card-body{padding:11px 10px 10px;gap:7px}
.of-app .of-section[data-section="exercises"] .of-exercise-card-body h3{
  font-size:13px;
  line-height:1.2;
  overflow-wrap:anywhere;
}
.of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-library .of-actions{
  gap:5px;
  flex-wrap:nowrap;
}
.of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-library .of-actions .of-btn{
  min-width:0;
  flex:1 1 0;
  padding:7px 5px;
  font-size:11px;
}

/* Notebooks e telas intermediárias recebem menos colunas sem voltar a cards gigantes. */
@media(max-width:1180px){
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-grid,
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-workout-exercise-grid,
  .of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
}
@media(max-width:980px){
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-grid,
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-workout-exercise-grid,
  .of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px!important;
  }
}

/* Celular: mantém três exercícios por linha, como aprovado nas versões anteriores. */
@media(max-width:700px){
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-grid,
  .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-workout-exercise-grid,
  .of-app[data-role="student"] .of-section[data-section="exercises"] .of-student-exercise-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:8px!important;
  }
}

/* Play mobile: preserva o centro da capa e isola completamente os estados visuais. */
.of-compact-video-play{
  position:absolute!important;
  left:auto!important;
  top:auto!important;
  right:5px!important;
  bottom:5px!important;
  transform:none!important;
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  min-height:24px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid rgba(255,255,255,.88)!important;
  border-radius:50%!important;
  background:rgba(35,41,75,.58)!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  box-shadow:0 1px 4px rgba(0,0,0,.18)!important;
  opacity:.9;
  -webkit-tap-highlight-color:transparent!important;
}
.of-compact-video-play::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  display:block;
  width:0;
  height:0;
  margin:0!important;
  border-top:4px solid transparent;
  border-bottom:4px solid transparent;
  border-left:6px solid #fff;
  transform:translate(-42%,-50%);
}
.of-app .of-compact-video-play:hover,
.of-app .of-compact-video-play:focus,
.of-app .of-compact-video-play:focus-visible,
.of-app .of-compact-video-play:active{
  background:rgba(35,41,75,.68)!important;
  border-color:#fff!important;
  color:transparent!important;
  box-shadow:0 1px 4px rgba(0,0,0,.18)!important;
  outline:1px solid rgba(255,255,255,.9)!important;
  outline-offset:1px!important;
  transform:none!important;
}

/* v1.24.0, fluxo simples de treino remoto */
[data-workout-exercise-content][hidden],
[data-workout-finish][hidden]{display:none!important}

.of-workout-start-gate{
  display:grid;
  justify-items:center;
  gap:12px;
  margin:18px 0 4px;
  padding:22px 18px;
  text-align:center;
  border:1px solid rgba(35,41,75,.12);
  border-radius:16px;
  background:rgba(35,41,75,.045);
}
.of-workout-start-gate p{max-width:560px;margin:0;color:#23294b;line-height:1.55}
.of-workout-start-gate small{max-width:560px;color:rgba(35,41,75,.68);line-height:1.45}
.of-workout-start-gate .of-btn{min-width:180px}

.of-workout-finish{
  display:grid;
  justify-items:center;
  gap:8px;
  margin-top:20px;
  padding:18px;
  text-align:center;
  border:1px solid rgba(248,162,50,.55);
  border-radius:16px;
  background:rgba(248,162,50,.08);
}
.of-workout-finish strong{color:#23294b;font-size:1rem}
.of-workout-finish p{max-width:620px;margin:0;color:rgba(35,41,75,.72);line-height:1.5}
.of-workout-finish .of-btn{margin-top:4px;min-width:180px}

.of-workout-status-summary{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;margin-top:3px}
.of-workout-status-summary span,
.of-workout-student-status{
  display:inline-flex;
  align-items:center;
  gap:4px;
  min-height:26px;
  padding:5px 8px;
  border-radius:999px;
  font-size:11px;
  line-height:1;
  font-weight:800;
  white-space:nowrap;
}
.of-workout-status-summary .is-completed,
.of-workout-student-status.is-completed{background:#23294b;color:#fff;border:1px solid #23294b}
.of-workout-status-summary .is-progress,
.of-workout-student-status.is-progress{background:rgba(248,162,50,.16);color:#23294b;border:1px solid #f8a232}
.of-workout-status-summary .is-pending,
.of-workout-student-status.is-pending{background:#fff;color:#23294b;border:1px solid rgba(35,41,75,.25)}

.of-manager-workout-class-groups{display:grid;gap:12px;margin-top:12px}
.of-manager-workout-class-group{overflow:hidden;border:1px solid rgba(35,41,75,.11);border-radius:14px;background:#fff}
.of-manager-workout-class-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;background:rgba(35,41,75,.045);border-bottom:1px solid rgba(35,41,75,.09)}
.of-manager-workout-class-head strong{color:#23294b}
.of-manager-workout-class-head small{color:rgba(35,41,75,.62)}
.of-manager-workout-class-group .of-manager-workout-students{margin:0;border:0;border-radius:0;padding:0 13px}
.of-manager-workout-class-group .of-manager-workout-students>div{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}
.of-manager-workout-class-group .of-manager-workout-students>div>small{grid-column:1/-1}

@media(max-width:700px){
  .of-workout-start-gate{padding:18px 14px}.of-workout-start-gate .of-btn{width:100%;min-width:0}
  .of-workout-finish{padding:16px 13px}.of-workout-finish .of-btn{width:100%;min-width:0}
  .of-workout-status-summary{justify-content:flex-start}
  .of-workout-status-summary span{font-size:10px;padding:5px 7px}
  .of-manager-workout-class-head{padding:10px 11px}
  .of-manager-workout-class-group .of-manager-workout-students{padding:0 11px}
}

/* v1.24.1, ordem dos exercícios, histórico por data e repetição de treino */
.of-workout-history-toolbar{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  margin:16px 0 18px;
  padding:14px;
  border:1px solid rgba(35,41,75,.10);
  border-radius:15px;
  background:rgba(35,41,75,.035);
}
.of-workout-history-filter-label{display:grid;gap:7px;min-width:min(320px,100%);color:#23294b;font-weight:800;font-size:13px}
.of-workout-history-date-field{width:min(280px,100%)}
.of-workout-history-date-field .of-date-br{background:#fff!important;color:#23294b!important;border-color:rgba(35,41,75,.18)!important}
.of-workout-history-date-field .of-date-br:focus{border-color:#f8a232!important;outline:2px solid rgba(248,162,50,.18)!important;box-shadow:none!important}
.of-workout-history-date-group{display:grid;gap:0;margin:0 0 18px}
.of-workout-history-date-group[hidden]{display:none!important}
.of-workout-history-date-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px 12px 0 0;background:#23294b;color:#fff}
.of-workout-history-date-head strong{font-size:13px}.of-workout-history-date-head small{color:rgba(255,255,255,.72);font-size:11px;font-weight:700}
.of-workout-history-date-items{border:1px solid rgba(35,41,75,.10);border-top:0;border-radius:0 0 14px 14px;padding:0 14px;background:#fff}
.of-workout-history-date-items .of-workout-history-item:last-child{border-bottom:0}
.of-workout-history-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;margin-top:5px}
.of-workout-history-actions .of-btn{padding:7px 10px!important;border-radius:9px!important;font-size:11px!important;min-height:32px!important}
.of-workout-history-actions .of-repeat-workout,
.of-workout-history-actions .of-repeat-workout:hover,
.of-workout-history-actions .of-repeat-workout:focus,
.of-workout-history-actions .of-repeat-workout:active{background:#23294b!important;border-color:#23294b!important;color:#fff!important;box-shadow:none!important}
.of-manager-workout-exercises{padding:0 0 14px}
.of-manager-workout-exercises summary{cursor:pointer;color:#23294b;font-weight:800;font-size:.9rem}
.of-history-exercise-note{margin:10px 0 12px;padding:10px 12px;border-left:3px solid #f8a232;border-radius:0 10px 10px 0;background:rgba(248,162,50,.08);color:rgba(35,41,75,.74);font-size:12px;line-height:1.45}
.of-history-exercise-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.of-history-exercise-card{min-width:0;display:grid;gap:7px}
.of-history-exercise-poster{position:relative;overflow:hidden;aspect-ratio:9/16;border-radius:11px;background:#101426}
.of-history-exercise-poster img{display:block;width:100%;height:100%;object-fit:cover}
.of-history-exercise-fallback{display:grid;place-items:center;width:100%;height:100%;padding:8px;text-align:center;color:rgba(255,255,255,.72);font-size:11px}
.of-history-exercise-card>strong{display:block;min-width:0;color:#23294b;font-size:11px;line-height:1.2;overflow-wrap:anywhere}
.of-exercise-order-badge{
  position:absolute;
  z-index:4;
  left:6px;
  top:6px;
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#f8a232;
  color:#23294b;
  border:2px solid #fff;
  box-shadow:0 2px 7px rgba(0,0,0,.18);
  font-size:11px;
  line-height:1;
  font-weight:900;
}
.of-workout-selection-order{
  display:inline-grid;
  place-items:center;
  width:23px;
  height:23px;
  margin:0 0 5px;
  border-radius:50%;
  background:#f8a232;
  color:#23294b;
  font-size:11px;
  font-weight:900;
}
.of-workout-selection-order[hidden]{display:none!important}
.of-workout-order-note{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 12px;padding:12px 14px;border:1px solid rgba(248,162,50,.5);border-radius:13px;background:rgba(248,162,50,.08)}
.of-workout-order-note strong{color:#23294b}.of-workout-order-note span{color:rgba(35,41,75,.72);font-size:12px;text-align:right}
.of-student-exercise-grid .of-exercise-video-shell>.of-exercise-order-badge{left:5px;top:5px;width:23px;height:23px;font-size:10px}

@media(max-width:1180px){.of-history-exercise-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:980px){.of-history-exercise-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){
  .of-workout-history-toolbar{align-items:stretch;flex-direction:column;padding:12px}
  .of-workout-history-filter-label,.of-workout-history-date-field{width:100%;max-width:none;min-width:0}
  .of-workout-history-toolbar>.of-btn{width:100%}
  .of-workout-history-date-items{padding:0 10px}
  .of-workout-history-actions{justify-content:flex-start}
  .of-history-exercise-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .of-history-exercise-card>strong{font-size:10px}
  .of-workout-order-note{align-items:flex-start;flex-direction:column;gap:4px;padding:11px 12px}
  .of-workout-order-note span{text-align:left}
}

/* v1.24.2, reorganização pós-envio, seleção rápida e histórico de treinos livres */
.of-workout-selection-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.of-workout-selection-tools #of-workout-deselect-all,
.of-workout-selection-tools #of-workout-deselect-all:hover,
.of-workout-selection-tools #of-workout-deselect-all:focus,
.of-workout-selection-tools #of-workout-deselect-all:active{background:#fff!important;border-color:rgba(35,41,75,.28)!important;color:#23294b!important;box-shadow:none!important}

.of-history-exercise-card[data-workout-order-card]{cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:transform .16s ease,opacity .16s ease,box-shadow .16s ease}
.of-history-exercise-card[data-workout-order-card]:active{cursor:grabbing}
.of-history-exercise-card.is-reordering{opacity:.72;transform:scale(.97);z-index:8}
.of-manager-workout-exercises.is-touch-reordering .of-history-exercise-card:not(.is-reordering){opacity:.86}
.of-history-exercise-poster video{display:block;width:100%;height:100%;object-fit:cover;background:#101426}
.of-history-play-indicator{position:absolute;right:7px;bottom:7px;z-index:3;width:24px;height:24px;border-radius:50%;background:rgba(35,41,75,.88);border:1px solid rgba(255,255,255,.85);pointer-events:none}
.of-history-play-indicator::after{content:"";position:absolute;left:9px;top:7px;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid #fff}
.of-history-play-indicator[hidden]{display:none!important}
.of-workout-order-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:11px 12px;border-radius:12px;background:rgba(35,41,75,.045);border:1px solid rgba(35,41,75,.09)}
.of-workout-order-actions>span{color:rgba(35,41,75,.72);font-size:12px;font-weight:700}
.of-workout-order-actions .of-btn{min-height:36px!important;padding:8px 12px!important;font-size:12px!important}
.of-manager-workout-exercises.is-order-dirty .of-workout-order-actions{border-color:rgba(248,162,50,.55);background:rgba(248,162,50,.08)}

.of-lesson-history-row.is-remote-training{border-left:3px solid #f8a232;padding-left:12px}
.of-date-history-row.is-remote-training{background:rgba(248,162,50,.055)}
.of-remote-training-history{display:grid;gap:0}
.of-remote-training-row{border-bottom:1px solid rgba(35,41,75,.09)}
.of-remote-training-row:last-child{border-bottom:0}
.of-calendar-day.remote-training.present{box-shadow:inset 0 0 0 2px rgba(248,162,50,.36)}

@media(max-width:700px){
  .of-workout-selection-tools{width:100%;justify-content:space-between}
  .of-workout-selection-tools #of-workout-deselect-all{padding:7px 10px!important;min-height:34px!important;font-size:11px!important}
  .of-history-exercise-card[data-workout-order-card]{cursor:default}
  .of-history-play-indicator{width:22px;height:22px;right:5px;bottom:5px}
  .of-history-play-indicator::after{left:8px;top:6px;border-top-width:5px;border-bottom-width:5px;border-left-width:7px}
  .of-workout-order-actions{align-items:stretch;flex-direction:column;padding:10px}
  .of-workout-order-actions .of-btn{width:100%}
}

/* v1.24.3, edição de treino enviado, históricos por turma e descarte opcional */
.of-history-exercise-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0 0 12px}
.of-history-exercise-tools .of-btn{min-height:34px!important;padding:8px 11px!important;font-size:11px!important}
.of-history-remove-exercise{position:absolute;z-index:6;right:6px;top:6px;width:27px;height:27px;display:grid;place-items:center;padding:0!important;border:1px solid rgba(255,255,255,.92)!important;border-radius:50%!important;background:rgba(35,41,75,.90)!important;color:#fff!important;box-shadow:0 2px 7px rgba(0,0,0,.18)!important;cursor:pointer}
.of-history-remove-exercise svg{width:14px;height:14px;display:block}
.of-history-remove-exercise:hover,.of-history-remove-exercise:focus-visible,.of-history-remove-exercise:active{background:#f8a232!important;border-color:#fff!important;color:#23294b!important;outline:none!important;box-shadow:0 2px 7px rgba(0,0,0,.18)!important}

.of-workout-add-pick{display:none;width:100%;margin:8px 0 0;padding:8px 9px;border:1px solid #23294b;border-radius:9px;background:#fff;color:#23294b;font:inherit;font-size:11px;font-weight:800;cursor:pointer;box-shadow:none}
.of-section[data-section="exercises"].is-workout-add-mode .of-exercise-card-library .of-workout-add-pick{display:block}
.of-section[data-section="exercises"].is-workout-add-mode .of-exercise-card-library{outline:2px solid transparent;outline-offset:2px}
.of-section[data-section="exercises"].is-workout-add-mode .of-exercise-card-library.is-workout-add-selected{outline-color:#f8a232}
.of-section[data-section="exercises"].is-workout-add-mode .of-exercise-card-library.is-workout-add-existing{opacity:.58}
.of-workout-add-pick:hover,.of-workout-add-pick:focus-visible,.of-workout-add-pick:active,.of-workout-add-pick.is-selected{background:#23294b!important;color:#fff!important;border-color:#23294b!important;outline:none!important;box-shadow:none!important}
.of-workout-add-pick:disabled{cursor:not-allowed!important;background:rgba(35,41,75,.06)!important;color:rgba(35,41,75,.55)!important;border-color:rgba(35,41,75,.18)!important}

.of-workout-add-exercises-bar{position:fixed;z-index:10020;left:max(16px,env(safe-area-inset-left));right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:920px;margin:0 auto;padding:13px 14px;border:1px solid rgba(35,41,75,.14);border-radius:16px;background:#fff;box-shadow:0 12px 34px rgba(35,41,75,.18)}
.of-workout-add-exercises-bar[hidden]{display:none!important}
.of-workout-add-exercises-bar>div:first-child{display:grid;gap:2px;min-width:0}
.of-workout-add-exercises-bar strong{color:#23294b}
.of-workout-add-exercises-bar span{font-size:12px;color:rgba(35,41,75,.66)}
.of-workout-add-exercises-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.of-workout-add-exercises-actions .of-btn{min-height:38px!important;padding:8px 12px!important;font-size:12px!important}

.of-workout-repeat-note{display:grid;gap:3px;margin:0 0 14px;padding:11px 13px;border-left:3px solid #f8a232;border-radius:0 11px 11px 0;background:rgba(248,162,50,.08)}
.of-workout-repeat-note[hidden]{display:none!important}
.of-workout-repeat-note strong{color:#23294b}
.of-workout-repeat-note span{color:rgba(35,41,75,.70);font-size:12px}

.of-workout-start-actions{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap}
.of-workout-start-actions .of-btn{min-width:180px}
.of-workout-start-actions .of-btn.ghost,.of-workout-start-actions .of-btn.ghost:hover,.of-workout-start-actions .of-btn.ghost:focus-visible,.of-workout-start-actions .of-btn.ghost:active{background:#fff!important;color:#23294b!important;border-color:rgba(35,41,75,.28)!important;box-shadow:none!important}
.of-workout-status-summary .is-dismissed,.of-workout-student-status.is-dismissed{background:rgba(35,41,75,.07);color:rgba(35,41,75,.72);border:1px solid rgba(35,41,75,.18)}

@media(max-width:700px){
  .of-history-exercise-tools{justify-content:stretch}
  .of-history-exercise-tools .of-btn{width:100%}
  .of-history-remove-exercise{right:4px;top:4px;width:24px;height:24px}
  .of-history-remove-exercise svg{width:12px;height:12px}
  .of-workout-add-pick{font-size:9px;padding:7px 4px;line-height:1.12}
  .of-workout-add-exercises-bar{left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));align-items:stretch;flex-direction:column;gap:9px;padding:11px;border-radius:14px}
  .of-workout-add-exercises-actions{display:grid;grid-template-columns:1fr 1.45fr;gap:7px}
  .of-workout-add-exercises-actions .of-btn{width:100%;min-width:0!important;white-space:normal;line-height:1.15}
  .of-workout-start-actions{display:grid;grid-template-columns:1fr;width:100%}
  .of-workout-start-actions .of-btn{width:100%;min-width:0}
}
.of-section[data-section="exercises"].is-workout-add-mode .of-exercise-card-library .of-actions{display:none!important}

/* v1.24.4, visão administrativa do painel do aluno */
.of-student-view-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);gap:18px;align-items:end;margin-bottom:18px}
.of-student-view-toolbar-copy{display:grid;gap:4px}.of-student-view-toolbar-copy small{color:#687086;line-height:1.45}
.of-student-view-mode{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.of-student-view-mode button{border:1px solid #d9dce7;background:#fff;color:#23294b;border-radius:999px;padding:9px 14px;font-weight:700;cursor:pointer}
.of-student-view-mode button.active,.of-student-view-mode button:focus-visible{border-color:#f8a232;background:#fff5e6;color:#23294b;outline:none;box-shadow:0 0 0 3px rgba(248,162,50,.16)}
.of-student-view-panel{display:none}.of-student-view-panel.active{display:block}
.of-student-view-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.of-student-view-class-group{min-width:0}.of-student-view-list{display:grid;gap:8px}.of-student-view-list-alpha{grid-template-columns:repeat(2,minmax(0,1fr))}
.of-student-view-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #eceef4;padding:11px 0;min-width:0}
.of-student-view-row:first-child{border-top:0}.of-student-view-row>div{display:grid;gap:2px;min-width:0}.of-student-view-row strong{color:#23294b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.of-student-view-row small{color:#7a8193}.of-student-view-row .of-btn{flex:0 0 auto;text-decoration:none}
.of-student-preview-toolbar{position:sticky;top:0;z-index:35;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-2px 0 18px;padding:14px 16px;border:1px solid rgba(35,41,75,.12);border-left:4px solid #f8a232;border-radius:14px;background:rgba(255,255,255,.97);backdrop-filter:blur(12px)}
.of-student-preview-copy{display:grid;gap:2px;min-width:0}.of-student-preview-copy strong{color:#23294b}.of-student-preview-copy small{color:#697185;line-height:1.4}
.of-student-preview-actions{display:flex;align-items:end;gap:10px;flex:0 0 auto}.of-student-preview-actions label{display:grid;gap:5px;color:#23294b;font-size:.78rem;font-weight:700}.of-student-preview-actions select{min-width:250px;max-width:340px;border:1px solid #d9dce7;border-radius:10px;padding:9px 34px 9px 10px;background:#fff;color:#23294b}
.of-student-preview-mode [data-start-workout],.of-student-preview-mode [data-dismiss-workout],.of-student-preview-mode [data-complete-workout],.of-student-preview-mode [data-mark-notification-read],.of-student-preview-mode [data-clear-app-notifications],.of-student-preview-mode #of-profile-form button[type="submit"]{opacity:.48;cursor:not-allowed}
.of-student-inline-preview{display:inline-flex;align-items:center;justify-content:center;width:max-content;margin-top:6px;color:#f8a232;font-size:.76rem;font-weight:800;text-decoration:none}.of-student-inline-preview:hover,.of-student-inline-preview:focus-visible{color:#23294b;text-decoration:underline;outline:none}

@media(max-width:1100px){.of-student-view-groups{grid-template-columns:1fr}.of-student-view-list-alpha{grid-template-columns:1fr}}
@media(max-width:900px){
  .of-student-view-toolbar{grid-template-columns:1fr}.of-student-view-toolbar .of-search{width:100%}
  .of-student-view-row{align-items:center}.of-student-view-row .of-btn{padding:8px 10px;font-size:.76rem}
  .of-student-preview-toolbar{position:relative;top:auto;flex-direction:column;align-items:stretch;padding:12px;margin-bottom:14px}
  .of-student-preview-actions{display:grid;grid-template-columns:1fr;align-items:stretch}.of-student-preview-actions select{min-width:0;max-width:none;width:100%}.of-student-preview-actions .of-btn{width:100%;text-align:center}
}
@media(max-width:420px){.of-student-view-row{gap:8px}.of-student-view-row strong{font-size:.88rem}.of-student-view-row small{font-size:.72rem}.of-student-view-row .of-btn{padding:7px 9px;font-size:.7rem}}

/* v1.24.5, observações recolhidas e identificação por data e nome */
.of-exercise-observations{
  margin:2px 0 0;
  min-width:0;
  border-top:1px solid rgba(35,41,75,.09);
  padding-top:7px;
}
.of-exercise-observations summary{
  list-style:none;
  cursor:pointer;
  color:#23294b;
  font-size:11px;
  line-height:1.3;
  font-weight:800;
  text-decoration:none;
  outline:none;
}
.of-exercise-observations summary::-webkit-details-marker{display:none}
.of-exercise-observations summary::after{content:" +";color:#f8a232;font-weight:900}
.of-exercise-observations[open] summary::after{content:" −"}
.of-exercise-observations summary:hover,
.of-exercise-observations summary:focus-visible,
.of-exercise-observations summary:active{color:#23294b!important;background:transparent!important;outline:none!important;box-shadow:none!important;text-decoration:underline;text-decoration-color:#f8a232;text-underline-offset:3px}
.of-exercise-observations>div{
  margin-top:7px;
  padding:8px 9px;
  border-left:3px solid #f8a232;
  border-radius:0 9px 9px 0;
  background:rgba(248,162,50,.07);
  color:rgba(35,41,75,.78);
  font-size:11px;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.of-history-exercise-observations{padding-top:5px}
.of-history-exercise-observations summary{font-size:9.5px;line-height:1.25}
.of-history-exercise-observations>div{font-size:10px;padding:7px}
.of-student-workout-date,
.of-workout-history-primary-date{
  display:block;
  width:max-content;
  max-width:100%;
  margin:0 0 5px;
  color:#f8a232;
  font-size:.76rem;
  line-height:1.1;
  font-weight:900;
  letter-spacing:.02em;
}
.of-workout-history-identification{min-width:0}
.of-workout-history-identification>strong{color:#23294b;font-size:1rem;line-height:1.25;overflow-wrap:anywhere}
.of-completed-exercise-observations{grid-column:2/-1;width:100%;margin-top:2px}
.of-completed-exercise-observations>div{font-size:11px}

@media(max-width:700px){
  .of-app .of-section[data-section="exercises"] .of-exercise-observations{padding-top:5px}
  .of-app .of-section[data-section="exercises"] .of-exercise-observations summary{font-size:8.5px;line-height:1.2;overflow-wrap:anywhere}
  .of-app .of-section[data-section="exercises"] .of-exercise-observations>div{padding:6px;font-size:9px;line-height:1.35}
  .of-history-exercise-observations summary{font-size:8px!important}
  .of-student-workout-date{font-size:.72rem}
  .of-completed-exercise-observations{grid-column:2}
}

/* v1.25.0 · Privacidade, documentos e identificação de pessoas nos vídeos */
.of-legal-gate{min-height:100vh;background:#f7f8fb;padding:24px;display:flex;align-items:flex-start;justify-content:center;color:#23294b}
.of-legal-gate-card{width:min(920px,100%);background:#fff;border:1px solid rgba(35,41,75,.12);border-radius:24px;padding:24px;box-shadow:0 18px 50px rgba(35,41,75,.08)}
.of-legal-brand{display:flex;align-items:center;gap:18px;padding-bottom:20px;border-bottom:1px solid rgba(35,41,75,.1);margin-bottom:20px}
.of-legal-brand img{width:110px;max-height:72px;object-fit:contain}
.of-legal-brand span,.of-legal-document-head span{display:block;color:#f8a232;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.of-legal-brand h1,.of-legal-document h2{margin:4px 0 6px;color:#23294b}
.of-legal-brand p,.of-legal-document p,.of-legal-note{margin:0;color:#626985;line-height:1.55}
.of-legal-form{display:grid;gap:16px}
.of-legal-document{border:1px solid rgba(35,41,75,.12);border-radius:18px;padding:18px;background:#fff}
.of-legal-document-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}
.of-legal-document-head small{color:#7c829a}
.of-legal-document details,.of-privacy-document-status details,.of-privacy-doc-list details,.of-privacy-image-status details{border:1px solid rgba(35,41,75,.1);border-radius:14px;overflow:hidden;background:#fafbfe;margin-top:10px}
.of-legal-document summary,.of-privacy-document-status summary,.of-privacy-doc-list summary,.of-privacy-image-status summary{cursor:pointer;padding:12px 14px;font-weight:800;color:#23294b;list-style:none}
.of-legal-document summary::-webkit-details-marker,.of-privacy-document-status summary::-webkit-details-marker,.of-privacy-doc-list summary::-webkit-details-marker,.of-privacy-image-status summary::-webkit-details-marker{display:none}
.of-legal-copy{padding:0 14px 14px;color:#4d536d;line-height:1.6;font-size:14px}
.of-legal-copy h4{margin:16px 0 5px;color:#23294b;font-size:14px}
.of-legal-copy p{margin:0 0 10px}
.of-legal-check,.of-image-consent-choice label{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:12px 14px;background:#fff8ed;border:1px solid rgba(248,162,50,.35);border-radius:12px;color:#23294b;font-weight:750}
.of-legal-check input,.of-image-consent-choice input{margin-top:3px;accent-color:#f8a232}
.of-image-consent-choice{border:0;padding:0;margin:14px 0 0;display:grid;gap:8px}
.of-image-consent-choice legend{font-weight:850;color:#23294b;margin-bottom:4px}
.of-image-consent-video-list{padding:12px 14px;background:#f5f6fa;border-radius:12px;margin-bottom:10px}
.of-image-consent-video-list ul{margin:8px 0 0 18px;padding:0}
.of-legal-note{margin-top:12px!important;font-size:13px}
.of-legal-continue{justify-self:start;min-width:220px}
.of-privacy-admin-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-bottom:16px}
.of-privacy-doc-list{display:grid;gap:8px;margin-top:12px}
.of-privacy-student-list,.of-privacy-video-list{display:grid;gap:8px}
.of-privacy-student-row{align-items:flex-start}
.of-privacy-status-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.of-profile-privacy-card{margin-top:16px}
.of-privacy-document-status{padding:14px 0;border-top:1px solid rgba(35,41,75,.09)}
.of-privacy-document-status:first-of-type{border-top:0}
.of-privacy-document-status>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.of-privacy-document-status>div small{width:100%;color:#7b8198}
.of-privacy-image-status{padding-top:14px;border-top:1px solid rgba(35,41,75,.09)}
.of-exercise-subject{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin:4px 0 8px;padding:4px 8px;border-radius:999px;background:rgba(35,41,75,.08);color:#23294b;font-size:11px;font-weight:800;line-height:1.25}
.of-exercise-batch-fields [data-exercise-batch-student-wrap][hidden],#of-edit-exercise-form [data-exercise-subject-student-wrap][hidden]{display:none!important}
@media(max-width:760px){
  .of-legal-gate{padding:12px}
  .of-legal-gate-card{padding:16px;border-radius:18px}
  .of-legal-brand{align-items:flex-start;gap:12px}
  .of-legal-brand img{width:78px;max-height:58px}
  .of-privacy-admin-grid{grid-template-columns:1fr}
  .of-privacy-status-badges{justify-content:flex-start}
  .of-legal-continue{width:100%;justify-content:center}
}
.of-legal-gate-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.of-legal-logout{color:#23294b;font-weight:800;text-decoration:none}.of-legal-logout:hover,.of-legal-logout:focus{color:#f8a232;text-decoration:underline}
@media(max-width:760px){.of-legal-gate-actions{display:grid;grid-template-columns:1fr}.of-legal-logout{text-align:center;padding:10px}}

/* Waléria Personal App v1.25.1: Visão Geral visual, leve e orientada a atalhos */
.of-home-redesign{display:none}
.of-home-redesign.active{display:block}
.of-home-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:24px;align-items:stretch;margin-bottom:24px;padding:28px;border-radius:26px;background:linear-gradient(135deg,#23294b 0%,#2f365f 100%);color:#fff;overflow:hidden;position:relative}
.of-home-hero-copy{display:flex;flex-direction:column;justify-content:center;min-width:0;position:relative;z-index:2}
.of-home-hero .of-chip{align-self:flex-start;background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.2)!important;color:#fff!important}
.of-home-hero h2{margin:14px 0 8px;color:#fff;font-size:clamp(28px,3.6vw,46px);line-height:1.05;letter-spacing:-.03em}
.of-home-hero p{max-width:760px;margin:0;color:rgba(255,255,255,.78);font-size:15px;line-height:1.65}
.of-home-hero-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.of-home-hero-meta span{display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border:1px solid rgba(255,255,255,.17);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-size:11px;font-weight:800}
.of-home-hero-art{position:relative;display:flex;align-items:center;justify-content:center;min-height:190px;border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);overflow:hidden}
.of-home-hero-art:before,.of-home-hero-art:after{content:"";position:absolute;border-radius:50%;background:rgba(248,162,50,.16)}
.of-home-hero-art:before{width:150px;height:150px;right:-35px;top:-45px}
.of-home-hero-art:after{width:90px;height:90px;left:-28px;bottom:-34px}
.of-home-hero-art svg{width:min(92%,280px);height:auto;position:relative;z-index:1;fill:none;stroke:rgba(255,255,255,.78);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.of-home-hero-art svg rect{fill:rgba(255,255,255,.04);stroke:rgba(255,255,255,.18)}
.of-home-hero-art svg .accent{stroke:#f8a232}
.of-home-hero-brand{position:absolute;top:16px;left:18px;z-index:2;width:110px;padding:8px 10px;border-radius:12px;background:#fff}
.of-home-hero-brand img{display:block;width:100%;height:auto}
.of-home-student-progress{position:absolute;right:18px;top:16px;z-index:3;display:grid;gap:2px;min-width:92px;padding:12px 14px;border-radius:15px;background:#fff;color:#23294b;text-align:center}
.of-home-student-progress strong{font-size:28px;line-height:1}
.of-home-student-progress span{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:rgba(35,41,75,.58)}

.of-home-block{margin-bottom:24px}
.of-home-block-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:13px}
.of-home-block-head>div{min-width:0}
.of-home-block-head h3{margin:3px 0 3px;color:#23294b;font-size:20px}
.of-home-block-head p{margin:0;color:rgba(35,41,75,.62);font-size:13px;line-height:1.45}
.of-home-block-head .of-link{flex:0 0 auto}

.of-home-nav-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.of-home-nav-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;min-height:104px;padding:16px;border:1px solid rgba(35,41,75,.11)!important;border-radius:18px!important;background:#fff!important;color:#23294b!important;text-align:left!important;cursor:pointer;box-shadow:0 8px 24px rgba(35,41,75,.045)!important;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease!important}
.of-home-nav-card>span:nth-child(2){display:grid;gap:4px;min-width:0}
.of-home-nav-card strong{font-size:15px;color:#23294b;line-height:1.2}
.of-home-nav-card small{color:rgba(35,41,75,.58);font-size:11px;line-height:1.4}
.of-home-nav-card>i{font-style:normal;font-size:25px;color:#f8a232}
.of-home-tile-icon{display:flex!important;align-items:center;justify-content:center;width:48px;height:48px;border-radius:15px;background:rgba(248,162,50,.12);color:#23294b}
.of-home-tile-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.of-home-nav-card:hover,.of-home-nav-card:focus,.of-home-nav-card:focus-visible,.of-home-nav-card:active{background:#fff!important;color:#23294b!important;border-color:#f8a232!important;box-shadow:0 10px 28px rgba(35,41,75,.08)!important;outline:none!important;filter:none!important}
@media(hover:hover) and (pointer:fine){.of-home-nav-card:hover{transform:translateY(-2px)!important}}

.of-home-attention-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.of-home-attention-card{display:grid;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:13px;padding:15px 16px;border:1px solid rgba(248,162,50,.3)!important;border-radius:17px!important;background:rgba(248,162,50,.07)!important;color:#23294b!important;text-align:left!important;cursor:pointer;box-shadow:none!important}
.of-home-attention-card>span:last-child{display:grid;gap:3px}
.of-home-attention-card strong{font-size:14px;color:#23294b}
.of-home-attention-card small{font-size:11px;color:rgba(35,41,75,.62);line-height:1.4}
.of-home-attention-number{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:16px;background:#23294b;color:#fff;font-size:22px;font-weight:900}
.of-home-attention-card:hover,.of-home-attention-card:focus,.of-home-attention-card:active{background:rgba(248,162,50,.1)!important;border-color:#f8a232!important;color:#23294b!important;box-shadow:none!important;outline:none!important;filter:none!important}
.of-home-attention-clear{grid-column:1/-1;display:flex;align-items:center;gap:13px;padding:16px 18px;border:1px solid rgba(35,41,75,.09);border-radius:17px;background:rgba(35,41,75,.035)}
.of-home-attention-clear>div{display:grid;gap:3px}
.of-home-attention-clear strong{color:#23294b}
.of-home-attention-clear small{color:rgba(35,41,75,.58)}
.of-home-clear-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#23294b;color:#fff;font-weight:900}

.of-home-action-row{display:flex;flex-wrap:wrap;gap:10px}
.of-home-action-button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid #23294b!important;border-radius:13px!important;background:#fff!important;color:#23294b!important;font:inherit;font-size:13px;font-weight:800;cursor:pointer;box-shadow:none!important}
.of-home-action-button span{display:flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:8px;background:rgba(248,162,50,.14);color:#23294b}
.of-home-action-button:hover,.of-home-action-button:focus,.of-home-action-button:active{background:#23294b!important;border-color:#23294b!important;color:#fff!important;box-shadow:none!important;outline:2px solid rgba(248,162,50,.3)!important;outline-offset:2px!important}
.of-home-action-button:hover span,.of-home-action-button:focus span{background:#f8a232;color:#23294b}

.of-home-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.of-home-summary-grid button{display:grid;gap:5px;min-height:112px;padding:16px;border:1px solid rgba(35,41,75,.1)!important;border-radius:17px!important;background:#fff!important;color:#23294b!important;text-align:left!important;box-shadow:none!important;cursor:pointer}
.of-home-summary-grid button>span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:rgba(35,41,75,.55)}
.of-home-summary-grid button>strong{font-size:28px;line-height:1;color:#23294b}
.of-home-summary-grid button>small{color:rgba(35,41,75,.57);font-size:11px;line-height:1.35}
.of-home-summary-grid button:hover,.of-home-summary-grid button:focus,.of-home-summary-grid button:active{background:#fff!important;border-color:#f8a232!important;color:#23294b!important;box-shadow:none!important;outline:none!important}

.of-home-primary-workout{display:grid;grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px;border:1px solid rgba(248,162,50,.34);border-radius:20px;background:linear-gradient(135deg,rgba(248,162,50,.1),rgba(248,162,50,.035));box-shadow:0 10px 28px rgba(35,41,75,.05)}
.of-home-primary-workout.is-progress{border-color:rgba(35,41,75,.25);background:rgba(35,41,75,.035)}
.of-home-primary-workout.is-clear{border-color:rgba(35,41,75,.1);background:#fff}
.of-home-primary-workout-icon{display:flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:20px;background:#23294b;color:#fff;font-size:27px;font-weight:900}
.of-home-primary-workout-icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.of-home-primary-workout-copy{min-width:0}
.of-home-primary-workout-copy>span{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#f8a232}
.of-home-primary-workout-copy h3{margin:4px 0 4px;color:#23294b;font-size:21px;line-height:1.2}
.of-home-primary-workout-copy p{margin:0;color:rgba(35,41,75,.62);font-size:12px;line-height:1.45}

.of-home-evolution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.of-home-evolution-card{display:grid;gap:6px;padding:16px;border:1px solid rgba(35,41,75,.1)!important;border-radius:17px!important;background:#fff!important;color:#23294b!important;text-align:left!important;cursor:pointer;box-shadow:none!important}
.of-home-evolution-card>span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:rgba(35,41,75,.55)}
.of-home-evolution-card>strong{font-size:23px;color:#23294b}
.of-home-evolution-card>strong small{font-size:12px;color:rgba(35,41,75,.55)}
.of-home-evolution-card>em{font-style:normal;font-size:11px;font-weight:800;color:#f8a232}
.of-home-evolution-card:hover,.of-home-evolution-card:focus,.of-home-evolution-card:active{background:#fff!important;border-color:#f8a232!important;color:#23294b!important;box-shadow:none!important;outline:none!important}
.of-home-empty-inline{display:grid;gap:4px;padding:16px;border:1px solid rgba(35,41,75,.09);border-radius:16px;background:rgba(35,41,75,.03)}
.of-home-empty-inline strong{color:#23294b}
.of-home-empty-inline span{color:rgba(35,41,75,.58);font-size:12px}

.of-home-two-column{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:stretch}
.of-home-two-column>.of-home-block{margin-bottom:0;padding:18px;border:1px solid rgba(35,41,75,.1);border-radius:20px;background:#fff}
.of-home-status-list{display:grid;gap:8px}
.of-home-status-list button{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:0!important;border-radius:12px!important;background:rgba(35,41,75,.035)!important;color:#23294b!important;text-align:left!important;cursor:pointer;box-shadow:none!important}
.of-home-status-list button span{font-size:12px;color:rgba(35,41,75,.6)}
.of-home-status-list button strong{font-size:13px;color:#23294b;text-align:right}
.of-home-status-list button:hover,.of-home-status-list button:focus,.of-home-status-list button:active{background:rgba(248,162,50,.1)!important;color:#23294b!important;box-shadow:none!important;outline:none!important}
.of-home-latest-notice{display:grid;gap:7px;padding:14px;border-radius:14px;background:rgba(35,41,75,.035);margin-bottom:12px}
.of-home-latest-notice strong{color:#23294b}
.of-home-latest-notice p{margin:0;color:rgba(35,41,75,.64);font-size:12px;line-height:1.45}
.of-home-latest-notice small{color:rgba(35,41,75,.48);font-size:10px}
.of-home-notice-block>.of-btn{margin-top:auto}

@media(max-width:1180px){
  .of-home-nav-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .of-home-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .of-home-hero{grid-template-columns:1fr;padding:22px}
  .of-home-hero-art{min-height:160px}
  .of-home-hero-brand{width:100px}
  .of-home-two-column{grid-template-columns:1fr}
}
@media(max-width:700px){
  .of-home-hero{gap:16px;padding:18px;border-radius:20px;margin-bottom:20px}
  .of-home-hero h2{font-size:29px}
  .of-home-hero p{font-size:13px}
  .of-home-hero-art{min-height:135px}
  .of-home-hero-art svg{width:230px;max-width:88%}
  .of-home-student-progress{right:12px;top:12px;min-width:78px;padding:9px 10px}
  .of-home-student-progress strong{font-size:23px}
  .of-home-block{margin-bottom:20px}
  .of-home-block-head{align-items:flex-start;flex-direction:column;gap:8px}
  .of-home-nav-grid{grid-template-columns:1fr 1fr;gap:9px}
  .of-home-nav-card{grid-template-columns:42px minmax(0,1fr);min-height:104px;padding:12px;gap:10px}
  .of-home-nav-card>i{display:none}
  .of-home-tile-icon{width:42px;height:42px;border-radius:13px}
  .of-home-nav-card strong{font-size:13px}
  .of-home-nav-card small{font-size:10px}
  .of-home-attention-grid{grid-template-columns:1fr}
  .of-home-attention-clear{grid-column:auto}
  .of-home-action-row{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .of-home-action-button{justify-content:flex-start;width:100%;font-size:12px}
  .of-home-summary-grid{grid-template-columns:1fr 1fr}
  .of-home-summary-grid button{min-height:98px;padding:13px}
  .of-home-summary-grid button>strong{font-size:24px}
  .of-home-primary-workout{grid-template-columns:54px minmax(0,1fr);gap:12px;padding:15px}
  .of-home-primary-workout-icon{width:54px;height:54px;border-radius:16px}
  .of-home-primary-workout>.of-btn{grid-column:1/-1;width:100%}
  .of-home-primary-workout-copy h3{font-size:18px}
  .of-home-evolution-grid{grid-template-columns:1fr}
}
@media(max-width:420px){
  .of-home-nav-grid{grid-template-columns:1fr}
  .of-home-action-row{grid-template-columns:1fr}
  .of-home-summary-grid{grid-template-columns:1fr 1fr}
}


/* =========================================================
   v1.25.2 — refinamento global de identidade e controles
   Remove estados herdados rosa/roxo, estabiliza Exercícios,
   centraliza presença/falta e padroniza telefone.
   ========================================================= */
.of-app{
  --wpa-blue:#23294b;
  --wpa-orange:#f8a232;
  --wpa-white:#ffffff;
  --wpa-line:rgba(35,41,75,.18);
  --wpa-blue-soft:rgba(35,41,75,.07);
  --wpa-orange-soft:rgba(248,162,50,.12);
  accent-color:var(--wpa-orange)!important;
}

/* Nenhum controle do app deve herdar hover, foco ou clique do tema/Elementor. */
body:not(.wp-admin) .of-app button,
body:not(.wp-admin) .of-app .of-btn,
body:not(.wp-admin) .of-app [role="button"],
body:not(.wp-admin) .of-app input[type="button"],
body:not(.wp-admin) .of-app input[type="submit"]{
  -webkit-tap-highlight-color:transparent!important;
  text-shadow:none!important;
  filter:none!important;
  transform:none!important;
}
body:not(.wp-admin) .of-app button:hover,
body:not(.wp-admin) .of-app button:focus,
body:not(.wp-admin) .of-app button:focus-visible,
body:not(.wp-admin) .of-app button:active{
  background:#fff!important;
  color:var(--wpa-blue)!important;
  border-color:var(--wpa-orange)!important;
  box-shadow:none!important;
  outline:2px solid rgba(248,162,50,.24)!important;
  outline-offset:1px!important;
  transform:none!important;
  filter:none!important;
}

/* Botões principais e secundários com contraste previsível. */
body:not(.wp-admin) .of-app .of-btn.primary,
body:not(.wp-admin) .of-app .of-btn.primary:visited{
  background:var(--wpa-blue)!important;
  color:#fff!important;
  border:1px solid var(--wpa-blue)!important;
}
body:not(.wp-admin) .of-app .of-btn.primary:hover,
body:not(.wp-admin) .of-app .of-btn.primary:focus,
body:not(.wp-admin) .of-app .of-btn.primary:active{
  background:var(--wpa-orange)!important;
  color:var(--wpa-blue)!important;
  border-color:var(--wpa-orange)!important;
}
body:not(.wp-admin) .of-app .of-btn.soft,
body:not(.wp-admin) .of-app .of-btn.soft:visited{
  background:var(--wpa-orange-soft)!important;
  color:var(--wpa-blue)!important;
  border:1px solid rgba(248,162,50,.36)!important;
}
body:not(.wp-admin) .of-app .of-btn.soft:hover,
body:not(.wp-admin) .of-app .of-btn.soft:focus,
body:not(.wp-admin) .of-app .of-btn.soft:active{
  background:var(--wpa-orange)!important;
  color:var(--wpa-blue)!important;
  border-color:var(--wpa-orange)!important;
}
body:not(.wp-admin) .of-app .of-btn.ghost,
body:not(.wp-admin) .of-app .of-btn.ghost:visited{
  background:#fff!important;
  color:var(--wpa-blue)!important;
  border:1px solid var(--wpa-line)!important;
}
body:not(.wp-admin) .of-app .of-btn.ghost:hover,
body:not(.wp-admin) .of-app .of-btn.ghost:focus,
body:not(.wp-admin) .of-app .of-btn.ghost:active{
  background:var(--wpa-blue-soft)!important;
  color:var(--wpa-blue)!important;
  border-color:var(--wpa-blue)!important;
}
body:not(.wp-admin) .of-app .of-link,
body:not(.wp-admin) .of-app .of-link:hover,
body:not(.wp-admin) .of-app .of-link:focus,
body:not(.wp-admin) .of-app .of-link:active{
  color:var(--wpa-orange)!important;
  background:transparent!important;
  box-shadow:none!important;
  outline-color:rgba(248,162,50,.32)!important;
}

/* Sidebar mantém contraste branco no fundo azul. */
body:not(.wp-admin) .of-app .of-nav button:hover,
body:not(.wp-admin) .of-app .of-nav button:focus,
body:not(.wp-admin) .of-app .of-nav button:active,
body:not(.wp-admin) .of-app .of-nav button.active{
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
  border-color:transparent!important;
  outline:none!important;
}

/* Checkboxes e radios seguem o laranja da marca em qualquer navegador compatível. */
body:not(.wp-admin) .of-app input[type="checkbox"],
body:not(.wp-admin) .of-app input[type="radio"]{
  accent-color:var(--wpa-orange)!important;
}

/* Exercícios: seleção estável, sem salto, tremor ou hover herdado. */
body:not(.wp-admin) .of-app .of-exercise-card-selectable,
body:not(.wp-admin) .of-app .of-exercise-card-selectable:hover,
body:not(.wp-admin) .of-app .of-exercise-card-selectable:focus-within{
  transform:none!important;
  transition:border-color .12s ease,box-shadow .12s ease!important;
}
body:not(.wp-admin) .of-app .of-exercise-select,
body:not(.wp-admin) .of-app .of-exercise-select:hover,
body:not(.wp-admin) .of-app .of-exercise-select:focus-within,
body:not(.wp-admin) .of-app .of-exercise-select:active{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#fff!important;
  color:var(--wpa-blue)!important;
  border-color:rgba(35,41,75,.22)!important;
  box-shadow:none!important;
  outline:none!important;
  transform:none!important;
  filter:none!important;
  transition:none!important;
}
body:not(.wp-admin) .of-app .of-exercise-select:hover,
body:not(.wp-admin) .of-app .of-exercise-select:focus-within{
  border-color:var(--wpa-orange)!important;
  background:var(--wpa-orange-soft)!important;
}
body:not(.wp-admin) .of-app .of-exercise-select input{
  flex:0 0 auto!important;
  margin:0!important;
  accent-color:var(--wpa-orange)!important;
}
body:not(.wp-admin) .of-app .of-exercise-card-selectable.is-selected{
  border-color:var(--wpa-orange)!important;
  box-shadow:0 0 0 2px rgba(248,162,50,.16)!important;
}
body:not(.wp-admin) .of-app .of-exercise-file-field input[type=file]::file-selector-button,
body:not(.wp-admin) .of-app .of-exercise-file-field input[type=file]::file-selector-button:hover,
body:not(.wp-admin) .of-app .of-exercise-file-field input[type=file]::file-selector-button:active{
  background:var(--wpa-blue)!important;
  color:#fff!important;
  border-color:var(--wpa-blue)!important;
  box-shadow:none!important;
}
body:not(.wp-admin) .of-app .of-exercise-tabs button.active,
body:not(.wp-admin) .of-app .of-exercise-tabs button.active:hover,
body:not(.wp-admin) .of-app .of-exercise-tabs button.active:focus{
  background:var(--wpa-blue)!important;
  color:#fff!important;
  border-color:var(--wpa-blue)!important;
}
body:not(.wp-admin) .of-app .of-exercise-tabs button:not(.active):hover,
body:not(.wp-admin) .of-app .of-exercise-tabs button:not(.active):focus{
  background:var(--wpa-orange-soft)!important;
  color:var(--wpa-blue)!important;
  border-color:var(--wpa-orange)!important;
}

/* Visão do aluno: filtros nunca herdam rosa. */
body:not(.wp-admin) .of-app .of-student-view-mode button,
body:not(.wp-admin) .of-app .of-student-view-mode button:hover,
body:not(.wp-admin) .of-app .of-student-view-mode button:focus,
body:not(.wp-admin) .of-app .of-student-view-mode button:active{
  background:#fff!important;
  color:var(--wpa-blue)!important;
  border-color:rgba(35,41,75,.20)!important;
  box-shadow:none!important;
  transform:none!important;
}
body:not(.wp-admin) .of-app .of-student-view-mode button.active,
body:not(.wp-admin) .of-app .of-student-view-mode button.active:hover,
body:not(.wp-admin) .of-app .of-student-view-mode button.active:focus{
  background:var(--wpa-blue)!important;
  color:#fff!important;
  border-color:var(--wpa-blue)!important;
  outline:2px solid rgba(248,162,50,.25)!important;
}

/* Presença e falta: glifos perfeitamente centralizados no quadrado. */
body:not(.wp-admin) .of-app .of-section[data-section="classes"] .of-choice button{
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  line-height:1!important;
  font-family:Arial,"Segoe UI Symbol",sans-serif!important;
  font-size:17px!important;
  text-align:center!important;
  vertical-align:middle!important;
}
body:not(.wp-admin) .of-app .of-section[data-section="classes"] .of-choice button:first-child.active,
body:not(.wp-admin) .of-app .of-section[data-section="classes"] .of-choice button:first-child.active:hover,
body:not(.wp-admin) .of-app .of-section[data-section="classes"] .of-choice button:first-child.active:focus{
  background:var(--wpa-blue)!important;
  color:#fff!important;
  border-color:var(--wpa-blue)!important;
}
body:not(.wp-admin) .of-app .of-section[data-section="classes"] .of-choice button:last-child.active,
body:not(.wp-admin) .of-app .of-section[data-section="classes"] .of-choice button:last-child.active:hover,
body:not(.wp-admin) .of-app .of-section[data-section="classes"] .of-choice button:last-child.active:focus{
  background:var(--wpa-orange)!important;
  color:var(--wpa-blue)!important;
  border-color:var(--wpa-orange)!important;
}

/* Play compacto mantém o design aprovado, inclusive hover/foco. */
body:not(.wp-admin) .of-app .of-compact-video-play,
body:not(.wp-admin) .of-app .of-compact-video-play:hover,
body:not(.wp-admin) .of-app .of-compact-video-play:focus,
body:not(.wp-admin) .of-app .of-compact-video-play:active{
  background:rgba(35,41,75,.84)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.9)!important;
  box-shadow:0 2px 8px rgba(0,0,0,.2)!important;
  outline:none!important;
  transform:none!important;
}

/* Telefone sempre usa a cor de texto oficial, inclusive no mobile. */
body:not(.wp-admin) .of-app .of-student-phone{
  color:var(--wpa-blue)!important;
  text-decoration:none!important;
}

/* Cards e botões da home preservam seus estados próprios sem interferência do fallback global. */
body:not(.wp-admin) .of-app .of-home-nav-card:hover,
body:not(.wp-admin) .of-app .of-home-nav-card:focus,
body:not(.wp-admin) .of-app .of-home-nav-card:active,
body:not(.wp-admin) .of-app .of-home-summary-grid button:hover,
body:not(.wp-admin) .of-app .of-home-summary-grid button:focus,
body:not(.wp-admin) .of-app .of-home-summary-grid button:active,
body:not(.wp-admin) .of-app .of-home-evolution-card:hover,
body:not(.wp-admin) .of-app .of-home-evolution-card:focus,
body:not(.wp-admin) .of-app .of-home-evolution-card:active{
  background:#fff!important;
  color:var(--wpa-blue)!important;
  border-color:var(--wpa-orange)!important;
  transform:none!important;
  filter:none!important;
}

/* Links e checkboxes também ficam isolados de estilos externos do tema. */
body:not(.wp-admin) .of-app a:hover,
body:not(.wp-admin) .of-app a:focus,
body:not(.wp-admin) .of-app a:active{
  color:var(--wpa-orange)!important;
  text-shadow:none!important;
  filter:none!important;
}
body:not(.wp-admin) .of-app .of-sidebar a,
body:not(.wp-admin) .of-app .of-sidebar a:hover,
body:not(.wp-admin) .of-app .of-sidebar a:focus,
body:not(.wp-admin) .of-app .of-sidebar a:active{
  color:#fff!important;
}
body:not(.wp-admin) .of-app .of-exercise-select input[type="checkbox"]{
  -webkit-appearance:checkbox!important;
  appearance:auto!important;
  accent-color:var(--wpa-orange)!important;
  box-shadow:none!important;
  outline:none!important;
}


body:not(.wp-admin) .of-app .of-exercise-select.is-selected,
body:not(.wp-admin) .of-app .of-exercise-select:has(input:checked){
  background:var(--wpa-blue)!important;
  color:#fff!important;
  border-color:var(--wpa-blue)!important;
}
body:not(.wp-admin) .of-app .of-exercise-select.is-selected:hover,
body:not(.wp-admin) .of-app .of-exercise-select.is-selected:focus-within,
body:not(.wp-admin) .of-app .of-exercise-select:has(input:checked):hover,
body:not(.wp-admin) .of-app .of-exercise-select:has(input:checked):focus-within{
  background:var(--wpa-blue)!important;
  color:#fff!important;
  border-color:var(--wpa-orange)!important;
}


/* ================================================================
   v1.26.1 — Exercícios como ferramenta de montagem e Modo Treino
   ================================================================ */

/* Montagem: card inteiro selecionável, sem botão rosa ou controle que mexa no layout. */
body:not(.wp-admin) .of-app .of-workout-exercise-grid .of-exercise-card-selectable{
  position:relative!important;
  cursor:pointer!important;
  border:1px solid rgba(35,41,75,.14)!important;
  background:#fff!important;
  transform:none!important;
  transition:border-color .14s ease,box-shadow .14s ease,background .14s ease!important;
  outline:none!important;
}
body:not(.wp-admin) .of-app .of-workout-exercise-grid .of-exercise-card-selectable:hover,
body:not(.wp-admin) .of-app .of-workout-exercise-grid .of-exercise-card-selectable:focus-visible{
  border-color:rgba(248,162,50,.9)!important;
  box-shadow:0 0 0 2px rgba(248,162,50,.10)!important;
  background:#fff!important;
  transform:none!important;
}
body:not(.wp-admin) .of-app .of-workout-exercise-grid .of-exercise-card-selectable.is-selected{
  border-color:var(--wpa-blue)!important;
  box-shadow:0 0 0 2px rgba(35,41,75,.12)!important;
  background:rgba(35,41,75,.025)!important;
}
body:not(.wp-admin) .of-app .of-workout-card-checkbox{
  position:absolute!important;
  width:1px!important;height:1px!important;
  opacity:0!important;pointer-events:none!important;
}
body:not(.wp-admin) .of-app .of-builder-select-state,
body:not(.wp-admin) .of-app .of-library-add-state{
  position:absolute;
  right:7px;top:7px;z-index:4;
  display:inline-flex;align-items:center;justify-content:center;gap:4px;
  min-height:25px;padding:4px 7px;
  border:1px solid rgba(255,255,255,.92);border-radius:999px;
  background:rgba(35,41,75,.90)!important;color:#fff!important;
  box-shadow:0 2px 8px rgba(0,0,0,.16);
  font-size:9px;font-weight:900;line-height:1;white-space:nowrap;
  pointer-events:none;
}
body:not(.wp-admin) .of-app .of-builder-select-icon{display:grid;place-items:center;width:14px;height:14px;border-radius:50%;background:var(--wpa-orange);color:var(--wpa-blue);font-size:11px;font-weight:1000;line-height:1}
body:not(.wp-admin) .of-app .of-workout-selection-order{
  position:absolute;left:7px;top:7px;z-index:5;
  display:grid;place-items:center;width:27px;height:27px;border-radius:50%;
  background:var(--wpa-orange)!important;color:var(--wpa-blue)!important;
  border:2px solid #fff;font-size:11px;font-weight:1000;line-height:1;
  box-shadow:0 2px 8px rgba(0,0,0,.16);
}
body:not(.wp-admin) .of-app .of-workout-selection-order[hidden]{display:none!important}
body:not(.wp-admin) .of-app .of-exercise-card-selectable.is-selected .of-builder-select-state{background:var(--wpa-blue)!important;color:#fff!important;border-color:#fff!important}

/* Biblioteca durante "Incluir exercício": card seleciona, sem botão separado. */
body:not(.wp-admin) .of-app .of-section[data-section="exercises"].is-workout-add-mode .of-exercise-card-library.is-workout-add-selectable{cursor:pointer!important;border-color:rgba(35,41,75,.20)!important}
body:not(.wp-admin) .of-app .of-section[data-section="exercises"].is-workout-add-mode .of-exercise-card-library.is-workout-add-selectable:hover{border-color:var(--wpa-orange)!important;box-shadow:0 0 0 2px rgba(248,162,50,.10)!important;transform:none!important}
body:not(.wp-admin) .of-app .of-section[data-section="exercises"].is-workout-add-mode .of-exercise-card-library.is-workout-add-selected{border-color:var(--wpa-blue)!important;box-shadow:0 0 0 2px rgba(35,41,75,.12)!important}
body:not(.wp-admin) .of-app .of-section[data-section="exercises"].is-workout-add-mode .of-exercise-card-library.is-workout-add-existing{opacity:.62!important;cursor:not-allowed!important}
body:not(.wp-admin) .of-app .of-workout-add-pick{display:none!important}

/* Modo Treino do aluno. */
body:not(.wp-admin) .of-app .of-workout-mode{margin-top:16px}
body:not(.wp-admin) .of-app .of-workout-mode-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:22px;align-items:start}
body:not(.wp-admin) .of-app .of-workout-focus{min-width:0;padding:18px;border:1px solid rgba(35,41,75,.12);border-radius:18px;background:#fff}
body:not(.wp-admin) .of-app .of-workout-focus-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
body:not(.wp-admin) .of-app .of-workout-focus-head h3{margin:3px 0 0;color:var(--wpa-blue);font-size:clamp(18px,2vw,25px);line-height:1.15}
body:not(.wp-admin) .of-app .of-workout-focus-position{flex:0 0 auto;padding:7px 10px;border-radius:999px;background:rgba(248,162,50,.13);color:var(--wpa-blue);font-size:11px;font-weight:900}
body:not(.wp-admin) .of-app .of-workout-focus-video-shell{width:min(100%,360px);aspect-ratio:9/16;margin:0 auto;border-radius:16px;overflow:hidden;background:#101426}
body:not(.wp-admin) .of-app .of-workout-focus-video-shell video{display:block;width:100%;height:100%;object-fit:cover;background:#101426}
body:not(.wp-admin) .of-app .of-workout-focus-observations{width:min(100%,560px);margin:14px auto 0}
body:not(.wp-admin) .of-app .of-workout-focus-observations [data-workout-focus-description]{white-space:pre-line}
body:not(.wp-admin) .of-app .of-workout-focus-nav{display:flex;justify-content:space-between;gap:10px;width:min(100%,560px);margin:14px auto 0}
body:not(.wp-admin) .of-app .of-workout-focus-nav .of-btn{min-width:120px}
body:not(.wp-admin) .of-app .of-workout-focus-nav .of-btn:disabled{opacity:.4;cursor:not-allowed}
body:not(.wp-admin) .of-app .of-workout-navigator{min-width:0;position:sticky;top:94px}
body:not(.wp-admin) .of-app .of-workout-navigator .of-workout-order-note{margin:0 0 10px;padding:11px 12px;border-radius:12px;background:rgba(35,41,75,.045);border-left:3px solid var(--wpa-orange)}
body:not(.wp-admin) .of-app .of-workout-navigator .of-workout-order-note strong{display:block;color:var(--wpa-blue);font-size:12px}
body:not(.wp-admin) .of-app .of-workout-navigator .of-workout-order-note span{display:block;margin-top:3px;color:rgba(35,41,75,.72);font-size:10px;line-height:1.35}
body:not(.wp-admin) .of-app .of-student-exercise-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;align-items:start}
body:not(.wp-admin) .of-app .of-workout-nav-card{
  position:relative;display:flex;flex-direction:column;min-width:0;padding:0;
  overflow:hidden;border:1px solid rgba(35,41,75,.12)!important;border-radius:12px!important;
  background:#fff!important;color:var(--wpa-blue)!important;text-align:left;cursor:pointer;
  box-shadow:none!important;transform:none!important;transition:border-color .12s ease,box-shadow .12s ease!important;
}
body:not(.wp-admin) .of-app .of-workout-nav-card:hover,
body:not(.wp-admin) .of-app .of-workout-nav-card:focus-visible{background:#fff!important;color:var(--wpa-blue)!important;border-color:var(--wpa-orange)!important;box-shadow:0 0 0 2px rgba(248,162,50,.10)!important;outline:none!important;transform:none!important}
body:not(.wp-admin) .of-app .of-workout-nav-card.is-active-exercise{border-color:var(--wpa-blue)!important;box-shadow:0 0 0 2px rgba(35,41,75,.13)!important}
body:not(.wp-admin) .of-app .of-workout-nav-media{position:relative;display:block;width:100%;aspect-ratio:9/16;background:#101426;overflow:hidden}
body:not(.wp-admin) .of-app .of-workout-nav-media img{display:block;width:100%;height:100%;object-fit:cover}
body:not(.wp-admin) .of-app .of-workout-nav-fallback{display:grid;place-items:center;width:100%;height:100%;color:#fff;font-size:10px;font-weight:800}
body:not(.wp-admin) .of-app .of-workout-nav-card .of-exercise-order-badge{position:absolute;left:6px;top:6px;display:grid;place-items:center;width:25px;height:25px;border:2px solid #fff;border-radius:50%;background:var(--wpa-blue)!important;color:#fff!important;font-size:10px;font-weight:1000;box-shadow:0 2px 7px rgba(0,0,0,.18)}
body:not(.wp-admin) .of-app .of-workout-nav-card.is-active-exercise .of-exercise-order-badge{background:var(--wpa-orange)!important;color:var(--wpa-blue)!important}
body:not(.wp-admin) .of-app .of-workout-nav-title{display:block;padding:7px 7px 2px;font-size:10.5px;font-weight:900;line-height:1.2;min-height:34px;overflow-wrap:anywhere}
body:not(.wp-admin) .of-app .of-workout-nav-note{display:block;padding:0 7px 7px;color:rgba(35,41,75,.62);font-size:8.5px;font-weight:800}

@media(max-width:1050px){
  body:not(.wp-admin) .of-app .of-workout-mode-layout{grid-template-columns:minmax(0,1fr) 300px;gap:16px}
}
@media(max-width:900px){
  body:not(.wp-admin) .of-app .of-workout-mode-layout{grid-template-columns:1fr;gap:14px}
  body:not(.wp-admin) .of-app .of-workout-navigator{position:static;top:auto}
  body:not(.wp-admin) .of-app .of-workout-focus{padding:14px 12px;border-radius:15px}
  body:not(.wp-admin) .of-app .of-workout-focus-video-shell{width:min(100%,330px)}
  body:not(.wp-admin) .of-app .of-student-exercise-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}
  body:not(.wp-admin) .of-app .of-workout-nav-title{font-size:9px;min-height:31px;padding:6px 5px 2px}
  body:not(.wp-admin) .of-app .of-workout-nav-note{font-size:7.5px;padding:0 5px 6px}
  body:not(.wp-admin) .of-app .of-workout-nav-card .of-exercise-order-badge{left:4px;top:4px;width:22px;height:22px;font-size:9px}
  body:not(.wp-admin) .of-app .of-workout-focus-nav .of-btn{min-width:0;flex:1 1 0;padding-left:8px!important;padding-right:8px!important}
}


/* ================================================================
   v1.26.1 — Refinamento da Biblioteca e inclusão em treinos
   ================================================================ */

/* O comando de inclusão no Histórico precisa permanecer inequívoco e clicável. */
body:not(.wp-admin) .of-app [data-add-exercise-to-workout]{
  position:relative!important;
  z-index:2!important;
  pointer-events:auto!important;
  background:rgba(35,41,75,.06)!important;
  color:var(--wpa-blue)!important;
  border:1px solid rgba(35,41,75,.18)!important;
  box-shadow:none!important;
  transform:none!important;
}
body:not(.wp-admin) .of-app [data-add-exercise-to-workout]:hover,
body:not(.wp-admin) .of-app [data-add-exercise-to-workout]:focus-visible,
body:not(.wp-admin) .of-app [data-add-exercise-to-workout]:active{
  background:rgba(248,162,50,.14)!important;
  color:var(--wpa-blue)!important;
  border-color:var(--wpa-orange)!important;
  box-shadow:none!important;
  transform:none!important;
}

/* Biblioteca: nenhum título é truncado. */
body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-library .of-exercise-card-body h3,
body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-selectable .of-exercise-card-body h3{
  display:block!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:initial!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}

/* Identificação de quem aparece no vídeo: etiqueta informativa, discreta. */
body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-subject{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  background:rgba(35,41,75,.055)!important;
  color:rgba(35,41,75,.78)!important;
  border:1px solid rgba(35,41,75,.08)!important;
  box-shadow:none!important;
}

/* Editar e Excluir sempre pertencem ao card e não podem escapar da coluna. */
body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-library .of-actions{
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:5px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:3px 0 0!important;
  overflow:visible!important;
}
body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-library .of-actions .of-btn,
body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-library .of-edit-exercise,
body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-library .of-delete-exercise{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  white-space:normal!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  transform:none!important;
}

/* Em modo de inclusão, as ações ficam escondidas para o card inteiro virar seletor. */
body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"].is-workout-add-mode .of-exercise-card-library .of-actions{
  display:none!important;
}

@media(max-width:700px){
  body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-grid,
  body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-workout-exercise-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    align-items:start!important;
  }
  body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card{
    min-width:0!important;
    max-width:100%!important;
    border-radius:11px!important;
    overflow:hidden!important;
  }
  body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-body{
    box-sizing:border-box!important;
    min-width:0!important;
    max-width:100%!important;
    padding:7px 5px 6px!important;
    gap:5px!important;
  }
  body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-body h3{
    font-size:10px!important;
    line-height:1.22!important;
    margin:0!important;
  }
  body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-subject{
    margin:0 0 2px!important;
    padding:2px 4px!important;
    border-radius:6px!important;
    font-size:7px!important;
    font-weight:800!important;
    line-height:1.15!important;
  }
  body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-library .of-actions{
    gap:3px!important;
  }
  body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card-library .of-actions .of-btn{
    min-height:27px!important;
    padding:5px 1px!important;
    border-radius:7px!important;
    font-size:8px!important;
    line-height:1.05!important;
  }
  body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-observations summary{
    font-size:7.5px!important;
    line-height:1.2!important;
    overflow-wrap:anywhere!important;
  }
  body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-library-add-state,
  body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-builder-select-state{
    right:4px!important;
    top:4px!important;
    max-width:calc(100% - 8px)!important;
    min-height:20px!important;
    padding:3px 5px!important;
    font-size:7px!important;
    white-space:normal!important;
    text-align:center!important;
  }
  body:not(.wp-admin) .of-app .of-workout-add-exercises-bar{
    max-height:calc(100dvh - 18px)!important;
    overflow:auto!important;
  }
}


/* ================================================================
   v1.26.2 — seleção fora do vídeo + sequência visual + fullscreen retrato
   ================================================================ */

/* A área do vídeo fica limpa: somente o play compacto antes da reprodução. */
body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-video-shell > .of-builder-select-state,
body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-video-shell > .of-library-add-state,
body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-video-shell > .of-workout-selection-order{
  display:none!important;
}

/* Botões explícitos abaixo do título, estáveis e sem herança rosa. */
body:not(.wp-admin) .of-app .of-builder-select-button,
body:not(.wp-admin) .of-app .of-workout-add-pick{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:34px!important;
  margin:2px 0 0!important;
  padding:7px 9px!important;
  border:1px solid rgba(35,41,75,.22)!important;
  border-radius:9px!important;
  background:rgba(35,41,75,.055)!important;
  color:#23294b!important;
  box-shadow:none!important;
  transform:none!important;
  font-size:10.5px!important;
  font-weight:900!important;
  line-height:1.15!important;
  text-align:center!important;
  white-space:normal!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent!important;
}
body:not(.wp-admin) .of-app .of-builder-select-button:hover,
body:not(.wp-admin) .of-app .of-builder-select-button:focus-visible,
body:not(.wp-admin) .of-app .of-builder-select-button:active,
body:not(.wp-admin) .of-app .of-workout-add-pick:hover,
body:not(.wp-admin) .of-app .of-workout-add-pick:focus-visible,
body:not(.wp-admin) .of-app .of-workout-add-pick:active{
  border-color:#f8a232!important;
  background:rgba(248,162,50,.14)!important;
  color:#23294b!important;
  outline:none!important;
  box-shadow:0 0 0 2px rgba(248,162,50,.08)!important;
  transform:none!important;
}
body:not(.wp-admin) .of-app .of-builder-select-button.is-selected,
body:not(.wp-admin) .of-app .of-workout-add-pick.is-selected{
  border-color:#23294b!important;
  background:#23294b!important;
  color:#fff!important;
}
body:not(.wp-admin) .of-app .of-builder-select-button.is-selected:hover,
body:not(.wp-admin) .of-app .of-builder-select-button.is-selected:focus-visible,
body:not(.wp-admin) .of-app .of-workout-add-pick.is-selected:hover,
body:not(.wp-admin) .of-app .of-workout-add-pick.is-selected:focus-visible{
  border-color:#f8a232!important;
  background:#23294b!important;
  color:#fff!important;
}
body:not(.wp-admin) .of-app .of-workout-add-pick[hidden]{display:none!important}
body:not(.wp-admin) .of-app .of-workout-add-pick:disabled{
  display:inline-flex!important;
  opacity:.52!important;
  cursor:not-allowed!important;
  border-color:rgba(35,41,75,.12)!important;
  background:rgba(35,41,75,.035)!important;
  color:rgba(35,41,75,.7)!important;
}

body:not(.wp-admin) .of-app .of-workout-select-row{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:6px!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
}
body:not(.wp-admin) .of-app .of-workout-select-row .of-workout-selection-order{
  position:static!important;
  inset:auto!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  width:28px!important;
  height:28px!important;
  border:1px solid rgba(35,41,75,.18)!important;
  border-radius:8px!important;
  background:#f8a232!important;
  color:#23294b!important;
  box-shadow:none!important;
  font-size:10px!important;
  font-weight:1000!important;
  line-height:1!important;
}
body:not(.wp-admin) .of-app .of-workout-select-row .of-workout-selection-order[hidden]{display:none!important}
body:not(.wp-admin) .of-app .of-workout-select-row .of-workout-selection-order[hidden] + .of-builder-select-button{grid-column:1/-1!important}

/* O card não precisa mais capturar toque para selecionar. */
body:not(.wp-admin) .of-app .of-workout-exercise-grid .of-exercise-card-selectable{cursor:default!important}
body:not(.wp-admin) .of-app .of-workout-exercise-grid .of-exercise-card-selectable:hover,
body:not(.wp-admin) .of-app .of-workout-exercise-grid .of-exercise-card-selectable:focus-visible{border-color:rgba(35,41,75,.14)!important;box-shadow:none!important}
body:not(.wp-admin) .of-app .of-workout-exercise-grid .of-exercise-card-selectable.is-selected{border-color:#23294b!important;box-shadow:0 0 0 2px rgba(35,41,75,.09)!important}

/* Sequência em miniaturas enquanto a Valéria monta o treino. */
body:not(.wp-admin) .of-app .of-workout-selection-preview{
  margin:8px 0 13px!important;
  padding:10px!important;
  border:1px solid rgba(35,41,75,.11)!important;
  border-radius:12px!important;
  background:rgba(35,41,75,.025)!important;
}
body:not(.wp-admin) .of-app .of-workout-selection-preview[hidden]{display:none!important}
body:not(.wp-admin) .of-app .of-workout-selection-preview-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:8px}
body:not(.wp-admin) .of-app .of-workout-selection-preview-head strong{color:#23294b;font-size:11px}
body:not(.wp-admin) .of-app .of-workout-selection-preview-head span{color:rgba(35,41,75,.64);font-size:9px;text-align:right}
body:not(.wp-admin) .of-app .of-workout-selection-preview-list,
body:not(.wp-admin) .of-app .of-workout-add-exercises-preview{
  display:flex!important;
  align-items:flex-start!important;
  gap:7px!important;
  min-width:0!important;
  overflow-x:auto!important;
  padding:1px 1px 5px!important;
  scrollbar-width:thin;
}
body:not(.wp-admin) .of-app .of-workout-add-exercises-preview[hidden]{display:none!important}
body:not(.wp-admin) .of-app .of-workout-selection-thumb{
  position:relative!important;
  flex:0 0 58px!important;
  width:58px!important;
  min-width:58px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#23294b!important;
  box-shadow:none!important;
  transform:none!important;
  text-align:left!important;
  cursor:pointer!important;
}
body:not(.wp-admin) .of-app .of-workout-selection-thumb:hover,
body:not(.wp-admin) .of-app .of-workout-selection-thumb:focus-visible,
body:not(.wp-admin) .of-app .of-workout-selection-thumb:active{background:transparent!important;color:#23294b!important;box-shadow:none!important;transform:none!important;outline:2px solid rgba(248,162,50,.55)!important;outline-offset:2px!important;border-radius:8px!important}
body:not(.wp-admin) .of-app .of-workout-selection-thumb-media{position:relative;display:block;width:100%;aspect-ratio:9/16;overflow:hidden;border-radius:7px;background:#101426}
body:not(.wp-admin) .of-app .of-workout-selection-thumb-media img{display:block;width:100%;height:100%;object-fit:cover}
body:not(.wp-admin) .of-app .of-workout-selection-thumb-media>span{display:grid;width:100%;height:100%;place-items:center;color:#fff;font-size:8px;font-weight:800}
body:not(.wp-admin) .of-app .of-workout-selection-thumb-media b{position:absolute;left:3px;top:3px;display:grid;place-items:center;width:18px;height:18px;border:2px solid #fff;border-radius:50%;background:#f8a232;color:#23294b;font-size:8px;line-height:1}
body:not(.wp-admin) .of-app .of-workout-selection-thumb-title{display:block;margin-top:4px;font-size:7.5px;font-weight:800;line-height:1.15;overflow-wrap:anywhere}

/* Barra de inclusão: miniaturas e ações continuam sempre clicáveis. */
body:not(.wp-admin) .of-app .of-workout-add-exercises-bar{grid-template-columns:minmax(130px,auto) minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important}
body:not(.wp-admin) .of-app .of-workout-add-exercises-copy{display:grid;gap:2px}
body:not(.wp-admin) .of-app .of-workout-add-exercises-preview{max-width:100%!important}
body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"].is-workout-add-mode .of-exercise-card-library .of-actions{display:grid!important}
body:not(.wp-admin) .of-app[data-role="manager"] .of-section[data-section="exercises"].is-workout-add-mode .of-exercise-card-library .of-workout-add-pick:not([hidden]){display:inline-flex!important}

/* Fullscreen: o arquivo vertical inteiro fica visível. Em desktop haverá área
   lateral livre, em vez de cortar o centro para preencher um monitor 16:9. */
html body:not(.wp-admin) .of-app .of-section[data-section="exercises"] video:fullscreen,
html body:not(.wp-admin) .of-app .of-section[data-section="exercises"] video:-webkit-full-screen{
  width:100vw!important;
  height:100vh!important;
  max-width:100vw!important;
  max-height:100vh!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:#101426!important;
  transform:none!important;
}
html body:not(.wp-admin) .of-app .of-section[data-section="exercises"] video:fullscreen::backdrop{background:#101426!important}

@media(max-width:700px){
  body:not(.wp-admin) .of-app .of-builder-select-button,
  body:not(.wp-admin) .of-app .of-workout-add-pick{min-height:29px!important;padding:5px 3px!important;border-radius:7px!important;font-size:8px!important;line-height:1.08!important}
  body:not(.wp-admin) .of-app .of-workout-select-row{gap:3px!important}
  body:not(.wp-admin) .of-app .of-workout-select-row .of-workout-selection-order{width:24px!important;height:24px!important;border-radius:7px!important;font-size:8px!important}
  body:not(.wp-admin) .of-app .of-workout-selection-preview{padding:8px 7px!important;margin-bottom:10px!important}
  body:not(.wp-admin) .of-app .of-workout-selection-preview-head{display:grid!important;gap:2px!important;align-items:start!important}
  body:not(.wp-admin) .of-app .of-workout-selection-preview-head span{text-align:left!important;font-size:8px!important}
  body:not(.wp-admin) .of-app .of-workout-selection-thumb{flex-basis:48px!important;width:48px!important;min-width:48px!important}
  body:not(.wp-admin) .of-app .of-workout-selection-thumb-title{font-size:6.8px!important}
  body:not(.wp-admin) .of-app .of-workout-add-exercises-bar{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;padding:10px!important}
  body:not(.wp-admin) .of-app .of-workout-add-exercises-actions{display:grid!important;grid-template-columns:1fr 1.35fr!important;gap:6px!important}
  body:not(.wp-admin) .of-app .of-workout-add-exercises-actions .of-btn{width:100%!important;min-width:0!important;padding:7px 5px!important;font-size:9px!important}
}

/* ================================================================
   v1.26.3 — barra de inclusão somente com seleção ativa
   ================================================================ */
/* Reforço final: regras responsivas anteriores usam display:grid!important.
   O [hidden] precisa vencer todas elas para a barra nunca aparecer com zero
   exercícios nem permanecer visível depois de Cancelar. */
html body:not(.wp-admin) .of-app #of-workout-add-exercises-bar[hidden]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}



/* v1.26.4 — identificação múltipla de alunos nos vídeos */
.of-exercise-student-picker{min-width:0;margin:0;padding:12px;border:1px solid rgba(35,41,75,.14);border-radius:14px;background:rgba(35,41,75,.025)}
.of-exercise-student-picker[hidden]{display:none!important}
.of-exercise-student-picker legend{padding:0 6px;color:#23294b;font-size:12px;font-weight:900}
.of-exercise-student-picker-inline{display:grid;gap:9px;min-width:0}
.of-exercise-student-search{width:100%;min-width:0}
.of-exercise-student-choice-list{display:grid;gap:5px;max-height:220px;overflow:auto;padding:4px;border:1px solid rgba(35,41,75,.1);border-radius:12px;background:#fff}
.of-exercise-student-choice{display:flex!important;align-items:center;gap:9px;min-width:0;padding:8px 9px!important;border-radius:10px;cursor:pointer;background:#fff!important;color:#23294b!important}
.of-exercise-student-choice:hover{background:rgba(248,162,50,.12)!important;color:#23294b!important}
.of-exercise-student-choice input{flex:0 0 auto;width:17px!important;height:17px!important;margin:0!important;accent-color:#f8a232!important}
.of-exercise-student-choice span{display:grid;min-width:0;gap:1px}
.of-exercise-student-choice strong{font-size:12px;line-height:1.25;color:#23294b}
.of-exercise-student-choice small{font-size:10px;line-height:1.2;color:rgba(35,41,75,.58);overflow-wrap:anywhere}
.of-exercise-student-picker-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-top:7px}
.of-exercise-student-picker-footer strong{font-size:11px;color:#23294b}.of-exercise-student-picker-footer small{max-width:62%;font-size:10px;text-align:right;color:rgba(35,41,75,.58)}
.of-privacy-video-student-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px;max-width:58%}
@media(max-width:700px){.of-exercise-student-choice-list{max-height:190px}.of-exercise-student-picker-footer{display:grid}.of-exercise-student-picker-footer small{max-width:none;text-align:left}.of-privacy-video-student-badges{max-width:100%;justify-content:flex-start}}

/* ================================================================
   v1.26.5 — ajuda contextual do aplicativo
   ================================================================ */
html body:not(.wp-admin) .of-help-fab{
  position:fixed;
  right:max(16px,env(safe-area-inset-right));
  bottom:max(16px,calc(env(safe-area-inset-bottom) + 10px));
  z-index:2147482000;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  padding:0!important;
  border:2px solid rgba(255,255,255,.92)!important;
  border-radius:50%!important;
  background:#23294b!important;
  color:#fff!important;
  box-shadow:0 8px 24px rgba(35,41,75,.2)!important;
  font:900 20px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  cursor:pointer;
  transform:none!important;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
html body:not(.wp-admin) .of-help-fab:hover,
html body:not(.wp-admin) .of-help-fab:focus,
html body:not(.wp-admin) .of-help-fab:active{
  background:#f8a232!important;
  color:#23294b!important;
  border-color:#23294b!important;
  transform:none!important;
  box-shadow:0 8px 24px rgba(35,41,75,.24)!important;
  outline:none!important;
}
html body:not(.wp-admin) .of-help-fab:focus-visible{outline:3px solid rgba(248,162,50,.35)!important;outline-offset:3px!important}
html body:not(.wp-admin) .of-help-overlay{
  position:fixed;
  inset:0;
  z-index:2147482001;
  background:rgba(20,24,46,.36);
  backdrop-filter:blur(2px);
}
html body:not(.wp-admin) .of-help-overlay[hidden],
html body:not(.wp-admin) .of-help-panel[hidden]{display:none!important}
html body:not(.wp-admin) .of-help-panel{
  position:fixed;
  top:0;
  right:0;
  bottom:0;
  z-index:2147482002;
  width:min(430px,calc(100vw - 28px));
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  background:#fff;
  color:#23294b;
  box-shadow:-18px 0 42px rgba(35,41,75,.2);
  overflow:hidden;
}
html body:not(.wp-admin) .of-help-panel-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
  padding:24px 22px 18px;
  border-bottom:1px solid rgba(35,41,75,.1);
  background:linear-gradient(180deg,rgba(248,162,50,.08),#fff 82%);
}
html body:not(.wp-admin) .of-help-panel-head h2{margin:3px 0 6px!important;color:#23294b!important;font-size:24px!important;line-height:1.12!important}
html body:not(.wp-admin) .of-help-panel-head p{margin:0!important;color:rgba(35,41,75,.7)!important;font-size:13px!important;line-height:1.5!important}
html body:not(.wp-admin) .of-help-close{
  display:grid!important;
  place-items:center!important;
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  padding:0!important;
  border:1px solid rgba(35,41,75,.14)!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#23294b!important;
  font-size:23px!important;
  line-height:1!important;
  cursor:pointer!important;
  transform:none!important;
}
html body:not(.wp-admin) .of-help-close:hover,
html body:not(.wp-admin) .of-help-close:focus,
html body:not(.wp-admin) .of-help-close:active{background:#f8a232!important;color:#23294b!important;border-color:#23294b!important;transform:none!important}
html body:not(.wp-admin) .of-help-panel-body{overflow:auto;padding:18px 22px 28px;overscroll-behavior:contain}
html body:not(.wp-admin) .of-help-role-note{display:flex;align-items:flex-start;gap:9px;margin:0 0 16px;padding:11px 12px;border:1px solid rgba(248,162,50,.35);border-radius:12px;background:rgba(248,162,50,.1);font-size:12px;line-height:1.45;color:#23294b}
html body:not(.wp-admin) .of-help-role-note i{display:grid;place-items:center;flex:0 0 21px;width:21px;height:21px;border-radius:50%;background:#f8a232;color:#23294b;font-style:normal;font-weight:900}
html body:not(.wp-admin) .of-help-section{margin:0 0 20px}
html body:not(.wp-admin) .of-help-section:last-child{margin-bottom:0}
html body:not(.wp-admin) .of-help-section>h3{margin:0 0 9px!important;color:#23294b!important;font-size:14px!important;line-height:1.25!important}
html body:not(.wp-admin) .of-help-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}
html body:not(.wp-admin) .of-help-list li{position:relative;margin:0!important;padding:0 0 0 18px!important;color:rgba(35,41,75,.82)!important;font-size:12.5px!important;line-height:1.48!important}
html body:not(.wp-admin) .of-help-list li::before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;border-radius:50%;background:#f8a232;box-shadow:0 0 0 2px rgba(248,162,50,.16)}
html body:not(.wp-admin) .of-help-faq{display:grid;gap:7px}
html body:not(.wp-admin) .of-help-faq details{margin:0!important;border:1px solid rgba(35,41,75,.11)!important;border-radius:12px!important;background:#fff!important;overflow:hidden}
html body:not(.wp-admin) .of-help-faq summary{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:11px 12px!important;cursor:pointer!important;color:#23294b!important;font-size:12px!important;font-weight:800!important;line-height:1.35!important;list-style:none!important}
html body:not(.wp-admin) .of-help-faq summary::-webkit-details-marker{display:none}
html body:not(.wp-admin) .of-help-faq summary::after{content:"+";display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:rgba(35,41,75,.06);color:#23294b;font-size:15px;font-weight:900}
html body:not(.wp-admin) .of-help-faq details[open] summary{background:rgba(35,41,75,.035)}
html body:not(.wp-admin) .of-help-faq details[open] summary::after{content:"−";background:#f8a232;color:#23294b}
html body:not(.wp-admin) .of-help-faq details p{margin:0!important;padding:0 12px 12px!important;color:rgba(35,41,75,.72)!important;font-size:12px!important;line-height:1.5!important}
html body:not(.wp-admin).of-help-is-open{overflow:hidden!important}

@media(max-width:700px){
  html body:not(.wp-admin) .of-help-fab{right:max(12px,env(safe-area-inset-right));bottom:max(12px,calc(env(safe-area-inset-bottom) + 8px));width:38px;height:38px;font-size:18px;box-shadow:0 6px 18px rgba(35,41,75,.18)!important}
  html body:not(.wp-admin) .of-help-panel{top:auto;left:0;right:0;bottom:0;width:100%;max-height:min(82vh,720px);border-radius:22px 22px 0 0;box-shadow:0 -16px 38px rgba(35,41,75,.2)}
  html body:not(.wp-admin) .of-help-panel::before{content:"";position:absolute;top:8px;left:50%;width:42px;height:4px;border-radius:999px;background:rgba(35,41,75,.18);transform:translateX(-50%)}
  html body:not(.wp-admin) .of-help-panel-head{padding:25px 16px 14px;gap:10px}
  html body:not(.wp-admin) .of-help-panel-head h2{font-size:20px!important}
  html body:not(.wp-admin) .of-help-panel-body{padding:15px 16px calc(24px + env(safe-area-inset-bottom))}
}


/* Conquistas — v1.27.0 | reformulação completa */
.of-achievements-overview{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);gap:16px;margin-bottom:16px}
.of-achievements-level-card,.of-achievements-next-card{margin:0!important;min-width:0}
.of-achievements-level-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px!important;background:linear-gradient(135deg,#23294b 0%,#30375f 100%)!important;color:#fff!important;border:0!important;overflow:hidden;position:relative}
.of-achievements-level-card:after{content:"";position:absolute;width:190px;height:190px;border:24px solid rgba(248,162,50,.12);border-radius:50%;right:-60px;top:-85px;pointer-events:none}
.of-achievements-level-card .of-kicker,.of-achievements-level-card h3,.of-achievements-level-card p,.of-achievements-level-card .of-level-caption{color:#fff!important}
.of-achievements-level-copy{position:relative;z-index:1;min-width:0;flex:1}
.of-achievements-level-title{display:flex;align-items:center;gap:14px;margin:7px 0 16px}
.of-achievements-level-title h3{font-size:28px!important;line-height:1;margin:0 0 5px!important}
.of-achievements-level-title p{margin:0!important;opacity:.82}
.of-achievements-level-title .of-journey-medal{width:56px;min-height:56px;margin:0;flex:0 0 56px}
.of-achievements-level-title .of-journey-medal span{width:45px;height:45px}
.of-achievements-level-card .of-journey-main-progress{height:9px;background:rgba(255,255,255,.18)!important;border-radius:999px;overflow:hidden}
.of-achievements-level-card .of-journey-main-progress span{display:block;height:100%;background:#f8a232!important;border-radius:999px}
.of-achievements-level-card .of-level-caption{display:block;margin-top:9px;opacity:.88}
.of-achievements-level-number{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:104px;width:104px;height:104px;border-radius:50%;border:8px solid rgba(248,162,50,.9);background:rgba(255,255,255,.08)}
.of-achievements-level-number strong{font-size:25px;line-height:1;color:#fff!important}
.of-achievements-level-number span{font-size:10px;margin-top:5px;color:#fff;opacity:.8;text-transform:uppercase;letter-spacing:.07em}
.of-achievements-next-card{padding:22px!important;border-left:4px solid #f8a232!important;background:#fff!important}
.of-achievements-next-main{display:flex;align-items:center;gap:12px;margin:9px 0 10px}
.of-achievements-next-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:rgba(248,162,50,.14);color:#23294b;font-size:15px;font-weight:900;flex:0 0 auto}
.of-achievements-next-main small{display:block;color:#f8a232;font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.05em}
.of-achievements-next-main h3{margin:2px 0 0!important;color:#23294b!important;font-size:18px!important}
.of-achievements-next-card>p{margin:0 0 12px!important;color:var(--wpa-neutral-500)!important;line-height:1.45}
.of-achievements-next-progress{height:7px;border-radius:999px;background:var(--wpa-neutral-100);overflow:hidden;margin-bottom:7px}
.of-achievements-next-progress span{display:block;height:100%;border-radius:999px;background:#f8a232}
.of-achievements-next-card>strong{font-size:12px;color:#23294b}
.of-achievement-category-toolbar,.of-achievement-state-toolbar{display:flex;gap:8px;align-items:center;overflow-x:auto;padding:2px 1px 8px;scrollbar-width:none}
.of-achievement-category-toolbar::-webkit-scrollbar,.of-achievement-state-toolbar::-webkit-scrollbar{display:none}
.of-achievement-category-filter,.of-achievement-state-toolbar .of-achievement-filter{flex:0 0 auto;border:1px solid rgba(35,41,75,.16)!important;border-radius:999px!important;background:#fff!important;color:#23294b!important;font-weight:800!important;font-size:12px!important;line-height:1!important;padding:10px 14px!important;min-height:36px!important;box-shadow:none!important;transform:none!important;transition:border-color .15s ease,background-color .15s ease,color .15s ease!important}
.of-achievement-category-filter:hover,.of-achievement-category-filter:focus,.of-achievement-state-toolbar .of-achievement-filter:hover,.of-achievement-state-toolbar .of-achievement-filter:focus{border-color:#f8a232!important;background:rgba(248,162,50,.08)!important;color:#23294b!important;transform:none!important}
.of-achievement-category-filter.active,.of-achievement-category-filter.active:hover,.of-achievement-category-filter.active:focus,.of-achievement-state-toolbar .of-achievement-filter.active,.of-achievement-state-toolbar .of-achievement-filter.active:hover,.of-achievement-state-toolbar .of-achievement-filter.active:focus{border-color:#23294b!important;background:#23294b!important;color:#fff!important}
.of-achievement-state-toolbar{margin-bottom:14px;padding-top:0}
.of-achievement-state-toolbar .of-achievement-filter{padding:8px 12px!important;min-height:32px!important;font-size:11px!important}
.of-achievement-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:13px!important}
.of-achievement-card{position:relative;aspect-ratio:auto!important;min-height:190px!important;padding:15px 12px 14px!important;grid-template-rows:auto minmax(78px,1fr) auto!important;gap:8px!important;border-radius:18px!important}
.of-achievement-category-label{justify-self:start;align-self:start;max-width:100%;display:inline-flex;padding:4px 7px;border-radius:999px;background:rgba(35,41,75,.06);color:#23294b;font-size:9px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.of-achievement-card.is-unlocked .of-achievement-category-label{background:rgba(248,162,50,.13);color:#8b5200}
.of-achievement-card .of-achievement-ring{width:78px!important;height:78px!important}
.of-achievement-card .of-achievement-diamond{width:46px!important;height:46px!important}
.of-achievement-copy{min-height:48px!important;gap:4px!important}
.of-achievement-copy strong{font-size:13px!important;line-height:1.25!important}
.of-achievement-copy small{font-size:11px!important}
.of-achievement-card.is-locked{opacity:.82}
.of-achievement-card.is-locked:hover{opacity:1}
.of-achievements-manager-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px}
.of-achievements-manager-stats>div{display:flex;flex-direction:column;gap:4px;padding:14px 15px;border:1px solid rgba(35,41,75,.10);border-radius:14px;background:#fff}
.of-achievements-manager-stats span{font-size:11px;color:var(--wpa-neutral-500);font-weight:700}
.of-achievements-manager-stats strong{font-size:22px;color:#23294b}
.of-journey-student-select{border-left:4px solid #f8a232!important}
.of-achievement-celebration-card .of-btn.primary{background:#23294b!important;border-color:#23294b!important;color:#fff!important}
.of-achievement-celebration-card .of-btn.primary:hover,.of-achievement-celebration-card .of-btn.primary:focus{background:#f8a232!important;border-color:#f8a232!important;color:#23294b!important}
@media(max-width:1180px){.of-achievement-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:900px){.of-achievements-overview{grid-template-columns:1fr}.of-achievement-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:620px){
  .of-achievements-level-card{padding:19px!important;gap:12px}.of-achievements-level-title h3{font-size:23px!important}.of-achievements-level-number{width:84px;height:84px;min-width:84px;border-width:6px}.of-achievements-level-number strong{font-size:20px}
  .of-achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.of-achievement-card{min-height:175px!important;padding:12px 9px!important;border-radius:15px!important}.of-achievement-card .of-achievement-ring{width:70px!important;height:70px!important}.of-achievement-card .of-achievement-diamond{width:42px!important;height:42px!important}.of-achievement-category-label{font-size:8px;padding:3px 6px}.of-achievement-copy strong{font-size:12px!important}.of-achievement-copy small{font-size:10px!important}
  .of-achievements-manager-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.of-achievements-manager-stats>div{padding:10px 8px}.of-achievements-manager-stats span{font-size:9px}.of-achievements-manager-stats strong{font-size:18px}
}
@media(max-width:390px){.of-achievements-level-number{display:none}.of-achievements-level-card{display:block}.of-achievements-level-title .of-journey-medal{width:50px;min-height:50px;flex-basis:50px}.of-achievements-level-title .of-journey-medal span{width:40px;height:40px}}

/* v1.28.0 — Central de Notificações automática */
.of-app .of-notification-center{--of-notify-border:rgba(35,41,75,.10);--of-notify-muted:rgba(35,41,75,.66)}
.of-app .of-notification-center-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.of-app .of-notification-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.of-app .of-push-status-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px!important;border:1px solid rgba(35,41,75,.09)!important;background:linear-gradient(135deg,#fff 0%,rgba(248,162,50,.055) 100%)!important}
.of-app .of-push-status-main{display:flex;align-items:center;gap:14px;min-width:0}.of-app .of-notification-icon{width:48px;height:48px;border-radius:15px;background:#23294b;color:#fff;display:grid;place-items:center;font-size:22px;flex:0 0 auto}.of-app .of-push-status-main h3{margin:2px 0 3px;color:#23294b}.of-app .of-push-status-main p{margin:0;color:var(--of-notify-muted);max-width:680px}.of-app .of-push-status-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.of-app .of-push-status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border-radius:999px;background:rgba(35,41,75,.07);color:#23294b;font-size:12px;font-weight:800;white-space:nowrap}.of-app .of-push-status-badge.is-active{background:rgba(248,162,50,.18);color:#23294b}.of-app .of-push-status-badge.is-blocked{background:rgba(35,41,75,.09);color:#23294b}
.of-app .of-notification-metrics{margin:14px 0}.of-app .of-notification-metrics .stat{min-height:118px}.of-app .of-notification-metrics .stat.warning{border-color:rgba(248,162,50,.55)!important;background:rgba(248,162,50,.08)!important}
.of-app .of-automation-card{margin-top:14px}.of-app .of-automation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.of-app .of-automation-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px 14px;border:1px solid var(--of-notify-border);border-radius:15px;background:#fff}.of-app .of-automation-icon{width:34px;height:34px;border-radius:11px;background:rgba(248,162,50,.13);display:grid;place-items:center}.of-app .of-automation-item strong{display:block;color:#23294b;font-size:14px}.of-app .of-automation-item small{display:block;color:var(--of-notify-muted);font-size:12px;line-height:1.35;margin-top:2px}.of-app .of-automation-check{width:24px;height:24px;border-radius:50%;background:#23294b;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900}
.of-app .of-notification-inbox-card{margin-top:14px}.of-app .of-notification-filter-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:0 0 14px}.of-app .of-notification-filter-row button{appearance:none!important;-webkit-appearance:none!important;border:1px solid rgba(35,41,75,.13)!important;background:#fff!important;color:#23294b!important;border-radius:999px!important;padding:8px 12px!important;font:inherit!important;font-size:12px!important;font-weight:800!important;line-height:1!important;min-height:34px!important;cursor:pointer!important;box-shadow:none!important;transform:none!important;transition:border-color .16s ease,background .16s ease,color .16s ease!important}.of-app .of-notification-filter-row button:hover,.of-app .of-notification-filter-row button:focus,.of-app .of-notification-filter-row button:active{border-color:#f8a232!important;background:rgba(248,162,50,.09)!important;color:#23294b!important;box-shadow:none!important;transform:none!important}.of-app .of-notification-filter-row button.active,.of-app .of-notification-filter-row button.active:hover,.of-app .of-notification-filter-row button.active:focus{background:#23294b!important;border-color:#23294b!important;color:#fff!important}
.of-app .of-notification-list{display:grid;gap:9px}.of-app .of-notification-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid rgba(35,41,75,.08)}.of-app .of-notification-row:last-child{border-bottom:0}.of-app .of-notification-row[hidden]{display:none!important}.of-app .of-notification-row.is-read{opacity:.66}.of-app .of-notification-row.is-unread .of-notification-row-copy strong:after{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#f8a232;margin-left:7px;vertical-align:middle}.of-app .of-notification-row-icon{width:38px;height:38px;border-radius:12px;background:rgba(35,41,75,.065);display:grid;place-items:center;color:#23294b;font-size:12px;font-weight:900;flex:0 0 auto}.of-app .of-notification-row-copy{min-width:0}.of-app .of-notification-row-copy>span{display:block;color:rgba(35,41,75,.52);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.035em}.of-app .of-notification-row-copy strong{display:block;color:#23294b;font-size:14px;margin-top:2px}.of-app .of-notification-row-copy p{margin:3px 0 0;color:rgba(35,41,75,.72);font-size:13px;line-height:1.42}.of-app .of-notification-row-actions{display:flex;align-items:center;gap:6px}.of-app .of-notification-row-actions .of-btn{white-space:nowrap}.of-app .of-notification-row-actions .of-icon-button{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;border-radius:10px!important;background:rgba(35,41,75,.06)!important;color:#23294b!important;border:1px solid rgba(35,41,75,.08)!important;display:grid!important;place-items:center!important;padding:0!important}.of-app .of-notification-row-actions .of-icon-button:hover,.of-app .of-notification-row-actions .of-icon-button:focus,.of-app .of-notification-row-actions .of-icon-button:active{background:#f8a232!important;color:#23294b!important;border-color:#f8a232!important;transform:none!important}
.of-app .of-notification-preferences-card{margin-top:14px}.of-app .of-notification-preferences{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.of-app .of-notification-preferences>label,.of-app .of-notification-preference-fixed{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--of-notify-border);border-radius:14px;background:#fff;margin:0!important;cursor:pointer}.of-app .of-notification-preferences label span strong,.of-app .of-notification-preference-fixed strong{display:block;color:#23294b}.of-app .of-notification-preferences label span small,.of-app .of-notification-preference-fixed small{display:block;color:var(--of-notify-muted);font-size:12px;line-height:1.35;margin-top:2px}.of-app .of-notification-preferences input[type="checkbox"]{width:20px!important;height:20px!important;margin:0!important;accent-color:#23294b!important;appearance:auto!important;-webkit-appearance:checkbox!important;transform:none!important}.of-app .of-notification-preference-fixed{grid-template-columns:auto minmax(0,1fr) auto;cursor:default}.of-app .of-notification-preference-fixed>span{font-size:18px}.of-app .of-notification-preference-fixed>b{font-size:11px;background:rgba(248,162,50,.18);padding:6px 8px;border-radius:999px;color:#23294b}
.of-app .of-notification-health-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:14px}.of-app .of-notification-health-card h3{margin:2px 0 4px}.of-app .of-notification-health-card p{margin:0;color:var(--of-notify-muted);font-size:13px;line-height:1.45}
.of-app .of-notification-center .of-btn,.of-app .of-notification-center .of-btn:hover,.of-app .of-notification-center .of-btn:focus,.of-app .of-notification-center .of-btn:active{transform:none!important;box-shadow:none!important}.of-app .of-notification-center .of-btn.primary{background:#23294b!important;border-color:#23294b!important;color:#fff!important}.of-app .of-notification-center .of-btn.primary:hover,.of-app .of-notification-center .of-btn.primary:focus,.of-app .of-notification-center .of-btn.primary:active{background:#f8a232!important;border-color:#f8a232!important;color:#23294b!important}.of-app .of-notification-center .of-btn.soft{background:rgba(35,41,75,.06)!important;color:#23294b!important;border-color:rgba(35,41,75,.09)!important}.of-app .of-notification-center .of-btn.soft:hover,.of-app .of-notification-center .of-btn.soft:focus,.of-app .of-notification-center .of-btn.soft:active{background:rgba(248,162,50,.16)!important;color:#23294b!important;border-color:#f8a232!important}.of-app .of-notification-center .of-btn.ghost{background:#fff!important;color:#23294b!important;border-color:rgba(35,41,75,.14)!important}.of-app .of-notification-center .of-btn.ghost:hover,.of-app .of-notification-center .of-btn.ghost:focus,.of-app .of-notification-center .of-btn.ghost:active{background:rgba(248,162,50,.09)!important;color:#23294b!important;border-color:#f8a232!important}

@media(max-width:900px){.of-app .of-automation-grid{grid-template-columns:1fr}.of-app .of-notification-preferences{grid-template-columns:1fr}.of-app .of-notification-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}.of-app .of-push-status-card{align-items:flex-start;flex-direction:column}.of-app .of-push-status-actions{width:100%;justify-content:flex-start}}
@media(max-width:700px){.of-app .of-notification-center-head{flex-direction:column}.of-app .of-notification-head-actions{width:100%;justify-content:stretch}.of-app .of-notification-head-actions .of-btn{flex:1 1 auto}.of-app .of-notification-metrics{grid-template-columns:1fr 1fr!important}.of-app .of-notification-metrics .stat{min-height:102px;padding:14px!important}.of-app .of-notification-filter-row{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;scrollbar-width:none}.of-app .of-notification-filter-row::-webkit-scrollbar{display:none}.of-app .of-notification-filter-row button{flex:0 0 auto}.of-app .of-notification-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.of-app .of-notification-row-actions{grid-column:2;justify-content:flex-start;flex-wrap:wrap}.of-app .of-notification-row-actions .of-btn{width:auto!important}.of-app .of-notification-health-card{align-items:flex-start;flex-direction:column}.of-app .of-push-status-actions .of-btn{width:100%}.of-app .of-push-status-actions{display:grid;grid-template-columns:1fr;width:100%}.of-app .of-push-status-badge{justify-self:start}}

.of-push-intro{position:fixed;inset:0;z-index:999999;background:rgba(35,41,75,.38);display:grid;place-items:center;padding:18px;backdrop-filter:blur(3px)}.of-push-intro-card{width:min(520px,100%);background:#fff;border-radius:22px;padding:22px;border:1px solid rgba(35,41,75,.1);box-shadow:0 24px 70px rgba(22,27,58,.24);display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start}.of-push-intro-icon{width:48px;height:48px;border-radius:15px;background:#23294b;display:grid;place-items:center;font-size:22px}.of-push-intro-card strong{display:block;color:#23294b;font-size:18px}.of-push-intro-card p{margin:6px 0 0;color:rgba(35,41,75,.7);line-height:1.5;font-size:14px}.of-push-intro-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}.of-push-intro .of-btn.primary{background:#23294b!important;color:#fff!important;border-color:#23294b!important}.of-push-intro .of-btn.primary:hover,.of-push-intro .of-btn.primary:focus{background:#f8a232!important;color:#23294b!important;border-color:#f8a232!important}.of-push-intro .of-btn.ghost{background:#fff!important;color:#23294b!important;border-color:rgba(35,41,75,.15)!important}.of-push-intro .of-btn.ghost:hover,.of-push-intro .of-btn.ghost:focus{background:rgba(248,162,50,.1)!important;color:#23294b!important;border-color:#f8a232!important}@media(max-width:640px){.of-push-intro{align-items:end}.of-push-intro-card{border-radius:22px 22px 0 0;width:calc(100% + 36px);margin:-18px;padding:20px}.of-push-intro-actions{display:grid;grid-template-columns:1fr 1fr}.of-push-intro-actions .of-btn{width:100%}}


/* v1.28.1 | Agenda multipla de treinos */
.of-workout-date-scheduler{
  display:grid;
  grid-template-columns:minmax(300px,.9fr) minmax(280px,1.1fr);
  gap:18px;
  padding:18px;
  border:1px solid rgba(35,41,75,.14);
  border-radius:18px;
  background:linear-gradient(145deg,#fff 0%,#fff 72%,rgba(248,162,50,.07) 100%);
  margin:2px 0 18px;
}
.of-workout-date-scheduler-head{grid-column:1/-1;display:flex;justify-content:space-between;align-items:flex-start;gap:18px;border-bottom:1px solid rgba(35,41,75,.1);padding-bottom:14px}
.of-workout-date-scheduler-head h3{margin:3px 0 5px;color:#23294b;font-size:1.08rem}
.of-workout-date-scheduler-head p{margin:0;max-width:720px;color:rgba(35,41,75,.72);font-size:.9rem;line-height:1.45}
.of-workout-date-scheduler-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;color:#23294b}
.of-workout-date-scheduler-summary strong{font-size:.84rem;white-space:nowrap}
.of-workout-date-calendar{min-width:0;border:1px solid rgba(35,41,75,.12);border-radius:16px;padding:14px;background:#fff}
.of-workout-date-calendar-head{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;gap:8px;margin-bottom:10px}
.of-workout-date-calendar-head strong{text-align:center;color:#23294b;font-size:.96rem}
.of-workout-date-nav{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(35,41,75,.22)!important;border-radius:11px!important;background:#fff!important;color:#23294b!important;font-size:25px!important;line-height:1!important;cursor:pointer;box-shadow:none!important;transform:none!important}
.of-workout-date-nav:hover,.of-workout-date-nav:focus-visible,.of-workout-date-nav:active{background:#23294b!important;color:#fff!important;border-color:#23294b!important;outline:2px solid #f8a232!important;outline-offset:2px;transform:none!important;box-shadow:none!important}
.of-workout-date-weekdays,.of-workout-date-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(34px,1fr));gap:6px}
.of-workout-date-weekdays{margin-bottom:6px;color:rgba(35,41,75,.58);font-size:.68rem;font-weight:800;text-transform:uppercase;text-align:center}
.of-workout-date-weekdays span{padding:4px 0}
.of-workout-date-day{position:relative;display:grid;place-items:center;min-width:0;aspect-ratio:1/1;min-height:42px;border:1px solid rgba(35,41,75,.12)!important;border-radius:11px!important;background:#fff!important;color:#23294b!important;font:700 .82rem/1 inherit!important;cursor:pointer;box-shadow:none!important;transform:none!important;padding:0!important}
.of-workout-date-day:hover,.of-workout-date-day:focus-visible{border-color:#f8a232!important;background:rgba(248,162,50,.08)!important;color:#23294b!important;outline:none!important;box-shadow:inset 0 0 0 1px #f8a232!important;transform:none!important}
.of-workout-date-day.is-selected,.of-workout-date-day.is-selected:hover,.of-workout-date-day.is-selected:focus-visible,.of-workout-date-day.is-selected:active{background:#23294b!important;color:#fff!important;border-color:#23294b!important;box-shadow:inset 0 0 0 2px #23294b!important;transform:none!important}
.of-workout-date-day.is-selected:after{content:'✓';position:absolute;right:4px;top:3px;font-size:8px;color:#f8a232}
.of-workout-date-day.is-today:not(.is-selected){border:2px solid #f8a232!important}
.of-workout-date-day.is-empty{visibility:hidden;pointer-events:none;min-height:42px}
.of-workout-selected-dates{min-width:0;display:flex;flex-direction:column;gap:10px;border:1px solid rgba(35,41,75,.12);border-radius:16px;padding:14px;background:rgba(35,41,75,.025)}
.of-workout-selected-dates-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;color:#23294b}
.of-workout-selected-dates-head small{font-size:.72rem;color:rgba(35,41,75,.58)}
.of-workout-selected-dates-list{display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px;min-height:48px}
.of-workout-date-chip{display:inline-flex!important;align-items:center!important;gap:8px!important;max-width:100%;min-height:38px;padding:8px 10px!important;border:1px solid rgba(35,41,75,.18)!important;border-radius:999px!important;background:#fff!important;color:#23294b!important;font-size:.78rem!important;font-weight:700!important;line-height:1.2!important;cursor:pointer;box-shadow:none!important;transform:none!important}
.of-workout-date-chip span{min-width:0;white-space:normal;text-align:left}
.of-workout-date-chip b{display:grid;place-items:center;width:20px;height:20px;flex:0 0 20px;border-radius:50%;background:rgba(248,162,50,.18);color:#23294b;font-size:15px;line-height:1}
.of-workout-date-chip:hover,.of-workout-date-chip:focus-visible,.of-workout-date-chip:active{background:#23294b!important;color:#fff!important;border-color:#23294b!important;outline:2px solid #f8a232!important;outline-offset:1px;box-shadow:none!important;transform:none!important}
.of-workout-date-chip:hover b,.of-workout-date-chip:focus-visible b{background:#f8a232;color:#23294b}
.of-workout-date-empty{display:flex;align-items:center;min-height:42px;color:rgba(35,41,75,.55);font-size:.82rem}
@media(max-width:820px){
  .of-workout-date-scheduler{grid-template-columns:1fr;padding:14px;gap:14px}
  .of-workout-date-scheduler-head{grid-column:auto;display:grid;gap:12px}
  .of-workout-date-scheduler-summary{justify-content:space-between}
}
@media(max-width:480px){
  .of-workout-date-scheduler{margin-left:0;margin-right:0;border-radius:15px;padding:12px}
  .of-workout-date-calendar,.of-workout-selected-dates{padding:11px;border-radius:13px}
  .of-workout-date-weekdays,.of-workout-date-calendar-grid{gap:4px;grid-template-columns:repeat(7,minmax(30px,1fr))}
  .of-workout-date-day,.of-workout-date-day.is-empty{min-height:38px;border-radius:9px!important;font-size:.78rem!important}
  .of-workout-date-calendar-head{grid-template-columns:38px 1fr 38px}
  .of-workout-date-nav{width:38px;height:38px;border-radius:10px!important}
  .of-workout-date-scheduler-summary .of-btn{min-height:38px;padding:8px 11px;font-size:.75rem}
  .of-workout-date-chip{font-size:.72rem!important;padding:7px 9px!important}
}



/* v1.28.2 — Agenda completa do aluno + repetição de treinos concluídos */
body:not(.wp-admin) .of-app .of-student-workout.is-scheduled{
  border-color:rgba(248,162,50,.28);
  background:linear-gradient(180deg,#fff,rgba(248,162,50,.035));
}
body:not(.wp-admin) .of-app .of-student-workout.is-repeat{
  border-color:rgba(35,41,75,.22);
}
body:not(.wp-admin) .of-app .of-student-workout-head-meta,
body:not(.wp-admin) .of-app .of-completed-workout-head-actions{
  display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;
}
body:not(.wp-admin) .of-app .of-completed-workout-actions{
  margin-top:14px;padding-top:14px;border-top:1px solid rgba(35,41,75,.10);
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
}
body:not(.wp-admin) .of-app .of-completed-workout-actions small{
  flex:1 1 240px;color:rgba(35,41,75,.62);font-size:11px;line-height:1.4;
}
body:not(.wp-admin) .of-app .of-workout-start-actions .of-btn:disabled{
  opacity:.72;cursor:not-allowed;transform:none!important;
}
@media(max-width:680px){
  body:not(.wp-admin) .of-app .of-student-workout-head-meta{width:100%;justify-content:flex-start}
  body:not(.wp-admin) .of-app .of-completed-workout-actions{display:grid;grid-template-columns:1fr}
  body:not(.wp-admin) .of-app .of-completed-workout-actions .of-btn{width:100%}
}


/* v1.28.3 — Repetir treino clicável e sem falso estado desabilitado */
body:not(.wp-admin) .of-app .of-completed-workout-actions [data-repeat-student-workout],
body:not(.wp-admin) .of-app .of-completed-workout-actions [data-preview-repeat-student-workout]{
  position:relative!important;
  z-index:3!important;
  pointer-events:auto!important;
  opacity:1!important;
  cursor:pointer!important;
  min-height:42px!important;
  touch-action:manipulation;
}
body:not(.wp-admin) .of-app .of-completed-workout-actions [data-repeat-student-workout]{
  background:#23294b!important;
  color:#fff!important;
  border-color:#23294b!important;
}
body:not(.wp-admin) .of-app .of-completed-workout-actions [data-repeat-student-workout]:hover,
body:not(.wp-admin) .of-app .of-completed-workout-actions [data-repeat-student-workout]:focus,
body:not(.wp-admin) .of-app .of-completed-workout-actions [data-repeat-student-workout]:active{
  background:#f8a232!important;
  color:#23294b!important;
  border-color:#f8a232!important;
  transform:none!important;
}
body:not(.wp-admin) .of-app.of-student-preview-mode .of-completed-workout-actions [data-preview-repeat-student-workout]{
  background:rgba(35,41,75,.07)!important;
  color:#23294b!important;
  border-color:rgba(35,41,75,.15)!important;
}
body:not(.wp-admin) .of-app.of-student-preview-mode .of-completed-workout-actions [data-preview-repeat-student-workout]:hover,
body:not(.wp-admin) .of-app.of-student-preview-mode .of-completed-workout-actions [data-preview-repeat-student-workout]:focus{
  background:rgba(248,162,50,.16)!important;
  color:#23294b!important;
  border-color:#f8a232!important;
}


/* v1.28.4 — calendário geral também no Histórico de treinos */
.of-student-workout-history-calendar-workspace{margin:4px 0 22px}
.of-student-workout-history-calendar-workspace + .of-student-workout-history{margin-top:0}
#of-student-workout-history-calendar .of-calendar-day[data-student-workout-calendar-date]{cursor:pointer}
#of-student-workout-history-calendar .of-calendar-day[data-student-workout-calendar-date]:focus-visible{outline:2px solid #f8a232!important;outline-offset:2px;box-shadow:none!important}
#of-student-workout-history-calendar .of-calendar-day:not([data-student-workout-calendar-date]){pointer-events:none}


/* v1.28.5 — aviso pontual de atualização + alinhamento mobile de ações legais */
html body:not(.wp-admin) .of-release-notice-overlay[hidden]{display:none!important}
html body:not(.wp-admin) .of-release-notice-overlay{
  position:fixed;inset:0;z-index:18000;display:grid;place-items:center;padding:24px;
  background:rgba(22,27,55,.58);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);
  opacity:0;transition:opacity .18s ease;
}
html body:not(.wp-admin) .of-release-notice-overlay.open{opacity:1}
html body:not(.wp-admin).of-release-notice-is-open{overflow:hidden!important}
html body:not(.wp-admin) .of-release-notice-card{
  width:min(560px,100%);max-height:min(86vh,760px);overflow:auto;background:#fff;color:#23294b;
  border:1px solid rgba(35,41,75,.13);border-radius:24px;padding:28px;
  box-shadow:0 24px 70px rgba(15,20,48,.28);text-align:center;
}
html body:not(.wp-admin) .of-release-notice-icon{
  width:58px;height:58px;margin:0 auto 14px;border-radius:18px;display:grid;place-items:center;
  background:rgba(248,162,50,.16);border:1px solid rgba(248,162,50,.38);color:#23294b;
  font-size:30px;font-weight:900;line-height:1;
}
html body:not(.wp-admin) .of-release-notice-card h2{margin:5px 0 10px!important;color:#23294b!important;font-size:26px!important;line-height:1.15!important}
html body:not(.wp-admin) .of-release-notice-intro{margin:0 auto 18px!important;max-width:470px;color:rgba(35,41,75,.76)!important;font-size:14px!important;line-height:1.58!important}
html body:not(.wp-admin) .of-release-notice-steps{display:grid;gap:9px;margin:0 auto 17px;padding:0;max-width:450px;list-style:none;counter-reset:release-step;text-align:left}
html body:not(.wp-admin) .of-release-notice-steps li{counter-increment:release-step;position:relative;margin:0!important;padding:12px 12px 12px 48px!important;border:1px solid rgba(35,41,75,.1);border-radius:14px;background:#f8f9fc;color:#23294b!important;font-size:13px!important;line-height:1.45!important}
html body:not(.wp-admin) .of-release-notice-steps li::before{content:counter(release-step);position:absolute;left:12px;top:50%;transform:translateY(-50%);width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#f8a232;color:#23294b;font-weight:900;font-size:12px}
html body:not(.wp-admin) .of-release-notice-note{margin:0 auto 20px!important;max-width:460px;color:rgba(35,41,75,.72)!important;font-size:12.5px!important;line-height:1.5!important}
html body:not(.wp-admin) .of-release-notice-actions{display:flex;justify-content:center;align-items:center}
html body:not(.wp-admin) .of-release-notice-actions .of-btn{min-width:180px;justify-content:center!important}
html body:not(.wp-admin) .of-release-notice-error{margin:12px 0 0!important;color:#b42318!important;font-weight:750!important;font-size:12px!important}
html body:not(.wp-admin) .of-release-notice-error[hidden]{display:none!important}

@media(max-width:760px){
  html body:not(.wp-admin) .of-release-notice-overlay{padding:14px;align-items:center}
  html body:not(.wp-admin) .of-release-notice-card{padding:22px 16px 18px;border-radius:20px;max-height:88vh}
  html body:not(.wp-admin) .of-release-notice-card h2{font-size:22px!important}
  html body:not(.wp-admin) .of-release-notice-intro{text-align:center!important}
  html body:not(.wp-admin) .of-release-notice-actions{justify-content:center!important;text-align:center!important}
  html body:not(.wp-admin) .of-release-notice-actions .of-btn{width:min(100%,280px)!important;justify-content:center!important;margin-inline:auto!important}
  html body:not(.wp-admin) .of-legal-gate-actions{justify-items:center!important;justify-content:center!important;text-align:center!important}
  html body:not(.wp-admin) .of-legal-gate-actions .of-legal-continue{width:min(100%,320px)!important;justify-self:center!important;margin-inline:auto!important;justify-content:center!important}
  html body:not(.wp-admin) .of-legal-gate-actions .of-legal-logout{justify-self:center!important;text-align:center!important}
}

/* v1.28.6 · Saúde e processamento resiliente dos vídeos */
.of-video-health-panel{margin-bottom:22px}
.of-video-health-panel .of-card-head{align-items:flex-start;gap:16px}
.of-video-health-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:16px}
.of-video-health-kpis>div{min-width:0;padding:13px 14px;border:1px solid rgba(35,41,75,.12);border-radius:14px;background:#fff}
.of-video-health-kpis span{display:block;font-size:11px;color:rgba(35,41,75,.68);margin-bottom:4px}
.of-video-health-kpis strong{display:block;color:#23294b;font-size:18px;line-height:1.1}
.of-video-health-details{margin-top:15px;border-top:1px solid rgba(35,41,75,.1);padding-top:12px}
.of-video-health-details>summary{cursor:pointer;color:#23294b;font-weight:700}
.of-video-health-list{display:grid;gap:8px;margin-top:12px}
.of-video-health-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:11px 12px;border:1px solid rgba(35,41,75,.1);border-radius:12px;background:#fff}
.of-video-health-row>div{min-width:0;display:grid;gap:2px}
.of-video-health-row strong{color:#23294b;overflow-wrap:anywhere}
.of-video-health-row small{color:rgba(35,41,75,.65)}
.of-video-health-row em{font-style:normal;color:#7b3d00;font-size:12px;line-height:1.35}
.of-video-health-row>span{font-size:12px;font-weight:800;padding:5px 9px;border-radius:999px;background:rgba(35,41,75,.07);color:#23294b;white-space:nowrap}
.of-video-health-row.is-ready>span{background:rgba(22,140,85,.1);color:#0f7144}
.of-video-health-row.is-processing>span,.of-video-health-row.is-queued>span{background:rgba(248,162,50,.15);color:#6d4300}
.of-video-health-row.is-attention>span{background:rgba(248,162,50,.22);color:#5d3600}
.of-exercise-video-shell{position:relative}
.of-exercise-processing-poster{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
.of-video-processing-badge,.of-video-attention-badge{position:absolute;left:8px;bottom:8px;z-index:3;display:inline-flex;align-items:center;justify-content:center;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;line-height:1;background:rgba(35,41,75,.92);color:#fff;pointer-events:none}
.of-video-attention-badge{background:#f8a232;color:#23294b}
.of-exercise-card.is-video-processing .of-exercise-video-shell:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,transparent 58%,rgba(35,41,75,.16));pointer-events:none}
.of-exercise-card button:disabled{cursor:not-allowed;opacity:.58;transform:none!important}
@media(max-width:900px){
  .of-video-health-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .of-video-health-panel .of-card-head{display:grid}
  .of-video-health-panel .of-card-head>.of-btn{justify-self:center}
}
@media(max-width:560px){
  .of-video-health-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .of-video-health-row{grid-template-columns:minmax(0,1fr) auto}
  .of-video-health-row>.of-btn{grid-column:1/-1;justify-self:stretch}
}


/* v1.28.7 — reprodução lazy confiável e capa visível em qualquer tela */
.of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card .of-compact-video-play{
  display:flex!important;
}
.of-app[data-role="manager"] .of-section[data-section="exercises"] .of-exercise-card video[controls] + .of-compact-video-play[hidden]{display:none!important}

/* v1.28.12 — seleção manual de quadro para capa do vídeo */
.of-poster-picker-modal{max-width:960px;width:min(960px,calc(100vw - 28px))}
.of-poster-picker-layout{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:18px;align-items:start}
.of-poster-picker-video-wrap{background:#0f1326;border-radius:18px;padding:10px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.of-poster-picker-video-wrap video{width:100%;aspect-ratio:9/16;display:block;background:#000;border-radius:14px;object-fit:cover}
.of-poster-picker-side{display:grid;gap:14px;align-content:start}
.of-poster-picker-title{font-size:22px;font-weight:800;color:#23294b;line-height:1.2}
.of-poster-picker-time{font-size:14px;color:#59607d}
.of-poster-picker-actions{display:flex;flex-wrap:wrap;gap:10px}
.of-set-exercise-poster{width:100%;justify-content:center}
@media (max-width: 720px){
  .of-poster-picker-layout{grid-template-columns:1fr}
  .of-poster-picker-modal{width:min(calc(100vw - 18px),560px)}
  .of-poster-picker-actions{justify-content:center}
  .of-poster-picker-actions .of-btn{width:100%}
}
