@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#0b0f17;--panel:#131b29;--panel-2:#101724;--panel-3:#0e1520;--border:#243044;--border-soft:#1b2636;--text:#edf3f8;--muted:#8b98aa;--subtle:#657286;--green:#10b981;--green-2:#34d399;--green-dark:#073c31;--blue:#60a5fa;--violet:#a78bfa;--amber:#fbbf24;--red:#fb7185;--radius:18px;--shadow:0 16px 40px rgba(0,0,0,.22)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px;line-height:1.5;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--green-2);outline-offset:2px}a{color:inherit;text-decoration:none}.hidden{display:none!important}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand-name{font-family:Manrope,'DM Sans',sans-serif;letter-spacing:-.035em}h1{font-size:clamp(28px,3vw,39px);line-height:1.12;font-weight:800;margin-bottom:9px}h2{font-size:20px;line-height:1.25;font-weight:750;margin:4px 0}p{color:var(--muted)}
.login-screen{position:relative;min-height:100svh;display:grid;place-items:center;padding:36px 18px;overflow:hidden;background:radial-gradient(ellipse at 50% 45%,rgba(16,185,129,.08),transparent 42%),linear-gradient(135deg,#080d13 0%,#0b111a 55%,#0a1118 100%)}.login-glow{position:absolute;width:580px;height:580px;border:1px solid rgba(16,185,129,.06);border-radius:50%;box-shadow:0 0 0 76px rgba(16,185,129,.02),0 0 0 155px rgba(16,185,129,.015);pointer-events:none}.login-card{position:relative;width:min(100%,452px);padding:38px 40px 28px;border:1px solid var(--border);border-radius:26px;background:rgba(19,27,41,.94);box-shadow:0 32px 90px rgba(0,0,0,.42);backdrop-filter:blur(18px)}.brand-lockup{display:flex;align-items:center;gap:12px}.brand-mark{width:43px;height:43px;flex:none}.brand-name{display:block;font-size:16px;font-weight:800;color:#f5f8fb;letter-spacing:-.045em}.brand-name b{color:var(--green-2)}.brand-caption{display:block;font-size:9px;letter-spacing:.15em;color:#778599;font-weight:700;margin-top:2px}.login-brand{margin-bottom:46px}.login-copy .eyebrow{margin-bottom:15px}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--green-2);font-size:10px;font-weight:800;letter-spacing:.14em}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--green);display:inline-block;box-shadow:0 0 0 3px rgba(16,185,129,.11)}.login-copy h1{font-size:34px;margin:6px 0 10px}.login-copy h1 span{color:#8b98aa}.login-copy p{font-size:13px;margin-bottom:28px}.form-stack{display:flex;flex-direction:column}.form-stack label,.field label,.custom-exercise-form label,.select-field label{font-size:11px;font-weight:700;color:#a8b3c3;margin:0 0 7px}.form-stack input,.field input,.field select,.custom-exercise-form input,.custom-exercise-form select,.select-field select{width:100%;height:44px;padding:0 13px;border:1px solid var(--border);border-radius:11px;color:var(--text);background:#0b111a;transition:border-color .18s,box-shadow .18s}.form-stack input{margin-bottom:16px;height:47px}.form-stack input:focus,.field input:focus,.field select:focus,.custom-exercise-form input:focus,.custom-exercise-form select:focus,.select-field select:focus{border-color:rgba(16,185,129,.72);box-shadow:0 0 0 3px rgba(16,185,129,.09);outline:0}.form-stack input::placeholder,.field input::placeholder,.custom-exercise-form input::placeholder{color:#596679}.form-error{color:#fecdd3;background:rgba(251,113,133,.1);border:1px solid rgba(251,113,133,.22);padding:10px 12px;border-radius:10px;font-size:12px;margin:-3px 0 14px}.credential-note{display:flex;gap:11px;align-items:center;margin-top:20px;padding:13px;border:1px solid var(--border-soft);border-radius:12px;background:rgba(10,15,23,.5)}.note-icon{height:21px;width:21px;display:grid;place-items:center;border-radius:50%;color:var(--green-2);border:1px solid rgba(16,185,129,.4);font-weight:800;font-size:12px;flex:none}.credential-note strong,.credential-note span{display:block}.credential-note strong{font-size:11px}.credential-note span{font-size:10px;color:var(--muted);margin-top:3px}.credential-note code{color:var(--green-2);font:600 10px ui-monospace,SFMono-Regular,Consolas,monospace}.privacy-note{font-size:10px;line-height:1.55;margin:15px 0 0;color:#9aa7b8}.login-footer{position:absolute;bottom:18px;color:#5e6a7a;font-size:9px;font-weight:800;letter-spacing:.13em}.login-footer span{color:var(--green)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:0 16px;border-radius:11px;border:1px solid transparent;font-size:12px;font-weight:800;transition:transform .16s,background .16s,border-color .16s,color .16s,box-shadow .16s}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(0)}.button-primary{color:#07130f;background:var(--green);box-shadow:0 7px 18px rgba(16,185,129,.14)}.button-primary:hover{background:#34d399;box-shadow:0 9px 24px rgba(16,185,129,.22)}.button-outline{color:#d8e3ec;background:rgba(255,255,255,.025);border-color:var(--border)}.button-outline:hover,.button-quiet:hover{background:#192435;border-color:#344359}.button-quiet{color:#bac5d3;background:#101724;border-color:var(--border)}.button-wide{width:100%;min-height:47px}.button-small{min-height:35px;padding:0 12px;font-size:11px;border-radius:9px}.text-button,.small-action{border:0;background:none;color:var(--green-2);font-size:11px;font-weight:800;padding:8px 0}.text-button span{font-size:16px;margin-left:5px}.small-action{padding:7px 10px;border:1px solid rgba(16,185,129,.2);border-radius:9px;background:rgba(16,185,129,.07)}
.app{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:252px;z-index:20;display:flex;flex-direction:column;padding:25px 16px 18px;background:#0c121c;border-right:1px solid var(--border-soft)}.sidebar-brand{padding:0 9px 32px}.sidebar-brand .brand-mark{width:39px;height:39px}.sidebar-brand .brand-name{font-size:14px}.sidebar-label{padding:0 12px 11px;color:#5f6e80;font-size:9px;font-weight:800;letter-spacing:.13em}.side-nav{display:grid;gap:5px}.nav-link{display:flex;align-items:center;gap:12px;height:43px;padding:0 12px;text-align:left;border:1px solid transparent;border-radius:11px;color:#9caabc;background:transparent;font-size:12px;font-weight:650;transition:all .18s}.nav-link:hover{color:#e7edf4;background:#131d2b}.nav-link.active{background:rgba(16,185,129,.11);border-color:rgba(16,185,129,.17);color:#56e0ad}.nav-glyph{width:20px;height:20px;display:grid;place-items:center;font-size:17px;color:#708098}.nav-link.active .nav-glyph{color:var(--green-2)}.sidebar-bottom{margin-top:auto}.demo-card{padding:14px 13px;border:1px solid rgba(16,185,129,.17);border-radius:13px;background:linear-gradient(140deg,rgba(16,185,129,.08),rgba(16,185,129,.025));margin-bottom:14px}.demo-tag{display:flex;align-items:center;gap:8px;color:#7fe9bd;font-size:9px;font-weight:800;letter-spacing:.1em}.demo-card p{font-size:10px;line-height:1.5;margin:8px 0 0;color:#9ba8b8}.sidebar-user{display:flex;align-items:center;gap:10px;padding:13px 8px 0;border-top:1px solid var(--border-soft)}.avatar{width:33px;height:33px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,#0f936e,#37d69e);font-size:12px;font-weight:900;color:#062018}.sidebar-user strong,.sidebar-user span{display:block}.sidebar-user strong{font-size:11px}.sidebar-user span{font-size:9px;color:var(--muted);margin-top:2px}.icon-button{width:34px;height:34px;border:1px solid var(--border);border-radius:10px;background:#111a27;color:#9ba8b9;font-size:18px;display:grid;place-items:center}.icon-button:hover{color:var(--green-2);border-color:#386450}.logout-button{margin-left:auto;font-size:14px}.workspace{min-height:100vh;margin-left:252px}.topbar{height:68px;position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,3vw,43px);border-bottom:1px solid rgba(36,48,68,.72);background:rgba(11,15,23,.88);backdrop-filter:blur(18px)}.breadcrumb{display:flex;align-items:center;gap:9px;color:#6f7d90;font-size:11px}.breadcrumb strong{font-weight:700;color:#c4cfdb}.breadcrumb-sep{color:#3d4a5d}.topbar-actions{display:flex;align-items:center;gap:10px}.save-status{display:flex;align-items:center;gap:8px;margin-right:7px;font-size:10px;color:#8594a7}.save-status .status-dot{width:6px;height:6px;box-shadow:none}.save-status.saving .status-dot{background:var(--amber);box-shadow:0 0 0 3px rgba(251,191,36,.1)}.save-status.error .status-dot{background:var(--red);box-shadow:0 0 0 3px rgba(251,113,133,.1)}.timer-open{min-height:34px;padding:0 11px;font-size:11px}.timer-open>span:first-child{font-size:17px;color:var(--green-2)}.mobile-brand,.mobile-logout,.mobile-nav{display:none}.content{width:min(1320px,100%);margin:0 auto;padding:32px clamp(18px,3vw,42px) 46px}.tab-page{display:none;animation:pageIn .24s ease}.tab-page.active{display:block}@keyframes pageIn{from{opacity:.72;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.hero-panel{position:relative;min-height:264px;overflow:hidden;display:flex;align-items:center;padding:35px 42px;border:1px solid #253548;border-radius:23px;background:radial-gradient(ellipse at 80% 48%,rgba(16,185,129,.12),transparent 36%),linear-gradient(110deg,#131b29 0%,#101924 58%,#10221f 100%);box-shadow:var(--shadow)}.hero-copy{position:relative;z-index:1;max-width:660px}.hero-copy .eyebrow{margin-bottom:15px}.hero-copy h1{font-size:clamp(29px,3.3vw,42px);margin-bottom:11px}.hero-copy h1 span{color:#8c9bad}.hero-copy p{font-size:12px;max-width:500px;line-height:1.65;margin:0 0 21px}.hero-actions{display:flex;gap:9px;flex-wrap:wrap}.hero-line{height:1px;width:25px;background:#357960;display:inline-block}.hero-decoration{position:absolute;right:45px;top:50%;width:210px;height:210px;transform:translateY(-50%);display:grid;place-items:center;opacity:.84}.orbit{position:absolute;border:1px solid rgba(52,211,153,.23);border-radius:50%}.orbit-one{inset:13px;transform:rotate(-26deg) scaleY(.58)}.orbit-two{inset:29px;transform:rotate(31deg) scaleY(.65)}.hero-core{width:82px;height:82px;display:grid;place-items:center;border:1px solid rgba(52,211,153,.27);border-radius:25px;background:rgba(16,185,129,.12);box-shadow:0 0 50px rgba(16,185,129,.12)}.hero-core img{width:54px;height:54px}.orbit-dot{position:absolute;right:25px;top:51px;width:9px;height:9px;border-radius:50%;background:var(--green-2);box-shadow:0 0 16px var(--green)}
.metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:17px 0}.metric-card,.panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:0 10px 28px rgba(0,0,0,.1)}.metric-card{padding:18px 20px}.metric-top{display:flex;justify-content:space-between;align-items:center;color:#91a0b3;font-size:9px;font-weight:800;letter-spacing:.1em}.metric-icon{width:32px;height:32px;display:grid;place-items:center;border:1px solid;border-radius:11px;font-size:16px}.metric-icon.mint{color:var(--green-2);background:rgba(16,185,129,.08);border-color:rgba(16,185,129,.18)}.metric-icon.blue{color:var(--blue);background:rgba(96,165,250,.08);border-color:rgba(96,165,250,.18)}.metric-icon.violet{color:var(--violet);background:rgba(167,139,250,.08);border-color:rgba(167,139,250,.18)}.metric-card>strong{display:block;font-family:Manrope,sans-serif;font-size:31px;line-height:1.2;margin:12px 0 7px;letter-spacing:-.05em}.metric-card>small{display:flex;align-items:center;gap:7px;color:#8c9aae;font-size:10px}.metric-dot{width:6px;height:6px;border-radius:50%}.mint-bg{background:var(--green)}.blue-bg{background:var(--blue)}.violet-bg{background:var(--violet)}.panel{padding:21px}.recent-panel{margin-top:1px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:17px}.panel-heading .eyebrow,.page-heading .eyebrow{font-size:9px}.panel-heading h2{font-size:17px;margin-top:4px}.table-wrap{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{padding:11px 12px;border-bottom:1px solid var(--border);color:#758397;font-size:9px;font-weight:800;letter-spacing:.1em}td{padding:13px 12px;border-bottom:1px solid rgba(36,48,68,.6);font-size:11px;color:#b5c0ce}tbody tr:last-child td{border-bottom:0}.align-right{text-align:right}.student-cell{display:flex;align-items:center;gap:10px}.student-avatar{width:30px;height:30px;display:grid;place-items:center;flex:none;border-radius:10px;background:#1b2a38;color:#75deb2;font-size:10px;font-weight:800}.student-cell strong,.student-cell span{display:block}.student-cell strong{color:#e5ebf2;font-size:11px}.student-cell span{color:#78879a;font-size:9px;margin-top:2px}.table-actions{display:flex;justify-content:flex-end;gap:5px}.mini-button{height:29px;padding:0 8px;border:1px solid var(--border);border-radius:8px;background:#111a26;color:#afbdcc;font-size:10px}.mini-button:hover{color:var(--green-2);border-color:rgba(16,185,129,.38)}.mini-button.danger:hover{color:var(--red);border-color:rgba(251,113,133,.38)}.demo-banner{display:flex;align-items:flex-start;gap:11px;margin-top:15px;padding:13px 15px;border:1px solid rgba(251,191,36,.17);border-radius:13px;background:rgba(251,191,36,.045)}.demo-banner-icon{width:19px;height:19px;display:grid;place-items:center;flex:none;border:1px solid rgba(251,191,36,.4);border-radius:50%;color:var(--amber);font-size:11px;font-weight:800}.demo-banner p{font-size:10px;line-height:1.55;margin:0;color:#a8adad}.demo-banner strong{color:#e8d7a9}
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:3px 0 22px}.page-heading h1{font-size:30px;margin:6px 0}.page-heading p{font-size:12px;margin:0}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.search-box{height:42px;display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid var(--border);border-radius:11px;background:#101724;color:#68788d}.search-box>span{font-size:20px;line-height:1}.search-box input{width:100%;min-width:150px;border:0;outline:0;background:transparent;color:var(--text);font-size:11px}.search-box input::placeholder{color:#6d7a8c}.toolbar .search-box{width:min(500px,100%)}.result-count{color:#8492a4;font-size:10px}.table-panel{padding:4px 16px}.empty-row{text-align:center;color:#8190a3;padding:26px 12px!important;white-space:normal}.select-field{display:grid;gap:6px}.select-field label{margin:0;font-size:9px;letter-spacing:.09em}.compact-select{width:min(250px,100%)}.compact-select select{height:40px;font-size:11px}.workout-layout{display:grid;grid-template-columns:minmax(270px,.85fr) minmax(0,1.45fr);gap:15px;align-items:start}.library-panel,.workout-panel{padding:19px}.library-panel .panel-heading{margin-bottom:13px}.library-search{margin-bottom:12px;height:38px}.library-search input{font-size:10px}.exercise-list{display:grid;gap:7px;max-height:500px;overflow-y:auto;padding-right:3px}.exercise-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px solid var(--border-soft);border-radius:11px;background:#101724;transition:border-color .15s,background .15s}.exercise-item:hover{border-color:#314557;background:#121d2b}.exercise-item strong,.exercise-item span{display:block}.exercise-item strong{font-size:10px;color:#dfe7ef}.exercise-item span{font-size:9px;color:#738399;margin-top:3px}.exercise-add{width:27px;height:27px;flex:none;border:1px solid rgba(16,185,129,.18);border-radius:8px;background:rgba(16,185,129,.08);color:var(--green-2);font-weight:800}.exercise-add:hover{background:var(--green);color:#07130f}.custom-exercise-form{display:grid;gap:8px;padding:12px;margin-bottom:12px;border:1px solid var(--border);border-radius:12px;background:#0e1520}.custom-exercise-form label{margin:0;font-size:10px}.custom-exercise-form input,.custom-exercise-form select{height:37px;font-size:11px}.workout-heading{align-items:flex-start;padding-bottom:14px;border-bottom:1px solid var(--border-soft)}.workout-heading p{font-size:10px;margin:5px 0 0}.workout-actions{display:flex;gap:7px;flex:none}.split-tabs{display:flex;gap:7px;overflow-x:auto;padding:0 0 12px;border-bottom:1px solid var(--border-soft)}.split-tab{padding:7px 12px;border:1px solid var(--border);border-radius:9px;background:#0d141e;color:#91a0b3;font-size:10px;font-weight:800;white-space:nowrap}.split-tab.active{border-color:rgba(16,185,129,.42);background:rgba(16,185,129,.14);color:#70e4b6}.workout-content{padding-top:14px}.workout-title-row{display:flex;gap:8px;align-items:center;margin-bottom:12px}.workout-title-row input{height:39px;flex:1;min-width:0;padding:0 11px;border:1px solid var(--border);border-radius:10px;background:#0c131d;color:var(--text);font-size:11px;font-weight:700}.exercise-card{margin-top:8px;padding:12px;border:1px solid var(--border-soft);border-radius:12px;background:#101724}.exercise-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.exercise-card-head strong{font-size:11px;color:#81e5ba}.remove-exercise{border:0;background:transparent;color:#7b899b;font-size:17px}.remove-exercise:hover{color:var(--red)}.exercise-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.exercise-fields label{display:block;margin-bottom:4px;color:#8491a3;font-size:9px}.exercise-fields input{width:100%;height:34px;min-width:0;padding:0 7px;border:1px solid var(--border);border-radius:8px;background:#0b111a;color:#e2e9f0;text-align:center;font-size:10px}.subtle-copy{color:#8592a4}.inline-empty{padding:24px 12px;text-align:center;border:1px dashed #2a384c;border-radius:12px;color:#8a98aa;font-size:11px}.inline-empty strong{display:block;color:#ced7e1;margin-bottom:5px}
.evaluation-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:15px;align-items:start}.form-panel,.results-panel,.nutrition-results-panel{padding:21px}.panel-mark{width:31px;height:31px;display:grid;place-items:center;border:1px solid rgba(16,185,129,.2);border-radius:10px;color:var(--green-2);background:rgba(16,185,129,.08);font-size:10px;font-weight:800}.field-grid{display:grid;gap:12px}.field-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:flex;flex-direction:column;min-width:0}.field label{margin-bottom:6px;font-size:10px}.field input,.field select{height:40px;font-size:11px}.section-divider{display:flex;align-items:center;gap:10px;margin:18px 0 11px;color:#77869a;font-size:9px;font-weight:800;letter-spacing:.11em}.section-divider:after{content:"";height:1px;flex:1;background:var(--border-soft)}.divider-note{color:var(--green-2);font-size:9px;letter-spacing:0}.divider-note:after{content:""}.form-panel>.button{margin-top:19px}.micro-note{font-size:9px;line-height:1.55;margin:11px 0 0;color:#718095}.date-chip{padding:6px 8px;border:1px solid var(--border-soft);border-radius:8px;color:#8998aa;background:#0f1722;font-size:9px}.empty-state{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center;border:1px dashed #2a384c;border-radius:14px;color:#8a98aa}.empty-state strong{margin-top:10px;color:#ccd5df;font-size:12px}.empty-state p{max-width:250px;font-size:10px;line-height:1.5;margin:5px 0 0}.empty-mark{width:37px;height:37px;display:grid;place-items:center;border:1px solid rgba(16,185,129,.19);border-radius:13px;background:rgba(16,185,129,.07);color:var(--green-2);font-size:19px}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.result-tile{padding:13px;border:1px solid var(--border-soft);border-radius:12px;background:#0f1722}.result-tile span{display:block;color:#8492a5;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.result-tile strong{display:block;margin-top:6px;font-family:Manrope,sans-serif;font-size:20px;letter-spacing:-.04em}.result-tile small{font-size:9px;color:#748297;font-weight:500}.result-tile.highlight strong{color:var(--green-2)}.result-tile.blue-tile strong{color:var(--blue)}.result-tile.purple-tile strong{color:var(--violet)}.history-block{margin-top:15px}.history-block .section-divider{margin-top:13px}.history-list{display:grid;gap:6px}.history-row{display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border-radius:9px;background:#0f1722;color:#aab5c2;font-size:9px}.history-row strong{color:#dce4ed}.field-hint{margin-top:5px;color:#748297;font-size:9px}.nutrition-layout{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(0,1.28fr);gap:15px;align-items:start}.nutrition-results-panel{min-height:280px}.nutrition-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.nutrition-tile{padding:17px;border:1px solid var(--border-soft);border-radius:13px;background:#0f1722}.nutrition-tile span,.nutrition-tile small{display:block;color:#8290a3;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.nutrition-tile strong{display:block;margin:7px 0 4px;font-family:Manrope,sans-serif;font-size:25px;letter-spacing:-.045em}.nutrition-tile small{font-weight:500;letter-spacing:0;text-transform:none}.nutrition-tile.protein strong{color:var(--green-2)}.nutrition-tile.carbs strong{color:var(--blue)}.nutrition-tile.fat strong{color:var(--amber)}.nutrition-tile.water strong{color:#65d5ed}.nutrition-total{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:12px 14px;border:1px solid rgba(16,185,129,.18);border-radius:11px;background:rgba(16,185,129,.06);font-size:10px}.nutrition-total strong{color:#8ce9bf}.report-toolbar{display:flex;align-items:flex-end;gap:10px}.report-toolbar .compact-select{width:210px}.printable-sheet{max-width:900px;margin:0 auto;padding:30px;border:1px solid var(--border);border-radius:18px;background:#f8fafc;color:#14202e;box-shadow:var(--shadow);min-height:250px}.printable-sheet .empty-state{color:#758293;border-color:#cbd5e1}.printable-sheet .empty-state strong{color:#334155}.printable-sheet .empty-mark{color:#059669;border-color:#a7f3d0;background:#ecfdf5}.report-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:17px;border-bottom:2px solid #dbe3e9;margin-bottom:17px}.report-brand{display:flex;align-items:center;gap:10px}.report-brand img{width:38px;height:38px}.report-brand strong{display:block;font-family:Manrope,sans-serif;font-size:16px;color:#14202e}.report-brand span{display:block;color:#64748b;font-size:9px}.report-meta{text-align:right;color:#64748b;font-size:10px}.report-meta strong{display:block;color:#1e293b}.report-student-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:15px 0}.report-summary-item{padding:10px;border:1px solid #e2e8f0;border-radius:9px;background:white}.report-summary-item span{display:block;color:#64748b;font-size:8px;text-transform:uppercase;letter-spacing:.08em}.report-summary-item strong{display:block;margin-top:4px;color:#0f172a;font-size:10px}.report-workout{margin-top:14px;padding:14px;border:1px solid #dbe3e9;border-radius:12px;background:#fff;break-inside:avoid}.report-workout h3{color:#047857;font-size:13px;margin:0 0 8px}.report-workout table th{color:#64748b;border-color:#e2e8f0;font-size:8px}.report-workout table td{color:#334155;border-color:#edf1f4;font-size:9px;padding:8px 10px}.report-empty{font-size:10px;color:#64748b;padding:14px 0}.report-foot{margin-top:18px;padding-top:10px;border-top:1px solid #dbe3e9;color:#8491a3;font-size:8px;text-align:center}
.form-dialog,.timer-dialog{width:min(560px,calc(100vw - 28px));max-height:min(90vh,800px);overflow:auto;padding:25px;border:1px solid #334257;border-radius:19px;background:#131b29;color:var(--text);box-shadow:0 26px 90px rgba(0,0,0,.55)}.form-dialog::backdrop,.timer-dialog::backdrop{background:rgba(1,5,10,.72);backdrop-filter:blur(4px)}.dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:21px}.dialog-heading h2{font-size:21px;margin-top:4px}.form-dialog .field-grid{gap:13px}.span-two{grid-column:span 2}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.timer-dialog{width:min(420px,calc(100vw - 28px))}.timer-display{font-family:Manrope,sans-serif;text-align:center;font-size:64px;font-weight:800;letter-spacing:-.07em;color:#e7f9f1;margin:12px 0 19px}.timer-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.timer-presets .button{padding:0 8px}.timer-dialog .dialog-actions{justify-content:space-between}.toast-region{position:fixed;right:20px;bottom:20px;z-index:50;display:grid;gap:8px;pointer-events:none}.toast{max-width:min(380px,calc(100vw - 40px));padding:12px 15px;border:1px solid #335044;border-radius:12px;background:#14231f;color:#d8f5e9;box-shadow:0 12px 35px rgba(0,0,0,.35);font-size:11px;animation:toastIn .2s ease}.toast.error{border-color:#63303a;background:#29161c;color:#ffced5}.toast.warning{border-color:#6b582b;background:#261f12;color:#f6e7bb}@keyframes toastIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){.sidebar{width:220px}.workspace{margin-left:220px}.content{padding-left:22px;padding-right:22px}.hero-decoration{right:16px;opacity:.56}.workout-layout{grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr)}.exercise-fields{gap:5px}}
@media(max-width:850px){.sidebar{width:68px;padding:20px 9px}.sidebar-brand{justify-content:center;padding:0 0 30px}.sidebar-brand>div,.sidebar-label,.nav-link:not(.active){font-size:0}.sidebar-brand .brand-mark{width:39px}.sidebar-brand .brand-name,.sidebar-brand .brand-caption{display:none}.side-nav{gap:8px}.nav-link{justify-content:center;padding:0;height:43px}.nav-glyph{font-size:18px}.nav-link.active{font-size:0}.nav-link.active .nav-glyph{font-size:18px}.sidebar-bottom .demo-card{padding:10px 6px;text-align:center}.demo-tag{justify-content:center;font-size:0}.demo-tag .status-dot{width:8px;height:8px}.demo-card p,.sidebar-user>div:not(.avatar),.logout-button{display:none}.sidebar-user{justify-content:center;padding:12px 0 0}.workspace{margin-left:68px}.hero-decoration{right:-20px;opacity:.26}.hero-copy{max-width:90%}.workout-layout{grid-template-columns:1fr}.library-panel{order:2}.exercise-list{max-height:320px}}
@media(max-width:620px){.sidebar{display:none}.workspace{margin:0}.topbar{height:59px;padding:0 14px}.mobile-brand{display:flex;gap:8px}.mobile-brand .brand-mark{width:32px;height:32px}.mobile-brand .brand-name{font-size:12px}.breadcrumb{display:none}.mobile-logout{display:grid}.topbar-actions{gap:7px}.save-status{font-size:0;margin:0 1px}.save-status .status-dot{width:7px;height:7px}.timer-open{min-height:33px;padding:0 8px}.timer-open>span:last-child{font-size:10px}.content{padding:19px 14px 104px}.hero-panel{min-height:275px;padding:25px 20px;border-radius:19px}.hero-copy{max-width:100%}.hero-copy h1{font-size:30px}.hero-copy p{max-width:95%;font-size:11px}.hero-decoration{width:150px;height:150px;right:-39px;top:5px;transform:none;opacity:.17}.hero-actions{gap:7px}.hero-actions .button{padding:0 11px;min-height:39px;font-size:10px}.metrics-grid{grid-template-columns:1fr;gap:9px;margin:11px 0}.metric-card{display:grid;grid-template-columns:1fr auto;align-items:center;padding:13px 15px}.metric-top{grid-column:1;grid-row:1}.metric-icon{grid-column:2;grid-row:1/3}.metric-card>strong{grid-column:1;grid-row:2;font-size:25px;margin:4px 0}.metric-card>small{grid-column:1;grid-row:3}.recent-panel{padding:16px 12px}.panel-heading h2{font-size:15px}.recent-panel th,.recent-panel td{padding:10px 8px}.demo-banner{padding:11px}.page-heading{align-items:flex-start;flex-direction:column;margin:2px 0 18px}.page-heading h1{font-size:26px}.page-heading p{font-size:11px;line-height:1.5}.page-heading>.button{width:100%}.toolbar{align-items:flex-start;flex-direction:column}.toolbar .search-box{width:100%}.table-panel{padding:4px 8px}.table-panel th,.table-panel td{padding:11px 9px}.workout-heading{flex-direction:column}.workout-actions{width:100%}.workout-actions .button{flex:1}.exercise-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.evaluation-layout,.nutrition-layout{grid-template-columns:1fr}.field-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid.three .field:last-child{grid-column:span 2}.form-panel,.results-panel,.nutrition-results-panel{padding:16px}.report-toolbar{width:100%;align-items:stretch;flex-direction:column}.report-toolbar .compact-select{width:100%}.report-toolbar .button{width:100%}.printable-sheet{padding:16px;border-radius:13px}.report-student-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.report-head{gap:10px}.report-meta{font-size:9px}.mobile-nav{position:fixed;inset:auto 0 0;z-index:30;display:grid;grid-template-columns:repeat(6,1fr);padding:7px 4px calc(7px + env(safe-area-inset-bottom));border-top:1px solid #283449;background:rgba(11,15,23,.96);backdrop-filter:blur(18px)}.mobile-nav-link{min-height:48px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;border:0;border-radius:9px;background:transparent;color:#8290a3;font-size:8px;font-weight:700}.mobile-nav-link span{font-size:17px;line-height:1}.mobile-nav-link.active{color:var(--green-2);background:rgba(16,185,129,.08)}.form-dialog,.timer-dialog{padding:19px}.form-dialog .field-grid.two{gap:10px}.timer-display{font-size:57px}.toast-region{right:12px;bottom:75px}.login-card{padding:29px 22px 23px}.login-brand{margin-bottom:34px}.login-copy h1{font-size:30px}.login-footer{font-size:8px}}
@media(max-width:380px){.field-grid.two,.field-grid.three{grid-template-columns:1fr}.field-grid.three .field:last-child,.span-two{grid-column:auto}.report-student-summary{grid-template-columns:1fr}.timer-presets{grid-template-columns:repeat(2,1fr)}}
@media print{@page{size:A4;margin:14mm}html,body{background:#fff!important;color:#111827!important;font-family:Arial,sans-serif!important}body *{visibility:hidden!important}.tab-page#tab-relatorio,.tab-page#tab-relatorio *{visibility:visible!important}.sidebar,.topbar,.mobile-nav,.page-heading,.no-print,.toast-region,dialog,#login-screen{display:none!important}.app,.workspace,.content,.tab-page#tab-relatorio{display:block!important;margin:0!important;padding:0!important;width:100%!important;min-height:0!important;position:static!important;background:#fff!important;border:0!important;box-shadow:none!important}.printable-sheet{display:block!important;position:absolute!important;left:0!important;top:0!important;width:100%!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;color:#111827!important}.printable-sheet *{color:#111827!important}.report-workout,.report-summary-item{break-inside:avoid;background:#fff!important;border-color:#dbe3e9!important}.report-workout table th,.report-workout table td{color:#334155!important;border-color:#e5e7eb!important}.report-workout h3{color:#047857!important}.report-head,.report-student-summary,.report-workout{break-inside:avoid}.report-foot{color:#64748b!important}}

.goal-pill{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid rgba(16,185,129,.16);border-radius:999px;background:rgba(16,185,129,.07);color:#8ce9bf;font-size:9px;font-weight:700}

.admin-layout{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.5fr);gap:15px;align-items:start}.admin-create-panel,.admin-list-panel{padding:20px}.admin-create-panel .panel-heading{margin-bottom:16px}.admin-create-form{display:grid;gap:12px}.admin-create-form .field{display:grid}.admin-create-form .button{margin-top:5px}.admin-access-note{display:flex;gap:11px;align-items:flex-start;margin:0 0 15px;padding:13px 15px;border:1px solid rgba(96,165,250,.19);border-radius:12px;background:rgba(96,165,250,.045);color:#9fb0c5;font-size:10px;line-height:1.6}.admin-access-note strong{color:#d8e7f8}.admin-notice{min-height:20px;margin:12px 2px 0;color:#91a0b3;font-size:10px}.admin-notice.error{color:#fda4af}.admin-notice.success{color:#86efac}.admin-account strong,.admin-account span{display:block}.admin-account strong{color:#e5ebf2;font-size:11px}.admin-account span{margin-top:3px;color:#8290a3;font-size:9px}.admin-role-select{min-width:122px;height:34px;padding:0 9px;border:1px solid var(--border);border-radius:8px;background:#101724;color:var(--text);font-size:10px}.admin-status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:9px;font-weight:800}.admin-status.active{background:rgba(16,185,129,.1);color:#7fe9bd}.admin-status.inactive{background:rgba(251,113,133,.1);color:#fda4af}.admin-force-change{display:block;margin-top:5px;color:#fbbf24;font-size:8px}.admin-list-panel .table-wrap{overflow:auto}.admin-list-panel td{vertical-align:middle}.admin-list-panel .table-actions{justify-content:flex-start;flex-wrap:wrap}.admin-list-panel .mini-button{white-space:nowrap}.mini-button:disabled,.button:disabled{cursor:not-allowed;opacity:.48;transform:none}.access-dialog{width:min(500px,calc(100vw - 28px))}.access-dialog .form-stack{margin-top:4px}.access-dialog .dialog-actions{display:flex}.access-dialog .micro-note{margin-top:12px}.password-strength-note{color:#8fa0b4;font-size:10px;line-height:1.55}.admin-nav-link{border-color:rgba(16,185,129,.12)}.mobile-nav.admin-visible{grid-template-columns:repeat(7,minmax(0,1fr))}
@media(max-width:1000px){.admin-layout{grid-template-columns:1fr}.admin-create-panel{max-width:none}}
@media(max-width:620px){.admin-create-panel,.admin-list-panel{padding:15px 11px}.admin-list-panel th,.admin-list-panel td{padding:10px 8px}.mobile-nav.admin-visible{grid-template-columns:repeat(7,minmax(48px,1fr));overflow-x:auto}.admin-access-note{font-size:9px}.admin-list-panel .table-actions{min-width:170px}}

@media(max-width:820px){.admin-layout{grid-template-columns:1fr}}
@media(max-width:620px){.admin-create-panel,.admin-list-panel{padding:16px}.admin-access-note{padding:11px 12px;font-size:9px}.admin-list-panel th,.admin-list-panel td{padding:10px 8px}.admin-list-panel th:last-child{min-width:195px}.access-dialog .form-stack{gap:3px}}
@media(max-width:380px){.mobile-nav.admin-visible .mobile-nav-link{font-size:7px}.mobile-nav.admin-visible .mobile-nav-link span{font-size:15px}.admin-list-panel{padding:13px}}


/* Entradas separadas para administrador e professor */
.login-mode-prompt{margin:0 0 11px;color:#9eacbd;font-size:11px;font-weight:700}.login-role-grid{display:grid;gap:10px}.login-role-card{width:100%;min-height:74px;display:grid;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:12px;padding:13px 14px;text-align:left;border:1px solid var(--border);border-radius:14px;background:linear-gradient(135deg,rgba(16,185,129,.055),rgba(10,15,23,.5));color:var(--text);transition:border-color .16s,background .16s,transform .16s,box-shadow .16s}.login-role-card:hover{transform:translateY(-1px);border-color:rgba(52,211,153,.52);background:linear-gradient(135deg,rgba(16,185,129,.12),rgba(10,15,23,.62));box-shadow:0 9px 20px rgba(0,0,0,.16)}.login-role-mark{width:40px;height:40px;display:grid;place-items:center;border:1px solid rgba(52,211,153,.24);border-radius:12px;background:rgba(16,185,129,.1);color:var(--green-2);font-size:10px;font-weight:900;letter-spacing:.04em}.login-role-mark-teacher{border-color:rgba(96,165,250,.25);background:rgba(96,165,250,.08);color:#93c5fd}.login-role-copy{min-width:0;display:grid;gap:3px}.login-role-copy strong{color:#edf3f8;font-size:12px}.login-role-copy span{color:#8d9caf;font-size:10px;line-height:1.45}.login-role-arrow{justify-self:end;color:var(--green-2);font-size:18px}.login-form-panel>h2{margin:2px 0 5px;font-size:19px}.login-role-description{margin:0 0 18px;font-size:11px;line-height:1.5}.login-back{margin:0 0 8px;padding:3px 0}.login-form-panel .form-stack{margin-top:0}
@media(max-width:520px){.login-card{padding:30px 22px 24px;border-radius:22px}.login-brand{margin-bottom:34px}.login-copy h1{font-size:30px}.login-role-card{grid-template-columns:38px minmax(0,1fr) 16px;gap:10px;padding:12px}.login-role-mark{width:36px;height:36px}.login-footer{bottom:10px}}

textarea{width:100%;min-height:72px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#0b111a;color:var(--text);font:inherit;font-size:11px;resize:vertical}textarea::placeholder{color:#596679}.nutrition-side{display:grid;gap:15px}.nutrition-tile.energy strong{color:#e8f1fb}.nutrition-meals-panel{min-width:0}.nutrition-meals-panel>.panel-heading{align-items:flex-start}.nutrition-meals-panel>.panel-heading p{margin:4px 0 0;font-size:10px}.nutrition-day-summary{padding:14px;border:1px solid var(--border-soft);border-radius:12px;background:#0f1722}.nutrition-day-summary h3{margin:0 0 10px;color:#b8c5d4;font-size:11px;letter-spacing:.02em}.daily-totals-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.daily-total-row{display:flex;flex-direction:column;gap:4px;padding:9px 10px;border:1px solid rgba(36,48,68,.72);border-radius:9px;background:#101925}.daily-total-row strong{color:#dce5ee;font-size:9px}.daily-total-row span{color:#90a0b2;font-size:9px}.nutrition-meals-list{display:grid;gap:11px;margin-top:13px}.meal-card{min-width:0;padding:14px;border:1px solid var(--border);border-radius:13px;background:#101724}.meal-heading{display:grid;grid-template-columns:minmax(160px,1fr) 110px auto;align-items:end;gap:9px;margin-bottom:10px}.meal-heading label,.meal-notes-field label{display:block;margin:0 0 5px;color:#a8b3c3;font-size:9px;font-weight:700}.meal-heading input,.meal-notes-field textarea,.food-entry-form input{width:100%;min-width:0;border:1px solid var(--border);border-radius:8px;background:#0b111a;color:var(--text);font:inherit;font-size:10px}.meal-heading input{height:35px;padding:0 9px}.meal-heading .mini-button{height:35px;white-space:nowrap}.meal-food-table{min-width:660px}.meal-food-table th{padding:8px 7px;font-size:8px}.meal-food-table td{padding:8px 7px;font-size:9px}.meal-total-line{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px;margin:9px 0 11px;padding:8px 10px;border-radius:8px;background:rgba(16,185,129,.07);color:#a3b4c3;font-size:9px}.meal-total-line strong{color:#82e3b7}.food-entry-form{display:grid;grid-template-columns:minmax(140px,2fr) repeat(5,minmax(65px,.8fr)) auto;align-items:end;gap:7px;padding:10px;border:1px solid var(--border-soft);border-radius:10px;background:#0d141e}.food-entry-form .field{min-width:0}.food-entry-form .field label{font-size:8px}.food-entry-form input{height:34px;padding:0 7px}.food-entry-form .button{min-height:34px;padding:0 9px;font-size:9px;white-space:nowrap}.meal-notes-field{margin-top:10px}.meal-notes-field textarea{min-height:52px;padding:8px}.nutrition-plan-notes-field{margin-top:13px}.report-nutrition{margin-top:14px;padding:14px;border:1px solid #dbe3e9;border-radius:12px;background:#fff;break-inside:auto}.report-nutrition>h2{margin:0 0 5px;color:#047857;font-size:15px}.report-nutrition-date,.report-disclaimer{color:#64748b;font-size:8px}.report-nutrition-goals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:10px 0}.report-nutrition-goals>div{padding:8px;border:1px solid #e2e8f0;border-radius:7px}.report-nutrition-goals span,.report-nutrition-goals strong{display:block}.report-nutrition-goals span{color:#64748b;font-size:7px;text-transform:uppercase;letter-spacing:.05em}.report-nutrition-goals strong{margin-top:3px;color:#0f172a;font-size:9px}.report-nutrition-note,.report-meal-total{margin:7px 0;color:#475569;font-size:8px;white-space:normal}.report-meals-title{margin:13px 0 7px;color:#334155;font-size:11px}.report-meal{margin:8px 0;padding:9px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;break-inside:avoid}.report-meal h3{margin:0 0 5px;color:#047857;font-size:10px}.report-nutrition table{table-layout:auto;white-space:normal}.report-nutrition table th{padding:6px 5px;color:#64748b;border-color:#e2e8f0;font-size:7px;white-space:normal}.report-nutrition table td{padding:6px 5px;color:#334155;border-color:#edf1f4;font-size:8px;white-space:normal}.report-disclaimer{margin:10px 0 0}@media(max-width:850px){.food-entry-form{grid-template-columns:repeat(3,minmax(0,1fr))}.food-entry-form .field:first-child{grid-column:span 2}.food-entry-form>.button{grid-column:span 3}.nutrition-side{min-width:0}}@media(max-width:620px){.meal-heading{grid-template-columns:minmax(0,1fr) 100px}.meal-heading>.mini-button{grid-column:span 2;width:100%}.daily-totals-list{grid-template-columns:1fr}.food-entry-form{grid-template-columns:repeat(2,minmax(0,1fr))}.food-entry-form .field:first-child{grid-column:span 2}.food-entry-form>.button{grid-column:span 2}.report-nutrition-goals{grid-template-columns:repeat(2,minmax(0,1fr))}.meal-total-line{flex-direction:column}.nutrition-meals-panel>.panel-heading{flex-wrap:wrap}.nutrition-meals-panel>.panel-heading>.button{width:auto}.printable-sheet .report-nutrition{padding:9px}}@media print{.report-nutrition{box-shadow:none}.report-meal{break-inside:avoid}.report-nutrition-goals{grid-template-columns:repeat(3,minmax(0,1fr))}.report-nutrition table{width:100%;font-size:7px}.report-nutrition th,.report-nutrition td{white-space:normal!important}}

@media print{.printable-sheet{position:static!important;left:auto!important;top:auto!important}.report-workout{break-inside:auto!important;page-break-inside:auto!important}.report-workout h3,.report-workout tr,.report-meal h3,.report-meal tr,.report-summary-item{break-inside:avoid;page-break-inside:avoid}.report-workout table{width:100%!important;table-layout:fixed!important;white-space:normal!important}.report-workout table th,.report-workout table td,.report-nutrition table th,.report-nutrition table td{white-space:normal!important;overflow-wrap:anywhere}.report-meal{break-inside:auto!important;page-break-inside:auto!important}.report-nutrition table{table-layout:fixed!important}}

.signup-link{display:block;margin:12px auto 0;text-align:center}.signup-success{margin-top:16px;padding:14px;border:1px solid rgba(16,185,129,.24);border-radius:12px;background:rgba(16,185,129,.07)}.signup-success strong{display:block;color:#8ce9bf;font-size:13px}.signup-success p{margin:7px 0 12px;color:#a9b8c8;font-size:11px;line-height:1.55}.admin-status.pending{background:rgba(251,191,36,.1);color:#fcd34d}
