:root{--green:#38614d;--ink:#20392e;--muted:#718078;--paper:#f7f8f2;--line:#dce3d7;--lime:#d9ef96}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 system-ui,sans-serif}header{max-width:1050px;margin:auto;padding:25px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}a{color:inherit;text-decoration:none}.brand{font-size:33px;font-weight:800;letter-spacing:-2px}.brand span{color:var(--green);margin-left:5px}.tag{font-size:10px;letter-spacing:2px}main{max-width:960px;margin:auto;padding:36px 24px 125px}h1{font-size:clamp(32px,5vw,49px);line-height:1.12;letter-spacing:-1.7px;margin:10px 0 16px}h2{font-size:22px;letter-spacing:-.6px}h3{margin:0 0 8px;font-size:19px}p{color:var(--muted)}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.hero{background:var(--green);color:white;border-radius:25px;padding:30px;display:grid;grid-template-columns:1fr auto;gap:20px;margin:27px 0}.hero p{color:#d9e4d9}.hero .eyebrow{color:var(--lime)}.orb{width:138px;height:138px;border:1px solid #71937d;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle at 30% 25%,#608264,#38614d)}.orb strong{font-size:38px;color:var(--lime)}button,.button{border:0;border-radius:13px;padding:13px 19px;background:var(--green);color:white;font:inherit;font-weight:650;cursor:pointer;display:inline-block}button:disabled{opacity:.45;cursor:default}.hero .button{background:var(--lime);color:var(--ink)}.secondary{background:#e8eddf;color:var(--ink)}.stats,.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.stat,.card,.exercise,.panel{background:#fff;border:1px solid var(--line);border-radius:19px;padding:22px}.stat strong{font-size:28px;display:block}.stat span,.small{font-size:13px;color:var(--muted)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:25px}.card{display:block;position:relative}.letter{display:inline-grid;place-items:center;width:42px;height:42px;background:#edf1e4;border-radius:12px;margin-bottom:16px;font-size:22px;font-weight:700}.card p{font-size:13px;min-height:38px}.card footer{font-size:12px;color:var(--green);border-top:1px solid var(--line);padding-top:14px}.weeks{display:flex;gap:7px;overflow:auto;padding:8px 0 18px}.weeks button{min-width:47px;padding:10px;background:#e8eddf;color:var(--ink)}.weeks .active{background:var(--green);color:white}.exercise{margin:16px 0}.hint{font-size:13px;margin:8px 0 20px}.set{display:grid;grid-template-columns:35px 1fr 1fr 45px;gap:10px;align-items:center;margin:9px 0}.set label{font-size:11px;color:var(--muted)}input[type=number]{width:100%;border:1px solid var(--line);border-radius:10px;padding:11px;background:var(--paper);font:inherit;color:var(--ink)}input[type=checkbox]{width:25px;height:25px;accent-color:var(--green)}textarea,select{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;font:inherit;background:white;color:var(--ink)}.row{display:flex;align-items:center;justify-content:space-between;gap:14px}.badge{font-size:12px;background:#e9f0df;border-radius:20px;padding:5px 11px;color:var(--green)}nav{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);background:var(--ink);color:#d6dfd8;border-radius:20px;display:flex;justify-content:space-around;width:min(440px,calc(100% - 30px));padding:11px 10px;box-shadow:0 9px 30px #20392e25;z-index:5}nav a{text-align:center;width:25%;font-size:22px}nav span{display:block;font-size:10px}nav a.active{color:var(--lime)}progress{width:100%;height:9px;accent-color:var(--green)}.history{display:grid;grid-template-columns:repeat(12,1fr);gap:8px}.weekdots{display:grid;gap:5px;text-align:center;font-size:11px}.dot{height:23px;background:#e9eddf;border-radius:6px}.dot.done{background:var(--green)}.chart{height:150px;display:flex;align-items:end;gap:7px;border-bottom:1px solid var(--line);margin:20px 0}.bar{flex:1;background:var(--green);min-height:2px;border-radius:5px 5px 0 0;position:relative}.bar span{position:absolute;bottom:-25px;width:100%;font-size:10px;text-align:center}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}details{margin:15px 0}summary{cursor:pointer;font-weight:600}#toast{position:fixed;top:15px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 20px;border-radius:12px;z-index:10;display:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #a3bc58;outline-offset:3px}@media(max-width:600px){header{padding:15px 20px}.tag{font-size:8px;letter-spacing:1px}main{padding:24px 18px 120px}.hero{padding:23px;gap:12px}.orb{width:88px;height:88px}.orb strong{font-size:27px}.hero h2{font-size:23px}.stats{gap:8px}.stat{padding:14px 10px}.stat strong{font-size:24px}.stat span{font-size:11px}.cards{grid-template-columns:1fr}.card{padding:18px}.card p{min-height:0}.letter{float:left;margin-right:15px}.card footer{clear:both}.exercise{padding:17px}.history{gap:4px}.panel{padding:18px}}

.previous-result{background:#f1f5e9;border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:0 0 18px;font-size:13px}.previous-sets{display:flex;flex-wrap:wrap;gap:6px 16px;margin:7px 0}.previous-sets span{white-space:nowrap}

.training-dates{margin-top:22px}.training-date{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-top:1px solid var(--line)}.training-date strong{font-size:14px}.card footer{display:flow-root}

.week-summary{margin-bottom:16px}.week-summary p{margin:8px 0}.week-summary h3{margin:0}

.date-editor{background:white;border:1px solid var(--line);border-radius:12px;padding:13px}.date-editor label{display:block;margin:12px 0 6px;font-size:13px}.date-editor input{font:inherit;max-width:100%;padding:10px;border:1px solid var(--line);border-radius:9px;color:var(--ink);margin:0 10px 10px 0}

/* Warm editorial theme. All assets stay available offline. */
:root{--green:#793b50;--ink:#39262c;--muted:#7d656c;--paper:#faf5ef;--line:#e9dad7;--lime:#f6d6ce;color-scheme:light}
body{background:radial-gradient(ellipse at 100% 0,#f3e0dc88,transparent 48%),var(--paper);font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-tap-highlight-color:transparent}
header{padding:25px 32px}.brand{font:italic 600 39px/1 Georgia,serif;letter-spacing:-2px}.brand span{font-style:normal;font-size:23px;vertical-align:middle;margin-left:7px}.tag{font-size:9px;letter-spacing:2.6px;color:var(--muted)}main{padding:43px 32px 145px}
h1{font:400 clamp(36px,5.5vw,57px)/1.12 Georgia,"Times New Roman",serif;letter-spacing:-1.8px;margin:12px 0 17px;text-wrap:balance}h2{font:400 28px/1.2 Georgia,serif;letter-spacing:-.6px}h3{line-height:1.4;font-weight:650;letter-spacing:-.3px}.eyebrow{font-size:10px;letter-spacing:2.6px;color:var(--green)}
.hero{isolation:isolate;position:relative;overflow:hidden;background:linear-gradient(115deg,#76374c,#8e4e60);border-radius:26px 26px 64px 26px;padding:34px;align-items:center;gap:23px;margin:30px 0 21px;box-shadow:0 14px 35px #70354715}.hero:after{content:"";position:absolute;right:-55px;bottom:-150px;width:330px;height:330px;border:1px solid #f2cfcb35;border-radius:50%;z-index:-1;box-shadow:0 0 0 35px #f2cfcb0a,0 0 0 70px #f2cfcb08;pointer-events:none}.hero p{color:#f0dfe2;font-size:14px;max-width:360px}.hero .eyebrow{color:#f4cfc8}.hero h2{font-size:31px;margin:13px 0}.orb{width:128px;height:128px;border-color:#f1c6c15c;background:#f7dcd90a;box-shadow:inset 0 0 0 9px #ffffff04}.orb strong{font:400 38px/1.25 Georgia,serif;color:#ffe3da}.orb .small{color:#f1d9dd!important;font-size:11px}
button,.button{border:1px solid transparent;border-radius:12px;padding:12px 19px;font-weight:650;font-size:14px;display:inline-flex;align-items:center;justify-content:center;min-height:46px;gap:9px;transition:background .15s,transform .15s;touch-action:manipulation}button:hover,.button:hover{background:#622c3e}button:active,.button:active{transform:translateY(1px)}.hero .button{background:#f9dfd4;color:#56313c;margin-top:10px;box-shadow:0 4px 10px #39262c12}.hero .button:hover{background:#ffede5}.secondary{background:#f1e1df;color:var(--green)}.secondary:hover{background:#e9d1d2}
.stats,.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.stat,.card,.exercise,.panel{background:#fffdfa;border-radius:20px;padding:24px;box-shadow:0 10px 35px #67403407;min-width:0}.stat{border:0;border-right:1px solid var(--line);border-radius:0;box-shadow:none;background:transparent;padding:10px 20px 10px 3px}.stat:last-child{border-right:0}.stat strong{font:400 33px/1.3 Georgia,serif;color:var(--green);font-variant-numeric:tabular-nums}.stat strong small{color:var(--muted)!important}.stat span{display:block;margin-top:5px}.stat span,.small{font-size:12px}.section-heading{margin-top:31px}.section-heading a{color:var(--green);white-space:nowrap;font-weight:600}.card{transition:border-color .15s,box-shadow .15s}.card:hover{border-color:#c89ba5;box-shadow:0 8px 25px #793b5010}.letter{width:44px;height:44px;background:#f1dedb;color:var(--green);border-radius:50%;margin-bottom:19px;font:400 25px Georgia,serif}.card:nth-child(2) .letter{background:#eee4d7;color:#775c3f}.card:nth-child(3) .letter{background:#eadde6;color:#785169}.card p{min-height:42px}.card footer{font-size:11px;padding-top:15px;margin-top:19px}
.weeks{gap:8px;scrollbar-width:thin;scrollbar-color:#d8b7ba transparent}.weeks button{flex-shrink:0;background:#f0e4df;border-radius:50%;font-variant-numeric:tabular-nums}.weeks .active{background:var(--green)}.exercise{margin:20px 0;padding:25px}.exercise>.row{align-items:flex-start}.exercise h3{font-size:19px;max-width:75%}.hint{margin:9px 0 20px;line-height:1.7}.set{grid-template-columns:28px minmax(0,1fr) minmax(0,1fr) 44px;gap:12px;margin:11px 0}.set>span{align-self:end;margin-bottom:12px}input[type=number]{min-height:48px;border-color:#e5d6d2;border-radius:11px;padding:10px 12px;background:#fbf7f2;font-size:17px;margin-top:5px;font-variant-numeric:tabular-nums}input[type=checkbox]{appearance:none;-webkit-appearance:none;width:44px;height:44px;border:1px solid var(--line);border-radius:13px;background:#faf4ef;cursor:pointer;align-self:end;margin:0 0 2px;display:grid;place-content:center}input[type=checkbox]:checked{background:var(--green);border-color:var(--green)}input[type=checkbox]:checked:after{content:"✓";color:#fff3eb;font-size:24px;line-height:1}textarea,select{padding:14px;border-radius:12px;font-size:16px;background:#fffdfa}textarea{min-height:105px;resize:vertical;margin-top:9px}.badge{font-size:11px;font-weight:600;background:#f3e5e1;padding:6px 11px;white-space:nowrap}.row>div{min-width:0}
nav{bottom:max(16px,env(safe-area-inset-bottom));background:#fffaf6f5;backdrop-filter:blur(18px);color:var(--muted);border:1px solid #e6d4d1;border-radius:23px;width:min(440px,calc(100% - 32px));padding:7px;box-shadow:0 12px 45px #63344420}nav a{padding:5px 2px;border-radius:16px;font-size:23px;line-height:1.3;min-height:57px}nav span{letter-spacing:.2px;margin-top:4px}nav a.active{background:#f1dfdc;color:var(--green);font-weight:700}
progress{appearance:none;-webkit-appearance:none;height:6px;border:0;border-radius:10px;overflow:hidden;background:#eddfdb}progress::-webkit-progress-bar{background:#eddfdb;border-radius:10px}progress::-webkit-progress-value{background:var(--green);border-radius:10px}progress::-moz-progress-bar{background:var(--green);border-radius:10px}.dot{height:27px;background:#f0e4df;border:1px solid #eadad5;border-radius:7px}.dot.done{background:var(--green);border-color:var(--green)}.chart{gap:8px;margin-bottom:30px}.bar{background:linear-gradient(#bb7e8c,#793b50)}.bar span{color:var(--muted)}summary{color:var(--green);font-size:13px}#toast{width:max-content;max-width:calc(100% - 32px);font-size:14px;box-shadow:0 8px 25px #39262c22}.previous-result{background:#f5e9e5;border-color:#ead6d1;border-radius:13px;padding:14px;margin-bottom:20px;font-size:12px;color:#663d49}.previous-sets{margin:8px 0}.training-dates{margin-top:25px}.training-date{padding:16px 0}.training-date strong{font-weight:600}.training-date:last-child{padding-bottom:0}.training-date>span{color:var(--green)}.week-summary{margin-bottom:17px;background:linear-gradient(120deg,#f3e4df,#fbf3eb);border-color:#e4cfc9;box-shadow:none}.week-summary p{margin:9px 0}.week-summary p>strong{color:var(--green);font-weight:600;font-size:15px}.week-summary h3{font:400 23px Georgia,serif}.date-editor{background:#fffdfa;border-radius:13px;padding:14px}.date-editor input{padding:11px;border-radius:10px;background:var(--paper);min-height:46px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #ad6b7b;outline-offset:3px}
@media(max-width:600px){header{padding:20px}.brand{font-size:34px}.tag{font-size:8px;letter-spacing:1.5px;max-width:135px;text-align:right}main{padding:29px 18px 130px}h1{font-size:40px;letter-spacing:-1.3px}h2{font-size:25px}.hero{padding:25px 21px;gap:13px;border-radius:23px 23px 49px 23px;margin-top:25px}.hero h2{font-size:25px}.hero .eyebrow{font-size:9px;letter-spacing:1.4px}.hero p{font-size:12px}.hero .button{padding:11px 14px;font-size:13px}.orb{width:83px;height:83px}.orb strong{font-size:27px}.orb .small{font-size:9px}.stats{gap:8px}.stat{padding:7px 8px 7px 0}.stat strong{font-size:29px}.stat span{font-size:10px}.cards{grid-template-columns:1fr;gap:11px}.card{padding:20px}.letter{margin:1px 15px 12px 0;width:43px;height:43px}.card h3{font-size:17px}.card p{min-height:0;margin:5px 0 0;font-size:12px}.card footer{margin-top:16px;padding-top:12px}.exercise{padding:20px 15px}.exercise h3{font-size:17px}.exercise .badge{padding:5px 9px;font-size:10px}.set{gap:8px;grid-template-columns:22px minmax(0,1fr) minmax(0,1fr) 44px}.set label{font-size:10px}input[type=number]{padding:10px}.panel{padding:20px}.history{gap:4px}.dot{height:25px;border-radius:5px}.row{gap:10px}.week-summary h3{font-size:21px}.training-date .small{font-size:11px}}
@media(max-width:360px){main{padding-left:13px;padding-right:13px}h1{font-size:35px}.hero{padding:22px 17px;gap:8px}.hero h2{font-size:23px}.orb{width:69px;height:69px}.orb strong{font-size:24px}.tag{font-size:7px}.set{gap:6px;grid-template-columns:18px minmax(0,1fr) minmax(0,1fr) 40px}input[type=checkbox]{width:40px;height:44px}.section-heading h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Studio edition: soft light, fine pattern, editorial spacing. */
body{background:#faf5ef;position:relative;isolation:isolate}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 92% 8%,#d7a1ad38 0,transparent 48%),radial-gradient(ellipse at 2% 65%,#efd2bc42 0,transparent 52%),linear-gradient(150deg,#fcf8f2,#f8eee9 75%,#f4e6e2)}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.25;background-image:radial-gradient(#8c5d641d .65px,transparent .8px);background-size:7px 7px}
header{border:0;padding:29px 32px 19px}.brand{font-size:43px;font-weight:400}.brand span{font-size:18px;margin-left:10px}.tag{font-size:8px;letter-spacing:2.8px}main{max-width:1000px;padding-top:35px}.home-intro{padding:0 0 5px}.home-intro h1{font-size:clamp(48px,6vw,76px);line-height:1.02;letter-spacing:-2.4px;margin:17px 0}.home-intro h1 em{font-weight:400;color:#986172}.home-intro p{font-size:13px;margin-top:20px}.eyebrow{font-size:9px;letter-spacing:2.7px}.hero-studio{margin-top:30px;min-height:320px;border-radius:4px 4px 75px 4px;grid-template-columns:1.25fr 1fr;gap:0;padding:35px 39px;background:linear-gradient(120deg,#653043,#824759 70%,#92596a);box-shadow:0 18px 45px #63344917}.hero-studio:after{display:none}.hero-content{position:relative;z-index:1}.hero-letter{display:block;font:italic 400 35px/1 Georgia,serif;color:#d6a1a7;margin-top:24px}.hero-studio h2{font:400 clamp(29px,4vw,40px)/1.1 Georgia,serif;max-width:340px;letter-spacing:-.8px;margin:10px 0 15px}.hero-studio p{font-size:11px;letter-spacing:.4px}.hero-studio p span{margin:0 7px;opacity:.5}.hero-studio .button{font-size:12px;border-radius:6px;min-width:185px;justify-content:space-between;padding:13px 18px;background:#f6e6db;box-shadow:none;margin-top:16px}.hero-studio .button span{font-size:19px;margin-left:20px}.studio-art{position:absolute;right:0;top:0;bottom:0;width:44%;overflow:hidden;color:#efd4cd;pointer-events:none}.arch{position:absolute;border:1px solid #eac9bd42;border-radius:180px 180px 0 0;transform:rotate(-18deg);width:230px;height:370px;right:10px;top:35px;background:linear-gradient(130deg,#eecabc12,transparent)}.arch-two{right:49px;top:62px;background:none}.arch-three{right:87px;top:89px;background:none}.studio-art svg{width:145px;position:absolute;right:52px;top:60px;opacity:.7;transform:rotate(-12deg)}.studio-art>span{position:absolute;bottom:30px;right:34px;font-size:7px;letter-spacing:2px;writing-mode:vertical-rl;opacity:.65}
.journey{padding:23px 1px 20px;border-bottom:1px solid #d9bfc180}.journey .row{margin-bottom:11px}.journey progress{height:3px;display:block}.journey .stats{margin-top:21px}.journey .stat{padding:0 15px 0 0}.journey .stat strong{font-size:29px}.journey .stat small{font:11px system-ui,sans-serif;color:var(--muted)}.journey .stat span{font-size:10px}.section-heading{margin-top:36px;margin-bottom:18px}.section-heading h2{margin:7px 0 0;font-size:31px}.section-heading a{font-size:11px}.week-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:28px}.week-summary{border:0;border-left:2px solid #caa3aa;border-radius:0;background:none;padding:7px 0 5px 21px;box-shadow:none;align-self:center;margin:0}.week-summary h3{font-size:24px}.week-summary .badge{background:#e9d6d7;font-size:10px}.week-summary .small{font-size:11px}.week-summary progress{height:3px}.week-layout .cards{grid-template-columns:1fr;gap:0}.week-layout .card{border:0;border-top:1px solid var(--line);border-radius:0;background:none;box-shadow:none;padding:18px 0 15px 0}.week-layout .card:first-child{border-top:0}.week-layout .letter{float:left;margin:1px 15px 10px 0;width:39px;height:39px;font-size:22px}.week-layout .card h3{font-size:15px;margin:0}.week-layout .card p{min-height:0;font-size:11px;margin:3px 0}.week-layout .card footer{border:0;margin:6px 0 0 54px;padding:0;clear:both;font-size:10px}.week-layout .card footer span{float:none!important;margin-left:15px}.card{border-radius:6px;box-shadow:none}.panel{box-shadow:none;border-radius:10px;background:#fffaf6b8}.training-dates{margin-top:33px;border:0;border-top:1px solid var(--line);border-radius:0;padding:27px 0 0;background:none}.training-dates h3{font:400 28px Georgia,serif}.training-date strong{font-size:13px}.privacy-note{text-align:center;margin-top:33px;font-size:10px;letter-spacing:.5px}.exercise{border:0;border-top:1px solid #e0c9c7;border-radius:0;background:#fffcf78c;box-shadow:none;padding:25px 23px;margin:22px 0}.exercise h3{font:400 25px/1.2 Georgia,serif}.exercise .hint{font-size:12px}.previous-result{border:0;border-left:2px solid #cfadb2;border-radius:0;background:#f2e3df85;padding:11px 14px;font-size:11px}.previous-result .small{font-size:10px}.previous-sets{gap:5px 13px}.set{border-top:1px solid #eadbd580;padding-top:9px}input[type=number]{background:#fffaf5;border-radius:7px}input[type=checkbox]{border-radius:9px}.badge{background:#f0e1dd}.weeks button{background:#f0e3de;border-radius:9px}.weeks .active{background:var(--green)}.date-editor{border-radius:6px}.history .dot{border-radius:4px}nav{width:min(410px,calc(100% - 36px));border-radius:18px;padding:7px 9px;background:#fffaf6f2;box-shadow:0 9px 35px #63344412;border-color:#dfc6c5}nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:11px;min-height:53px;padding:7px 2px}nav svg{display:block;width:21px;height:21px}nav a.active{background:#efddda}nav span{font-size:9px;margin-top:5px;letter-spacing:.4px}
@media(max-width:600px){header{padding:24px 23px 12px}.brand{font-size:37px}.tag{font-size:7px;letter-spacing:1.8px}main{padding:28px 22px 130px}.home-intro h1{font-size:55px;letter-spacing:-2px}.home-intro p{font-size:12px;max-width:260px}.home-intro .eyebrow{font-size:8px;letter-spacing:2px}.hero-studio{padding:27px 23px;min-height:292px;border-radius:4px 4px 57px 4px;margin-top:25px;grid-template-columns:1fr}.hero-content{max-width:79%}.hero-studio .eyebrow{font-size:8px;letter-spacing:1.4px}.hero-letter{font-size:28px;margin-top:24px}.hero-studio h2{font-size:31px;max-width:230px;margin:10px 0 13px}.hero-studio p{font-size:9px;white-space:nowrap}.hero-studio p span{margin:0 4px}.hero-studio .button{font-size:11px;min-width:170px;padding:11px 15px;margin-top:13px}.studio-art{width:42%;opacity:.65}.studio-art svg{width:103px;right:-2px;top:65px}.arch{width:156px;height:310px;right:-90px;top:30px}.arch-two{right:-62px;top:55px}.arch-three{right:-34px;top:80px}.studio-art>span{right:14px;bottom:24px;font-size:6px;letter-spacing:1.5px}.journey{padding-top:20px}.journey .stat strong{font-size:27px}.journey .stat small{font-size:10px}.journey .stat span{font-size:9px}.section-heading{margin-top:29px}.section-heading h2{font-size:27px}.week-layout{grid-template-columns:1fr;gap:15px}.week-summary{padding:4px 0 3px 17px}.week-summary h3{font-size:22px}.week-summary .small:last-child{margin-bottom:0}.week-layout .card{padding:17px 0}.week-layout .card footer{margin-left:54px}.exercise{padding:23px 13px}.exercise h3{font-size:23px}.exercise .badge{font-size:9px}.training-dates{padding-top:25px}.training-dates h3{font-size:26px}.panel{padding:20px}.training-dates.panel{padding:25px 0 0}.week-summary.panel{padding:4px 0 3px 17px}.previous-result{padding:11px}.set{gap:7px;grid-template-columns:20px minmax(0,1fr) minmax(0,1fr) 44px}}
@media(max-width:360px){main{padding-left:17px;padding-right:17px}.home-intro h1{font-size:49px}.hero-studio{padding-left:19px;padding-right:19px}.hero-studio h2{font-size:28px}.hero-studio .eyebrow{font-size:7px}.hero-content{max-width:85%}.studio-art{opacity:.45}.journey .stat strong{font-size:24px}.set{grid-template-columns:16px minmax(0,1fr) minmax(0,1fr) 40px;gap:6px}}

/* Quiet home: one brand line, one workout, one weekly summary. */
body:has(.hero-studio) main{max-width:760px;padding-top:12px}.hero-studio{margin-top:12px}.compact-summary.panel{margin:30px 0 0;padding:4px 0 5px 18px;background:none;border:0;border-left:2px solid #caa3aa;border-radius:0;box-shadow:none}.compact-summary h3{font-size:24px}.compact-summary p{margin:10px 0 14px}.compact-summary progress{height:3px}.progress-stats{margin:25px 0 30px}.progress-stats small{font:11px system-ui,sans-serif}.progress-stats .stat strong{font-size:30px}@media(max-width:600px){body:has(.hero-studio) main{padding-top:17px}.hero-studio{margin-top:8px}.compact-summary.panel{margin-top:26px}.compact-summary h3{font-size:23px}.progress-stats .stat strong{font-size:26px}}

/* Reversed palette; existing sizing and layout are retained. */
:root{--green:#f3d8ce;--ink:#fff3e9;--muted:#d9bdc0;--paper:#542c3b;--line:#b37e8d55;--lime:#793b50;color-scheme:dark}
body{background:#542c3b}body:before{background:radial-gradient(ellipse at 92% 8%,#b4768733 0,transparent 48%),radial-gradient(ellipse at 2% 65%,#321c3044 0,transparent 52%),linear-gradient(150deg,#68374a,#542c3b 75%,#482736)}body:after{opacity:.22;background-image:radial-gradient(#f9dfcf30 .65px,transparent .8px)}
.brand,.brand span{color:#f8e7db}.tag{color:#d9bdc0}h1,h2,h3{color:var(--ink)}.eyebrow{color:#efcfc5}.home-intro h1 em{color:#e4b7bd}
.hero-studio{background:linear-gradient(120deg,#fff4e8,#f3ded4 70%,#e9c9c6);color:#603244;box-shadow:0 18px 45px #24121d24}.hero-studio h2{color:#603244}.hero-studio .eyebrow{color:#7b4e59}.hero-studio p{color:#865c63}.hero-letter{color:#ad7583}.hero-studio .button{background:#70394e;color:#fff1e7}.hero-studio .button:hover{background:#5a2d3e}.studio-art{color:#9d6576}.arch{border-color:#ad798456;background:linear-gradient(130deg,#b3798610,transparent)}.arch-two,.arch-three{background:none}
button,.button{background:#f2d9cf;color:#603244}button:hover,.button:hover{background:#ffece0}.secondary{background:#e9cdd0;color:#603244}.secondary:hover{background:#f7e1dc}.badge{background:#e9cdd0;color:#603244}
.card,.panel,.exercise,.date-editor{background:#f8ece2;color:#603244;border-color:#e5c6c1}.card h3,.panel h3,.exercise h3,.date-editor h3{color:#603244}.card p,.panel p,.exercise .hint,.date-editor p{color:#835f67}.card .small,.panel .small,.exercise .small,.date-editor .small,.panel label{color:#835f67}.card footer{color:#793b50;border-color:#dfc1bd}.letter{background:#eacdd0;color:#793b50}.panel .eyebrow{color:#793b50}
.compact-summary.panel,.week-summary{background:none;color:#fff3e9;border-left-color:#c896a0}.compact-summary h3,.week-summary h3{color:#fff3e9}.compact-summary p,.compact-summary .small,.week-summary .small{color:#d9bdc0}.week-summary .badge{background:#e9cdd0;color:#603244}
.training-dates{background:none;color:#fff3e9;border-top-color:#b37e8d55}.training-dates h3{color:#fff3e9}.training-dates p,.training-dates .small{color:#d9bdc0}.training-date strong{color:#fff3e9}.training-date>span{color:#efcfc5}.week-layout .card{color:#fff3e9}.week-layout .card h3{color:#fff3e9}.week-layout .card p{color:#d9bdc0}
.stat strong{color:#f7e4d8}.stat strong small{color:#d9bdc0!important}.stat span{color:#d9bdc0}.journey{border-color:#b37e8d55}.section-heading a{color:#efcfc5}
.exercise{border-top-color:#c797a2}.exercise .set label,.exercise .set>span{color:#835f67}.set{border-top-color:#e2c8c280}.exercise .badge{background:#ead1d0;color:#793b50}.previous-result{background:#efddd5;color:#70444f;border-left-color:#bb8c98}.previous-result .small{color:#835f67}.set input[type=number],textarea,select,.date-editor input{background:#fff7ef;border-color:#dfc0ba;color:#603244;color-scheme:light}.set input[type=checkbox]{background:#fff7ef;border-color:#d9b8b3}.set input[type=checkbox]:checked{background:#793b50;border-color:#793b50}.set input[type=checkbox]:checked:after{color:#fff3e9}textarea::placeholder{color:#987680}
.date-editor summary{color:#793b50}.date-editor label{color:#835f67}.date-editor .secondary{background:#e9cdd0;color:#603244}.panel summary{color:#793b50}.weeks button{background:#805062;color:#f8e7df}.weeks button.active{background:#f3dcd1;color:#603244}
progress{background:#c69ca24d}progress::-webkit-progress-bar{background:#c69ca24d}progress::-webkit-progress-value{background:#efcfc5}progress::-moz-progress-bar{background:#efcfc5}.panel:not(.compact-summary) progress::-webkit-progress-value{background:#793b50}.panel:not(.compact-summary) progress::-moz-progress-bar{background:#793b50}
.dot{background:#ead4cc;border-color:#dcb9b5}.dot.done{background:#793b50;border-color:#793b50}.weekdots{color:#835f67}.bar{background:linear-gradient(#b97e90,#793b50)}.bar span{color:#835f67}.chart{border-color:#dcb9b5}
nav{background:#f9eee5f5;border-color:#ead1ca;color:#936f78;box-shadow:0 9px 35px #22141b30;color-scheme:light}nav a.active{background:#ebd3d0;color:#70394e}#toast{background:#f7e4d8;color:#603244}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline-color:#d995ad}.panel a:focus-visible,.exercise input:focus-visible,nav a:focus-visible{outline-color:#793b50}

/* Decorative linework sits behind the interface and never captures touches. */
body:before{background:radial-gradient(ellipse at 90% 4%,#c38a9a24 0,transparent 45%),radial-gradient(ellipse at 5% 82%,#e4a28f12 0,transparent 44%),linear-gradient(145deg,#68374a,#542c3b 72%,#482736)}body:after{opacity:1;background-image:url('./background.svg'),radial-gradient(#f9dfcf0b .65px,transparent .8px);background-size:cover,7px 7px;background-position:center top,0 0;background-repeat:no-repeat,repeat}@media(max-width:600px){body:after{background-size:auto 1050px,7px 7px;background-position:62% top,0 0}}

/* Brief completion accent: decorative, silent, and non-blocking. */
.exercise-fold>summary{display:flex;align-items:center;gap:14px;list-style:none;color:#603244;min-height:76px;cursor:pointer}.exercise-fold>summary::-webkit-details-marker{display:none}.exercise-fold>summary::marker{content:''}.exercise-title{display:flex;flex:1;min-width:0;flex-direction:column;gap:7px}.exercise-title>strong{font:400 23px/1.2 Georgia,serif;color:#603244}.exercise-state{font:500 10px/1.5 system-ui,sans-serif;color:#865c63}.fold-chevron{font-size:22px;color:#9c6e79;transition:transform .2s}.exercise-fold[open] .fold-chevron{transform:rotate(180deg)}.exercise-fold:not([open]){padding-top:13px;padding-bottom:13px}.exercise-body>.hint{margin-top:16px}.exercise-art{width:76px;height:76px;flex-shrink:0;border-radius:15px;background:linear-gradient(145deg,#f3dfd7,#ead0d0);display:block;overflow:hidden}.exercise-art svg{width:100%;height:100%}.exercise-art line{stroke-linecap:round;stroke-linejoin:round}.art-shirt{stroke:#ad7589;stroke-width:10}.art-leggings{stroke:#70394e;stroke-width:5}.art-skin{stroke:#c79583;stroke-width:4}.art-face{fill:#c79583}.art-hair{fill:#633348}.art-still{display:none}.exercise-fold:not([open]) .art-moving{display:none}.exercise-fold:not([open]) .art-still{display:block}@media(max-width:600px){.exercise-fold>summary{gap:11px}.exercise-art{width:65px;height:65px;border-radius:12px}.exercise-title>strong{font-size:20px}.exercise-fold{padding-left:12px;padding-right:12px}}@media(prefers-reduced-motion:reduce){.art-moving{display:none!important}.art-still{display:block!important}.fold-chevron{transition:none}}
.session-status{display:flex;align-items:center;gap:20px;margin:23px 0 30px}.session-ring{position:relative;width:80px;height:80px;flex-shrink:0;display:grid;place-items:center}.session-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.session-ring circle{fill:none;stroke-width:3}.ring-track{stroke:#e8c5c02e}.ring-fill{stroke:#f2d9cf;stroke-linecap:round;transition:stroke-dashoffset .3s ease}.session-ring strong{font:400 21px Georgia,serif}.session-count{font-size:13px;font-weight:500}.session-status p{margin:5px 0;font-size:11px}.finish-screen{text-align:center;max-width:500px;margin:10px auto 0;padding:20px 0}.finish-seal{display:grid;place-items:center;margin:0 auto 27px;width:72px;height:72px;border:1px solid #e2b4b866;border-radius:50%;color:#f3d8ce;font-size:29px;background:#e8c6bf0a;box-shadow:0 0 0 9px #e8c6bf04}.finish-screen h1{font-size:clamp(43px,7vw,64px);margin:20px 0}.finish-screen h1 em{font-weight:400;color:#e4b7bd}.finish-screen>p{font-size:13px}.finish-facts{display:flex;justify-content:center;gap:0;margin:30px 0 23px;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.finish-facts>div{width:50%}.finish-facts>div+div{border-left:1px solid var(--line)}.finish-facts strong{font:400 35px Georgia,serif;display:block}.finish-facts span{font-size:11px;color:var(--muted)}.finish-actions{display:flex;flex-direction:column;align-items:center;gap:19px;margin-top:29px}.finish-actions .button{min-width:235px}.profile-panel{margin-bottom:20px}.profile-panel label{display:block;font-size:12px;margin:15px 0 6px}.profile-panel input{display:block;width:100%;min-height:48px;font:inherit;border:1px solid #dfc0ba;border-radius:8px;background:#fff7ef;color:#603244;padding:11px 13px;margin:0 0 13px;color-scheme:light}header .tag{max-width:250px;text-transform:none;letter-spacing:1.2px;line-height:1.5;overflow-wrap:anywhere}@media(max-width:600px){header .tag{max-width:175px;font-size:8px;letter-spacing:.7px}.session-status{gap:16px}.finish-screen{padding-top:16px}.finish-screen h1{font-size:46px}}@media(prefers-reduced-motion:reduce){.ring-fill{transition:none}}
.celebration{position:fixed;left:50%;top:38%;width:0;height:0;pointer-events:none;z-index:9}.celebration i{position:absolute;width:7px;height:11px;border-radius:2px;background:#f3d8ce;opacity:0;animation:celebration-bloom 1150ms cubic-bezier(.18,.6,.3,1) var(--delay) both}.celebration i:nth-child(3n){background:#cd98a6;width:6px;height:6px;border-radius:50%}.celebration i:nth-child(3n + 1){background:#f9e9cc}@keyframes celebration-bloom{0%{opacity:0;transform:translate(0,0) rotate(0) scale(.5)}12%{opacity:.9}65%{opacity:.7}100%{opacity:0;transform:translate(var(--x),calc(var(--y) + 65px)) rotate(var(--rotation)) scale(.7)}}@media(prefers-reduced-motion:reduce){.celebration{display:none}.celebration i{animation:none!important}*{scroll-behavior:auto!important}}

.brand{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.brand .brand-mark{width:42px;height:42px;display:block}.brand .brand-word{font:italic 400 37px/1 Georgia,serif;letter-spacing:-2px;margin:0;color:#f8e7db}@media(max-width:600px){.brand{gap:5px}.brand .brand-mark{width:36px;height:36px}.brand .brand-word{font-size:33px}}
