
:root{--bg:#071526;--panel:#0c2138;--panel2:#0a1a2c;--line:#294865;--text:#f7fbff;--muted:#9fb3ca;--blue:#3c83e8;--purple:#705ce5;--green:#177646;--red:#b53d4b;--radius:17px}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}body{padding-bottom:86px}button,input,select,textarea{font:inherit}button,select,input,textarea,.buttonLike{border:1px solid var(--line);border-radius:11px;background:#0a1a2c;color:var(--text);min-height:43px;padding:9px 11px}button{font-weight:750;cursor:pointer}button:hover{filter:brightness(1.08)}input,textarea,select{width:100%}.hidden{display:none!important}.fatal{position:fixed;inset:10px;z-index:999;background:#4e1118;padding:20px;border-radius:15px;white-space:pre-wrap}.appHeader{max-width:960px;margin:auto;height:62px;padding:7px 16px;display:flex;align-items:center;justify-content:space-between}.appHeader h1{font-size:21px;margin:0}.appHeader p{font-size:9px;color:#9fcbff;margin:4px 0}.avatar{width:44px;height:44px;border-radius:15px;background:linear-gradient(135deg,var(--blue),var(--purple));display:grid;place-items:center;font-weight:800}main{max-width:960px;margin:auto;padding:0 14px 30px}.screen{display:none}.screen.active{display:block}.card,.hero{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:13px;margin-bottom:10px}.hero{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#102a47,#11213b)}h2,h3{margin:2px 0 8px}.eyebrow,.muted,.timeBox span{font-size:11px;color:var(--muted)}.scoreRing{width:76px;height:76px;border:8px solid #244765;border-top-color:#53d096;border-radius:50%;display:grid;place-items:center;text-align:center}.scoreRing b{font-size:18px}.scoreRing span{font-size:8px}.row{display:flex;gap:8px;align-items:center}.between{justify-content:space-between}.sectionTitle,.screenHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.linkBtn{border:0;background:transparent;color:#78b2ff}.macroGrid,.summaryGrid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:10px}.macroGrid>div,.summaryGrid>div{background:#091829;border:1px solid var(--line);border-radius:12px;padding:8px;text-align:center}.macroGrid span,.summaryGrid span{display:block;font-size:8px;color:var(--muted)}.macroGrid b,.summaryGrid b{font-size:13px}.checkRow{display:flex;align-items:center;gap:10px;padding:10px 2px;border-top:1px solid #203b56}.checkRow input{width:20px;min-height:auto}.progress{height:8px;background:#203d5b;border-radius:999px;overflow:hidden;margin:10px 0}.progress i{height:100%;display:block;width:0;background:linear-gradient(90deg,var(--blue),#55d198)}.twoCols{display:grid;grid-template-columns:1fr 1fr;gap:7px}.primary{background:linear-gradient(100deg,var(--blue),var(--purple));border:0}.success{background:var(--green)}.danger{background:var(--red)}.full{width:100%}.workoutHeader{position:sticky;top:0;z-index:20}.timeBox{text-align:right}.timeBox b{display:block;font-size:21px}.exerciseCard{background:var(--panel);border:1px solid var(--line);border-radius:16px;margin:9px 0;overflow:hidden}.exerciseTop{display:grid;grid-template-columns:34px 1fr 112px;gap:9px;align-items:center;padding:10px}.number{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#205fb6;font-weight:800}.exerciseTop h3{font-size:15px;margin:0}.exerciseTop p{font-size:10px;color:var(--muted);margin:4px 0}.exerciseTop img{width:112px;height:76px;object-fit:contain;background:#f3f5f7;border-radius:10px}.cardStats{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line)}.cardStats div{text-align:center;padding:7px}.cardStats div+div{border-left:1px solid var(--line)}.cardStats span{display:block;font-size:8px;color:var(--muted)}.cardBottom{padding:8px 10px;display:flex;justify-content:space-between;align-items:center}.doneText{font-size:10px;color:#58d49b}.modalWrap{position:fixed;inset:0;background:#000a;z-index:100;display:flex;justify-content:center;align-items:flex-end}.modal{background:#091a2c;border:1px solid var(--line);width:min(720px,100%);max-height:94vh;overflow:auto;border-radius:20px 20px 0 0;padding:12px}.smallModal{max-width:520px}.modalHead{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;position:sticky;top:-12px;background:#091a2c;padding:5px 0;z-index:3}.modalHead h3{text-align:center}.tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:8px 0}.tabs .active{background:#315f91}.heroImage{width:100%;height:220px;object-fit:contain;background:#f5f5f5;border-radius:13px}.detailBox{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:10px;margin:8px 0}.prGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.prGrid div{text-align:center;background:#071526;padding:9px;border-radius:10px}.prGrid span{display:block;font-size:8px;color:var(--muted)}.setsHead,.setRow{display:grid;grid-template-columns:32px 1.4fr 1fr 1fr 42px;gap:5px;align-items:center}.setsHead{font-size:8px;color:var(--muted);padding:5px}.setRow{margin:6px 0}.setRow input,.setRow select{min-height:38px;padding:4px;text-align:center}.weightControl{display:grid;grid-template-columns:34px 1fr 34px;gap:3px}.weightControl button{min-height:38px;padding:0}.restButtons{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin:8px 0}.foodResults{max-height:330px;overflow:auto;margin-top:8px}.foodResult,.mealItem,.historyRow{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 2px;border-top:1px solid #203b56}.foodResult button{min-height:34px;padding:5px 9px}.mealSection{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:11px;margin:9px 0}.mealSection h3{display:flex;justify-content:space-between}.formGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.formGrid label{font-size:10px;color:var(--muted)}.formGrid input{margin-top:4px}.stack{display:grid;gap:7px}.buttonLike{display:grid;place-items:center;font-weight:750}.diagnostics{font:12px ui-monospace,monospace;line-height:1.7}.bottomNav{position:fixed;bottom:0;left:0;right:0;height:68px;background:#06111f;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr);z-index:50}.bottomNav button{border:0;border-radius:0;background:transparent;color:var(--muted);font-size:9px;padding:4px}.bottomNav button span{display:block;font-size:15px}.bottomNav button.active{background:#17385d;color:white;border-radius:12px}.restDock{position:fixed;left:50%;transform:translateX(-50%);bottom:78px;z-index:80;background:#102a47;border:1px solid #4e759e;border-radius:14px;padding:7px;display:flex;gap:6px;align-items:center}.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:90px;z-index:120;background:#e8f4ff;color:#071526;border-radius:999px;padding:10px 18px;font-weight:800}.searchCard{position:sticky;top:0;z-index:10}.foodDetailMacros{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.foodDetailMacros div{text-align:center;background:#071526;padding:8px;border-radius:10px}.foodDetailMacros span{display:block;font-size:8px;color:var(--muted)}canvas{width:100%;height:auto;background:#071526;border-radius:12px}video{width:100%;border-radius:12px;margin-top:8px}
@media(max-width:620px){.macroGrid{grid-template-columns:repeat(3,1fr)}.summaryGrid{grid-template-columns:repeat(2,1fr)}.exerciseTop{grid-template-columns:31px 1fr 90px}.exerciseTop img{width:90px;height:66px}.formGrid{grid-template-columns:1fr 1fr}.appHeader{padding-inline:10px}main{padding-inline:8px}.heroImage{height:190px}}

.visualNote{margin:7px 2px 10px;color:#c6d7e8;font-size:11px;line-height:1.45}
.exerciseTop img{background:#eef1f3}

.selfTestReport{position:relative;z-index:500;margin:10px auto;max-width:960px;background:#06111f;color:#dfffea;border:1px solid #2f8059;border-radius:14px;padding:14px;white-space:pre-wrap;font:13px ui-monospace,monospace}
img[data-load-error="1"]{outline:4px solid #ff4056}

/* VERSION 17 */
:root{--panel:#0b2037;--panel2:#07192a;--line:#2b4e70}
.appHeader{height:66px}
.workoutHeader{box-shadow:0 10px 28px #0005}
.exerciseCard{border-radius:14px;margin:7px 0}
.exerciseTop{grid-template-columns:32px 1fr 150px;padding:8px 10px;min-height:98px}
.exerciseTop img{width:150px;height:84px;object-fit:cover;border-radius:11px;background:#e9eef2}
.exerciseTop h3{font-size:15px}
.exerciseTop p{max-width:390px}
.cardStats{display:none}
.cardBottom{border-top:1px solid var(--line);padding:7px 10px}
.cardBottom button{min-height:37px}
.doneText{max-width:75%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.heroImage{height:auto;max-height:410px;object-fit:contain}
.exerciseVisualTabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:8px 0}
.exerciseVisualTabs button.active{background:#34679d}
.movementVisual,.anatomyVisual{width:100%;max-height:410px;object-fit:contain;background:#f2f5f7;border-radius:13px}
.mealQuick{position:sticky;top:0;z-index:12}
.recentChips{display:flex;flex-wrap:wrap;gap:6px}
.recentChips button{min-height:34px;padding:6px 10px;border-radius:999px;font-size:11px}
.searchCard{position:fixed;inset:5% max(10px,calc((100% - 760px)/2));z-index:90;max-height:90vh;overflow:auto;box-shadow:0 20px 80px #000b}
.searchCard:before{content:"";position:fixed;inset:0;background:#0009;z-index:-1}
.foodResults{max-height:58vh}
.releaseNotes{margin:6px 0;padding-left:20px;color:#c7d9e9;line-height:1.8}
.prGrid{grid-template-columns:repeat(3,1fr)}
@media(max-width:620px){
 .exerciseTop{grid-template-columns:30px 1fr 112px}
 .exerciseTop img{width:112px;height:72px}
 .doneText{max-width:68%}
 .searchCard{inset:2% 7px}
}

/* V17.1 corrections */
.exerciseTop img{object-fit:cover;object-position:center;background:#111}
.movementVisual{object-fit:contain;background:#050d16}
.mealQuick{position:relative;top:auto;z-index:1}
.mealQuick .foodResults{max-height:360px;overflow:auto;margin-top:8px}
#foodSearchPanel{display:none!important}
.searchCard:before{display:none}
