@font-face{font-family:Geist;src:url('./geist-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Geist;src:url('./geist-bold.ttf') format('truetype');font-style:normal;font-weight:700 900;font-display:swap}
body{background:radial-gradient(ellipse 85% 35% at 50% -10%,#252525 0%,#080808 70%);background-attachment:fixed}
#app{overflow-x:hidden}
.top{padding-top:29px}
.eyebrow{color:#a7a7a7}
.top h1{font-size:clamp(32px,8vw,38px);font-weight:800;max-width:580px}
.hero{background:radial-gradient(circle at 90% 5%,#303030,#1b1b1b 42%,#121212 80%);border-color:#363636;min-height:212px;padding:25px 24px}
.hero:after{width:250px;height:250px;border-color:#6a6a6a;right:-100px;top:-125px;opacity:.25}
.hero h2{font-size:clamp(26px,6vw,34px);max-width:290px;line-height:1.08;letter-spacing:-.055em}
.hero p{color:#bbb;max-width:250px}
.primary{background:#f5f5f5;color:#080808;box-shadow:0 8px 26px rgba(255,255,255,.09)}
.primary:active,.secondary:active,.calendar-arrow:active{transform:scale(.97)}
.secondary{background:#252525;border-color:#424242}
.linkbtn,.iconbtn{color:#f5f5f5;min-width:44px;min-height:44px;display:inline-grid;place-items:center}
.linkbtn{display:inline-flex;align-items:center;justify-content:center}
.bottom{justify-content:space-between;gap:0;padding-left:max(7px,calc((100vw - 650px)/2));padding-right:max(7px,calc((100vw - 650px)/2));box-shadow:0 -14px 36px #0007}
.navbtn{min-width:0;flex:1;min-height:54px;color:#8d8d8d}
.navbtn.active{color:#fff}
.navbtn.active svg{filter:drop-shadow(0 0 9px #ffffff55)}
.navbtn span{font-size:10px;letter-spacing:-.02em}
.workout,.exercise,.stat,.panel{border-color:#2d2d2d}
.workout,.exercise{min-height:72px;transition:background .35s,transform .35s,border-color .35s}
.workout:hover,.exercise:hover{background:#222;border-color:#4b4b4b;transform:translateY(-2px)}
.workout:active,.exercise:active{transform:scale(.985)}
.number{background:#292929;color:#fff}
.exercise .glyph{color:#fff}
.setdone{background:#f5f5f5;color:#080808}
.setrow.complete input{color:#fff;border-color:#777}
.pill.good{color:#fff;background:#303030}
.restpanel{background:linear-gradient(135deg,#292929,#191919);border:1px solid #444;border-radius:20px;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:15px;overflow:hidden;position:relative}
.restpanel:before{content:'';position:absolute;width:120px;height:120px;border:1px solid #ffffff27;border-radius:50%;right:-55px;top:-60px}
.restpanel strong{display:block;font-size:34px;letter-spacing:-.065em;color:#fff;font-variant-numeric:tabular-nums;line-height:1.2;margin:5px 0}
.restpanel .secondary{flex:none;background:#f3f3f3;color:#080808;border-color:#fff;position:relative}
.calendar-wrap{padding-top:27px}
.calendar-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:24px}
.calendar-title>div{text-align:center;display:grid;gap:4px}
.calendar-title strong{font-size:20px;letter-spacing:-.04em;text-transform:capitalize}
.calendar-title span{font-size:12px;color:#999}
.calendar-arrow{width:44px;height:44px;display:grid;place-items:center;color:#fff;background:#202020;border:1px solid #3b3b3b;border-radius:50%;font-size:25px;line-height:1;transition:transform .2s}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-flow:dense;gap:6px;width:100%}
.calendar-weekday{height:27px;display:grid;place-items:center;color:#818181;font-size:11px;font-weight:700}
.calendar-empty{aspect-ratio:1;display:block}
.calendar-day{aspect-ratio:1;min-height:43px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:#181818;border:1px solid #262626;border-radius:13px;color:#d1d1d1;font-weight:700;position:relative;transition:background .25s,border-color .25s,transform .25s}
.calendar-day:hover{transform:scale(1.045);background:#262626}
.calendar-day.today{border-color:#848484}
.calendar-day.selected{background:#fff;color:#080808;border-color:#fff;box-shadow:0 8px 25px #ffffff20}
.calendar-day i,.calendar-legend i{display:block;width:4px;height:4px;background:currentColor;border-radius:50%;font-style:normal}
.calendar-day.trained:not(.selected){color:#fff}
.calendar-legend{display:flex;justify-content:space-between;align-items:center;margin-top:13px;color:#999;font-size:11px}
.calendar-legend span{display:inline-flex;align-items:center;gap:7px}
.calendar-legend i{background:#fff}
.calendar-no-workout{font-size:14px;color:#999;line-height:1.5;min-height:95px;display:flex;align-items:center}
.calendar-plan{width:100%}
.sheet{background:#181818}
.toast{background:#f5f5f5;color:#080808;border-color:#fff;box-shadow:0 15px 35px #0008}
.install{background:#1b1b1b;color:#ddd;border-color:#424242}
@media(max-width:380px){.calendar-grid{gap:4px}.calendar-day{min-height:39px}.navbtn span{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
