.app-logo{display:flex;align-items:center;gap:7px;border:0;background:none;padding:0;min-height:36px;text-align:left;color:var(--text)}
.app-logo img{display:block;flex-shrink:0}
.app-logo>span{font-size:13px;font-weight:700;letter-spacing:.6px;line-height:1.3}
.app-logo small{display:block;font-size:8px;font-weight:400;letter-spacing:.2px;color:var(--muted);margin-top:2px}
header{padding-top:calc(8px + env(safe-area-inset-top));padding-bottom:8px}
.heat-scroll{scrollbar-width:none;cursor:grab;user-select:none;-webkit-user-select:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.heat-scroll::-webkit-scrollbar{display:none}
.heat-scroll.dragging,.heat-scroll.dragging *{cursor:grabbing!important}
.preview-more{font-size:10px;color:var(--muted);margin:5px 0 0}
html[data-page=home],html[data-page=home] body{height:100dvh;min-height:0;overflow:hidden}
html[data-page=home] #app{height:100dvh;min-height:0}
html[data-page=home] main{height:calc(100dvh - 67px - env(safe-area-inset-bottom));padding-bottom:0;display:flex;flex-direction:column}
html[data-page=home] header{flex-shrink:0}
html[data-page=home] .content{flex:1;min-height:0;padding-top:8px;padding-bottom:10px;display:flex;flex-direction:column;gap:12px}
html[data-page=home] footer{display:none}
html[data-page=home] .heatmap-section{flex-shrink:0;padding-bottom:12px}
html[data-page=home] .heat-heading{margin-bottom:7px}
html[data-page=home] .heat-footer{margin-top:8px;gap:6px;font-size:8px}
html[data-page=home] .heat-grid{grid-template-rows:repeat(7,12px);grid-template-columns:repeat(var(--cols),12px);gap:4px}
html[data-page=home] .heat-inner{width:calc(var(--cols)*16px - 4px);min-width:calc(var(--cols)*16px - 4px)}
html[data-page=home] .month-labels{grid-template-columns:repeat(var(--cols),12px);gap:4px;margin-top:8px;font-size:10px}

.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
html[data-page=home] .summary-grid{flex-shrink:0;grid-template-columns:repeat(3,minmax(0,1fr));padding:0 0 12px;margin:0;gap:0}
html[data-page=home] .stat,html[data-page=home] .stat:nth-child(odd){gap:5px;padding:0 8px;border:0;border-left:1px solid var(--line);min-width:0}
html[data-page=home] .stat:first-child{padding-left:0;border-left:0}
html[data-page=home] .stat strong{font-size:23px;line-height:1.2}
html[data-page=home] .stat>span{font-size:9px;white-space:nowrap}
html[data-page=home] .stat>small{display:none}
html[data-page=home] .home-overview{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
html[data-page=home] .today-preview{height:100%;width:100%;min-height:0;margin:0;padding:14px;display:grid;grid-template-rows:auto auto auto minmax(0,1fr) 44px;gap:10px;overflow:hidden;container-type:size}
html[data-page=home] .today-preview h2{font-size:12px}
.menu-identity{min-width:0}
.menu-identity h3{font-size:18px;font-weight:600;line-height:1.3;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin:0}
.menu-meta{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:10px;color:var(--muted)}
.menu-meta>span:first-child{color:var(--orange);background:#ff8a1c12;border-radius:4px;padding:3px 6px}
.menu-progress>div:first-child{display:flex;align-items:baseline;justify-content:space-between;font-size:10px;color:var(--muted);margin-bottom:6px}
.menu-progress strong{font-size:20px;font-weight:550;color:var(--orange);line-height:1}
.menu-progress strong small{font-size:10px;margin-left:2px}
.menu-progress-track{height:4px;background:var(--line);border-radius:3px;overflow:hidden}
.menu-progress-track>span{display:block;height:100%;background:var(--orange);border-radius:3px}
.menu-body{min-height:0;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.menu-exercise-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;min-height:0;overflow:hidden}
.menu-exercise-grid>div{display:flex;gap:6px;min-width:0;align-items:flex-start}
.menu-exercise-index{font-size:9px;color:var(--orange);padding-top:2px;font-variant-numeric:tabular-nums}
.menu-exercise-grid>div>div{min-width:0}
.menu-exercise-grid strong{display:block;font-size:11px;font-weight:500;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.menu-exercise-grid small{display:block;font-size:9px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.menu-remaining{font-size:9px;color:var(--muted);margin-top:6px}
html[data-page=home] .start-workout{margin:0;min-height:44px;height:44px;width:100%;font-size:12px;align-self:stretch}
.menu-rest-note{font-size:10px;color:var(--muted);margin:0}
.menu-rest-options{display:flex;align-items:center;gap:12px;font-size:12px}
.menu-rest-options svg{width:28px;height:28px;color:var(--orange);flex-shrink:0}
.menu-rest-options small{display:block;color:var(--muted);font-size:10px;margin-top:6px;line-height:1.6}
html[data-page=home] .year-control{margin:0 0 4px}
@media(max-height:740px){
 html[data-page=home] .content{gap:8px;padding-top:2px;padding-bottom:8px}
 html[data-page=home] .heatmap-section{padding-bottom:8px}
 html[data-page=home] .summary-grid{padding-bottom:8px}
 html[data-page=home] .today-preview{gap:8px;padding:12px}
 .menu-identity h3{font-size:16px}
 .menu-exercise-grid{gap:7px 10px}
}
.menu-compact-summary{display:none;font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@container(max-height:340px){.menu-exercise-grid small{display:none}.menu-exercise-grid{gap:6px 10px}}
@container(max-height:290px){.menu-exercise-grid,.menu-remaining{display:none}.menu-compact-summary{display:block}}
