/* GymLog 2.2: quieter surfaces, useful numbers, brief feedback. */
:root{--bg:#111310;--surface:#191c18;--surface2:#20241e;--surface3:#2c3227;--text:#eef0e9;--muted:#a0a799;--line:#30362c;--accent:#c2e779;--accent2:#a7cf5e;--accentDim:rgba(194,231,121,.08);--shadow:none;--r-xl:18px;--r-lg:16px;--r-md:12px}
html,body{background:var(--bg)}
body{background-image:none}
.app{width:min(760px,100%);padding-top:calc(20px + env(safe-area-inset-top));padding-bottom:36px;transition:padding-top .2s ease}
.top{margin-bottom:14px}.logo{gap:0;font-size:25px;font-weight:850;letter-spacing:-1.1px}.logo>span:not(.brand-note){color:var(--accent);font-weight:500}.brand-icon{width:26px;height:26px;margin-right:9px;stroke:var(--accent);stroke-width:2;fill:none;stroke-linecap:round}.brand-note{font-size:8px;font-weight:600;letter-spacing:1.4px;color:var(--muted);margin:5px 0 0 16px;padding-left:16px;border-left:1px solid var(--line)}
.icon-btn{border-color:transparent;background:transparent;border-radius:50%;color:var(--text);backdrop-filter:none}.icon-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.top-actions{gap:0}
#saveStatus{font-size:10px;margin-bottom:25px;color:#97a18e;letter-spacing:.2px}
.hero{padding:0 0 28px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;box-shadow:none;overflow:visible}.hero:after,.template:before{display:none}.hero .badge{background:none;border:0;border-radius:0;padding:0;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:capitalize}.hero h1{font-size:clamp(38px,8vw,56px);font-weight:760;letter-spacing:-2px;margin:10px 0}.hero-copy{font-size:14px;line-height:1.5;margin-bottom:22px;color:var(--muted)}
h1{font-size:36px;font-weight:760;letter-spacing:-1.3px}h2{font-size:19px;letter-spacing:-.35px;font-weight:700}h3{font-weight:650}.eyebrow{font-size:10px;letter-spacing:1.2px;font-weight:600}
.primary,.secondary,.ghost,.danger-btn{border-radius:10px;min-height:48px;font-weight:700;box-shadow:none;transition:background-color .16s,transform .16s,border-color .16s}.primary{background:var(--accent)}.secondary{background:var(--surface2)}.ghost{color:var(--muted)}.small-btn{min-height:40px;font-size:12px}.chip-btn{background:transparent;border-color:var(--line);border-radius:8px;font-weight:600;backdrop-filter:none;font-size:12px}.danger-btn{background:transparent}
.hero .primary{padding:0 25px}.hero .secondary{border-color:transparent;background:transparent;padding:0 14px;color:var(--muted)}
#page-today>.metrics{gap:0;margin:23px 0 30px}.metric{border:0;background:none;border-radius:0;padding:4px 15px}.metric+.metric{border-left:1px solid var(--line)}.metric:first-child{padding-left:0}.metric-value{font-size:27px;font-weight:650;letter-spacing:-1px}.metric-label{font-size:10px;font-weight:450;margin-top:6px;color:var(--muted)}
.section{margin-top:28px}.section-head{margin-bottom:16px}.section-head p{font-size:13px;line-height:1.5}.section-head .chip-btn{border:0;min-height:36px;height:36px;padding-right:0;color:var(--muted)}
.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:16px}.week-day{text-align:center;color:var(--muted);font-size:10px}.week-day i{display:grid;place-items:center;width:32px;height:32px;margin:9px auto 7px;border:1px solid var(--line);border-radius:50%;font-style:normal;color:var(--bg);font-size:13px}.week-day.trained i{background:var(--accent);border-color:var(--accent)}.week-day.is-today:not(.trained) i{border-color:var(--accent);box-shadow:inset 0 0 0 7px var(--bg);background:var(--accent)}.week-day.is-today{color:var(--text)}.week-day small{font-size:10px;font-variant-numeric:tabular-nums}
.today-card{display:flex;gap:12px;padding:12px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:none}.week-ring{height:auto;width:auto;min-width:43px;background:none;border-radius:0;color:var(--accent)}.week-ring:after{display:none}.week-ring strong{font-size:20px;font-weight:550;letter-spacing:-1px}.today-card h3{font-size:12px;font-weight:600}.today-card .row-sub{font-size:10px;margin-top:3px}.today-card .chev{display:none}
.list{gap:0}.row{background:none;border:0;border-radius:0;border-bottom:1px solid var(--line);padding:16px 0;transition:background .16s,transform .16s}.row:first-child{border-top:1px solid var(--line)}.row-title{font-weight:650;font-size:14px}.row-sub{font-size:11px;line-height:1.4}.row-score{font-weight:600;font-variant-numeric:tabular-nums}.empty{border:0;border-top:1px solid var(--line);border-radius:0;padding:24px 0;text-align:left;font-size:13px;line-height:1.6;background:none}
.quick-pr{border-radius:12px;background:var(--surface);padding:15px;border-color:transparent}.pr-icon{background:none;font-size:26px;width:26px}.pr-number{font-size:16px;font-weight:600}.pr-sub{line-height:1.5}
.template-grid{grid-template-columns:1fr;gap:0;counter-reset:plan}.template{min-height:100px;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;padding:20px 95px 20px 48px;counter-increment:plan}.template:after{content:counter(plan,decimal-leading-zero);position:absolute;top:24px;left:0;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.template:first-child{border-top:1px solid var(--line)}.template-name{font-weight:650;font-size:23px;letter-spacing:-.6px}.template-meta{margin-top:6px}.template-start{left:auto;right:0;bottom:40px;font-size:12px;font-weight:500}
.card{box-shadow:none;background:var(--surface);border-radius:14px}.card.section{padding:18px}.exercise-card{background:transparent;border:1px solid var(--line);border-radius:14px;margin-bottom:18px}.exercise-head{padding:16px 13px}.exercise-title{font-weight:650;font-size:19px;line-height:1.25}.exercise-history{font-size:10px}.exercise-menu{color:var(--muted)}.set-head{font-weight:550;letter-spacing:.5px;font-size:9px;padding-top:13px;padding-bottom:7px}.set-line{padding-top:6px;padding-bottom:6px}.set-input{border-radius:8px;font-weight:550;background:#151812;border-color:var(--line)}.set-input:focus{border-color:var(--accent);box-shadow:none}.set-input[readonly]{background:#1c2315}.complete{border-radius:8px;background:transparent;border-color:var(--line);font-weight:500}.complete.done{background:var(--accent);box-shadow:none}.set-prev{font-size:10px;color:#949e87}.set-num{font-weight:500}.delete-set{color:#7c8573}.exercise-foot{padding-top:13px}.text-btn{font-weight:600}.workout-top{padding-bottom:18px;background:var(--bg);border-bottom:1px solid var(--line);margin-bottom:19px;transition:top .2s ease}.workout-titlebar h2{font-size:25px;line-height:1.25}.session-clock{font-weight:450;font-size:12px;margin-bottom:5px}.session-summary{margin-top:16px}.session-summary strong{font-weight:650}#finishWorkout{border-color:var(--accent);color:var(--accent)}
.rest-pill{border:1px solid var(--line);background:#252d1c;border-radius:12px;padding:7px 9px 7px 14px;box-shadow:0 4px 18px #0003;backdrop-filter:none}.rest-time{font-size:20px;font-weight:600}.rest-label{font-size:8px;letter-spacing:1px;font-weight:500}.rest-close{background:#323f24;border-radius:8px;font-weight:550}.rest-overlay{transition:opacity .18s,transform .18s}.rest-overlay.on{animation:rest-in .22s ease-out}.rest-running .app{padding-top:calc(96px + env(safe-area-inset-top))}.rest-running .workout-top{top:calc(78px + env(safe-area-inset-top))}
.fab-area{padding-bottom:8px;background:linear-gradient(transparent,var(--bg) 25%)}
.nav{background:#111310f5;border-top:1px solid var(--line);backdrop-filter:blur(16px)}.nav-inner{gap:12px}.nav button{position:relative;color:var(--muted);font-weight:550;min-height:56px;border-radius:0;transition:color .18s}.nav button:after{content:'';position:absolute;left:28%;right:28%;top:-8px;height:2px;transform:scaleX(0);background:var(--accent);transition:transform .2s}.nav button.active{background:none;color:var(--accent)}.nav button.active:after{transform:scaleX(1)}.nav svg{stroke-width:1.7;margin-bottom:5px}
.sheet{background:var(--surface);border-radius:20px 20px 0 0;box-shadow:none}.modal.open{animation:backdrop-in .16s ease-out}.modal.open .sheet{animation:sheet-in .24s cubic-bezier(.2,.8,.2,1)}.handle{background:#4d5743;width:32px;height:3px}.search,.field input,.field select,.field textarea{border-radius:9px;background:#141710}.field label{font-weight:550;font-size:10px}.pick-row{border-radius:9px;background:transparent}.pick-name{font-weight:550}.pick-muscle{font-size:11px}.toast{top:calc(12px + env(safe-area-inset-top));bottom:auto;background:#dceac5;color:#17200e;font-weight:550;border-radius:8px;box-shadow:0 3px 14px #0003}.rest-running .toast{top:calc(85px + env(safe-area-inset-top))}
.chart-card{background:transparent;padding:0;border:0}.chart-wrap{border-radius:10px;background:#141710}.segment{border-radius:9px;background:#141710}.segment button{font-weight:550;border-radius:6px}.record{border-radius:0;border:0;border-bottom:1px solid var(--line);background:none;padding:15px 0}.record .k{font-weight:500;color:var(--muted)}.record .v{font-size:26px;font-weight:550}.record-grid{column-gap:28px}.metric-help{margin:16px 0 8px}summary{font-size:12px;color:var(--muted);cursor:pointer;padding:8px 0}.note{font-weight:400;line-height:1.65}.page.active{animation:page-in .22s cubic-bezier(.2,.8,.2,1)}
@keyframes page-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@keyframes sheet-in{from{opacity:.5;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes backdrop-in{from{background-color:transparent}to{background-color:rgba(0,0,0,.68)}}
@keyframes rest-in{from{opacity:0;transform:translateX(-50%) translateY(-8px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}
@media(hover:hover) and (pointer:fine){.primary:hover{background:#d2f391}.secondary:hover,.chip-btn:hover{background:#2c3423}.icon-btn:hover{background:var(--surface2)}.template:hover,.row:hover{background:#ffffff03}.template:hover .template-start{transform:translateX(3px)}.template-start{transition:transform .16s}}
@media(min-width:760px){.app{padding-left:28px;padding-right:28px}.hero{padding-top:15px}.section{margin-top:34px}.template{min-height:108px}.hero h1{margin-top:16px}.hero .actions{margin-top:25px}}
@media(max-width:430px){.brand-note{display:none}.top-actions .icon-btn{width:40px;min-width:40px}.metrics .metric-value{font-size:25px}.hero h1{font-size:44px}.hero .actions{gap:7px}}
@media(max-width:370px){#page-today>.metrics{grid-template-columns:repeat(3,1fr)}#page-today>.metrics .metric:last-child{grid-column:auto}.metric{padding-right:6px;padding-left:9px}.metric-value{font-size:23px!important}.metric-label{font-size:9px}.hero h1{font-size:40px}.hero .primary{padding:0 16px}.hero .secondary{padding:0 8px}.week-strip{gap:2px}.week-day i{width:30px;height:30px}.template{padding-left:35px;padding-right:77px}.template-name{font-size:22px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.card.today-card{background:none;border-radius:0}
