.hft-overlay{position:fixed;inset:0;z-index:2147483000;background:var(--bg,#f5f5f5);color:var(--text,#151515);overflow:auto;font:inherit}.hft-shell{max-width:1150px;margin:0 auto;padding:26px 20px 90px}.hft-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}.hft-header h1{font-size:30px;margin:4px 0}.hft-header small{font-size:11px;letter-spacing:2px;opacity:.65}.hft-close,.hft-btn,.hft-primary{cursor:pointer;border-radius:12px;padding:10px 16px;border:1px solid #aaa6;background:transparent;color:inherit;font:inherit}.hft-primary{background:#191919;color:#fff;border-color:#191919}.hft-tabs,.hft-actions{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.hft-card{padding:22px;margin:15px 0;background:var(--card,#fff);border:1px solid #8883;border-radius:17px}.hft-card h2{font-size:19px;margin:0 0 18px}.hft-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #8883;padding:14px 0}.hft-row:first-of-type{border-top:0}.hft-row small{display:block;margin-top:5px;opacity:.7}.hft-row>div:last-child{display:flex;gap:8px}.hft-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:15px}.hft-form label{display:flex;flex-direction:column;gap:7px;font-size:13px}.hft-form input,.hft-form select,.hft-form textarea{box-sizing:border-box;width:100%;padding:12px;border:1px solid #8886;border-radius:10px;background:var(--card,#fff);color:inherit;font:inherit}.hft-check{display:block;padding:12px}.hft-check input{margin-right:10px}#hft-notice:not(:empty){padding:10px;color:#c43a3a}html[data-theme=dark] .hft-overlay{background:#101113;color:#f4f4f4}html[data-theme=dark] .hft-card,html[data-theme=dark] .hft-form input,html[data-theme=dark] .hft-form select,html[data-theme=dark] .hft-form textarea{background:#1c1e20;color:#fff}html[data-theme=dark] .hft-primary{background:#eee;color:#111}@media(max-width:600px){.hft-shell{padding:16px 12px}.hft-header h1{font-size:24px}.hft-card{padding:15px}.hft-row{align-items:flex-start;flex-direction:column}.hft-form{grid-template-columns:1fr}}

.hft-assessment{border:1px solid #ddd;border-radius:12px;margin:10px 0;padding:12px}.hft-assessment summary{cursor:pointer;font-weight:650}.hft-assessment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:12px 0}.hft-assessment-grid>div{display:flex;flex-direction:column;gap:4px}.hft-raw{white-space:pre-wrap;overflow-wrap:anywhere;max-height:350px;overflow:auto;font-size:11px}.hft-exercise-preview img{width:min(100%,400px);height:auto;object-fit:contain;border-radius:10px}

.hft-patient-exercise-img{display:block;width:160px;max-width:100%;height:auto;object-fit:contain;border-radius:9px;margin:8px 0;background:#f3f4f6}.hft-exercise-preview img{max-width:240px;max-height:180px;object-fit:contain}
.hft-overlay{font:14px/1.5 system-ui,sans-serif;background:#f4f5f7;color:#17191d}.hft-shell{max-width:1240px}.hft-header p{margin:3px 0;color:#737984}.hft-header{border-bottom:1px solid #8883;padding-bottom:18px}.hft-card{box-shadow:0 3px 14px #00000004}.hft-btn:hover{background:#8881}.hft-btn:disabled,.hft-primary:disabled{opacity:.5;cursor:wait}.hft-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.hft-stats strong{font-size:34px}.hft-stats .hft-card{margin:0}.hft-stats h2{font-size:13px;color:#737984}.hft-week{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.hft-week .hft-card{margin:0;padding:18px}.hft-week button{display:block;width:100%;margin-top:12px;font-size:12px}.hft-week h3{margin:0}.hft-wide{grid-column:1/-1}.hft-row>div:last-child{display:block}.hft-row .hft-actions{display:flex!important;flex-wrap:wrap}.hft-row[hidden]{display:none}.hft-form button{align-self:end}.hft-form textarea{resize:vertical}.hft-search{width:100%;box-sizing:border-box;border:1px solid #8885;border-radius:10px;padding:13px;background:transparent;color:inherit}.hft-exercise{display:flex;gap:24px;padding:22px 0;border-bottom:1px solid #8883}.hft-exercise>img{width:180px;height:160px;object-fit:contain;background:white;border-radius:12px}.hft-exercise>div{flex:1;min-width:0}.hft-exercise h3{margin:5px 0}.hft-exercise p{margin:6px 0;white-space:pre-wrap}.hft-volume{display:grid;grid-template-columns:150px 1fr 35px;align-items:center;gap:10px;margin:12px 0}.hft-volume>div{height:9px;background:#8882;border-radius:8px;overflow:hidden}.hft-volume i{display:block;height:100%;background:#4b6076;border-radius:8px}.hft-dates{display:flex;gap:12px;flex-wrap:wrap}.hft-dates label{border:1px solid #8884;padding:8px;border-radius:8px}.hft-measures{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.hft-measures div{border-bottom:1px solid #8883;padding-bottom:8px}.hft-measures dt{font-size:12px;color:#767d87}.hft-measures dd{margin:2px 0;font-weight:600;overflow-wrap:anywhere}.hft-photos>section{display:flex;flex-wrap:wrap;gap:14px}.hft-photos h3{width:100%}.hft-photos img{max-width:240px;max-height:340px;object-fit:contain}.hft-photos figure{margin:0}.hft-assessment{border-color:#8884}.hft-assessment summary{padding:7px}.hft-muted{color:#737984}#hft-preview img{max-width:320px;max-height:240px;object-fit:contain;background:white;border-radius:12px}#hft-launcher{position:fixed;bottom:85px;right:16px;z-index:9999;box-shadow:0 3px 15px #0003}.hft-overlay input[type=checkbox]{accent-color:#263343}.hft-overlay a{color:inherit}.hft-overlay .hf-modern-report{overflow-x:auto}.hft-overlay #hft-notice:not(:empty){border:1px solid #c43a3a55;border-radius:10px;margin-bottom:14px;white-space:pre-wrap}.hft-overlay .hft-card>p{white-space:pre-wrap}
@media(max-width:800px){.hft-stats,.hft-week{grid-template-columns:repeat(2,minmax(0,1fr))}.hft-header{align-items:flex-start}.hft-header .hft-actions{margin:0}.hft-header h1{font-size:23px}.hft-exercise{gap:12px}.hft-exercise>img{width:100px;height:110px}.hft-volume{grid-template-columns:110px 1fr 25px}}
@media(max-width:430px){.hft-exercise{flex-direction:column}.hft-exercise>img{width:100%;height:170px}.hft-header{flex-wrap:wrap}.hft-btn,.hft-primary{padding:10px 12px}.hft-week .hft-card{padding:12px}.hft-week h3{font-size:14px}}
/* V438: unified borders, stable contrast and form alignment. */
.hft-overlay{--hft-border:#17191d}
.hft-overlay .hft-card,.hft-overlay .hft-btn,.hft-overlay .hft-form input,.hft-overlay .hft-form select,.hft-overlay .hft-form textarea,.hft-overlay fieldset,.hft-overlay .hft-search,.hft-overlay .hft-assessment{border:1px solid var(--hft-border)}
.hft-overlay .hft-btn:hover,.hft-overlay button:not(.hft-primary):hover{background:#e8e8e8;color:#17191d;box-shadow:0 2px 5px #0002}
.hft-overlay .hft-primary,.hft-overlay .hft-primary:focus{background:#191919;color:#fff;border:1px solid #191919;border-radius:12px;padding:12px 16px;font:inherit;cursor:pointer}
.hft-overlay .hft-primary:hover{background:#363636;color:#fff;box-shadow:0 2px 5px #0002}
.hft-overlay .hft-form{align-items:end;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr))}
.hft-overlay .hft-form>.hft-actions{margin:0;align-self:end;flex-wrap:nowrap}
.hft-overlay .hft-form>.hft-actions button{flex:1;padding:12px 10px;white-space:nowrap;min-height:46px}
.hft-overlay .hft-form input,.hft-overlay .hft-form select{min-height:46px}
.hft-overlay fieldset{border-radius:12px;padding:14px;min-width:0}
.hft-weekdays{display:flex;flex-wrap:wrap;gap:10px}
.hft-overlay .hft-weekdays label{display:flex;flex-direction:row;align-items:center;border:1px solid var(--hft-border);border-radius:8px;padding:8px}
.hft-overlay .hft-weekdays input{width:18px;min-height:18px;height:18px;margin:0;accent-color:#191919}
.hft-overlay .hft-card{overflow-wrap:anywhere}.hft-overlay input[name=created_password]{display:block;max-width:100%;box-sizing:border-box;padding:12px;border:1px solid var(--hft-border);border-radius:10px;margin:8px 0;background:transparent;color:inherit}
.hft-overlay #hft-protocol.apnp-module{display:block!important}
html[data-theme=dark] .hft-overlay{--hft-border:#a6a6a6}
html[data-theme=dark] .hft-overlay .hft-primary{background:#eee;color:#111;border-color:#eee}
html[data-theme=dark] .hft-overlay .hft-primary:hover{background:#ccc;color:#111}
html[data-theme=dark] .hft-overlay .hft-btn:not(.hft-primary):hover{background:#333;color:#fff}
.hft-overlay .hft-form>p{margin:0}
.hft-integrated .hft-mobile-back{display:none}

/* V439: patient package form participates in the native patient layout. */
.hf-patient-training-card{min-width:0;width:100%}.hf-patient-training-card[hidden]{display:none!important}
.hft-overlay.hft-embedded{position:static;inset:auto;z-index:auto;overflow:visible;background:transparent;width:100%;min-width:0}
.hft-embedded .hft-shell{max-width:none;margin:0;padding:0}.hft-embedded .hft-card:first-of-type{margin-top:0}
.hft-package{border-top:1px solid #8884;padding-top:12px;margin-top:12px}.hft-package:first-child{border-top:0;padding-top:0;margin-top:0}
.hft-package>.hft-row{padding:12px 0}.hft-overlay #hft-notice:empty{display:none}

html[data-theme=dark] .hft-overlay.hft-embedded{background:transparent}

/* V440: compact overview and exercise editor. */
.hft-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.hft-stats .hft-card{padding:14px 18px}.hft-stats h2{margin-bottom:6px}.hft-stats strong{font-size:27px}
.hft-progress{margin-top:12px}.hft-progress progress{display:block;width:min(100%,360px);height:8px;accent-color:#467653}.hft-day-progress{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.hft-day-progress .hft-btn{font-size:12px;padding:7px 10px}.hft-done{background:#e7f1e8;color:#244f30}.hft-plan-row>div{flex:1;min-width:0}
.hft-patient-metrics{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:8px}.hft-patient-metrics span{padding:5px 10px;border:1px solid var(--hft-border);border-radius:8px}.hft-actions a{text-decoration:none;display:inline-flex;align-items:center}
.hft-overlay .hft-form.hft-exercise-form{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);align-items:start;gap:22px}.hft-exercise-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.hft-number-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.hft-exercise-image{align-self:start;position:sticky;top:16px;min-width:0}.hft-overlay #hft-preview img{display:block;width:100%;max-width:100%;max-height:420px;object-fit:contain}.hft-exercise-fields label[hidden]{display:none!important}.hft-exercise-form>button{justify-self:start}.hft-overlay .hft-form input{min-width:0}.hft-exercise-fields>label{min-width:0}.hft-overlay [data-search][hidden]{display:none!important}
@media(max-width:700px){.hft-stats{grid-template-columns:1fr}.hft-stats .hft-card{display:flex;align-items:center;justify-content:space-between}.hft-stats h2{margin:0}.hft-overlay .hft-form.hft-exercise-form{grid-template-columns:1fr}.hft-exercise-image{position:static}.hft-overlay #hft-preview img{max-height:250px}.hft-number-fields{gap:8px}.hft-exercise-fields{gap:10px}}
/* V441: compact headings, consistent completion states and read-only patient portal. */
.hft-patient-heading,.hft-library-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0}
.hft-patient-heading>div:first-child{min-width:0;flex:1}.hft-patient-heading .hft-actions{justify-content:flex-end;flex-shrink:0}.hft-patient-heading h2{font-size:24px;margin:0}.hft-patient-heading small{color:#737984}
.hft-patient-heading .hft-patient-metrics{display:flex;align-items:center;flex-wrap:wrap;gap:0;margin:0 0 7px}
.hft-patient-heading .hft-patient-metrics span{border:0;border-left:1px solid #8888;border-radius:0;padding:0 12px;margin-left:12px;white-space:nowrap;font-size:13px}
.hft-library-heading{margin:0 0 12px}.hft-library-heading h2{margin:0 0 5px}.hft-library-heading p{margin:0;color:#737984}.hft-library-heading>button{flex-shrink:0}
.hft-progress.is-draft progress{accent-color:#8b7444}.hft-progress.is-draft .hft-done{color:inherit;background:#8881}.hft-progress.is-published progress{accent-color:#567658}
.hft-entry svg{width:24px;height:24px;flex:0 0 24px}.hft-entry{display:flex;align-items:center;gap:12px}
.hft-reader{background:var(--card,#fff);color:var(--text,#17191d);border:1px solid #8884;border-radius:18px;padding:20px;margin:18px 0;font:14px/1.5 system-ui,sans-serif;min-width:0;overflow-wrap:anywhere}
.hft-reader header h2{font-size:20px;margin:12px 0 2px}.hft-reader h3{font-size:17px;margin:16px 0 4px}.hft-reader p{white-space:pre-wrap;margin:6px 0}.hft-reader small{opacity:.75}.hft-reader-tabs{display:flex;gap:8px;overflow-x:auto;padding:4px 0 10px;max-width:100%}
.hft-reader-tabs button{flex:0 0 auto;font:inherit;padding:10px 14px;border:1px solid #8886;border-radius:10px;color:inherit;background:transparent;cursor:pointer}.hft-reader-tabs button.is-selected{background:#202326;color:white;border-color:#202326}
.hft-reader-exercise{display:flex;flex-direction:row;align-items:flex-start;gap:20px;padding:18px 0;border-top:1px solid #8883}.hft-reader-exercise>div:last-child{min-width:0;flex:1}.hft-reader-exercise>img,.hft-reader-placeholder{width:150px;height:145px;flex:0 0 150px;object-fit:contain;border-radius:10px;background:#f1f2f3}.hft-reader-placeholder{display:flex;align-items:center;justify-content:center;color:#69717c;font-size:11px;text-align:center}.hft-reader-placeholder svg{width:35px;height:35px}.hft-reader-exercise h4{font-size:17px;margin:4px 0 9px}.portal .tabs{display:flex}.portal .tabs>button{flex:1;min-width:0}
html[data-theme=dark] .hft-reader{background:#1c1e20;color:#f4f4f4}html[data-theme=dark] .hft-reader-tabs button.is-selected{background:#f4f4f4;color:#17191d}
@media(max-width:1100px){.hft-patient-heading{flex-wrap:wrap}.hft-patient-heading .hft-actions{margin:0;margin-left:auto}}
@media(max-width:600px){.hft-patient-heading .hft-patient-metrics h2{width:100%;margin-bottom:8px;font-size:21px}.hft-patient-heading .hft-patient-metrics span{margin-left:0;margin-right:8px;padding:0 8px;font-size:12px}.hft-patient-heading .hft-actions{flex-shrink:1;justify-content:flex-start;margin-left:0}.hft-library-heading{align-items:flex-start;gap:12px}.hft-library-heading p{font-size:12px}.hft-library-heading>button{padding:9px;font-size:12px}.hft-reader{padding:12px}.hft-reader-exercise{gap:12px}.hft-reader-exercise>img,.hft-reader-placeholder{width:88px;height:100px;flex-basis:88px}.hft-reader-exercise h4{font-size:14px;margin:3px 0 6px}.hft-reader-exercise p{font-size:12px}.portal .tabs>button{padding:10px 5px;font-size:13px;gap:5px}.portal .tabs>button svg{width:18px;height:18px}}
/* V442: compact layouts and trainer-only fixed header. */
.hft-trainer .hft-shell{padding-top:112px}.hft-topbar{position:fixed;top:0;left:0;right:0;z-index:2;background:#101113;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 28px;min-height:76px;box-sizing:border-box;border-bottom:1px solid #45484d}.hft-brand,.hft-account{display:flex;align-items:center;gap:16px}.hft-brand img{width:48px;height:48px;object-fit:contain;border-radius:50%}.hft-brand small,.hft-account small{display:block;color:#cbd0d6}.hft-brand b{font-size:18px}.hft-account>div{text-align:right}.hft-overlay .hft-topbar .hft-btn{color:#fff;background:#101113;border-color:#666}.hft-overlay .hft-topbar .hft-btn:hover{background:#303238;color:white}.hft-topbar svg{display:block}.hft-form-heading,.hft-plan-heading,.hft-reader-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.hft-form-heading h2,.hft-plan-heading h2{margin:0}.hft-plan-heading p{margin:4px 0 0}.hft-plan-heading .hft-actions{justify-content:flex-end;margin:0}.hft-form[data-form=teacher],.hft-form[data-form=package]{grid-template-columns:repeat(4,minmax(0,1fr))}.hft-link-training{min-height:46px;box-sizing:border-box;border-radius:10px}.hft-form-heading button{align-self:center}.hft-stats{grid-template-columns:repeat(2,minmax(0,240px));gap:12px;margin:12px 0}.hft-stats .hft-card{padding:14px 18px}.hft-stats h2{margin:0 0 5px}.hft-stats strong{font-size:28px}.hft-overview-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.hft-overview-lists .hft-card{margin:0;padding:18px}.hft-overview-lists .hft-card h2{margin-bottom:8px;font-size:17px}.hft-overview-lists .hft-row{padding:12px 0}.hft-overview-lists .hft-row .hft-btn{white-space:nowrap;padding:8px 12px}.hft-plan-row .hft-actions{margin:0}.hft-reader:has(.hft-reader-card){border:0;padding:0;background:transparent}.hft-reader-card{border:1px solid #b4b8be;border-radius:18px;background:#fff;overflow:hidden;margin:0 0 14px}.hft-reader-summary{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:18px;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit}.hft-reader-summary small{display:block;color:#65707b;margin-top:4px}.hft-reader-icon{background:#25282b;color:#fff;border-radius:12px;padding:10px;display:flex}.hft-chevron{margin-left:auto;font-size:26px}.hft-reader-content{padding:0 20px 20px}.hft-reader-heading{margin-bottom:14px}.hft-reader-heading .hft-btn{font-size:13px;white-space:normal;text-decoration:none;text-align:center}.hft-reader-summary:focus-visible{outline:2px solid currentColor;outline-offset:-4px}
html[data-theme=dark] .hft-reader-card{background:#1c1e20;border-color:#737981;color:#f1f3f5}html[data-theme=dark] .hft-reader-summary{color:#f1f3f5}html[data-theme=dark] .hft-reader-summary small,html[data-theme=dark] .hft-muted,html[data-theme=dark] .hft-stats h2{color:#bec6d1}html[data-theme=dark] .hft-reader-icon{background:#3b4046;color:#fff}html[data-theme=dark] .hft-reader .hft-btn{color:#f1f3f5;border-color:#9199a4;background:#292d33}html[data-theme=dark] .hft-overlay .hft-btn{border-color:#9299a2}html[data-theme=dark] .hft-overview-lists .hft-card{border-color:#737981}
.hf-management-heading{justify-content:flex-start!important;margin-top:0!important}.hf-management-tabs{justify-content:flex-start!important}.apn-fin-tabs{justify-content:flex-start;flex-wrap:wrap}
@media(max-width:850px){.hft-overview-lists{grid-template-columns:1fr}.hft-form[data-form=teacher],.hft-form[data-form=package]{grid-template-columns:repeat(2,minmax(0,1fr))}.hft-plan-heading{flex-wrap:wrap}.hft-plan-heading .hft-actions{justify-content:flex-start}.hft-topbar{padding:12px 16px;gap:10px}.hft-account{gap:8px}.hft-brand{gap:8px}}
@media(max-width:600px){.hft-topbar{flex-wrap:wrap;position:sticky;top:0}.hft-trainer .hft-shell{padding-top:16px}.hft-brand img{width:36px;height:36px}.hft-brand b{font-size:15px}.hft-brand small{font-size:11px}.hft-account{margin-left:auto;font-size:12px}.hft-account .hft-btn{padding:8px}.hft-account>div{max-width:135px;overflow-wrap:anywhere}.hft-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hft-form[data-form=teacher],.hft-form[data-form=package]{grid-template-columns:1fr}.hft-reader-heading{flex-wrap:wrap}.hft-reader-heading .hft-btn{margin-left:auto}.hft-reader-content{padding:0 12px 14px}.hft-reader-summary{padding:14px}.hft-plan-heading{gap:12px}}

html[data-theme=dark] .hft-library-heading p,html[data-theme=dark] .hft-patient-heading small{color:#bec6d1}

/* V443: consistent navigation and exclusive overview lists. */
.hf-management-heading > .hf-management-tabs{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center;justify-content:flex-start;gap:10px;max-width:100%;overflow-x:auto;padding:2px 0 8px}
.hf-management-heading > .hf-management-tabs>button{flex:0 0 auto;width:auto!important;white-space:nowrap}
.apn-fin-app>.apn-fin-tabs>button,.hft-overlay .hft-tabs>.hft-btn{background:#111!important;color:#fff!important;font-weight:700!important;box-shadow:none!important;border:1px solid #555!important}
.apn-fin-app>.apn-fin-tabs>button:hover,.hft-overlay .hft-tabs>.hft-btn:hover{background:#303030!important;color:#fff!important;box-shadow:none!important}
.apn-fin-app>.apn-fin-tabs>button:focus-visible,.hft-tabs>.hft-btn:focus-visible{outline:2px solid #7d8b9b;outline-offset:3px}
.hft-overview-selectors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:12px 0}
.hft-overview-selectors .hft-card{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:18px}
.hft-overview-selectors h2{margin:0 0 6px;font-size:16px}.hft-overview-selectors strong{font-size:27px}.hft-overview-selectors button{white-space:nowrap}.hft-overview-selectors button[aria-expanded=true]{outline:2px solid #7d8b9b;outline-offset:2px}
#hft-overview-patients:empty{display:none}
@media(max-width:650px){.hft-overview-selectors{grid-template-columns:1fr}.hft-overview-selectors .hft-card{padding:14px}}

/* V444 — shared weekly distribution, prescription and patient app. */
.hft-distribution-body{display:grid;grid-template-columns:minmax(180px,290px) minmax(0,1fr);align-items:center;gap:32px;margin-top:20px}
.hft-donut{position:relative;width:100%;max-width:290px;margin:auto;aspect-ratio:1}
.hft-donut svg{display:block;width:100%;height:100%}
.hft-donut-center{position:absolute;inset:26%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}
.hft-donut-center strong{font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.1;color:inherit}
.hft-donut-center span{font-size:.78rem;margin-top:6px;line-height:1.3}
.hft-volume-legend{list-style:none;margin:0;padding:0;min-width:0}
.hft-volume-legend li{display:grid;grid-template-columns:12px minmax(0,1fr) auto 58px;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid rgba(128,128,128,.23);line-height:1.4}
.hft-volume-legend li:last-child{border-bottom:0}.hft-volume-legend b{text-align:right}.hft-volume-legend small{font-size:.78rem;color:inherit;opacity:.8}
.hft-muscle-dot{width:12px;height:12px;border-radius:50%}
.hft-volume-note{font-size:.78rem;line-height:1.5;opacity:.8;margin:16px 0 0}
.hft-reader .hft-distribution{margin-top:24px;color:inherit;background:transparent}
@media(max-width:650px){.hft-distribution-body{grid-template-columns:1fr;gap:12px}.hft-donut{max-width:245px}.hft-volume-legend li{gap:8px;grid-template-columns:10px minmax(0,1fr) auto 52px;font-size:.86rem}.hft-volume-legend small{font-size:.72rem}}

/* V445: explicações opcionais de RM e RIR por exercício */
.hft-effort-help{margin:12px 0;padding:12px 14px;border:1px solid currentColor;border-radius:12px;color:inherit;font-size:14px;line-height:1.55;overflow-wrap:anywhere}
.hft-effort-help summary{cursor:pointer;font-weight:700;color:inherit}
.hft-effort-help p{font-size:inherit!important;line-height:1.55;margin:10px 0!important;color:inherit!important}
.hft-effort-help summary:focus-visible{outline:2px solid currentColor;outline-offset:4px}
#hft-effort-preview:empty{display:none}

/* V446: técnicas e blocos combinados */
.hft-method-fields{border:1px solid currentColor;border-radius:14px;padding:16px;display:grid;gap:12px;min-width:0}
.hft-method-fields legend{font-weight:700;padding:0 8px}
.hft-method-fields label{min-width:0}.hft-method-fields select{max-width:100%}
.hft-technique-badge{display:inline-block;padding:5px 10px;border:1px solid currentColor;border-radius:8px;font-weight:700;margin:8px 0}
.hft-combination{margin-top:20px;padding:14px;border:1px solid currentColor;border-left:5px solid currentColor;border-radius:12px;color:inherit}
.hft-combination h3{margin:0 0 8px}.hft-combination p{margin:6px 0;overflow-wrap:anywhere}
.hft-preserve{white-space:pre-wrap;overflow-wrap:anywhere}

/* V447: compact daily chart, inline combinations and consistent actions. */
.hft-overlay .hft-exercise-form label,.hft-overlay .hft-exercise-form legend{font-weight:700}
.hft-overlay .hft-exercise-form input,.hft-overlay .hft-exercise-form select,.hft-overlay .hft-exercise-form textarea{font-weight:400}
.hft-partners{grid-column:1/-1;display:grid;gap:18px}
.hft-partner{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:22px;border-top:1px solid #8888;padding-top:18px}
.hft-partner>div:first-child{display:grid;gap:12px;align-content:start}
.hft-partner-image img{display:block;width:100%;max-height:280px;object-fit:contain}
.hft-exercise-image{position:static}
.hft-day-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.hft-day-heading h2{margin:0}
.hft-day-heading+.hft-distribution,.hft-card>.hft-daily-distribution{border:0;padding:14px 0 0;margin:0;box-shadow:none}
.hft-daily-distribution .hft-distribution-body{display:grid;grid-template-columns:80px minmax(0,1fr);gap:20px;align-items:center}
.hft-daily-distribution .hft-donut{width:80px!important;max-width:80px;height:80px}
.hft-daily-distribution .hft-donut-center strong{font-size:17px}
.hft-daily-distribution .hft-donut-center span{display:none}
.hft-daily-distribution .hft-volume-legend{margin:0}
.hft-daily-distribution .hft-volume-legend li{padding:5px 0;font-size:13px}
.hft-daily-distribution>p.hft-muted{display:none}
.hft-overlay .hft-plan-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;border-bottom:1px solid #8889;gap:8px 20px;padding:20px 0}
.hft-overlay .hft-plan-row:last-child{border-bottom:0}
.hft-overlay .hft-plan-row>.hft-progress{grid-column:1/-1;margin-top:0}
.hft-overlay .hft-plan-row>.hft-actions{justify-content:flex-end;align-self:start}
.hft-overlay .hft-patient-row{align-items:flex-start;border-bottom-color:#8889}
.hft-overlay .hft-day-progress{width:100%;display:flex;flex-wrap:wrap}
.hft-overlay .hft-day-progress .hft-btn{white-space:nowrap;flex:0 0 auto}
.hft-overlay [data-act="edit-plan"],.hft-overlay [data-act="patient"],.hft-overlay [data-act="package"],.hft-patient-heading a.hft-btn{background:#101113!important;color:#fff!important;font-weight:700!important;border:1px solid #666!important;box-shadow:none!important;border-radius:12px;padding:10px 16px;min-height:42px;white-space:nowrap}
@media(max-width:700px){.hft-partner{grid-template-columns:1fr}.hft-partner-image img{max-height:220px}.hft-day-heading{flex-wrap:wrap}.hft-day-heading .hft-actions{margin-left:auto}.hft-daily-distribution .hft-distribution-body{grid-template-columns:80px minmax(0,1fr);gap:12px}.hft-daily-distribution .hft-volume-legend li{grid-template-columns:10px minmax(0,1fr) auto auto;gap:6px}.hft-overlay .hft-plan-row{gap:8px}}

/* V449: requested action contrast and compact volume legend. */
.hft-overlay .hft-btn[data-act="teacher-contact"],.hft-overlay .hft-btn[data-act="copy-login"],.hft-overlay .hft-btn[data-act="reset-access"],.hft-overlay .hft-btn[data-act="toggle-teacher"],.hft-overlay .hft-btn[data-act="delete-teacher"],.hft-overlay .hft-btn[data-act="overview-list"],.hft-overlay .hft-btn[data-act="assessments"],.hft-overlay .hft-btn[data-act="open-weekday"],.hft-overlay .hft-btn[data-act="plan-meta"],.hft-overlay .hft-btn[data-act="unpublish"],.hft-overlay .hft-btn[data-act="new-exercise"],.hft-overlay .hft-btn[data-act="day-meta"],.hft-overlay .hft-btn[data-act="exercise-meta"],.hft-overlay .hft-btn[data-act="move-up"],.hft-overlay .hft-btn[data-act="move-down"],.hft-overlay .hft-btn[data-act="delete-exercise"],.hft-overlay .hft-btn[data-act="templates"],.hft-overlay .hft-btn[data-act="day"],.hft-overlay .hft-primary{
 background:#101113!important;color:#fff!important;font-weight:700!important;border-color:#101113!important;
}
.hft-overlay .hft-btn[data-act="teacher-contact"]:hover,.hft-overlay .hft-btn[data-act="copy-login"]:hover,.hft-overlay .hft-btn[data-act="reset-access"]:hover,.hft-overlay .hft-btn[data-act="toggle-teacher"]:hover,.hft-overlay .hft-btn[data-act="delete-teacher"]:hover,.hft-overlay .hft-btn[data-act="overview-list"]:hover,.hft-overlay .hft-btn[data-act="assessments"]:hover,.hft-overlay .hft-btn[data-act="open-weekday"]:hover,.hft-overlay .hft-btn[data-act="plan-meta"]:hover,.hft-overlay .hft-btn[data-act="unpublish"]:hover,.hft-overlay .hft-btn[data-act="new-exercise"]:hover,.hft-overlay .hft-btn[data-act="day-meta"]:hover,.hft-overlay .hft-btn[data-act="exercise-meta"]:hover,.hft-overlay .hft-btn[data-act="move-up"]:hover,.hft-overlay .hft-btn[data-act="move-down"]:hover,.hft-overlay .hft-btn[data-act="delete-exercise"]:hover,.hft-overlay .hft-btn[data-act="templates"]:hover,.hft-overlay .hft-btn[data-act="day"]:hover,.hft-overlay .hft-primary:hover{
 background:#303238!important;color:#fff!important;
}
.hft-overlay .hft-btn:focus-visible,.hft-overlay .hft-primary:focus-visible{outline:2px solid #737984;outline-offset:3px}
.hft-distribution .hft-volume-legend{width:100%;max-width:420px;justify-self:start;box-sizing:border-box}
.hft-distribution .hft-volume-legend small,.hft-distribution .hft-volume-legend b{white-space:nowrap}
@media(max-width:380px){
 .hft-daily-distribution .hft-distribution-body{grid-template-columns:1fr}
 .hft-daily-distribution .hft-volume-legend{max-width:100%}
}

/* Gestão dos treinamentos */
.hft-mg-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.hft-mg-stats .hft-card{min-width:0}.hft-mg-stats strong{font-size:1.6rem}.hft-mg-stats h2{font-size:1rem!important}.hft-mg-patient{padding:12px 0;border-bottom:1px solid #8884}.hft-mg-patient summary{cursor:pointer}.hft-mg-event{justify-content:flex-start!important;gap:14px}.hft-mg-event input[type=checkbox]{width:20px!important;flex-shrink:0}.hft-mg-event span{min-width:0;overflow-wrap:anywhere}.hft-mg-event small{display:block}.hft-mg-rate{padding:10px 0}#hft-mg-filter select,#hft-mg-filter input,.hft-mg-rate input{max-width:100%;min-width:0}.hft-row progress{display:block;width:min(380px,100%);height:12px;accent-color:#20a77a}#hft-mg-filter{align-items:end}@media(max-width:760px){.hft-mg-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.hft-mg-stats strong{font-size:1.25rem}.hft-mg-event{align-items:flex-start!important}.hft-mg-rate{flex-wrap:wrap}}
