:root{--bg:#0b0d10;--card:#14181d;--card2:#1a2026;--text:#f4f1ea;--muted:#8d98a5;--line:#28313a;--accent:#d8ff75;--secondary:#65d6ff;--warn:#ffbf69}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display",Inter,Arial,sans-serif}.app{max-width:720px;margin:auto;padding:24px 18px 44px}.brand,.footerBrand{font-weight:950;letter-spacing:-2px;font-size:34px}.footerBrand{font-size:20px;text-align:center;margin-top:36px}.eyebrow{font-size:11px;font-weight:850;letter-spacing:1.5px;color:var(--muted);text-transform:uppercase}.card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:18px;margin:18px 0}.compact{padding:16px}h1{font-size:30px;line-height:1.05}h2{margin:5px 0;font-size:28px}.muted,.small{color:var(--muted)}.small{font-size:11px}.row,.topbar,.choiceRow,.workActions,.filterRow{display:flex;align-items:center;justify-content:space-between;gap:10px}.pill{padding:8px 10px;border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:800}.start,.customStart,.ghost,.doneBtn,.swapBtn,.choiceRow button,.textBtn{width:100%;min-height:48px;border:0;border-radius:14px;font-weight:900;letter-spacing:.3px}.start,.doneBtn{background:var(--accent);color:#0a0d08}.customStart,.swapBtn{background:var(--card2);color:var(--text);border:1px solid var(--line);margin-top:9px}.ghost,.choiceRow button{background:transparent;color:var(--text);border:1px solid var(--line)}.choiceRow{margin:16px 0}.choiceRow button{font-size:11px}.textBtn{width:auto;background:none;color:var(--accent);font-size:11px}.homeGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.navCard{min-height:100px;text-align:left;border-radius:18px;border:1px solid var(--line);background:var(--card);color:var(--text);padding:16px}.navCard span{display:block;color:var(--muted);margin-top:6px}.muscleSelect{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.muscleSelect input{display:none}.muscleSelect span,.filterRow button{display:block;padding:10px 13px;border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:800}.muscleSelect input:checked+span,.filterRow button.active{background:var(--accent);color:#0b0d10;border-color:var(--accent)}.previewList,.libraryList,.swapList{display:grid;gap:10px;margin:16px 0}.exCard{display:grid;grid-template-columns:105px 1fr;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:10px}.thumb,.mini{background:#fff;border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center}.thumb{height:100px}.thumb img,.mini img,.gifDemo img,.techGif img{width:100%;height:100%;object-fit:contain}.exMeta{min-width:0}.exMeta>b{display:block;margin:5px 0}.exMeta span,.exMeta small{color:var(--muted);font-size:12px}.exMeta button{margin:12px 6px 0 0;background:none;color:var(--accent);border:0;font-weight:850}.progress{height:4px;background:var(--line);border-radius:4px;margin:14px 0}.progress i{display:block;height:100%;background:var(--accent)}.exerciseName{font-size:23px;font-weight:900}.gifDemo{height:260px;background:#f7f7f4;border-radius:20px;overflow:hidden}.techGif{height:300px;background:#f7f7f4;border-radius:20px;overflow:hidden;margin:14px 0}.noGif{color:#444;font-weight:900}.big{height:100%;display:flex;align-items:center;justify-content:center}.muscles{margin:16px 0}.mrow{margin:9px 0}.mlabel{display:flex;justify-content:space-between;font-size:12px}.mbar{height:7px;background:var(--line);border-radius:8px;overflow:hidden;margin-top:4px}.mbar i{display:block;height:100%;background:var(--accent)}.mbar i.secondary{background:var(--secondary)}.muscleNote{margin-top:10px}.workActions{flex-wrap:wrap}.workActions button{flex:1;min-width:120px}.techText{background:var(--card);border:1px solid var(--line);padding:16px;border-radius:18px}.techText p{line-height:1.45}.recovery>div,.balanceBars>div{display:grid;grid-template-columns:110px 1fr 72px;align-items:center;gap:8px;margin:10px 0;font-size:11px}.recovery i,.balanceBars i{height:7px;background:var(--line);border-radius:8px;overflow:hidden}.recovery b,.balanceBars b{display:block;height:100%;background:var(--accent)}.recovery em,.balanceBars em{font-style:normal;color:var(--muted);text-align:right}.search{width:100%;font-size:16px;background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:14px;padding:14px;margin:14px 0}.filterRow{overflow:auto;justify-content:flex-start}.filterRow button{background:transparent;color:var(--text);white-space:nowrap}.libRow,.swapList button{display:flex;align-items:center;gap:12px;text-align:left;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--text);padding:10px}.libRow .mini{width:65px;height:65px;flex:none}.libRow span,.swapList span:first-child{flex:1}.libRow small,.swapList small{display:block;color:var(--muted);margin-top:4px}.reasonGrid,.feedback,.scoreGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.reasonGrid button,.feedback button{min-height:60px;border:1px solid var(--line);border-radius:15px;background:var(--card);color:var(--text);font-weight:850}.rest,.complete{text-align:center;padding:60px 0}.timer{font-size:100px;font-weight:950}.scoreRing{width:90px;height:90px;margin:20px auto;border:8px solid var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:950}.bigScore{width:130px;height:130px;font-size:40px}.scoreGrid{grid-template-columns:repeat(3,1fr)}.scoreGrid div{background:var(--card);padding:14px;border-radius:14px}.scoreGrid span{display:block;color:var(--muted);font-size:10px;margin-top:4px}.full{margin-top:10px}@media(max-width:480px){.app{padding:18px 14px 36px}.gifDemo{height:220px}.techGif{height:250px}.homeGrid{grid-template-columns:1fr}.exCard{grid-template-columns:88px 1fr}.thumb{height:88px}.recovery>div,.balanceBars>div{grid-template-columns:95px 1fr 62px}}

.modePicker{margin:16px 0 12px}.modeButtons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}
.modeButtons button{min-height:46px;border:1px solid var(--line,#d8d8d8);border-radius:12px;background:transparent;font-weight:800;font-size:12px;padding:8px}
.modeButtons button.active{background:#111;color:#fff;border-color:#111}
@media(max-width:420px){.modeButtons button{font-size:11px;padding:6px}}

/* v7.1 compact training-mode selector */
.modeButtons{display:block!important;margin-top:8px}
.modeButtons .modeMain{width:100%;min-height:48px;font-size:13px}
.modeAltRow{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:7px}
.modeAltRow button{min-height:36px!important;font-size:10px!important;padding:5px 8px!important;border-radius:10px!important}

.catalogStats{font-size:12px;color:#777;margin:4px 0 12px;font-weight:700}
