@font-face{font-family:Barlow;src:url(display.ttf)}@font-face{font-family:DM;src:url(body.ttf)}
:root{--paper:#0a100e;--ink:#f2f3e9;--dim:#b2c0b8;--rule:#36483e;--lime:#f1c45d;--display:Barlow,'Arial Narrow',sans-serif;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 DM,Arial,sans-serif}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f7ce69;outline-offset:3px}button:disabled{opacity:.5;cursor:default}
.top{background:#080d0b;color:white}.bar{max-width:1250px;margin:auto;padding:0 5%;height:72px;display:flex;align-items:center;gap:6%}.brand{display:flex;align-items:center;gap:9px;color:#fff;text-decoration:none;font:700 33px/.95 var(--display);letter-spacing:-1px}.mark{display:flex;height:26px;align-items:center;gap:3px;transform:skew(-18deg)}.mark i{width:6px;background:var(--lime);height:18px}.mark i:nth-child(2){height:27px}.bar nav{align-self:stretch;display:flex;align-items:stretch;gap:22px}.bar nav button{border:none;border-bottom:3px solid transparent;color:#afbab4;background:none;font-weight:bold;padding:3px 1px 0;font-size:14px}.bar nav button[aria-current=page]{color:var(--lime);border-bottom-color:var(--lime)}#today{margin-left:auto;color:#bcc7bc;font-size:12px;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}
main{max-width:1250px;margin:auto;padding:40px 5% 80px}h1,h2,h3,h4,p{margin:0 0 .45em}h1,h2,h3,.page-title{font-family:var(--display);line-height:1.03;font-weight:bold;letter-spacing:-.012em}h1,.page-title{font-size:clamp(38px,5.1vw,64px)}h2{font-size:clamp(29px,3vw,40px)}h3{font-size:27px}.eyebrow{font:700 11px/1.4 DM,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);margin-bottom:10px}.muted,small{color:var(--dim)}.hero{position:relative;isolation:isolate;overflow:hidden;border-radius:14px;color:#fff;background:#0d1914;margin:24px 0;min-height:250px;display:flex;align-items:center}.hero-art{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#091910 8%,rgba(18,31,22,.96) 27%,rgba(18,31,22,.55) 52%,rgba(18,31,22,.03) 91%),url(training.jpg) 67% 51%/cover}.hero-content{padding:32px 4%;max-width:72%}.hero h2{font-size:clamp(38px,5vw,65px)}.hero .eyebrow{color:var(--lime)}.hero .muted,.hero small{color:#d2ddd3}.hero .btn{margin-top:10px}
.btn,main button{display:inline-flex;align-items:center;justify-content:center;gap:.45em;min-height:40px;border:1px solid var(--rule);border-radius:7px;background:#1c2a21;color:var(--ink);font-weight:600;font-size:14px;padding:8px 15px}.btn:hover,main button:hover{filter:brightness(.95)}.primary{background:var(--lime);border-color:var(--lime);color:#211808}.secondary{background:transparent;color:inherit}.section-head,.row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.section-head{margin:28px 0 14px}.section-head h2,.section-head h1{margin:0}.grid,.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.card,.stat{min-width:0;padding:22px;border:1px solid var(--rule);border-radius:12px;background:#141e19}.stats{margin-block:18px}.stat{display:flex;flex-direction:column;align-items:flex-start}.stat strong{font:700 36px/1.1 var(--display)}.card .eyebrow{color:#81d3a3}.card h3{overflow-wrap:anywhere}
input,select,textarea{min-width:0;max-width:100%;padding:9px 11px;border:1px solid #4b6254;border-radius:6px;background:#0d1611;color:var(--ink)}label{font-size:14px;font-weight:600}.field{display:flex;flex-direction:column;gap:6px}.set-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0}.set-row input[type=number]{width:88px}svg{max-width:100%}[hidden]{display:none!important}
@media(max-width:760px){.bar{height:auto;padding:16px 5% 0;flex-wrap:wrap;gap:10px}.bar nav{order:3;width:100%;justify-content:space-between;gap:5px}.bar nav button{min-height:43px}.brand{font-size:29px}main{padding-top:24px}.hero-content{max-width:90%;padding:25px}.hero{min-height:235px}.grid{grid-template-columns:1fr}.stats{gap:6px}.stat{padding:12px}.section-head{margin-top:24px}.card{padding:16px}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.rest-panel{position:fixed;z-index:8;bottom:15px;right:20px;background:#12271a;color:#fff;border-radius:12px;box-shadow:0 5px 24px #15271f30;display:flex;align-items:center;gap:22px;overflow:hidden;padding:14px 17px}.rest-line,.rest-controls,.rest-controls label{display:flex;align-items:center;gap:8px}.rest-title{font-size:14px}.rest-clock{font:700 25px var(--display);font-variant-numeric:tabular-nums;color:var(--lime)}.rest-dot{border-radius:50%;background:var(--lime);width:8px;height:8px}.rest-panel select,.rest-skip{border:1px solid #607d69;background:#1d3025;color:white;border-radius:5px;font:14px DM,sans-serif;padding:6px}.rest-progress{position:absolute;bottom:0;left:0;height:3px;background:var(--lime);width:100%;transform-origin:left}.rest-open main{padding-bottom:145px}
@media(max-width:520px){.rest-panel{bottom:7px;left:7px;right:7px;justify-content:space-between;gap:4px;padding:12px}.rest-controls{gap:5px}.rest-line{gap:6px}}
.hero-content .row,.card .row:not(.spread){justify-content:flex-start}.hero-content .row{gap:12px}.hero-content .secondary{background:#1c2920ab;border-color:#afbba980}.card .row .secondary:not(:only-child){border-color:#405749}.card h3+.muted{margin:9px 0 18px}.exercise-list,.history-list{display:grid;gap:14px;margin:18px 0}.exercise-card .section-head{margin:0 0 14px}.grow{flex:1}.field.compact{max-width:105px}.check{display:flex;align-items:center;gap:8px}.check input{width:18px;height:18px;accent-color:#2ca466}.icon-btn{min-height:34px;min-width:34px;padding:4px 8px}.exercise-card.superset{border-left:4px solid #3ba668}.workout-top,.history-card{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.history-card{cursor:pointer}.history-card:hover{border-color:#628c70}.workout-top .muted{font-variant-numeric:tabular-nums}.set-head,.set-row{display:grid;grid-template-columns:72px minmax(54px,100px) minmax(54px,100px) minmax(80px,1fr);gap:10px;align-items:center}.set-head{color:var(--dim);font:700 11px DM,sans-serif;letter-spacing:.09em;text-transform:uppercase}.set-row{border-top:1px solid #34423a;margin:7px 0 0;padding:10px 0 0}.set-row input[type=number]{width:100%}.set-row .row{gap:5px;justify-content:flex-start}.completed .log-set,.completed [data-action=log-drop]{background:var(--lime);border-color:#3b9c68}.drop-list{padding-bottom:5px}.drop-row{color:#acccba}.drop-add{border:0;background:transparent;color:#87d9a4;font-size:13px;min-height:32px;padding:4px 0}.exercise-card>.btn{margin-top:10px}.history-list .set-row{padding-bottom:4px}.add-exercise>.row{margin-top:12px}.form-error,.notice{color:#ffad87;font-size:14px}.form-error:empty{display:none}.notice{background:#37251c;padding:12px;margin:12px 0;border-radius:7px}#exercise-form{margin-bottom:20px}#exercise-form input,.add-exercise input{flex:1}.empty p{margin:0}.card+.card:not(.grid>.card,.exercise-list>.card,.history-list>.card){margin-top:12px}.hero-content h1,.hero-content h2{text-wrap:balance}
@media(max-width:580px){.set-head,.set-row{grid-template-columns:47px minmax(48px,1fr) minmax(48px,1fr) minmax(75px,auto);gap:5px}.set-row .row{flex-wrap:nowrap}.set-row input{padding:8px}.drop-row>span:first-child{font-size:12px}.add-exercise select{max-width:100%}.hero-content{max-width:100%}.hero-content .row{gap:6px}.hero .btn{padding-inline:10px}.workout-top{align-items:flex-start}.stats span{font-size:12px}.grid .row{gap:6px}}
.primary-stats .stat{border-top:3px solid #398759}.primary-stats .stat strong{font-size:clamp(28px,3.3vw,43px)}.stats:not(.primary-stats) .stat{background:transparent;border:0;border-radius:0;border-left:1px solid #34483a;padding:5px 17px}.stats:not(.primary-stats) .stat strong{font-size:25px}.stats:not(.primary-stats) .stat span{color:var(--dim);font-size:12px}.exercise-card .superset-label{font-weight:700;color:#90dba9}.stat strong{overflow-wrap:anywhere}.set-row.completed .log-set{border-color:#378a5e}.history-card .muted{font-variant-numeric:tabular-nums}

.top{border-bottom:1px solid #2f3d30}.brand{color:#f1c45d}.mark i:nth-child(2){background:#52bd78}.hero{border:1px solid #3e503e}.hero-art{filter:saturate(.75)}.primary{background:linear-gradient(110deg,#f7d783,#e6b444);border-color:#edc264}.primary-stats .stat strong{color:#efd18b}.stat span{color:#b8c5bb}.completed .log-set,.completed [data-action=log-drop]{background:#185437;color:#e0f9e9}.rest-progress,.rest-dot{background:#5dd490}.rest-clock{color:#eec974}.card a,main a{color:#f2ce7d;text-underline-offset:3px}.superset .eyebrow{color:#6dda95}input::placeholder{color:#91a397}.source-note{color:var(--dim);margin-top:22px;font-size:14px}

.brand{gap:7px;flex-shrink:0;min-height:44px}
.crest-icon,.crest-wordmark{display:block;background-image:url(signifx-crest.png);background-repeat:no-repeat}
.crest-icon{width:46px;height:46px;border-radius:50%;background-size:95px 95px;background-position:center -4px}
.crest-wordmark{width:93px;height:29px;background-size:140px 140px;background-position:center -71px}
@media(max-width:760px){.brand{gap:5px}.crest-icon{width:38px;height:38px;background-size:80px 80px}.crest-wordmark{width:86px;height:26px;background-size:130px 130px;background-position:center -66px}}
.milestone-summary{padding:clamp(22px,4vw,38px);background:linear-gradient(120deg,#182f22,#142019 65%);border:1px solid #476445;border-radius:14px}.milestone-summary strong{color:#f1cd77}.milestone-progress,progress{width:100%;height:10px;accent-color:#e4bc60;border-radius:5px}.milestone-list{display:grid;gap:8px}.milestone-row{padding:12px 15px;border-radius:8px;border:1px solid var(--rule);background:#141e19;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.milestone-row strong{overflow-wrap:anywhere}
@media(max-width:540px){.bar nav{gap:2px;overflow-x:auto}.bar nav button{font-size:clamp(11px,3.2vw,14px);flex-shrink:0}}
.milestone-summary>strong{font:700 clamp(40px,7vw,68px)/1.1 var(--display)}.milestone-summary>p{margin:8px 0}.milestone-progress{overflow:hidden;background:#304438;margin:16px 0 6px}.milestone-progress>span{display:block;height:100%;border-radius:inherit;background:#e6bd63}.milestone-row.achieved{border-color:#39764f}.milestone-row.achieved>span{color:#88daa5}.milestone-row p{margin:0}
.streak-card{margin-bottom:16px}.streak-card .section-head{margin:0}.streak-count{font:700 clamp(32px,5vw,50px)/1 var(--display);color:#efcb77}.streak-goals{display:flex;gap:8px 22px;flex-wrap:wrap;margin:16px 0 10px}.streak-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;max-width:520px}.streak-days>span{background:#0c1511;border:1px solid var(--rule);border-radius:6px;text-align:center;font-size:12px;padding:6px 0;color:var(--dim)}.streak-days b{display:block;font-size:16px}.streak-days .trained{background:#163b26;color:#a0e5b8;border-color:#43805b}.streak-status{margin:12px 0 0}
.exercise-card .set-head,.exercise-card .set-row{grid-template-columns:minmax(48px,72px) minmax(52px,110px) minmax(46px,100px) minmax(58px,auto)}.exercise-card .set-row>.log-set,.exercise-card .set-row>[data-action=log-drop]{justify-self:start}.exercise-card details{margin-top:12px}.exercise-card summary{cursor:pointer;color:#bfcbbf;font-size:14px}.exercise-card details .row{margin:7px 0}.partner-card{margin:16px 0}.partner-card input{max-width:100%}.partner-card code{overflow-wrap:anywhere}.bar nav{min-width:0}.bar nav button{white-space:nowrap}
@media(max-width:540px){.bar nav{flex-wrap:wrap;justify-content:flex-start;column-gap:12px}.bar nav button{min-height:38px}.exercise-card .set-head,.exercise-card .set-row{grid-template-columns:43px minmax(48px,1fr) minmax(44px,.85fr) minmax(54px,auto)}}
.account-gated .rest-panel{display:none}.account-gated main{width:min(100%,650px);margin:auto;padding-top:clamp(24px,6vh,65px)}.account-gated form.card{border-top:3px solid #dcb155}.account-gated form .field{margin:15px 0}.account-gated form button{margin:4px 5px 2px 0}.account-gated form .primary{min-width:140px}.account-gated form .row{justify-content:flex-start}.account-gated .bar{padding-bottom:10px}.account-gated #account-status-message{color:#f6cd83}
