:root{
  color-scheme:light;
  --fg-bg:#f3f3f3;--fg-work:#fafafa;--fg-panel:#fff;--fg-panel-2:#f6f6f6;--fg-panel-3:#ededed;
  --fg-text:#1b1b1b;--fg-muted:#616161;--fg-border:#d6d6d6;--fg-border-strong:#b9b9b9;
  --fg-accent:#0067c0;--fg-accent-hover:#005a9e;--fg-accent-soft:#e5f1fb;--fg-accent-text:#004578;
  --fg-titlebar:#f2f2f2;--fg-sidebar:#f7f7f7;--fg-status:#f2f2f2;--fg-danger:#c42b1c;--fg-success:#107c10;
  --fg-radius:4px;--fg-shadow:0 1px 2px rgba(0,0,0,.06);--fg-font:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  --fg-titlebar-h:38px;--fg-commandbar-h:48px;--fg-status-h:24px;--fg-sidebar-w:232px;
}
html[data-fg-theme="ubuntu"]{
  --fg-bg:#eee9ec;--fg-work:#f7f5f6;--fg-panel:#fff;--fg-panel-2:#f4eff2;--fg-panel-3:#e9e1e6;
  --fg-text:#241820;--fg-muted:#6f5a68;--fg-border:#d5c8d0;--fg-border-strong:#bcaab5;
  --fg-accent:#e95420;--fg-accent-hover:#c74616;--fg-accent-soft:#fff0e9;--fg-accent-text:#a8320c;
  --fg-titlebar:#3d3038;--fg-sidebar:#2c001e;--fg-status:#3d3038;--fg-danger:#c7162b;--fg-success:#0e8420;
  --fg-shadow:0 1px 2px rgba(44,0,30,.08);--fg-font:Ubuntu,"Noto Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{scroll-behavior:smooth;background:var(--fg-bg)}
html.fg-theme-preload *,html.fg-theme-preload *::before,html.fg-theme-preload *::after{transition:none!important;animation:none!important}
body.fg-body{margin:0;min-height:100vh;background:var(--fg-bg)!important;color:var(--fg-text);font-family:var(--fg-font);font-size:14px}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Desktop application shell */
.desktop-shell{min-height:100vh;padding-top:var(--fg-titlebar-h);padding-bottom:var(--fg-status-h);background:var(--fg-work)}
.desktop-titlebar{position:fixed;inset:0 0 auto 0;z-index:70;height:var(--fg-titlebar-h);display:flex;align-items:center;gap:8px;padding:0 8px;background:var(--fg-titlebar);border-bottom:1px solid var(--fg-border);color:var(--fg-text);user-select:none}
html[data-fg-theme="ubuntu"] .desktop-titlebar{color:#fff;border-bottom-color:#2a2026}
.desktop-titlebar-brand{display:flex;align-items:center;gap:8px;min-width:190px;font-weight:650}
.desktop-app-icon{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;background:var(--fg-accent);color:#fff;border-radius:3px;font-size:10px;font-weight:800}
.desktop-titlebar-context{min-width:0;flex:1;color:var(--fg-muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-fg-theme="ubuntu"] .desktop-titlebar-context{color:#d8ccd3}
.desktop-titlebar-actions{display:flex;align-items:center;gap:4px;margin-left:auto}
.desktop-title-button{height:28px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 9px;border:1px solid transparent;border-radius:3px;background:transparent;color:inherit;font-size:12px;font-weight:600}
.desktop-title-button:hover{background:rgba(0,0,0,.06)}
html[data-fg-theme="ubuntu"] .desktop-title-button:hover{background:rgba(255,255,255,.10)}
.desktop-title-button.theme{border-color:var(--fg-border);background:var(--fg-panel)}
html[data-fg-theme="ubuntu"] .desktop-title-button.theme{border-color:#59454f;background:#4a3942;color:#fff}
.desktop-user-chip{height:28px;display:flex;align-items:center;gap:6px;padding:0 7px;border-left:1px solid var(--fg-border);margin-left:3px;font-size:12px;font-weight:600}
html[data-fg-theme="ubuntu"] .desktop-user-chip{border-left-color:#5b4852}
.desktop-user-avatar{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--fg-accent);color:#fff;font-size:9px;font-weight:800}
.desktop-sidebar{position:fixed;z-index:55;top:var(--fg-titlebar-h);bottom:var(--fg-status-h);left:0;width:var(--fg-sidebar-w);overflow-y:auto;padding:7px 6px;background:var(--fg-sidebar);border-right:1px solid var(--fg-border);scrollbar-width:thin}
html[data-fg-theme="ubuntu"] .desktop-sidebar{color:#f7eef4;border-right-color:#3f2034}
.desktop-sidebar-head{height:40px;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:0 7px 5px;border-bottom:1px solid var(--fg-border);margin-bottom:6px}
html[data-fg-theme="ubuntu"] .desktop-sidebar-head{border-bottom-color:#48243a}
.desktop-sidebar-head strong{font-size:12px;font-weight:700}.desktop-sidebar-head span{display:block;font-size:10px;color:var(--fg-muted)}
html[data-fg-theme="ubuntu"] .desktop-sidebar-head span{color:#c9aeba}
.desktop-sidebar-close{display:none;width:28px;height:28px;border:0;background:transparent;color:inherit;border-radius:3px;font-size:20px}
.desktop-nav-group{margin:0 0 9px}.desktop-nav-label{padding:4px 8px 3px;color:var(--fg-muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
html[data-fg-theme="ubuntu"] .desktop-nav-label{color:#b999aa}
.app-nav-link{height:34px;display:flex;align-items:center;gap:7px;margin:1px 0;padding:0 7px;border-radius:3px;color:var(--fg-text);font-size:12px;font-weight:600;position:relative}
html[data-fg-theme="ubuntu"] .app-nav-link{color:#f4e8ef}
.app-nav-link:hover{background:var(--fg-panel-3)}
html[data-fg-theme="ubuntu"] .app-nav-link:hover{background:#4a1839}
.app-nav-link.active{background:var(--fg-accent-soft);color:var(--fg-accent-text)}
html[data-fg-theme="ubuntu"] .app-nav-link.active{background:#5a1836;color:#fff}
.app-nav-link.active::before{content:"";position:absolute;left:1px;top:7px;bottom:7px;width:3px;border-radius:2px;background:var(--fg-accent)}
.app-nav-link.danger{color:var(--fg-danger)}
html[data-fg-theme="ubuntu"] .app-nav-link.danger{color:#ffb4b4}
.app-nav-icon{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px}.app-nav-icon svg{width:15px;height:15px}
.desktop-sidebar-foot{margin-top:8px;padding:7px 4px 3px;border-top:1px solid var(--fg-border)}
html[data-fg-theme="ubuntu"] .desktop-sidebar-foot{border-top-color:#48243a}
.desktop-plan-info{padding:7px;border-radius:3px;background:var(--fg-panel-2);font-size:11px;color:var(--fg-muted)}
html[data-fg-theme="ubuntu"] .desktop-plan-info{background:#40112e;color:#ddc5d1}
.desktop-workspace{min-height:calc(100vh - var(--fg-titlebar-h) - var(--fg-status-h));margin-left:var(--fg-sidebar-w);background:var(--fg-work)}
.desktop-commandbar{position:sticky;top:var(--fg-titlebar-h);z-index:45;height:var(--fg-commandbar-h);display:flex;align-items:center;gap:8px;padding:0 10px;background:var(--fg-panel);border-bottom:1px solid var(--fg-border)}
.commandbar-menu{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--fg-border);border-radius:3px;background:var(--fg-panel);color:var(--fg-text)}
.commandbar-menu:hover{background:var(--fg-panel-2)}
.commandbar-menu svg{width:16px;height:16px}.desktop-command-title{min-width:0}.desktop-command-kicker{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-muted);line-height:1.1}.desktop-command-title h1{margin:1px 0 0;font-size:15px;font-weight:650;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.desktop-command-actions{margin-left:auto;display:flex;align-items:center;gap:6px}
.desktop-main{width:100%;max-width:1600px;margin:0 auto;padding:10px 11px 16px}
.desktop-statusbar{position:fixed;z-index:65;left:0;right:0;bottom:0;height:var(--fg-status-h);display:flex;align-items:center;gap:12px;padding:0 8px;background:var(--fg-status);border-top:1px solid var(--fg-border);color:var(--fg-muted);font-size:10px}
html[data-fg-theme="ubuntu"] .desktop-statusbar{border-top-color:#2a2026;color:#d8ccd3}.desktop-statusbar .status-right{margin-left:auto;display:flex;align-items:center;gap:12px}.desktop-status-dot{width:6px;height:6px;border-radius:50%;background:var(--fg-success)}
.desktop-overlay{display:none;position:fixed;z-index:52;inset:var(--fg-titlebar-h) 0 var(--fg-status-h);background:rgba(0,0,0,.34)}
body.sidebar-collapsed .desktop-sidebar{transform:translateX(-100%)}body.sidebar-collapsed .desktop-workspace{margin-left:0}

/* Desktop controls and content */
.card{background:var(--fg-panel)!important;border:1px solid var(--fg-border)!important;border-radius:var(--fg-radius)!important;box-shadow:var(--fg-shadow)!important}
.btn{min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:6px 10px;border:1px solid var(--fg-border);border-radius:3px!important;background:var(--fg-panel);color:var(--fg-text);font-weight:650;line-height:1.1;box-shadow:none!important;transition:background .12s,border-color .12s,transform .06s}
.btn:hover{background:var(--fg-panel-2)}.btn:active{transform:translateY(1px)}.btn-sm{min-height:28px;padding:4px 8px;font-size:12px}.btn-primary,.btn-brand{background:var(--fg-accent)!important;border-color:var(--fg-accent)!important;color:#fff!important}.btn-primary:hover,.btn-brand:hover{background:var(--fg-accent-hover)!important}.btn-light{background:var(--fg-panel)!important;color:var(--fg-text)!important}.btn-danger{background:var(--fg-danger)!important;border-color:var(--fg-danger)!important;color:#fff!important}
.input{width:100%;min-height:32px;border:1px solid var(--fg-border-strong)!important;border-radius:3px!important;padding:5px 7px!important;background:var(--fg-panel)!important;color:var(--fg-text)!important;outline:none;box-shadow:none!important}.input:focus{border-color:var(--fg-accent)!important;box-shadow:0 0 0 1px var(--fg-accent)!important}.input::placeholder{color:var(--fg-muted)}
.label{display:block;margin-bottom:3px;color:var(--fg-muted)!important;font-size:10px!important;font-weight:700!important;text-transform:uppercase;letter-spacing:.04em}
.table-wrap{overflow:auto;border:1px solid var(--fg-border)!important;border-radius:3px!important;background:var(--fg-panel)!important;box-shadow:none!important}.table{width:100%;border-collapse:collapse;background:var(--fg-panel)!important;color:var(--fg-text)}.table th{position:sticky;top:0;text-align:left;padding:7px 8px!important;background:var(--fg-panel-2)!important;border-bottom:1px solid var(--fg-border)!important;color:var(--fg-muted)!important;font-size:10px!important;font-weight:700!important;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.table td{padding:7px 8px!important;border-top:1px solid var(--fg-border)!important;vertical-align:middle}.table tbody tr:hover{background:var(--fg-accent-soft)!important}
.badge{display:inline-flex;align-items:center;gap:3px;padding:2px 6px!important;border-radius:3px!important;font-size:10px!important;font-weight:700!important;line-height:1.45}
.page-heading{margin:0 0 9px;display:flex;align-items:flex-end;justify-content:space-between;gap:8px}.page-heading h2{margin:0;color:var(--fg-text);font-size:18px;font-weight:650;letter-spacing:-.01em}.page-heading p{margin:2px 0 0;color:var(--fg-muted);font-size:12px}.page-heading-actions{flex:0 0 auto}
.stat-card{padding:10px!important}.stat-card-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--fg-muted)}.stat-card-value{margin-top:4px;font-size:23px;font-weight:650;color:var(--fg-text)}
.empty-state-box{padding:22px 12px;text-align:center}.empty-state-icon{width:34px;height:34px;margin:0 auto 7px;display:flex;align-items:center;justify-content:center;border-radius:3px;background:var(--fg-panel-3);color:var(--fg-muted)}
.fg-body .rounded-xl,.fg-body .rounded-2xl,.fg-body .rounded-3xl,.fg-body .rounded-lg,.fg-body .rounded-md{border-radius:4px!important}.fg-body .shadow-sm,.fg-body .shadow-soft,.fg-body .shadow-glass,.fg-body .shadow-xl,.fg-body .shadow-2xl{box-shadow:var(--fg-shadow)!important}.fg-body .bg-white{background-color:var(--fg-panel)!important}.fg-body .bg-slate-50,.fg-body .bg-slate-50\/80,.fg-body .bg-slate-100{background-color:var(--fg-panel-2)!important}.fg-body .border-slate-100,.fg-body .border-slate-200{border-color:var(--fg-border)!important}.fg-body .text-slate-950,.fg-body .text-slate-900,.fg-body .text-slate-800,.fg-body .text-slate-700{color:var(--fg-text)!important}.fg-body .text-slate-600,.fg-body .text-slate-500,.fg-body .text-slate-400{color:var(--fg-muted)!important}

/* Public site */
body.public-app{background:var(--fg-panel)!important}.public-shell{min-height:100vh;background:var(--fg-panel);color:var(--fg-text)}.public-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.96)!important;border-bottom:1px solid rgba(0,0,0,.08)!important;backdrop-filter:blur(10px)}html[data-fg-theme="ubuntu"] .public-header{background:rgba(61,48,56,.97)!important;border-bottom-color:#2d2329!important;color:#fff}.public-header-inner{max-width:1180px;height:54px;margin:0 auto;padding:0 14px;display:flex;align-items:center;gap:14px}.public-brand{display:flex;align-items:center;gap:8px;font-weight:750}.public-brand-mark{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;background:var(--fg-accent);color:#fff;font-size:10px;font-weight:800}.public-nav{margin-left:auto;display:flex;align-items:center;gap:4px}.public-nav a,.public-theme-button{min-height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0 9px;border:0;border-radius:4px;background:transparent;color:inherit;font-size:12px;font-weight:650}.public-nav a:hover,.public-theme-button:hover{background:rgba(0,0,0,.06)}html[data-fg-theme="ubuntu"] .public-nav a:hover,html[data-fg-theme="ubuntu"] .public-theme-button:hover{background:rgba(255,255,255,.10)}.public-nav .public-login{background:var(--fg-accent);color:#fff}.public-main{min-height:calc(100vh - 54px);overflow:hidden}.public-container{width:min(1180px,calc(100% - 28px));margin:0 auto}.public-section{padding:48px 0}.public-hero{padding:62px 0 54px;background:linear-gradient(180deg,var(--fg-panel) 0%,var(--fg-panel-2) 100%)}.public-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.86fr);align-items:center;gap:48px}.public-eyebrow{display:inline-flex;align-items:center;gap:7px;margin-bottom:14px;color:var(--fg-accent);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.public-eyebrow-dot{width:7px;height:7px;border-radius:50%;background:var(--fg-accent)}.public-hero h1{max-width:700px;margin:0;font-size:clamp(38px,5vw,64px);line-height:1.02;letter-spacing:-.045em;font-weight:760}.public-hero p{max-width:650px;margin:17px 0 0;color:var(--fg-muted);font-size:17px;line-height:1.6}.public-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.public-proof{display:flex;flex-wrap:wrap;gap:14px;margin-top:22px;color:var(--fg-muted);font-size:12px;font-weight:600}.public-proof span::before{content:"✓";margin-right:5px;color:var(--fg-success)}.public-preview{background:#202020;border-radius:8px;padding:7px;box-shadow:0 20px 50px rgba(0,0,0,.14)}html[data-fg-theme="ubuntu"] .public-preview{background:#2c001e}.public-preview-bar{height:28px;display:flex;align-items:center;gap:5px;padding:0 7px;color:#ddd;font-size:10px}.public-preview-dot{width:7px;height:7px;border-radius:50%;background:#6f6f6f}.public-preview-body{display:grid;grid-template-columns:110px 1fr;min-height:310px;background:#f6f6f6;border-radius:4px;overflow:hidden}.public-preview-side{padding:12px 8px;background:#eeeeee}.public-preview-side div{height:24px;margin-bottom:5px;border-radius:3px;background:#ddd}.public-preview-side div:first-child{background:var(--fg-accent)}.public-preview-work{padding:13px}.public-preview-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.public-preview-kpi{min-height:62px;padding:9px;background:#fff;border-radius:4px}.public-preview-kpi small{color:#777;font-size:9px}.public-preview-kpi strong{display:block;margin-top:5px;font-size:19px}.public-preview-list{margin-top:8px;background:#fff;border-radius:4px;padding:9px}.public-preview-row{height:34px;display:flex;align-items:center;gap:7px;border-bottom:1px solid #eee}.public-preview-row:last-child{border:0}.public-preview-avatar{width:21px;height:21px;border-radius:50%;background:#ddd}.public-preview-line{height:5px;border-radius:2px;background:#ddd}.public-preview-line.a{width:36%}.public-preview-line.b{width:22%;margin-left:auto}.public-section-head{max-width:700px;margin-bottom:24px}.public-section-head small{color:var(--fg-accent);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.08em}.public-section-head h2{margin:5px 0 0;font-size:clamp(27px,3vw,38px);line-height:1.12;letter-spacing:-.025em}.public-section-head p{margin:9px 0 0;color:var(--fg-muted);line-height:1.55}.public-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--fg-border)}.public-feature{min-height:170px;padding:20px;background:var(--fg-panel)}.public-feature-icon{width:30px;height:30px;display:flex;align-items:center;justify-content:center;margin-bottom:13px;background:var(--fg-accent-soft);color:var(--fg-accent);border-radius:4px}.public-feature-icon svg{width:16px}.public-feature h3{margin:0;font-size:16px}.public-feature p{margin:7px 0 0;color:var(--fg-muted);font-size:13px;line-height:1.55}.public-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.public-step{padding:16px;background:var(--fg-panel-2);border-radius:4px}.public-step-number{color:var(--fg-accent);font-size:11px;font-weight:800}.public-step h3{margin:6px 0 0;font-size:15px}.public-step p{margin:6px 0 0;color:var(--fg-muted);font-size:12px;line-height:1.5}.public-student{display:grid;grid-template-columns:1fr 360px;gap:36px;align-items:center}.public-phone{width:100%;max-width:320px;margin:0 auto;padding:7px;background:#202020;border-radius:22px}.public-phone-screen{overflow:hidden;background:#f4f4f4;border-radius:17px;min-height:500px}.public-phone-top{height:44px;padding:0 13px;display:flex;align-items:center;background:#fff;font-size:12px;font-weight:750}.public-phone-content{padding:10px}.public-phone-video{aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;background:#1c1c1c;color:#fff;border-radius:6px}.public-phone-play{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fff;color:#111}.public-phone-data{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-top:7px}.public-phone-data div{padding:9px;background:#fff;border-radius:4px}.public-phone-data small{font-size:9px;color:#777}.public-phone-data strong{display:block;margin-top:2px}.public-phone-action{height:38px;margin-top:7px;display:flex;align-items:center;justify-content:center;background:var(--fg-accent);color:#fff;border-radius:4px;font-size:12px;font-weight:750}.public-checks{display:grid;gap:9px}.public-check{display:flex;gap:9px;align-items:flex-start}.public-check-mark{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex:0 0 20px;border-radius:50%;background:var(--fg-accent-soft);color:var(--fg-accent);font-size:10px;font-weight:800}.public-check strong{display:block;font-size:13px}.public-check span{display:block;margin-top:2px;color:var(--fg-muted);font-size:12px;line-height:1.45}.public-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.public-plan{display:flex;flex-direction:column;padding:18px;background:var(--fg-panel-2);border-radius:4px}.public-plan.is-featured{background:var(--fg-accent);color:#fff}.public-plan h3{margin:0;font-size:18px}.public-plan p{margin:6px 0 0;min-height:38px;color:var(--fg-muted);font-size:12px}.public-plan.is-featured p{color:rgba(255,255,255,.76)}.public-plan-price{margin:16px 0 11px;font-size:28px;font-weight:760}.public-plan-price small{font-size:11px;font-weight:600}.public-plan ul{margin:0 0 16px;padding:0;list-style:none;display:grid;gap:7px;font-size:12px}.public-plan li::before{content:"✓";margin-right:6px}.public-plan .btn{margin-top:auto}.public-faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:22px}.public-faq-list details{border-bottom:1px solid var(--fg-border)}.public-faq-list summary{list-style:none;padding:13px 2px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:700;cursor:pointer}.public-faq-list summary::-webkit-details-marker{display:none}.public-faq-list p{margin:0;padding:0 2px 13px;color:var(--fg-muted);font-size:12px;line-height:1.55}.public-cta{padding:34px;background:#202020;color:#fff;border-radius:5px}html[data-fg-theme="ubuntu"] .public-cta{background:#2c001e}.public-cta-grid{display:flex;align-items:center;justify-content:space-between;gap:20px}.public-cta h2{margin:0;font-size:28px;line-height:1.12}.public-cta p{margin:8px 0 0;color:#bbb;font-size:13px}.public-footer{padding:20px 0;border-top:1px solid var(--fg-border);color:var(--fg-muted);font-size:11px}.public-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:12px}

/* Student application */
body.student-app{background:#f4f4f4!important;overflow-x:hidden}.student-app-shell{min-height:100dvh;background:#f4f4f4;color:#181818}.student-topbar{position:sticky;top:0;z-index:45;height:50px;background:#fff;border-bottom:1px solid #e4e4e4}.student-topbar-inner{height:100%;max-width:760px;margin:0 auto;padding:0 10px;display:flex;align-items:center;justify-content:space-between;gap:8px}.student-brand{display:flex;align-items:center;gap:8px;min-width:0}.student-brand-mark{width:29px;height:29px;display:flex;align-items:center;justify-content:center;flex:0 0 29px;border-radius:6px;background:var(--fg-accent);color:#fff;font-size:10px;font-weight:800}.student-brand-copy{min-width:0;line-height:1.05}.student-brand-copy small{display:block;color:#777;font-size:9px;font-weight:600}.student-brand-copy strong{display:block;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.student-top-actions{display:flex;align-items:center;gap:5px}.student-personal-chip{display:none;color:#777;font-size:10px}.student-icon-btn{width:31px;height:31px;border:0;border-radius:6px;background:#ededed;color:#222}.student-main{width:100%;max-width:760px;margin:0 auto;padding:8px 8px calc(64px + env(safe-area-inset-bottom))}.student-screen{display:none;animation:studentScreenIn .14s ease}.student-screen.is-active{display:block}@keyframes studentScreenIn{from{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:none}}.student-hello{padding:9px 3px 10px}.student-hello small{display:block;color:#777;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.student-hello h1{margin:1px 0 0;font-size:20px;line-height:1.1;letter-spacing:-.02em}.student-hello p{margin:3px 0 0;color:#777;font-size:11px}.student-message{margin:0 0 7px;padding:9px 10px;background:#e9e9e9;border-radius:6px;color:#555;font-size:11px;line-height:1.45}.student-workout{background:#fff;border-radius:7px;overflow:hidden}.student-workout + .student-workout{margin-top:8px}.student-workout-head{padding:10px;border-bottom:1px solid #eee}.student-workout-title{display:flex;align-items:start;justify-content:space-between;gap:8px}.student-workout-title h2{margin:0;font-size:17px;letter-spacing:-.02em}.student-workout-title p{margin:2px 0 0;color:#777;font-size:11px}.student-progress{padding:8px 10px;background:#fafafa}.student-progress-row{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:10px}.student-progress-row strong{font-size:11px}.student-progress-track{height:4px;margin-top:5px;background:#dedede;border-radius:2px;overflow:hidden}.student-progress-bar{height:100%;background:var(--fg-accent);transition:width .2s ease}.student-exercise-stage{padding:0}.student-exercise-card{display:none;padding:10px;background:#fff}.student-exercise-card.is-current{display:block}.student-exercise-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.student-exercise-index{color:var(--fg-accent);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.student-exercise-top h3{margin:2px 0 0;font-size:18px;line-height:1.15}.student-exercise-meta{margin:3px 0 0;color:#777;font-size:10px}.student-done-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;flex:0 0 34px;border:0;border-radius:50%;background:#e9e9e9;color:#777;font-size:16px;font-weight:800}.student-done-btn.is-done{background:#dff2df;color:#0d6f0d}.student-prescription{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:9px 0;background:#e6e6e6}.student-prescription div{min-width:0;padding:7px;background:#f8f8f8}.student-prescription b{display:block;color:#777;font-size:8px;text-transform:uppercase;letter-spacing:.04em}.student-prescription span{display:block;margin-top:2px;font-size:11px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-video-wrap{margin:8px -10px 0}.student-app .video-details{border:0!important;border-radius:0!important;background:#111!important}.student-app .video-details summary{border-radius:0!important}.student-exec-panel{margin-top:8px;padding:8px;background:#f5f5f5;border-radius:5px}.student-exec-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.student-exec-box{padding:8px;background:#fff;border-radius:4px}.student-exec-box.full{grid-column:1/-1}.student-exec-label{color:#777;font-size:8px;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.student-set-row{display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:5px;margin-top:5px}.student-set-btn{height:32px;border:0;border-radius:4px;background:#e9e9e9;font-size:16px;font-weight:800}.student-set-btn.primary{background:var(--fg-accent);color:#fff}.student-set-count{text-align:center;font-size:18px;font-weight:800}.student-rest-time{margin-top:4px;font-size:19px;font-weight:800;font-variant-numeric:tabular-nums}.student-rest-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:5px}.student-rest-actions button{height:29px;border:0;border-radius:4px;background:#e9e9e9;font-size:9px;font-weight:700}.student-rest-actions button:first-child{background:#222;color:#fff}.student-inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:5px}.student-app .input{min-height:34px!important;padding:5px 6px!important;border:0!important;border-radius:4px!important;background:#eee!important;color:#222!important}.student-app .label{font-size:8px!important}.student-note{margin-top:7px;color:#555;font-size:11px;line-height:1.45}.student-exercise-nav{height:44px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;padding:6px 8px;border-top:1px solid #eee;background:#fafafa}.student-exercise-nav button{height:30px;border:0;border-radius:4px;background:#e9e9e9;color:#222;font-size:10px;font-weight:750}.student-exercise-nav button:last-child{background:var(--fg-accent);color:#fff}.student-exercise-nav span{min-width:52px;text-align:center;color:#777;font-size:10px;font-weight:650}.student-checkin{margin-top:7px;padding:8px;background:#fff;border-radius:7px}.student-checkin-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}.student-checkin-comment{grid-column:1/-1}.student-checkin .btn{width:100%;margin-top:6px;min-height:36px}.student-evaluation-list,.student-history-list{display:grid;gap:6px}.student-list-item{padding:10px;background:#fff;border-radius:6px}.student-list-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.student-list-item strong{font-size:12px}.student-list-item time,.student-list-item small{color:#777;font-size:9px}.student-list-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:7px;background:#e7e7e7}.student-list-metrics div{padding:6px;background:#f7f7f7}.student-list-metrics b{display:block;color:#777;font-size:8px}.student-list-metrics span{display:block;margin-top:1px;font-size:11px;font-weight:750}.student-section-title{margin:2px 2px 8px}.student-section-title small{display:block;color:#777;font-size:9px;text-transform:uppercase;font-weight:700;letter-spacing:.05em}.student-section-title h2{margin:1px 0 0;font-size:18px}.student-bottom-nav-wrap{position:fixed;z-index:50;left:0;right:0;bottom:0;padding:0 6px env(safe-area-inset-bottom);background:#fff;border-top:1px solid #ddd}.student-bottom-nav{max-width:520px;height:55px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr)}.student-bottom-link{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1px;color:#777;font-size:9px;font-weight:650;position:relative}.student-bottom-link .app-nav-icon{width:20px;height:20px}.student-bottom-link .app-nav-icon svg{width:15px;height:15px}.student-bottom-link.is-active{color:var(--fg-accent)}.student-bottom-link.is-active::before{content:"";position:absolute;top:0;left:28%;right:28%;height:2px;background:var(--fg-accent)}.student-feedback{position:fixed;z-index:90;left:50%;bottom:68px;transform:translate(-50%,8px);max-width:calc(100vw - 24px);padding:7px 10px;border-radius:5px;background:#222;color:#fff;font-size:10px;font-weight:700;opacity:0;pointer-events:none;transition:.16s}.student-feedback.is-visible{opacity:1;transform:translate(-50%,0)}.student-feedback.is-success{background:#146c2e}.student-app .is-tapped{transform:scale(.98)!important;filter:brightness(.96)}.student-action-pop{animation:studentPop .28s ease}@keyframes studentPop{50%{transform:scale(1.018)}}

/* Alerts */
.fg-alert{margin:0 0 7px;padding:7px 9px;border-left:3px solid var(--fg-success);background:var(--fg-panel);font-size:12px}.fg-alert.error{border-left-color:var(--fg-danger);background:#fff4f3}.fg-alert.warning{border-left-color:#c88a00;background:#fff8e8}

@media(max-width:1023px){
  :root{--fg-sidebar-w:228px}.desktop-sidebar{transform:translateX(-100%);box-shadow:6px 0 24px rgba(0,0,0,.16)}.desktop-sidebar-close{display:inline-flex;align-items:center;justify-content:center}.desktop-workspace{margin-left:0}.desktop-overlay{display:none}body.sidebar-open .desktop-sidebar{transform:translateX(0)}body.sidebar-open .desktop-overlay{display:block}.desktop-titlebar-brand{min-width:0}.desktop-titlebar-context{display:none}.desktop-user-chip span:last-child{display:none}.desktop-statusbar .hide-mobile{display:none}.desktop-main{padding:8px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading-actions{width:100%}.page-heading-actions .btn{width:100%}
  .public-hero-grid{grid-template-columns:1fr;gap:28px}.public-preview{max-width:680px}.public-student{grid-template-columns:1fr 300px}.public-feature-grid{grid-template-columns:repeat(2,1fr)}.public-flow{grid-template-columns:repeat(2,1fr)}.public-plan-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){
  .desktop-titlebar{padding:0 5px}.desktop-titlebar-brand strong{font-size:12px}.desktop-title-button.theme{padding:0 7px}.desktop-title-button.theme [data-theme-toggle-label]{display:none}.desktop-commandbar{padding:0 7px}.desktop-command-actions{display:none}.desktop-main{padding:7px}.card{border-radius:3px!important}.table-wrap{margin-left:-7px;margin-right:-7px;border-left:0!important;border-right:0!important;border-radius:0!important}.table th,.table td{padding:6px!important;font-size:11px}.fg-body .grid.md\:grid-cols-2,.fg-body .grid.md\:grid-cols-3,.fg-body .grid.md\:grid-cols-4{grid-template-columns:1fr!important}
  .public-header-inner{height:50px;padding:0 9px}.public-brand span:last-child{display:none}.public-nav a:not(.public-login){display:none}.public-nav .public-login{padding:0 8px}.public-container{width:calc(100% - 18px)}.public-section{padding:34px 0}.public-hero{padding:34px 0 30px}.public-hero h1{font-size:37px}.public-hero p{font-size:14px;line-height:1.52}.public-actions{display:grid;grid-template-columns:1fr 1fr}.public-actions .btn{width:100%}.public-proof{gap:7px 12px}.public-preview{margin:0 -3px;padding:4px;border-radius:6px}.public-preview-body{grid-template-columns:72px 1fr;min-height:245px}.public-preview-side{padding:8px 5px}.public-preview-kpis{gap:4px}.public-preview-kpi{min-height:50px;padding:6px}.public-preview-kpi strong{font-size:15px}.public-preview-work{padding:8px}.public-feature-grid{grid-template-columns:1fr;background:transparent;gap:1px}.public-feature{min-height:auto;padding:15px 4px;border-bottom:1px solid var(--fg-border)}.public-feature-icon{margin-bottom:8px}.public-flow{grid-template-columns:1fr}.public-student{grid-template-columns:1fr;gap:20px}.public-student-copy{order:1}.public-phone{order:2;max-width:285px}.public-plan-grid{grid-template-columns:1fr}.public-plan{padding:15px}.public-faq{grid-template-columns:1fr;gap:6px}.public-cta{padding:23px 16px;margin-left:-2px;margin-right:-2px}.public-cta-grid{display:block}.public-cta .public-actions{margin-top:15px}.public-footer-inner{align-items:flex-start;flex-direction:column}
  .student-main{padding:6px 6px calc(62px + env(safe-area-inset-bottom))}.student-brand-copy strong{max-width:150px}.student-workout{border-radius:6px}.student-prescription{grid-template-columns:repeat(2,1fr)}.student-exec-grid{grid-template-columns:1fr}.student-exec-box.full{grid-column:auto}.student-checkin-grid{grid-template-columns:1fr}.student-checkin-comment{grid-column:auto}.student-list-metrics{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:390px){.public-actions{grid-template-columns:1fr}.public-preview-body{grid-template-columns:58px 1fr}.public-preview-kpi:nth-child(3){display:none}.public-preview-kpis{grid-template-columns:repeat(2,1fr)}.student-personal-chip{display:none}.student-prescription span{font-size:10px}}
@media(min-width:721px){.student-personal-chip{display:block}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.desktop-titlebar,.desktop-sidebar,.desktop-statusbar,.desktop-commandbar,.student-topbar,.student-bottom-nav-wrap,.public-header,.no-print{display:none!important}.desktop-shell{padding:0}.desktop-workspace{margin:0}.desktop-main,.student-main,.public-main{max-width:none;padding:0}.card{box-shadow:none!important}}

/* Compactação das páginas internas já existentes */
.desktop-main .p-8,.desktop-main .p-7,.desktop-main .p-6,.desktop-main .p-5,.desktop-main .p-4{padding:10px!important}
.desktop-main .p-3{padding:8px!important}.desktop-main .p-2{padding:6px!important}
.desktop-main .gap-6,.desktop-main .gap-5,.desktop-main .gap-4{gap:9px!important}.desktop-main .gap-3{gap:7px!important}
.desktop-main .space-y-6>:not([hidden])~:not([hidden]),.desktop-main .space-y-5>:not([hidden])~:not([hidden]),.desktop-main .space-y-4>:not([hidden])~:not([hidden]){margin-top:9px!important}
.desktop-main .mt-6,.desktop-main .mt-5,.desktop-main .mt-4{margin-top:9px!important}.desktop-main .mb-6,.desktop-main .mb-5,.desktop-main .mb-4{margin-bottom:9px!important}
.desktop-main h1,.desktop-main h2,.desktop-main h3{letter-spacing:-.01em}.desktop-main h2.text-2xl,.desktop-main h2.md\:text-2xl{font-size:18px!important}.desktop-main h3.text-xl{font-size:16px!important}.desktop-main .text-2xl{font-size:20px!important}.desktop-main .text-3xl{font-size:24px!important}
.desktop-main form.card,.desktop-main section.card,.desktop-main article.card{overflow:hidden}
.desktop-main textarea.input{min-height:72px}.desktop-main select.input{padding-right:24px!important}
.desktop-main .rounded-full:not(.badge):not(.desktop-user-avatar){border-radius:999px!important}
.student-exercise-card.student-complete{background:#f0faf1!important}.student-exercise-card.student-complete .student-done-btn{background:#d6f0d8!important;color:#087a18!important}
.student-exercise-nav button:disabled{opacity:.38;cursor:default}

/* Login */
.auth-wrap{min-height:calc(100vh - 54px);display:flex;align-items:center;justify-content:center;padding:28px 12px;background:var(--fg-panel-2)}
.auth-window{width:min(100%,390px);background:var(--fg-panel);border:1px solid var(--fg-border);border-radius:5px;box-shadow:0 16px 44px rgba(0,0,0,.10);overflow:hidden}
.auth-titlebar{height:34px;display:flex;align-items:center;gap:7px;padding:0 9px;background:var(--fg-titlebar);border-bottom:1px solid var(--fg-border);font-size:11px;font-weight:700}
html[data-fg-theme="ubuntu"] .auth-titlebar{background:#3d3038;color:#fff;border-bottom-color:#2a2026}.auth-body{padding:17px}.auth-mark{width:36px;height:36px;display:flex;align-items:center;justify-content:center;margin-bottom:10px;border-radius:4px;background:var(--fg-accent);color:#fff;font-size:11px;font-weight:800}.auth-body h1{margin:0;font-size:20px}.auth-body>p{margin:4px 0 0;color:var(--fg-muted);font-size:12px}.auth-form{display:grid;gap:9px;margin-top:16px}.auth-foot{padding:8px 12px;border-top:1px solid var(--fg-border);background:var(--fg-panel-2);color:var(--fg-muted);font-size:10px;text-align:center}
.student-rest-time.is-finished{color:#0b7a1c}.student-rest-time.is-running{color:#222}
.student-brand,.student-bottom-link{border:0;background:transparent;padding:0;color:inherit;font:inherit}
.desktop-plan-info{display:block}

/* Validação de formulários */
.field-invalid{border-color:#d70015!important;box-shadow:0 0 0 1px #d70015!important}
.field-error{margin-top:3px;color:#b42318;font-size:10px;font-weight:650;line-height:1.3}
select.field-invalid,textarea.field-invalid{outline:none}

/* Área do aluno — interface compacta inspirada em iOS */
body.student-app{
  --ios-bg:#f2f2f7;--ios-surface:#ffffff;--ios-surface-2:#f7f7f9;--ios-separator:rgba(60,60,67,.18);
  --ios-text:#111114;--ios-secondary:#6e6e73;--ios-tertiary:#8e8e93;--ios-blue:#007aff;--ios-green:#34c759;
  --ios-red:#ff3b30;--ios-fill:#e9e9ee;--ios-radius:12px;--ios-font:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Helvetica Neue","Segoe UI",sans-serif;
  background:var(--ios-bg)!important;color:var(--ios-text);font-family:var(--ios-font);font-size:14px
}
.student-app-shell{min-height:100dvh;background:var(--ios-bg);color:var(--ios-text)}
.student-topbar{position:sticky;top:0;z-index:45;height:52px;border:0;border-bottom:.5px solid var(--ios-separator);background:rgba(249,249,249,.88);backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px)}
.student-topbar-inner{height:100%;max-width:680px;margin:0 auto;padding:0 11px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.student-brand{display:flex;align-items:center;min-width:0;text-align:left}
.student-brand-copy{display:flex;flex-direction:column;min-width:0;line-height:1.08}
.student-brand-copy strong{display:block;max-width:220px;color:var(--ios-text);font-size:17px;font-weight:700;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.student-brand-copy small{display:block;order:2;margin-top:2px;color:var(--ios-secondary);font-size:10px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.student-top-actions{display:flex;align-items:center;gap:7px;min-width:0}
.student-personal-chip{display:block;max-width:180px;color:var(--ios-secondary);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.student-user-avatar{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;border-radius:50%;background:var(--ios-blue);color:#fff;font-size:10px;font-weight:750;letter-spacing:.02em}
.student-main{width:100%;max-width:680px;margin:0 auto;padding:7px 9px calc(68px + env(safe-area-inset-bottom))}
.student-screen{display:none;animation:iosViewIn .16s ease-out}.student-screen.is-active{display:block}
@keyframes iosViewIn{from{opacity:.55;transform:translateY(3px)}to{opacity:1;transform:none}}
.student-hello{padding:7px 2px 10px}
.student-hello small{display:block;color:var(--ios-secondary);font-size:10px;font-weight:600;text-transform:none;letter-spacing:0}
.student-hello h1{margin:1px 0 0;color:var(--ios-text);font-size:28px;line-height:1.04;font-weight:760;letter-spacing:-.035em}
.student-hello p{margin:4px 0 0;color:var(--ios-secondary);font-size:11px}
.student-message{margin:0 0 7px;padding:9px 10px;border:0;border-radius:9px;background:#e8f2ff;color:#24445f;font-size:11px;line-height:1.42}
.student-workout{overflow:hidden;margin:0;background:var(--ios-surface);border:0!important;border-radius:var(--ios-radius);box-shadow:none!important}
.student-workout+.student-workout{margin-top:7px}
.student-workout-head{padding:11px 11px 6px;border:0;background:transparent}
.student-workout-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.student-workout-title h2{margin:0;color:var(--ios-text);font-size:18px;line-height:1.15;font-weight:720;letter-spacing:-.025em}
.student-workout-title p{margin:3px 0 0;color:var(--ios-secondary);font-size:10px;line-height:1.35}
.student-progress{padding:5px 11px 9px;border-bottom:.5px solid var(--ios-separator);background:transparent}
.student-progress-row{display:flex;align-items:center;justify-content:space-between;gap:7px;color:var(--ios-secondary);font-size:10px}.student-progress-row strong{color:var(--ios-text);font-size:10px;font-weight:650}
.student-progress-track{height:4px;margin-top:6px;border-radius:999px;background:#e5e5ea;overflow:hidden}.student-progress-bar{height:100%;border-radius:999px;background:var(--ios-blue);transition:width .22s ease-out}
.student-exercise-stage{padding:0}.student-exercise-card{display:none;padding:11px;background:var(--ios-surface)}.student-exercise-card.is-current{display:block}
.student-exercise-card.student-complete{background:var(--ios-surface)!important}
.student-exercise-top{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}
.student-exercise-index{color:var(--ios-blue);font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.035em}
.student-exercise-top h3{margin:2px 0 0;color:var(--ios-text);font-size:21px;line-height:1.12;font-weight:730;letter-spacing:-.025em}
.student-exercise-meta{margin:4px 0 0;color:var(--ios-secondary);font-size:10px}
.student-done-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex:0 0 32px;border:0;border-radius:50%;background:var(--ios-fill);color:var(--ios-tertiary);font-size:15px;font-weight:800;transition:transform .08s ease,background .16s ease,color .16s ease}
.student-done-btn:active{transform:scale(.91)}.student-done-btn.is-done,.student-exercise-card.student-complete .student-done-btn{background:var(--ios-green)!important;color:#fff!important}
.student-prescription{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:10px 0 8px;border-top:.5px solid var(--ios-separator);border-bottom:.5px solid var(--ios-separator);background:transparent}
.student-prescription div{min-width:0;padding:8px 5px;background:transparent;text-align:center;border-right:.5px solid var(--ios-separator)}.student-prescription div:last-child{border-right:0}
.student-prescription b{display:block;color:var(--ios-secondary);font-size:8px;font-weight:600;text-transform:none;letter-spacing:0}.student-prescription span{display:block;margin-top:2px;color:var(--ios-text);font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.student-video-wrap{margin:9px 0 0;overflow:hidden;border-radius:9px;background:#000}
.student-app .video-details{margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:#000!important;box-shadow:none!important}.student-app .video-details summary{min-height:38px;border:0!important;border-radius:0!important;background:#1c1c1e!important;color:#fff!important;box-shadow:none!important;padding:7px 9px!important}.student-app .video-details summary span:last-child{background:#333!important;color:#ddd!important}.student-app .video-details>div{margin-top:0!important;border-radius:0!important;box-shadow:none!important}
.student-note{margin:8px 0 0;padding:0;color:var(--ios-secondary);font-size:11px;line-height:1.45}
.student-exec-panel{margin-top:10px;padding:0;border-top:.5px solid var(--ios-separator);border-radius:0;background:transparent}
.student-exec-grid{display:block}.student-exec-box,.student-exec-box.full{display:block;padding:10px 0;border:0;border-bottom:.5px solid var(--ios-separator);border-radius:0;background:transparent}.student-exec-box:last-child{border-bottom:0}
.student-exec-label{color:var(--ios-secondary);font-size:9px;font-weight:600;text-transform:none;letter-spacing:0}
.student-set-row{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;gap:7px;margin-top:6px}.student-set-btn{height:36px;border:0;border-radius:9px;background:var(--ios-fill);color:var(--ios-text);font-size:20px;font-weight:500}.student-set-btn.primary{background:var(--ios-blue);color:#fff}.student-set-btn:active{transform:scale(.94)}.student-set-count{text-align:center;color:var(--ios-text);font-size:23px;font-weight:720;font-variant-numeric:tabular-nums}
.student-exec-box .btn{min-height:38px;margin-top:7px;border:0!important;border-radius:9px!important;background:var(--ios-blue)!important;color:#fff!important;font-size:12px;font-weight:700}
.student-rest-time{margin-top:3px;color:var(--ios-text)!important;font-size:25px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.student-rest-time.is-running{color:var(--ios-blue)!important}.student-rest-time.is-finished{color:var(--ios-green)!important}
.student-rest-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:6px}.student-rest-actions button{height:32px;border:0;border-radius:8px;background:var(--ios-fill);color:var(--ios-text);font-size:10px;font-weight:600}.student-rest-actions button:first-child{background:#1c1c1e;color:#fff}.student-rest-actions button:active{transform:scale(.96)}
.student-inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:6px}.student-app .input{min-height:38px!important;padding:7px 8px!important;border:0!important;border-radius:9px!important;background:#eeeef2!important;color:var(--ios-text)!important;box-shadow:none!important;font-size:13px}.student-app .input:focus{border:0!important;box-shadow:0 0 0 2px rgba(0,122,255,.20)!important;background:#fff!important}.student-app .input.field-invalid{box-shadow:0 0 0 1.5px var(--ios-red)!important}.student-app .label{margin-bottom:3px!important;color:var(--ios-secondary)!important;font-size:9px!important;font-weight:600!important;text-transform:none!important;letter-spacing:0!important}.student-app .field-error{margin-top:3px;color:var(--ios-red);font-size:9px;font-weight:600}
.student-exercise-nav{height:46px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:7px;padding:6px 9px;border-top:.5px solid var(--ios-separator);background:#fafafd}.student-exercise-nav button{height:32px;border:0;border-radius:8px;background:var(--ios-fill);color:var(--ios-blue);font-size:11px;font-weight:650}.student-exercise-nav button:last-child{background:var(--ios-blue);color:#fff}.student-exercise-nav button:disabled{opacity:.35}.student-exercise-nav span{min-width:52px;text-align:center;color:var(--ios-secondary);font-size:10px;font-weight:600;font-variant-numeric:tabular-nums}
.student-checkin{margin-top:7px;padding:10px 11px;border:0;border-radius:var(--ios-radius);background:var(--ios-surface)}.student-checkin-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.student-checkin-comment{grid-column:1/-1}.student-checkin .btn{width:100%;min-height:42px;margin-top:8px;border:0!important;border-radius:10px!important;background:var(--ios-blue)!important;color:#fff!important;font-size:13px;font-weight:720}
.student-section-title{margin:3px 2px 9px}.student-section-title small{display:block;color:var(--ios-secondary);font-size:10px;font-weight:500;text-transform:none;letter-spacing:0}.student-section-title h2{margin:1px 0 0;color:var(--ios-text);font-size:27px;line-height:1.07;font-weight:750;letter-spacing:-.035em}
.student-evaluation-list,.student-history-list{display:block;overflow:hidden;border-radius:var(--ios-radius);background:var(--ios-surface)}.student-list-item{padding:11px;border:0;border-bottom:.5px solid var(--ios-separator);border-radius:0;background:transparent}.student-list-item:last-child{border-bottom:0}.student-list-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.student-list-item strong{color:var(--ios-text);font-size:13px;font-weight:650}.student-list-item time,.student-list-item small{color:var(--ios-secondary);font-size:9px}.student-list-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:8px;border-top:.5px solid var(--ios-separator);background:transparent}.student-list-metrics div{padding:7px 4px 0;background:transparent}.student-list-metrics b{display:block;color:var(--ios-secondary);font-size:8px;font-weight:550}.student-list-metrics span{display:block;margin-top:2px;color:var(--ios-text);font-size:11px;font-weight:700}
.student-bottom-nav-wrap{position:fixed;z-index:50;left:0;right:0;bottom:0;padding:0 7px env(safe-area-inset-bottom);border:0;border-top:.5px solid var(--ios-separator);background:rgba(249,249,249,.9);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px)}.student-bottom-nav{max-width:520px;height:57px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr)}.student-bottom-link{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:2px;border:0;background:transparent;color:var(--ios-tertiary);font-size:9px;font-weight:550}.student-bottom-link .app-nav-icon{width:21px;height:21px}.student-bottom-link .app-nav-icon svg{width:18px;height:18px;stroke-width:1.9}.student-bottom-link.is-active{color:var(--ios-blue)}.student-bottom-link.is-active::before{display:none}.student-bottom-link:active{transform:scale(.93)}
.student-feedback{position:fixed;z-index:90;left:50%;bottom:72px;transform:translate(-50%,8px);max-width:calc(100vw - 22px);padding:8px 11px;border:0;border-radius:11px;background:rgba(28,28,30,.94);color:#fff;font-size:10px;font-weight:650;box-shadow:0 6px 20px rgba(0,0,0,.16);opacity:0;pointer-events:none;transition:.16s}.student-feedback.is-visible{opacity:1;transform:translate(-50%,0)}.student-feedback.is-success{background:rgba(28,28,30,.94)}
.student-app .is-tapped{transform:scale(.97)!important;filter:none}.student-action-pop{animation:iosPop .25s ease}@keyframes iosPop{50%{transform:scale(1.012)}}

@media(max-width:520px){
  .student-main{padding-left:7px;padding-right:7px}.student-topbar-inner{padding:0 9px}.student-personal-chip{max-width:112px}.student-hello h1{font-size:26px}.student-workout{border-radius:10px}.student-prescription{grid-template-columns:repeat(4,minmax(0,1fr))}.student-prescription div{padding:7px 3px}.student-checkin-grid{grid-template-columns:1fr}.student-checkin-comment{grid-column:auto}.student-list-metrics{grid-template-columns:repeat(2,1fr)}.student-list-metrics div:nth-child(3),.student-list-metrics div:nth-child(4){border-top:.5px solid var(--ios-separator)}
}
@media(max-width:360px){
  .student-personal-chip{display:none}.student-main{padding-left:5px;padding-right:5px}.student-workout-head,.student-exercise-card,.student-checkin{padding-left:9px;padding-right:9px}.student-prescription b{font-size:7.5px}.student-prescription span{font-size:10px}.student-inline-fields{grid-template-columns:1fr}.student-rest-actions{gap:3px}.student-bottom-nav{height:55px}
}

/* Agenda do personal */
.agenda-toolbar{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 8px!important;margin-bottom:8px}.agenda-nav-controls{display:flex;align-items:center;gap:5px;min-width:0}.agenda-nav-controls strong{margin-left:4px;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agenda-view-switch{display:inline-grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--fg-border);border-radius:3px;overflow:hidden;background:var(--fg-panel)}.agenda-view-switch a{min-width:62px;padding:5px 9px;border-right:1px solid var(--fg-border);font-size:11px;font-weight:650;text-align:center}.agenda-view-switch a:last-child{border-right:0}.agenda-view-switch a.active{background:var(--fg-accent);color:#fff}.agenda-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:8px}.agenda-calendar-card{overflow:hidden}.agenda-weekdays{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--fg-border);background:var(--fg-panel-2)}.agenda-weekdays div{padding:6px;text-align:center;color:var(--fg-muted);font-size:10px;font-weight:700;text-transform:uppercase}.agenda-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.agenda-day{min-height:112px;padding:4px;border-right:1px solid var(--fg-border);border-bottom:1px solid var(--fg-border);background:var(--fg-panel)}.agenda-day:nth-child(7n){border-right:0}.agenda-day.muted{background:var(--fg-panel-2);opacity:.68}.agenda-day.today{box-shadow:inset 0 0 0 2px var(--fg-accent)}.agenda-day-head{height:24px;display:flex;align-items:center;justify-content:space-between}.agenda-day-head>a:first-child{width:23px;height:23px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:11px;font-weight:700}.agenda-day.today .agenda-day-head>a:first-child{background:var(--fg-accent);color:#fff}.agenda-day-add{width:21px;height:21px;display:flex;align-items:center;justify-content:center;border-radius:3px;color:var(--fg-muted);font-size:15px}.agenda-day-add:hover{background:var(--fg-panel-3);color:var(--fg-accent)}.agenda-day-events{display:grid;gap:2px}.agenda-event{min-width:0;display:flex;align-items:center;gap:4px;padding:3px 4px;border-left:3px solid var(--fg-accent);border-radius:2px;background:var(--fg-accent-soft);font-size:9px}.agenda-event time{font-variant-numeric:tabular-nums;font-weight:750}.agenda-event span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.agenda-event-confirmado{border-left-color:#2563eb}.agenda-event-realizado{border-left-color:#107c10;background:#edf8ed}.agenda-event-falta{border-left-color:#c42b1c;background:#fff1ef}.agenda-event-cancelado{border-left-color:#888;background:var(--fg-panel-3);text-decoration:line-through}.agenda-event-remarcado{border-left-color:#b77900;background:#fff7df}.agenda-more{padding:2px 3px;color:var(--fg-muted);font-size:9px;font-weight:650}.agenda-side-panel{align-self:start;padding:8px!important}.agenda-side-title,.finance-section-head,.dashboard-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.agenda-side-title strong,.finance-section-head strong,.dashboard-section-head strong{display:block;font-size:13px}.agenda-side-title span,.finance-section-head span{color:var(--fg-muted);font-size:10px}.agenda-side-empty{margin:8px 0;color:var(--fg-muted);font-size:11px}.agenda-side-item{display:block;padding:7px 2px;border-bottom:1px solid var(--fg-border)}.agenda-side-item:last-child{border-bottom:0}.agenda-side-item time{display:block;color:var(--fg-accent);font-size:9px;font-weight:750}.agenda-side-item strong{display:block;margin-top:2px;font-size:11px}.agenda-side-item span{display:block;color:var(--fg-muted);font-size:9px}.agenda-week-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));overflow-x:auto}.agenda-week-column{min-height:470px;border-right:1px solid var(--fg-border)}.agenda-week-column:last-child{border-right:0}.agenda-week-column.today{background:var(--fg-accent-soft)}.agenda-week-head{height:40px;display:flex;align-items:center;gap:5px;padding:5px;border-bottom:1px solid var(--fg-border);background:var(--fg-panel-2)}.agenda-week-head span{font-size:9px;color:var(--fg-muted)}.agenda-week-head strong{font-size:11px}.agenda-week-head a{margin-left:auto;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:3px;background:var(--fg-panel)}.agenda-week-events{display:grid;gap:4px;padding:5px}.agenda-event-block{display:block;padding:6px}.agenda-event-block time,.agenda-event-block strong,.agenda-event-block small{display:block}.agenda-event-block strong{margin-top:2px;font-size:10px}.agenda-event-block small{margin-top:1px;color:var(--fg-muted);font-size:9px}.agenda-empty-slot{padding:7px;color:var(--fg-muted);font-size:9px;text-align:center}.agenda-day-list{padding:8px}.agenda-day-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.agenda-day-title small{color:var(--fg-muted);font-size:9px}.agenda-day-title h2{margin:0;font-size:17px}.agenda-day-row{display:grid;grid-template-columns:62px 1fr 12px;align-items:center;gap:8px;padding:8px 3px;border-bottom:1px solid var(--fg-border)}.agenda-day-row:last-child{border-bottom:0}.agenda-day-time strong,.agenda-day-time span{display:block;font-variant-numeric:tabular-nums}.agenda-day-time strong{font-size:12px}.agenda-day-time span{color:var(--fg-muted);font-size:9px}.agenda-day-info strong{display:block;font-size:11px}.agenda-day-info span{display:block;margin-top:1px;color:var(--fg-muted);font-size:9px}.agenda-status-dot{width:8px;height:8px;border-radius:50%;background:#8a8a8a}.agenda-status-dot.status-agendado{background:#0067c0}.agenda-status-dot.status-confirmado{background:#2563eb}.agenda-status-dot.status-realizado{background:#107c10}.agenda-status-dot.status-falta{background:#c42b1c}.agenda-status-dot.status-remarcado{background:#b77900}.agenda-status-dot.status-cancelado{background:#888}

/* Financeiro do personal */
.finance-grid-top{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:8px}.finance-chart-card,.finance-student-summary,.finance-table-card,.invoice-sheet,.invoice-payments{padding:9px!important}.finance-section-head small,.dashboard-section-head small{display:block;color:var(--fg-muted);font-size:9px;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.finance-bars{height:190px;display:grid;grid-template-columns:repeat(6,1fr);align-items:end;gap:9px;padding:8px 4px 0}.finance-bar-col{height:100%;display:grid;grid-template-rows:18px 1fr 18px;gap:3px;align-items:end;text-align:center}.finance-bar-value{overflow:hidden;color:var(--fg-muted);font-size:8px;white-space:nowrap;text-overflow:ellipsis}.finance-bar-track{height:100%;display:flex;align-items:end;border-bottom:1px solid var(--fg-border);background:linear-gradient(to top,var(--fg-panel-2),transparent)}.finance-bar{width:55%;min-height:3px;margin:0 auto;background:var(--fg-accent);border-radius:2px 2px 0 0}.finance-bar-col>span{color:var(--fg-muted);font-size:9px}.finance-student-list{display:grid}.finance-student-list a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 2px;border-bottom:1px solid var(--fg-border);font-size:10px}.finance-student-list a:last-child{border-bottom:0}.finance-student-list strong{font-size:9px}.finance-pending{color:var(--fg-danger)}.finance-ok{color:var(--fg-success)}.finance-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.finance-table-toolbar>div strong{display:block;font-size:13px}.finance-table-toolbar>div span{display:block;color:var(--fg-muted);font-size:9px}.finance-filter-form{display:flex;align-items:center;gap:5px}.finance-filter-form .input{width:auto;min-width:150px}.finance-status{display:inline-flex;align-items:center;min-height:20px;padding:2px 6px;border-radius:2px;background:var(--fg-panel-3);font-size:9px;font-weight:750}.finance-status.is-pago{background:#e9f7e9;color:#0d7118}.finance-status.is-pendente{background:#e7f1fa;color:#005a9e}.finance-status.is-parcial{background:#fff5dd;color:#815b00}.finance-status.is-vencido{background:#fff0ee;color:#a52318}.finance-status.is-cancelado{background:#ececec;color:#666}.invoice-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:8px}.invoice-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:9px;border-bottom:1px solid var(--fg-border)}.invoice-head small{color:var(--fg-muted);font-size:9px;font-weight:700;letter-spacing:.08em}.invoice-head h2{margin:2px 0 0;font-size:18px}.invoice-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:1px;margin-top:8px;background:var(--fg-border)}.invoice-grid>div,.invoice-description,.invoice-values>div,.invoice-balance>div{padding:8px;background:var(--fg-panel)}.invoice-grid span,.invoice-description span,.invoice-values span,.invoice-balance span,.invoice-notes>span{display:block;color:var(--fg-muted);font-size:9px}.invoice-grid strong,.invoice-description strong,.invoice-values strong,.invoice-balance strong{display:block;margin-top:2px;font-size:11px}.invoice-grid small{display:block;margin-top:2px;color:var(--fg-muted);font-size:9px}.invoice-description{margin-top:1px;border:1px solid var(--fg-border)}.invoice-values{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:8px;background:var(--fg-border)}.invoice-values .total{background:var(--fg-accent-soft)}.invoice-values .total strong{color:var(--fg-accent-text);font-size:15px}.invoice-balance{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:1px;background:var(--fg-border)}.invoice-balance strong{font-size:14px}.invoice-notes{margin-top:8px;padding-top:7px;border-top:1px solid var(--fg-border)}.invoice-notes p{margin:3px 0 0;font-size:10px}.payment-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 1px;border-bottom:1px solid var(--fg-border)}.payment-row strong{display:block;font-size:11px}.payment-row span,.payment-row time{display:block;color:var(--fg-muted);font-size:9px}.finance-payment-summary{display:flex;align-items:center;justify-content:space-between;padding:9px;background:var(--fg-panel-2);border:1px solid var(--fg-border)}.finance-payment-summary span{color:var(--fg-muted);font-size:10px}.finance-payment-summary strong{font-size:18px}

/* Dashboard operacional do personal */
.dashboard-ops-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:8px}.dashboard-today-card,.dashboard-finance-card{padding:9px!important}.dashboard-agenda-list,.dashboard-student-list,.dashboard-checkin-list{display:grid}.dashboard-agenda-list>a,.dashboard-student-list>a,.dashboard-checkin-list>a{display:flex;align-items:center;gap:8px;padding:7px 2px;border-bottom:1px solid var(--fg-border)}.dashboard-agenda-list>a:last-child,.dashboard-student-list>a:last-child,.dashboard-checkin-list>a:last-child{border-bottom:0}.dashboard-agenda-list time{width:42px;font-size:10px;font-weight:750;font-variant-numeric:tabular-nums}.dashboard-agenda-list div,.dashboard-student-list div{min-width:0;flex:1}.dashboard-agenda-list strong,.dashboard-student-list strong,.dashboard-checkin-list strong{display:block;font-size:10px}.dashboard-agenda-list span,.dashboard-student-list span,.dashboard-checkin-list span{display:block;color:var(--fg-muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-finance-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--fg-border)}.dashboard-finance-numbers>div{padding:9px;background:var(--fg-panel)}.dashboard-finance-numbers span{display:block;color:var(--fg-muted);font-size:9px}.dashboard-finance-numbers strong{display:block;margin-top:3px;font-size:14px}.dashboard-finance-numbers .danger strong{color:var(--fg-danger)}.dashboard-empty-line{padding:12px 2px;color:var(--fg-muted);font-size:10px}

/* Ajustes finais do app do aluno: linguagem visual iOS sem excesso de caixas */
body.student-app{--ios-radius:10px}.student-main{max-width:560px;padding-top:5px}.student-hello{padding:5px 2px 8px}.student-message{border-radius:8px}.student-workout{border-radius:10px}.student-workout-head{padding:9px 10px 5px}.student-exercise-card{padding:10px}.student-checkin{padding:9px 10px}.student-section-title{margin:2px 2px 7px}.student-evaluation-list,.student-history-list{border-radius:10px}.student-list-item{padding:10px}.student-bottom-nav{max-width:440px}.student-bottom-link{font-size:9px}.student-app .badge{border-radius:6px!important}.student-prescription{margin-top:8px;margin-bottom:7px}.student-prescription div{padding-top:7px;padding-bottom:7px}.student-exec-box,.student-exec-box.full{padding:8px 0}.student-video-wrap{border-radius:8px}.student-checkin .btn{border-radius:9px!important}

@media(max-width:1100px){.agenda-layout{grid-template-columns:1fr}.agenda-side-panel{display:none}.finance-grid-top,.invoice-layout,.dashboard-ops-grid{grid-template-columns:1fr}}
@media(max-width:760px){.agenda-toolbar{align-items:stretch;flex-direction:column}.agenda-nav-controls{justify-content:flex-start}.agenda-view-switch{width:100%}.agenda-view-switch a{min-width:0}.agenda-month-grid{min-width:700px}.agenda-calendar-card{overflow-x:auto}.agenda-weekdays{min-width:700px}.finance-filter-form{width:100%;display:grid;grid-template-columns:1fr 1fr auto}.finance-table-toolbar{align-items:stretch;flex-direction:column}.finance-filter-form .input{width:100%;min-width:0}.invoice-grid{grid-template-columns:1fr 1fr}.invoice-values{grid-template-columns:1fr 1fr}.finance-bars{gap:4px}.dashboard-finance-numbers{grid-template-columns:1fr}.agenda-day-list{padding:5px}}
@media(max-width:420px){.finance-filter-form{grid-template-columns:1fr}.finance-bars{height:150px}.finance-bar-value{display:none}.invoice-grid,.invoice-values,.invoice-balance{grid-template-columns:1fr}.agenda-nav-controls strong{font-size:11px}.student-main{padding-left:4px;padding-right:4px}.student-workout{border-radius:8px}.student-workout-head,.student-exercise-card,.student-checkin{padding-left:8px;padding-right:8px}.student-topbar-inner{padding-left:8px;padding-right:8px}}

/* Proteções de responsividade */
body.public-app,body.student-app{overflow-x:hidden}.public-main,.public-shell,.public-container,.student-app-shell,.student-main{min-width:0}.public-preview,.public-phone,.student-workout,.student-screen{max-width:100%}.student-app .card{border:0!important;box-shadow:none!important;border-radius:10px!important}.student-app{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.student-topbar{height:50px}.student-bottom-nav-wrap{padding-bottom:max(env(safe-area-inset-bottom),2px)}
@media(max-width:360px){.public-container{width:calc(100% - 12px)}.public-hero h1{font-size:32px;line-height:1.03}.public-preview{margin-left:0;margin-right:0}.student-hello h1{font-size:24px}.student-exercise-top h3{font-size:19px}.student-prescription{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{.invoice-layout{display:block}.invoice-payments{display:none}.invoice-sheet{border:0!important;box-shadow:none!important}.invoice-sheet *{color:#000!important}}

/* Aparência controlada pelo aluno — preferência local do aparelho */
.student-theme-trigger{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;border:0;border-radius:50%;background:var(--ios-fill);color:var(--ios-text);font-size:15px;font-weight:700;line-height:1;transition:transform .08s ease,background .15s ease}
.student-theme-trigger:active{transform:scale(.90)}
.student-theme-layer[hidden]{display:none!important}.student-theme-layer{position:fixed;z-index:120;inset:0;display:flex;align-items:flex-end;justify-content:center;pointer-events:none}.student-theme-layer.is-open{pointer-events:auto}.student-theme-backdrop{position:absolute;inset:0;border:0;background:rgba(0,0,0,.28);opacity:0;transition:opacity .18s ease}.student-theme-layer.is-open .student-theme-backdrop{opacity:1}
.student-theme-sheet{position:relative;width:min(100%,430px);margin:0 7px calc(7px + env(safe-area-inset-bottom));padding:7px 8px 8px;border:0;border-radius:16px;background:var(--ios-surface);color:var(--ios-text);box-shadow:0 18px 54px rgba(0,0,0,.22);transform:translateY(calc(100% + 24px));transition:transform .18s cubic-bezier(.2,.8,.2,1)}.student-theme-layer.is-open .student-theme-sheet{transform:translateY(0)}
.student-theme-handle{width:34px;height:4px;margin:0 auto 5px;border-radius:99px;background:var(--ios-separator)}.student-theme-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:3px 4px 7px}.student-theme-head strong{display:block;font-size:17px;line-height:1.15;letter-spacing:-.02em}.student-theme-head small{display:block;margin-top:2px;color:var(--ios-secondary);font-size:10px}.student-theme-close{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;border:0;border-radius:50%;background:var(--ios-fill);color:var(--ios-secondary);font-size:20px;line-height:1}
.student-theme-options{overflow:hidden;border-radius:11px;background:var(--ios-surface-2)}.student-theme-option{width:100%;min-height:48px;display:grid;grid-template-columns:32px minmax(0,1fr) 22px;align-items:center;gap:8px;padding:6px 9px;border:0;border-bottom:.5px solid var(--ios-separator);background:transparent;color:var(--ios-text);text-align:left}.student-theme-option:last-child{border-bottom:0}.student-theme-option:active{background:var(--ios-fill)}.student-theme-option>span:nth-child(2){min-width:0}.student-theme-option strong{display:block;font-size:12px;font-weight:650}.student-theme-option small{display:block;margin-top:1px;color:var(--ios-secondary);font-size:9px;line-height:1.25}.student-theme-option-icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:var(--ios-fill);color:var(--ios-text);font-size:14px;font-weight:750}.student-theme-option-icon.light{background:#fff;color:#ff9f0a}.student-theme-option-icon.dark{background:#1c1c1e;color:#fff}.student-theme-option-icon.invert{background:linear-gradient(90deg,#111 50%,#f6f6f6 50%);color:#0a84ff}.student-theme-option-icon.contrast{background:#000;color:#ffdf00;font-size:10px}.student-theme-check{visibility:hidden;color:var(--ios-blue);font-size:16px;font-weight:800;text-align:center}.student-theme-option.is-active .student-theme-check{visibility:visible}.student-theme-option.is-active strong{color:var(--ios-blue)}
body.student-theme-open{overflow:hidden}

/* Escuro */
html[data-fg-student-theme="dark"]{color-scheme:dark}
html[data-fg-student-theme="dark"] body.student-app{
  --ios-bg:#000000;--ios-surface:#1c1c1e;--ios-surface-2:#242426;--ios-separator:rgba(84,84,88,.58);
  --ios-text:#f5f5f7;--ios-secondary:#aeaeb2;--ios-tertiary:#8e8e93;--ios-blue:#0a84ff;--ios-green:#30d158;
  --ios-red:#ff453a;--ios-fill:#2c2c2e;
  --fg-panel:#1c1c1e;--fg-panel-2:#242426;--fg-text:#f5f5f7;--fg-muted:#aeaeb2;--fg-border:#38383a;--fg-border-strong:#48484a;--fg-accent:#0a84ff;
}
html[data-fg-student-theme="dark"] .student-app-shell{background:var(--ios-bg)}
html[data-fg-student-theme="dark"] .student-topbar{background:rgba(28,28,30,.90)}
html[data-fg-student-theme="dark"] .student-bottom-nav-wrap{background:rgba(28,28,30,.91)}
html[data-fg-student-theme="dark"] .student-message{background:#102a43;color:#b7d9f8}
html[data-fg-student-theme="dark"] .student-progress-track{background:#3a3a3c}
html[data-fg-student-theme="dark"] .student-app .input{background:#2c2c2e!important;color:var(--ios-text)!important}
html[data-fg-student-theme="dark"] .student-app .input:focus{background:#363638!important}
html[data-fg-student-theme="dark"] .student-exercise-nav{background:#1c1c1e}
html[data-fg-student-theme="dark"] .student-rest-actions button:first-child{background:#f2f2f7;color:#111}
html[data-fg-student-theme="dark"] .student-theme-option-icon.light{background:#f5f5f7;color:#ff9f0a}

/* Alto contraste */
html[data-fg-student-theme="contrast"]{color-scheme:dark}
html[data-fg-student-theme="contrast"] body.student-app{
  --ios-bg:#000;--ios-surface:#000;--ios-surface-2:#080808;--ios-separator:#ffffff;
  --ios-text:#fff;--ios-secondary:#fff;--ios-tertiary:#fff;--ios-blue:#00aaff;--ios-green:#00ff66;--ios-red:#ff4040;--ios-fill:#151515;
  --fg-panel:#000;--fg-panel-2:#080808;--fg-text:#fff;--fg-muted:#fff;--fg-border:#fff;--fg-border-strong:#fff;--fg-accent:#00aaff;
}
html[data-fg-student-theme="contrast"] .student-topbar,html[data-fg-student-theme="contrast"] .student-bottom-nav-wrap{background:#000;border-color:#fff}
html[data-fg-student-theme="contrast"] .student-message{background:#000;color:#fff;box-shadow:inset 0 0 0 1px #fff}
html[data-fg-student-theme="contrast"] .student-workout,html[data-fg-student-theme="contrast"] .student-checkin,html[data-fg-student-theme="contrast"] .student-evaluation-list,html[data-fg-student-theme="contrast"] .student-history-list{box-shadow:inset 0 0 0 1px #fff!important}
html[data-fg-student-theme="contrast"] .student-app .input{background:#000!important;color:#fff!important;box-shadow:inset 0 0 0 1px #fff!important}
html[data-fg-student-theme="contrast"] .student-theme-option.is-active strong,html[data-fg-student-theme="contrast"] .student-theme-check{color:#00d5ff}

/* Inversão de cores: mídia é compensada para preservar a imagem original */
html[data-fg-student-theme="invert"]{background:#0d0d0f;color-scheme:dark}
html[data-fg-student-theme="invert"] body.student-app{filter:invert(1) hue-rotate(180deg);background:#f2f2f7!important}
html[data-fg-student-theme="invert"] body.student-app img,
html[data-fg-student-theme="invert"] body.student-app video,
html[data-fg-student-theme="invert"] body.student-app iframe,
html[data-fg-student-theme="invert"] body.student-app canvas,
html[data-fg-student-theme="invert"] body.student-app picture{filter:invert(1) hue-rotate(180deg)}

@media(min-width:700px){.student-theme-layer{align-items:center}.student-theme-sheet{margin:0;border-radius:14px;transform:translateY(12px) scale(.98);opacity:0;transition:transform .18s ease,opacity .18s ease}.student-theme-layer.is-open .student-theme-sheet{transform:none;opacity:1}}
@media(max-width:360px){.student-theme-sheet{margin-left:4px;margin-right:4px;padding-left:6px;padding-right:6px}.student-theme-option{padding-left:7px;padding-right:7px}.student-theme-head small{max-width:235px}}
@media(prefers-reduced-motion:reduce){.student-theme-backdrop,.student-theme-sheet{transition:none!important}}

/* Agenda recorrente */
.agenda-form{max-width:920px;padding:10px!important}.agenda-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.agenda-schedule-switch{display:inline-grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:1px;padding:2px;background:var(--fg-panel-3);border:1px solid var(--fg-border);border-radius:4px}.agenda-schedule-switch label{cursor:pointer}.agenda-schedule-switch input{position:absolute;opacity:0;pointer-events:none}.agenda-schedule-switch span{display:block;padding:6px 14px;border-radius:3px;text-align:center;font-size:11px;font-weight:700;color:var(--fg-muted)}.agenda-schedule-switch input:checked+span{background:var(--fg-panel);color:var(--fg-accent);box-shadow:0 1px 2px rgba(0,0,0,.08)}.agenda-schedule-switch .is-disabled{opacity:.45;cursor:not-allowed}.agenda-field-help{margin:4px 0 0;color:var(--fg-muted);font-size:9px;line-height:1.45}.agenda-series-info{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 8px;background:var(--fg-accent-soft);border-left:3px solid var(--fg-accent)}.agenda-series-info strong{font-size:11px}.agenda-series-info span{color:var(--fg-muted);font-size:9px}.agenda-scope-options{display:flex;flex-wrap:wrap;gap:5px}.agenda-scope-options label{cursor:pointer}.agenda-scope-options input{position:absolute;opacity:0;pointer-events:none}.agenda-scope-options span{display:block;padding:5px 8px;border:1px solid var(--fg-border);border-radius:3px;background:var(--fg-panel);font-size:10px;font-weight:650}.agenda-scope-options input:checked+span{border-color:var(--fg-accent);background:var(--fg-accent-soft);color:var(--fg-accent)}.agenda-inline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.agenda-inline-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.agenda-recurrence-panel{display:grid;gap:9px;padding:8px;background:var(--fg-panel-2);border-top:1px solid var(--fg-border);border-bottom:1px solid var(--fg-border)}.agenda-weekday-picker{display:flex;flex-wrap:wrap;gap:4px}.agenda-weekday-picker label{cursor:pointer}.agenda-weekday-picker input{position:absolute;opacity:0;pointer-events:none}.agenda-weekday-picker span{display:flex;align-items:center;justify-content:center;min-width:44px;height:29px;padding:0 8px;border:1px solid var(--fg-border);border-radius:3px;background:var(--fg-panel);font-size:10px;font-weight:700}.agenda-weekday-picker input:checked+span{border-color:var(--fg-accent);background:var(--fg-accent);color:#fff}.agenda-weekday-picker.field-invalid-group{outline:2px solid var(--fg-danger);outline-offset:2px}.agenda-day-month{max-width:120px}.agenda-preview{margin-top:9px;border-top:1px solid var(--fg-border);background:var(--fg-panel)}.agenda-preview-head{display:flex;align-items:center;justify-content:space-between;padding:8px 4px}.agenda-preview-head strong{display:block;font-size:12px}.agenda-preview-head span{display:block;margin-top:2px;color:var(--fg-muted);font-size:9px}.agenda-preview-list{max-height:330px;overflow:auto;border-top:1px solid var(--fg-border)}.agenda-preview-row{display:grid;grid-template-columns:20px 145px 1fr;align-items:center;gap:6px;min-height:31px;padding:4px;border-bottom:1px solid var(--fg-border);font-size:10px}.agenda-preview-row>span{font-size:12px;font-weight:900}.agenda-preview-row.is-free>span{color:#107c10}.agenda-preview-row.has-conflict{background:#fff7f5}.agenda-preview-row.has-conflict>span{color:var(--fg-danger)}[data-fg-theme="ubuntu"] .agenda-preview-row.has-conflict{background:rgba(233,84,32,.10)}.agenda-preview-row time{font-variant-numeric:tabular-nums;font-weight:700}.agenda-preview-row div{color:var(--fg-muted)}.agenda-form-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:10px;padding-top:8px;border-top:1px solid var(--fg-border)}.agenda-cancel-button{margin-left:auto}.update-migration-list{border-top:1px solid var(--fg-border)}.update-migration-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:9px 2px;border-bottom:1px solid var(--fg-border)}.update-migration-row>div{min-width:0}.update-migration-row strong,.update-migration-row span,.update-migration-row code{display:block}.update-migration-row strong{font-size:11px}.update-migration-row span{margin-top:2px;color:var(--fg-muted);font-size:9px}.update-migration-row code{margin-top:4px;max-width:100%;overflow:hidden;text-overflow:ellipsis;color:var(--fg-muted);font-size:8px}
@media(max-width:760px){.agenda-form{padding:7px!important}.agenda-form-grid,.agenda-inline-grid,.agenda-inline-grid-3{grid-template-columns:1fr}.agenda-series-info{align-items:flex-start;flex-direction:column}.agenda-scope-options{display:grid;grid-template-columns:1fr;width:100%}.agenda-scope-options span{text-align:left}.agenda-schedule-switch{width:100%}.agenda-weekday-picker{display:grid;grid-template-columns:repeat(4,1fr)}.agenda-weekday-picker span{min-width:0}.agenda-preview-row{grid-template-columns:18px 122px 1fr;font-size:9px}.agenda-cancel-button{margin-left:0}.agenda-form-actions{align-items:stretch}.agenda-form-actions .btn{flex:1 1 auto;text-align:center}}
@media(max-width:420px){.agenda-weekday-picker{grid-template-columns:repeat(3,1fr)}.agenda-preview-row{grid-template-columns:18px 1fr}.agenda-preview-row div{grid-column:2}.update-migration-row{align-items:flex-start;flex-direction:column}}

/* Agenda do aluno: leitura simples, compacta e orientada a celular */
.student-next-appointment{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:8px;margin:0 0 7px;padding:8px 9px;border:0;border-radius:10px;background:var(--ios-surface);color:var(--ios-text);text-align:left}.student-next-appointment:active{transform:scale(.985);background:var(--ios-fill)}.student-next-date{width:42px;height:42px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:9px;background:var(--ios-blue);color:#fff;line-height:1}.student-next-date b{font-size:17px;font-weight:760}.student-next-date small{margin-top:2px;font-size:7px;font-weight:750;letter-spacing:.06em}.student-next-copy{min-width:0}.student-next-copy small,.student-next-copy strong,.student-next-copy em{display:block}.student-next-copy small{color:var(--ios-secondary);font-size:9px}.student-next-copy strong{margin-top:2px;overflow:hidden;color:var(--ios-text);font-size:12px;font-weight:680;white-space:nowrap;text-overflow:ellipsis}.student-next-copy em{margin-top:1px;overflow:hidden;color:var(--ios-secondary);font-size:9px;font-style:normal;white-space:nowrap;text-overflow:ellipsis}.student-next-chevron{color:var(--ios-tertiary);font-size:24px;font-weight:300;text-align:right}
.student-agenda-next{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 11px;border-radius:11px;background:var(--ios-surface)}.student-agenda-next-date{width:48px;height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:10px;background:var(--ios-blue);color:#fff;line-height:1}.student-agenda-next-date strong{font-size:20px;font-weight:760}.student-agenda-next-date span{margin-top:2px;font-size:8px;font-weight:750;letter-spacing:.06em}.student-agenda-next-main{min-width:0}.student-agenda-next-main small{display:block;color:var(--ios-secondary);font-size:9px}.student-agenda-next-main h3{margin:2px 0 0;overflow:hidden;color:var(--ios-text);font-size:14px;font-weight:700;white-space:nowrap;text-overflow:ellipsis}.student-agenda-next-main p{margin:2px 0 0;overflow:hidden;color:var(--ios-secondary);font-size:10px;white-space:nowrap;text-overflow:ellipsis}
.student-agenda-status{display:inline-flex;align-items:center;min-height:21px;padding:3px 6px;border-radius:999px;background:var(--ios-fill);color:var(--ios-secondary);font-size:8px;font-weight:700;white-space:nowrap}.student-agenda-status.status-confirmado,.student-agenda-status.status-realizado{background:rgba(52,199,89,.14);color:var(--ios-green)}.student-agenda-status.status-falta,.student-agenda-status.status-cancelado{background:rgba(255,59,48,.12);color:var(--ios-red)}.student-agenda-status.status-remarcado{background:rgba(255,159,10,.14);color:#b86800}
.student-agenda-segment{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin:8px 0;padding:2px;border-radius:9px;background:var(--ios-fill)}.student-agenda-segment button{min-height:31px;border:0;border-radius:7px;background:transparent;color:var(--ios-secondary);font-size:10px;font-weight:650}.student-agenda-segment button.is-active{background:var(--ios-surface);color:var(--ios-text);box-shadow:0 1px 3px rgba(0,0,0,.08)}.student-agenda-segment button:active{transform:scale(.97)}
.student-agenda-panel{display:none}.student-agenda-panel.is-active{display:block}.student-agenda-list{overflow:hidden;border-radius:10px;background:var(--ios-surface)}.student-agenda-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:54px;padding:7px 9px;border-bottom:.5px solid var(--ios-separator)}.student-agenda-row:last-child{border-bottom:0}.student-agenda-row time{font-variant-numeric:tabular-nums}.student-agenda-row time strong,.student-agenda-row time span{display:block}.student-agenda-row time strong{color:var(--ios-text);font-size:12px}.student-agenda-row time span{margin-top:1px;color:var(--ios-secondary);font-size:8px}.student-agenda-row>div{min-width:0}.student-agenda-row>div strong,.student-agenda-row>div small{display:block}.student-agenda-row>div strong{overflow:hidden;color:var(--ios-text);font-size:11px;font-weight:650;white-space:nowrap;text-overflow:ellipsis}.student-agenda-row>div small{margin-top:2px;overflow:hidden;color:var(--ios-secondary);font-size:9px;white-space:nowrap;text-overflow:ellipsis}.student-agenda-date-label{padding:10px 3px 4px;color:var(--ios-secondary);font-size:9px;font-weight:650;text-transform:uppercase;letter-spacing:.035em}.student-agenda-empty{padding:15px 10px;border-radius:10px;background:var(--ios-surface);color:var(--ios-secondary);font-size:11px;text-align:center}
.student-calendar-head{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;padding:3px 2px 7px}.student-calendar-head strong{color:var(--ios-text);font-size:16px}.student-calendar-head small{max-width:210px;color:var(--ios-secondary);font-size:8px;text-align:right}.student-calendar-weekdays,.student-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.student-calendar-weekdays{padding:0 2px 4px}.student-calendar-weekdays span{color:var(--ios-secondary);font-size:8px;font-weight:650;text-align:center}.student-calendar-grid{padding:4px;border-radius:10px;background:var(--ios-surface)}.student-calendar-day{position:relative;min-width:0;height:42px;display:flex;align-items:center;justify-content:center;border:0;border-radius:9px;background:transparent;color:var(--ios-text);font-size:11px;font-weight:600}.student-calendar-day:disabled{opacity:.55}.student-calendar-day.has-event{cursor:pointer}.student-calendar-day.has-event:active{background:var(--ios-fill);transform:scale(.94)}.student-calendar-day.is-today span{width:27px;height:27px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ios-blue);color:#fff}.student-calendar-day i{position:absolute;bottom:4px;left:50%;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--ios-blue)}.student-calendar-day.is-today i{background:#fff}.student-calendar-day.is-selected:not(.is-today){background:var(--ios-fill)}.student-calendar-day.empty{display:block}.student-calendar-detail{margin-top:7px}.student-calendar-date-panel{display:none}.student-calendar-date-panel.is-active{display:block}.student-calendar-date-panel .student-agenda-list{border-radius:10px}
.student-bottom-nav{grid-template-columns:repeat(4,1fr)!important}
@media(max-width:380px){.student-agenda-next{grid-template-columns:44px minmax(0,1fr)}.student-agenda-next-date{width:44px;height:44px}.student-agenda-next>.student-agenda-status{grid-column:2;justify-self:start}.student-calendar-head{align-items:flex-start;flex-direction:column}.student-calendar-head small{max-width:none;text-align:left}.student-agenda-row{grid-template-columns:43px minmax(0,1fr) auto;padding-left:7px;padding-right:7px}.student-agenda-status{padding-left:5px;padding-right:5px;font-size:7.5px}}

/* Dashboard e evolução do aluno */
.student-dashboard-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding:8px 3px 10px}.student-dashboard-hero small{display:block;color:var(--ios-secondary);font-size:9px;font-weight:550}.student-dashboard-hero h1{margin:1px 0 0;color:var(--ios-text);font-size:28px;line-height:1.02;font-weight:760;letter-spacing:-.04em}.student-dashboard-hero p{margin:4px 0 0;color:var(--ios-secondary);font-size:11px}.student-dashboard-weight{display:flex;align-items:baseline;gap:3px;flex:0 0 auto;padding:5px 2px;color:var(--ios-text)}.student-dashboard-weight b{font-size:23px;line-height:1;font-weight:730;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.student-dashboard-weight small{font-size:9px;color:var(--ios-secondary)}
.student-dashboard-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:6px}.student-dashboard-tile{position:relative;min-width:0;min-height:92px;padding:10px;border:0;border-radius:11px;background:var(--ios-surface);color:var(--ios-text);text-align:left;overflow:hidden}.student-dashboard-tile.accent{background:var(--ios-blue);color:#fff}.student-dashboard-tile:active{transform:scale(.985)}.student-dashboard-tile-icon{width:25px;height:25px;display:flex;align-items:center;justify-content:center;margin-bottom:8px;border-radius:8px;background:var(--ios-fill);color:var(--ios-blue);font-size:10px}.student-dashboard-tile.accent .student-dashboard-tile-icon{background:rgba(255,255,255,.18);color:#fff}.student-dashboard-tile small,.student-dashboard-tile strong,.student-dashboard-tile em{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-dashboard-tile small{font-size:8px;font-weight:600;color:var(--ios-secondary)}.student-dashboard-tile.accent small{color:rgba(255,255,255,.72)}.student-dashboard-tile strong{margin-top:3px;font-size:13px;font-weight:700}.student-dashboard-tile em{margin-top:2px;color:var(--ios-secondary);font-size:9px;font-style:normal}.student-dashboard-tile.accent em{color:rgba(255,255,255,.78)}
.student-dashboard-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:6px;overflow:hidden;border-radius:10px;background:var(--ios-surface)}.student-dashboard-stats>div{min-width:0;padding:9px 8px;border-right:.5px solid var(--ios-separator)}.student-dashboard-stats>div:last-child{border-right:0}.student-dashboard-stats small,.student-dashboard-stats strong{display:block}.student-dashboard-stats small{min-height:21px;color:var(--ios-secondary);font-size:7.5px;line-height:1.25}.student-dashboard-stats strong{margin-top:3px;color:var(--ios-text);font-size:14px;font-weight:720;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.student-dashboard-section{margin-top:6px;padding:10px 10px 9px;border:0;border-radius:10px;background:var(--ios-surface)}.student-dashboard-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.student-dashboard-section-head small{display:block;color:var(--ios-secondary);font-size:8px}.student-dashboard-section-head h2{margin:1px 0 0;color:var(--ios-text);font-size:14px;font-weight:700;letter-spacing:-.015em}.student-dashboard-section-head button{min-height:24px;padding:2px 0;border:0;background:transparent;color:var(--ios-blue);font-size:9px;font-weight:650}.student-dashboard-empty{padding:18px 7px;color:var(--ios-secondary);font-size:10px;line-height:1.4;text-align:center}
.student-activity-chart{height:112px;display:grid;grid-template-columns:repeat(6,1fr);align-items:end;gap:6px;padding:14px 2px 1px}.student-activity-bar{height:100%;display:flex;align-items:center;justify-content:flex-end;flex-direction:column;gap:4px}.student-activity-bar>span{position:relative;width:min(24px,64%);min-height:5px;border-radius:5px 5px 2px 2px;background:var(--ios-blue);transition:height .22s ease-out}.student-activity-bar b{position:absolute;left:50%;top:-13px;transform:translateX(-50%);color:var(--ios-secondary);font-size:7px;font-weight:650}.student-activity-bar small{color:var(--ios-secondary);font-size:7px;font-variant-numeric:tabular-nums}
.student-evolution-panel{margin-bottom:7px;padding:10px;border:0;border-radius:10px;background:var(--ios-surface)}.student-evolution-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.student-evolution-toolbar>div:first-child small,.student-evolution-toolbar>div:first-child strong{display:block}.student-evolution-toolbar>div:first-child small{color:var(--ios-secondary);font-size:8px}.student-evolution-toolbar>div:first-child strong{margin-top:1px;color:var(--ios-text);font-size:16px;font-weight:720}.student-evolution-summary{text-align:right}.student-evolution-summary span,.student-evolution-summary small{display:block}.student-evolution-summary span{color:var(--ios-text);font-size:15px;font-weight:720;font-variant-numeric:tabular-nums}.student-evolution-summary small{margin-top:2px;color:var(--ios-secondary);font-size:7.5px}
.student-metric-tabs{display:flex;gap:4px;margin:9px -2px 4px;padding:0 2px 3px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.student-metric-tabs::-webkit-scrollbar{display:none}.student-metric-tabs button{flex:0 0 auto;min-height:28px;padding:4px 9px;border:0;border-radius:8px;background:var(--ios-fill);color:var(--ios-secondary);font-size:9px;font-weight:620;white-space:nowrap}.student-metric-tabs button.is-active{background:var(--ios-blue);color:#fff}.student-metric-tabs button:active{transform:scale(.96)}
.student-evolution-chart{width:100%;min-height:164px;margin-top:4px;color:var(--ios-text)}.student-evolution-chart.compact{min-height:98px;margin-top:2px}.student-evolution-chart svg{display:block;width:100%;height:auto;overflow:visible}.student-chart-grid-line{stroke:var(--ios-separator);stroke-width:.7}.student-chart-area{fill:rgba(0,122,255,.08)}.student-chart-line{fill:none;stroke:var(--ios-blue);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.student-chart-dot{fill:var(--ios-surface);stroke:var(--ios-blue);stroke-width:2;vector-effect:non-scaling-stroke}.student-chart-point-value{fill:var(--ios-text);font-family:var(--ios-font);font-size:7px;font-weight:650}.student-chart-date{fill:var(--ios-secondary);font-family:var(--ios-font);font-size:6.5px}.student-chart-empty{padding:18px 6px;color:var(--ios-secondary);font-size:9px;text-align:center}.student-evolution-range{display:flex;align-items:center;justify-content:space-between;margin-top:-2px;color:var(--ios-secondary);font-size:7px}
.student-bottom-nav{grid-template-columns:repeat(5,1fr)!important;max-width:560px}.student-bottom-link{font-size:8px}.student-bottom-link .app-nav-icon{width:20px;height:20px}.student-bottom-link .app-nav-icon svg{width:17px;height:17px}
@media(max-width:420px){.student-dashboard-hero h1{font-size:26px}.student-dashboard-grid{grid-template-columns:1fr 1fr}.student-dashboard-tile{min-height:87px;padding:9px}.student-dashboard-stats{grid-template-columns:repeat(2,1fr)}.student-dashboard-stats>div{border-bottom:.5px solid var(--ios-separator)}.student-dashboard-stats>div:nth-child(2){border-right:0}.student-dashboard-stats>div:nth-child(3),.student-dashboard-stats>div:nth-child(4){border-bottom:0}.student-dashboard-stats small{min-height:0}.student-activity-chart{height:104px;gap:4px}.student-evolution-panel,.student-dashboard-section{padding-left:9px;padding-right:9px}.student-bottom-link{font-size:7.5px}.student-bottom-link .app-nav-icon{width:19px;height:19px}}
@media(max-width:340px){.student-dashboard-grid{grid-template-columns:1fr}.student-dashboard-tile{min-height:76px}.student-bottom-link span:last-child{font-size:7px}.student-bottom-link .app-nav-icon svg{width:16px;height:16px}}
html[data-fg-student-theme="dark"] .student-chart-area{fill:rgba(10,132,255,.14)}
html[data-fg-student-theme="invert"] .student-chart-area{fill:rgba(255,133,0,.13)}
html[data-fg-student-theme="contrast"] .student-chart-area{fill:transparent}html[data-fg-student-theme="contrast"] .student-chart-line,html[data-fg-student-theme="contrast"] .student-chart-dot{stroke:#fff}html[data-fg-student-theme="contrast"] .student-activity-bar>span{background:#fff}

body.student-app{font-size:15px}
.student-workout-title h2{font-size:22px;line-height:1.12;font-weight:760}
.student-workout-title p{margin-top:5px;font-size:13px;line-height:1.4}
.student-progress{padding:9px 12px 11px}
.student-progress-row{font-size:12px}.student-progress-row strong{font-size:13px}
.student-progress-track{height:6px;margin-top:8px}
.student-session-clock{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin:0;padding:13px 12px;background:var(--ios-fill);border-bottom:.5px solid var(--ios-separator)}
.student-session-clock-info{min-width:0}.student-control-kicker{display:block;color:var(--ios-secondary);font-size:11px;font-weight:650}.student-session-clock-info strong{display:block;margin-top:1px;color:var(--ios-text);font-size:31px;line-height:1.05;font-weight:760;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.student-session-clock-info small{display:block;margin-top:4px;color:var(--ios-secondary);font-size:11px;font-weight:600}
.student-session-clock-actions{display:grid;grid-template-columns:repeat(3,minmax(66px,1fr));gap:6px}.student-control-button{min-height:44px;padding:6px 9px;border:0;border-radius:10px;background:var(--ios-surface);color:var(--ios-text);display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:700;box-shadow:0 1px 0 rgba(0,0,0,.04)}.student-control-button.is-primary{background:var(--ios-blue);color:#fff}.student-control-button.is-quiet{color:var(--ios-secondary)}.student-control-button:disabled{opacity:.38}.student-control-button:not(:disabled):active{transform:scale(.96)}.student-control-icon{font-size:13px;line-height:1}
.student-exercise-card{padding:14px 12px 12px}
.student-exercise-index{font-size:11px;letter-spacing:.025em}
.student-exercise-top h3{margin-top:4px;font-size:27px;line-height:1.08;font-weight:770}
.student-exercise-meta{margin-top:6px;font-size:13px;line-height:1.35}
.student-done-btn{width:38px;height:38px;flex-basis:38px;font-size:18px}
.student-prescription{margin:14px 0 11px}
.student-prescription div{padding:10px 5px}
.student-prescription b{font-size:10.5px;font-weight:650}
.student-prescription span{margin-top:4px;font-size:15px;font-weight:760}
.student-note{margin-top:10px;font-size:13px;line-height:1.5}
.student-video-wrap{margin-top:12px}
.student-app .video-details summary{min-height:45px!important;padding:9px 11px!important;font-size:13px!important}
.student-exec-panel{margin-top:14px;padding-top:0;border-top:0}
.student-control-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0 9px;border-top:.5px solid var(--ios-separator)}.student-control-heading>div>span{display:block;color:var(--ios-secondary);font-size:11px;font-weight:650}.student-control-heading>div>strong{display:block;margin-top:2px;color:var(--ios-text);font-size:16px;font-weight:750}.student-exercise-state{flex:0 0 auto;padding:5px 8px;border-radius:999px;background:var(--ios-fill);color:var(--ios-secondary);font-size:11px;font-weight:700}.student-exercise-state.is-done{background:rgba(52,199,89,.14);color:var(--ios-green)}
.student-exec-box,.student-exec-box.full{padding:13px 0}
.student-exec-label{font-size:12px;font-weight:680;color:var(--ios-secondary)}
.student-set-row{grid-template-columns:48px 1fr 48px;gap:10px;margin-top:9px}.student-set-btn{height:46px;border-radius:11px;font-size:26px;font-weight:520}.student-set-count{display:flex;align-items:baseline;justify-content:center;gap:6px}.student-set-count strong{font-size:36px;line-height:1;font-weight:780;font-variant-numeric:tabular-nums}.student-set-count span{color:var(--ios-secondary);font-size:14px;font-weight:650}
.student-complete-set{width:100%;min-height:48px;margin-top:10px;border:0;border-radius:11px;background:var(--ios-blue);color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;font-size:15px}.student-complete-set span{font-size:17px}.student-complete-set strong{font-weight:760}.student-complete-set:active{transform:scale(.98)}.student-complete-set.is-action-success{background:var(--ios-green)}
.student-rest-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.student-rest-head small{display:block;margin-top:3px;color:var(--ios-secondary);font-size:11px}.student-rest-status{padding:4px 7px;border-radius:999px;background:var(--ios-fill);color:var(--ios-secondary);font-size:10px;font-weight:700}.student-rest-status.is-running{background:rgba(0,122,255,.12);color:var(--ios-blue)}.student-rest-status.is-finished{background:rgba(52,199,89,.14);color:var(--ios-green)}
.student-rest-time{margin-top:8px;font-size:50px;line-height:1;font-weight:760;letter-spacing:-.045em}.student-rest-time.is-paused{color:var(--ios-secondary)!important}
.student-rest-progress{height:6px;margin-top:10px;border-radius:999px;background:var(--ios-fill);overflow:hidden}.student-rest-progress span{display:block;height:100%;border-radius:inherit;background:var(--ios-blue);transition:width .25s linear}.student-rest-time.is-finished+.student-rest-progress span{background:var(--ios-green)}
.student-rest-actions{grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.student-rest-actions button{min-height:46px;height:auto;padding:7px 8px;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:6px;background:var(--ios-fill);color:var(--ios-text);font-size:13px}.student-rest-actions button span{font-size:13px}.student-rest-actions button strong{font-weight:720}.student-rest-actions button.is-primary{background:var(--ios-blue);color:#fff}.student-rest-actions button.is-quiet{color:var(--ios-secondary)}.student-rest-actions button:disabled{opacity:.36}.student-rest-actions button:not(:disabled):active{transform:scale(.97)}
.student-inline-fields{gap:9px;margin-top:9px}.student-app .input{min-height:46px!important;padding:9px 10px!important;border-radius:10px!important;font-size:16px!important}.student-app .label{margin-bottom:5px!important;font-size:11.5px!important;font-weight:650!important}.student-app .field-error{font-size:11px}
.student-exercise-nav{height:58px;gap:9px;padding:7px 10px}.student-exercise-nav button{height:44px;border-radius:10px;font-size:14px;font-weight:700}.student-exercise-nav span{min-width:64px;font-size:12px;font-weight:700}
.student-checkin{padding:13px 12px}.student-checkin-grid{gap:10px}.student-checkin .btn{min-height:50px;font-size:15px}
.student-app .badge{font-size:11px!important}
.student-app .student-feedback{font-size:12px;padding:10px 13px}

.desktop-app.page-treino-view .desktop-main,.desktop-app.page-treino-form .desktop-main,.desktop-app.page-acompanhamento-view .desktop-main,.desktop-app.page-aluno-view .desktop-main{font-size:14px}
.desktop-app.page-treino-view .page-heading h2,.desktop-app.page-treino-form .page-heading h2,.desktop-app.page-acompanhamento-view .page-heading h2,.desktop-app.page-aluno-view .page-heading h2{font-size:23px;font-weight:720}
.desktop-app.page-treino-view .page-heading p,.desktop-app.page-treino-form .page-heading p,.desktop-app.page-acompanhamento-view .page-heading p,.desktop-app.page-aluno-view .page-heading p{font-size:13px}
.desktop-app.page-treino-view .card,.desktop-app.page-treino-form .card,.desktop-app.page-acompanhamento-view .card,.desktop-app.page-aluno-view .card{font-size:13px}
.desktop-app.page-treino-view .card h2,.desktop-app.page-treino-view .card h3,.desktop-app.page-treino-form .card h2,.desktop-app.page-acompanhamento-view .card h2,.desktop-app.page-aluno-view .card h2{font-size:17px!important;line-height:1.25}
.desktop-app.page-treino-view .table th,.desktop-app.page-acompanhamento-view .table th,.desktop-app.page-aluno-view .table th{font-size:11px!important}.desktop-app.page-treino-view .table td,.desktop-app.page-acompanhamento-view .table td,.desktop-app.page-aluno-view .table td{font-size:13px!important;padding-top:9px!important;padding-bottom:9px!important}
.desktop-app.page-treino-view .btn,.desktop-app.page-treino-form .btn,.desktop-app.page-acompanhamento-view .btn,.desktop-app.page-aluno-view .btn{min-height:36px;font-size:12.5px}
.desktop-app.page-treino-view .label,.desktop-app.page-treino-form .label,.desktop-app.page-acompanhamento-view .label,.desktop-app.page-aluno-view .label{font-size:11px!important}
.desktop-app.page-treino-view .input,.desktop-app.page-treino-form .input,.desktop-app.page-acompanhamento-view .input{min-height:36px;font-size:13px}
.personal-workout-list{display:grid;border-top:1px solid var(--fg-border)}.personal-workout-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px 2px;border-bottom:1px solid var(--fg-border);color:var(--fg-text);text-decoration:none;transition:background .12s ease}.personal-workout-row:hover{background:var(--fg-accent-soft)}.personal-workout-main{min-width:0}.personal-workout-heading{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.personal-workout-heading>strong{font-size:15px;font-weight:720}.personal-workout-main>p{margin:4px 0 0;color:var(--fg-muted);font-size:12.5px}.personal-workout-metrics{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:8px;color:var(--fg-muted);font-size:11px}.personal-workout-metrics b{color:var(--fg-text);font-weight:700}.personal-workout-open{display:flex;align-items:center;gap:7px;color:var(--fg-accent);font-size:12px;font-weight:700}.personal-workout-open b{font-size:22px;line-height:1;font-weight:400}

@media(max-width:560px){
  .student-session-clock{grid-template-columns:1fr;gap:10px;padding:12px 10px}.student-session-clock-info{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:8px}.student-session-clock-info .student-control-kicker{grid-column:1}.student-session-clock-info strong{grid-column:2;grid-row:1/3;font-size:27px}.student-session-clock-info small{grid-column:1;font-size:11px}.student-session-clock-actions{grid-template-columns:repeat(3,1fr)}
  .student-exercise-card{padding:13px 10px}.student-exercise-top h3{font-size:25px}.student-exercise-meta{font-size:12.5px}.student-prescription b{font-size:10px}.student-prescription span{font-size:14px}.student-rest-time{font-size:46px}.student-inline-fields{grid-template-columns:1fr 1fr}.student-exercise-nav{padding-left:8px;padding-right:8px}.student-exercise-nav button{font-size:13px}.student-checkin-grid{grid-template-columns:1fr}.student-checkin-comment{grid-column:auto}
  .personal-workout-row{grid-template-columns:1fr;gap:8px}.personal-workout-open{justify-content:flex-end}
}
@media(max-width:380px){
  .student-prescription{grid-template-columns:repeat(2,minmax(0,1fr))}.student-prescription div:nth-child(2){border-right:0}.student-prescription div:nth-child(-n+2){border-bottom:.5px solid var(--ios-separator)}.student-session-clock-actions{gap:5px}.student-control-button{padding-left:5px;padding-right:5px;font-size:11.5px}.student-rest-actions{gap:5px}.student-rest-actions button{padding-left:4px;padding-right:4px;font-size:12px}.student-inline-fields{grid-template-columns:1fr}.student-exercise-top h3{font-size:23px}.student-rest-time{font-size:42px}
}

.student-brand-copy small{font-size:10.5px}.student-brand-copy strong{font-size:13.5px}.student-personal-chip{font-size:11px}.student-hello small{font-size:10.5px}.student-hello h1{font-size:24px}.student-hello p{font-size:13px}.student-message{font-size:13px}
.student-section-title small{font-size:11px}.student-list-item strong{font-size:14px}.student-list-item time,.student-list-item small{font-size:10.5px}.student-list-metrics b{font-size:10px}.student-list-metrics span{font-size:13px}
.student-dashboard-hero small{font-size:10.5px}.student-dashboard-hero p{font-size:12.5px}.student-dashboard-weight small{font-size:10.5px}.student-dashboard-tile small{font-size:10px}.student-dashboard-tile strong{font-size:15px}.student-dashboard-tile em{font-size:11px}.student-dashboard-stats small{font-size:10px;min-height:0}.student-dashboard-stats strong{font-size:16px}.student-dashboard-section-head small{font-size:10px}.student-dashboard-section-head h2{font-size:16px}.student-dashboard-section-head button{font-size:11px}.student-dashboard-empty{font-size:12px}
.student-activity-bar b{font-size:9px}.student-activity-bar small{font-size:9px}.student-evolution-toolbar>div:first-child small{font-size:10px}.student-evolution-summary small{font-size:9.5px}.student-metric-tabs button{min-height:32px;font-size:10.5px}.student-chart-point-value{font-size:8.5px}.student-chart-date{font-size:8px}.student-chart-empty{font-size:11px}.student-evolution-range{font-size:9px}
.student-agenda-row time strong{font-size:13px}.student-agenda-row time span{font-size:10px}.student-agenda-row>div strong{font-size:12.5px}.student-agenda-row>div small{font-size:10.5px}.student-agenda-date-label{font-size:10.5px}.student-agenda-empty{font-size:12px}.student-calendar-head small{font-size:10px}.student-calendar-weekdays span{font-size:10px}.student-calendar-day{font-size:12.5px}.student-agenda-status{font-size:9.5px!important}
.student-bottom-link{font-size:10px!important;font-weight:620}.student-bottom-link .app-nav-icon{width:22px;height:22px}.student-bottom-link .app-nav-icon svg{width:19px;height:19px}
@media(max-width:420px){.student-bottom-link{font-size:9.5px!important}.student-dashboard-tile small{font-size:9.5px}.student-dashboard-tile em{font-size:10.5px}.student-dashboard-stats small{font-size:9.5px}.student-calendar-weekdays span{font-size:9.5px}}
@media(max-width:340px){.student-bottom-link span:last-child{font-size:9px!important}}

.desktop-app.page-treino-view .text-xs,.desktop-app.page-treino-form .text-xs,.desktop-app.page-acompanhamento-view .text-xs{font-size:12px!important;line-height:1.4}.desktop-app.page-treino-view .text-sm,.desktop-app.page-treino-form .text-sm,.desktop-app.page-acompanhamento-view .text-sm{font-size:14px!important;line-height:1.45}.desktop-app.page-treino-view .text-slate-500,.desktop-app.page-treino-form .text-slate-500,.desktop-app.page-acompanhamento-view .text-slate-500{color:var(--fg-muted)!important}.desktop-app.page-treino-view .space-y-2>*+*,.desktop-app.page-treino-view .space-y-3>*+*{margin-top:8px!important}.desktop-app.page-treino-view .rounded-lg,.desktop-app.page-treino-form .rounded-lg{border-radius:4px!important}.desktop-app.page-treino-view .p-4,.desktop-app.page-treino-form .p-4{padding:12px!important}

.desktop-sidebar-head strong{font-size:13px}.desktop-sidebar-head span{font-size:11px}.desktop-nav-label{font-size:11px}.app-nav-link{font-size:13px}.desktop-plan-info{font-size:12px}.desktop-command-kicker{font-size:10px}.desktop-command-title h1{font-size:17px}.desktop-statusbar{font-size:11px}.desktop-main{font-size:14px}.desktop-main .btn{font-size:13px}.desktop-main .label{font-size:11px!important}.desktop-main .table th{font-size:11px!important}.desktop-main .table td{font-size:13px!important}.desktop-main .page-heading h2{font-size:20px}.desktop-main .page-heading p{font-size:13px}.desktop-main .stat-card-label{font-size:11px}

/* Identidade visual administrável */
.desktop-app-icon{overflow:hidden}.desktop-app-icon-image{display:block;width:100%;height:100%;object-fit:cover}.public-brand-mark{overflow:hidden}.public-brand-mark img{display:block;width:100%;height:100%;object-fit:cover}.student-brand{gap:8px}.student-brand-icon{width:30px;height:30px;border-radius:7px;object-fit:cover;flex:0 0 auto}
.branding-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:1100px}.branding-admin-card{padding:14px}.branding-admin-share{grid-column:1/-1}.branding-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.branding-admin-head h3{margin:0;color:var(--fg-text);font-size:16px;font-weight:700}.branding-admin-head p{margin:3px 0 0;color:var(--fg-muted);font-size:12px;line-height:1.45}.branding-preview{display:flex;align-items:center;justify-content:center;background:var(--fg-panel-2);border:1px solid var(--fg-border);overflow:hidden;margin-bottom:9px}.branding-preview-square{width:116px;height:116px}.branding-preview-favicon{width:82px;height:82px}.branding-preview-square img,.branding-preview-favicon img{width:100%;height:100%;object-fit:cover}.branding-preview-share{width:min(100%,560px);aspect-ratio:1200/630}.branding-preview-share img{width:100%;height:100%;object-fit:cover}.branding-help{color:var(--fg-muted);font-size:11px;line-height:1.45;margin:0 0 10px}.branding-upload-form{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:7px}.branding-upload-form .form-control{flex:1 1 260px}.branding-admin-note{max-width:1100px;margin-top:10px;padding:12px 14px}.branding-admin-note strong{display:block;font-size:13px;margin-bottom:3px}.branding-admin-note p{margin:0;color:var(--fg-muted);font-size:11px;line-height:1.5}
@media(max-width:760px){.branding-admin-grid{grid-template-columns:1fr}.branding-admin-share{grid-column:auto}.branding-admin-card{padding:11px}.branding-upload-form{display:block}.branding-upload-form .form-control{width:100%;margin-bottom:7px}.branding-preview-share{width:100%}}

/* Avaliação corporal interativa */
.body-assessment-card{padding:14px}.body-assessment-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.body-assessment-kicker{margin:0 0 2px;color:var(--fg-muted);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.12em}.body-assessment-head h3{margin:0;color:var(--fg-text);font-size:18px;font-weight:760}.body-assessment-head p:not(.body-assessment-kicker){margin:4px 0 0;color:var(--fg-muted);font-size:12px;line-height:1.45}.body-assessment-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:14px;align-items:start}.body-assessment-map{min-width:0}
.bodymap{--bm-accent:var(--fg-accent,#0067c0);--bm-line:rgba(0,103,192,.42);--bm-active:#22c55e;min-width:0}.bodymap-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.bodymap-segment{display:inline-flex;align-items:center;padding:2px;background:var(--fg-panel-2);border:1px solid var(--fg-border);border-radius:6px}.bodymap-segment button{height:30px;padding:0 10px;border:0;border-radius:4px;background:transparent;color:var(--fg-muted);font-size:11px;font-weight:700}.bodymap-segment button.is-active{background:var(--fg-surface);color:var(--fg-text);box-shadow:0 1px 2px rgba(15,23,42,.08)}
.bodymap-canvas-wrap{display:grid;grid-template-columns:minmax(240px,1fr) minmax(155px,.48fr);gap:10px;align-items:start}.bodymap-canvas{position:relative;min-height:460px;background:linear-gradient(180deg,var(--fg-panel-2),transparent);overflow:hidden;border-radius:5px}.bodymap-canvas>img{position:absolute;inset:7px 0 4px;width:100%;height:calc(100% - 11px);object-fit:contain;object-position:center;user-select:none;pointer-events:none}.bodymap-overlay{position:absolute;inset:0;display:none}.bodymap-overlay.is-active{display:block}.bodymap-marker{position:absolute;left:var(--bm-x);top:var(--bm-y);transform:translate(-50%,-50%);z-index:4;border:0;background:transparent;padding:0;opacity:.52;transition:opacity .12s ease,filter .12s ease}.bodymap-marker:disabled{opacity:.09;pointer-events:none}.bodymap-marker-line{width:max(26px,var(--bm-w));height:20px}.bodymap-marker-line span{position:absolute;left:0;right:0;top:9px;height:2px;background:var(--bm-line);border-radius:1px}.bodymap-marker-line i{position:absolute;left:50%;top:6px;width:8px;height:8px;border-radius:50%;background:var(--fg-surface);border:2px solid var(--bm-accent);transform:translateX(-50%)}.bodymap-marker-point{width:24px;height:24px}.bodymap-marker-point span{position:absolute;left:5px;top:5px;width:14px;height:14px;border-radius:50%;background:rgba(0,103,192,.12);border:2px solid var(--bm-accent)}.bodymap-marker:hover,.bodymap-marker.is-active{opacity:1;filter:drop-shadow(0 0 4px rgba(34,197,94,.35))}.bodymap-marker.is-active span{background:var(--bm-active)!important}.bodymap-marker-line.is-active span{height:3px}.bodymap-marker.is-active i{border-color:var(--bm-active);background:var(--fg-surface)}
.bodymap-legend{display:grid;gap:3px;max-height:460px;overflow:auto;padding-right:2px}.bodymap-legend-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 8px;min-height:34px;padding:6px 7px;border:0;border-left:2px solid transparent;background:transparent;color:var(--fg-text);text-align:left}.bodymap-legend-item:hover{background:var(--fg-panel-2)}.bodymap-legend-item.is-active{background:var(--fg-accent-soft);border-left-color:var(--bm-accent)}.bodymap-legend-item span{min-width:0;font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bodymap-legend-item strong{font-size:11px;font-weight:760}.bodymap-legend-item em{grid-column:2;color:var(--fg-muted);font-size:9.5px;font-style:normal;font-weight:700}
.body-guide{padding:12px;background:var(--fg-panel-2);border-left:1px solid var(--fg-border);min-height:460px}.body-guide-step{display:inline-flex;margin-bottom:12px;padding:3px 7px;background:var(--fg-accent-soft);color:var(--fg-accent);font-size:10px;font-weight:750;border-radius:4px}.body-guide>small{display:block;color:var(--fg-muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.body-guide h4{margin:2px 0 10px;color:var(--fg-text);font-size:23px;line-height:1.05;font-weight:780}.body-guide-numbers{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.body-guide-numbers>div{padding:8px;background:var(--fg-surface);border:1px solid var(--fg-border);border-radius:4px}.body-guide-numbers span{display:block;color:var(--fg-muted);font-size:9.5px;font-weight:700}.body-guide-numbers strong{display:block;margin-top:2px;color:var(--fg-text);font-size:15px;font-weight:780}.body-guide>p{margin:0;padding:9px 0;border-top:1px solid var(--fg-border);color:var(--fg-muted);font-size:11px;line-height:1.5}.body-guide-chart{height:135px;margin-top:7px}.body-guide-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:9px}.assessment-measure-fields{padding:11px;background:var(--fg-panel-2);border:1px solid var(--fg-border);border-radius:4px}.assessment-measure-fields-head{display:flex;align-items:flex-start;justify-content:space-between;gap:9px;margin-bottom:10px}.assessment-measure-fields-head strong{display:block;font-size:13px}.assessment-measure-fields-head div span{display:block;margin-top:2px;color:var(--fg-muted);font-size:10.5px}.assessment-measure-fields-head>span{color:var(--fg-muted);font-size:10px;font-weight:700}.assessment-measure-field{padding:5px;border-left:2px solid transparent}.assessment-measure-field.is-active{background:var(--fg-accent-soft);border-left-color:var(--fg-accent)}.assessment-measure-field .label span{color:var(--fg-muted);font-weight:600}

/* Comparação de avaliações */
.comparison-toolbar{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr) auto;gap:10px;align-items:end;padding:12px;margin-bottom:12px}.comparison-toolbar>span{align-self:center;color:var(--fg-muted);font-size:11px;font-weight:700}.comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.comparison-body-card{padding:12px}.comparison-body-card .bodymap-canvas-wrap{grid-template-columns:1fr}.comparison-body-card .bodymap-legend{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.comparison-body-card .bodymap-canvas{min-height:410px}.comparison-date{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.comparison-date small{color:var(--fg-muted);font-size:10px;font-weight:700;text-transform:uppercase}.comparison-date strong{font-size:14px}.comparison-results{margin-top:12px;padding:12px}.comparison-results-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:8px}.comparison-results-head small{display:block;color:var(--fg-muted);font-size:10px;text-transform:uppercase;font-weight:700}.comparison-results-head h2{margin:2px 0 0;font-size:17px}.comparison-results-head>span{color:var(--fg-muted);font-size:11px}.comparison-metric-table{display:grid}.comparison-metric-table>div{display:grid;grid-template-columns:minmax(130px,1fr) 90px 24px 90px 90px;align-items:center;gap:8px;min-height:38px;border-top:1px solid var(--fg-border);font-size:12px}.comparison-metric-table strong{font-weight:700}.comparison-metric-table span,.comparison-metric-table em{text-align:right;font-variant-numeric:tabular-nums}.comparison-metric-table i{color:var(--fg-muted);text-align:center;font-style:normal}.comparison-metric-table em{color:var(--fg-accent);font-style:normal;font-weight:750}

/* Mapa corporal do aluno */
.student-body-evolution{margin:0 0 10px;padding:10px;background:var(--ios-surface);border-bottom:.5px solid var(--ios-separator)}.student-body-evolution .student-dashboard-section-head>span{color:var(--ios-secondary);font-size:10px;font-weight:650}.student-body-evolution .bodymap{--bm-accent:var(--ios-blue);--bm-line:rgba(10,132,255,.42);--bm-active:var(--ios-green)}.student-body-evolution .bodymap-toolbar{justify-content:center;margin-bottom:4px}.student-body-evolution .bodymap-segment{background:var(--ios-fill);border:0;border-radius:7px}.student-body-evolution .bodymap-segment button{height:29px;color:var(--ios-secondary);font-size:10.5px}.student-body-evolution .bodymap-segment button.is-active{background:var(--ios-surface);color:var(--ios-text);box-shadow:0 1px 3px rgba(0,0,0,.08)}.student-body-evolution .bodymap-canvas-wrap{display:block}.student-body-evolution .bodymap-canvas{min-height:365px;background:transparent;border-radius:0}.student-body-evolution .bodymap-legend{display:none}.student-body-evolution .bodymap-marker{opacity:.4}.student-body-evolution .bodymap-marker.is-active{opacity:1}.student-body-evolution .bodymap-marker-line span{background:rgba(10,132,255,.48)}.student-body-evolution .bodymap-marker.is-active span{background:var(--ios-green)!important}
html[data-fg-student-theme="dark"] .student-body-evolution .bodymap-segment button.is-active{background:#262629}.student-body-evolution+.student-evolution-panel{margin-top:0}

@media(max-width:1100px){.body-assessment-layout{grid-template-columns:1fr}.body-guide{min-height:auto;border-left:0;border-top:1px solid var(--fg-border)}.body-guide-chart{height:150px}.bodymap-canvas-wrap{grid-template-columns:minmax(230px,1fr) minmax(150px,.55fr)}}
@media(max-width:760px){.body-assessment-card{padding:10px}.body-assessment-head{display:block}.body-assessment-head .btn{margin-top:8px}.bodymap-canvas-wrap{display:block}.bodymap-canvas{min-height:410px}.bodymap-legend{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;margin-top:6px}.body-assessment-layout{gap:8px}.body-guide{padding:10px}.comparison-toolbar{grid-template-columns:1fr}.comparison-toolbar>span{display:none}.comparison-grid{grid-template-columns:1fr}.comparison-metric-table>div{grid-template-columns:minmax(95px,1fr) 70px 16px 70px 70px;font-size:11px}.comparison-body-card .bodymap-canvas{min-height:370px}}
@media(max-width:520px){.bodymap-toolbar{display:grid;gap:5px}.bodymap-segment{width:100%;display:grid;grid-auto-flow:column;grid-auto-columns:1fr}.bodymap-segment button{padding:0 4px}.bodymap-canvas{min-height:360px}.bodymap-legend{grid-template-columns:1fr 1fr}.bodymap-legend-item{padding:5px}.assessment-measure-fields .grid{grid-template-columns:1fr 1fr}.student-body-evolution .bodymap-canvas{min-height:330px}.comparison-metric-table{overflow-x:auto}.comparison-metric-table>div{min-width:470px}}
.student-home-evolution-wrap{display:grid;grid-template-columns:82px minmax(0,1fr);gap:8px;align-items:stretch}.student-home-avatar{min-height:108px;border:0;background:var(--ios-fill);padding:3px;border-radius:7px;overflow:hidden}.student-home-avatar img{width:100%;height:105px;object-fit:contain;display:block}.student-home-avatar:active{transform:scale(.97)}
@media(max-width:360px){.student-home-evolution-wrap{grid-template-columns:70px minmax(0,1fr)}.student-home-avatar img{height:96px}.student-home-avatar{min-height:98px}}
.profile-body-summary{padding:12px}.profile-body-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.profile-body-summary-head small{display:block;color:var(--fg-muted);font-size:10px;font-weight:700;text-transform:uppercase}.profile-body-summary-head h2{margin:1px 0 0;font-size:17px!important}.profile-body-summary-head p{margin:3px 0 0;color:var(--fg-muted);font-size:11px}.profile-body-summary .bodymap-canvas-wrap{grid-template-columns:minmax(220px,.75fr) minmax(170px,1fr)}.profile-body-summary .bodymap-canvas{min-height:330px}.profile-body-summary .bodymap-legend{grid-template-columns:1fr;max-height:330px}.profile-body-summary .bodymap-toolbar{justify-content:flex-start}.profile-body-summary .bodymap-segment:first-child{display:none}
@media(max-width:720px){.profile-body-summary-head{display:block}.profile-body-summary-head .btn{margin-top:7px}.profile-body-summary .bodymap-canvas-wrap{display:block}.profile-body-summary .bodymap-legend{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.profile-body-summary .bodymap-canvas{min-height:330px}}
