:root{color:#203831;font-synthesis:none;-webkit-font-smoothing:antialiased;background:#f5f5ef;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans JP,sans-serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,label{-webkit-tap-highlight-color:transparent}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:default;opacity:.42}:is(button:focus-visible,a:focus-visible,input:focus-visible){outline-offset:5px;outline:3px solid #db9f39}.shell{max-width:1120px;margin:auto;padding:0 40px}.masthead{border-bottom:1px solid #dcdfd4;justify-content:space-between;align-items:center;height:94px;display:flex}.brand{color:#183d32;letter-spacing:-.9px;align-items:center;gap:5px;font-size:26px;font-weight:850;text-decoration:none;display:flex}.brand span{font-weight:450}.brand i{background:#d8943c;border-radius:50%;width:8px;height:8px;margin:3px 0 0 7px}.edition{letter-spacing:2px;color:#63766b;font-size:10px;font-weight:600}.intro{padding:43px 0 32px}.eyebrow{letter-spacing:2.1px;color:#678372;margin:0 0 13px;font-size:10px;font-weight:700}h1{letter-spacing:-.8px;margin:0 0 10px;font-size:32px;font-weight:650;line-height:1.45}.mobile-break{display:none}.subtitle{color:#748278;margin:0;font-size:13px}.workspace{grid-template-columns:360px 1fr;align-items:stretch;gap:24px;display:grid}.card{border-radius:20px}.setup{background:#fffefa;border:1px solid #e1e4d9;padding:26px 24px}.section-heading{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}h2{margin:0;font-weight:600}.section-heading h2{font-size:15px}.section-heading>span{letter-spacing:1.2px;color:#829083;font-size:9px}fieldset{border:0;min-width:0;margin:0;padding:0}.menu-option{cursor:pointer;border:1px solid #dde2d8;border-radius:12px;align-items:center;gap:10px;margin-bottom:10px;padding:17px 12px;display:flex}.menu-option:has(input:checked){background:#edf1e7;border-color:#426550;box-shadow:inset 0 0 0 1px #426550}fieldset:disabled .menu-option{cursor:default}input[type=radio]{accent-color:#335843;flex-shrink:0;width:15px;height:15px;margin:0}.menu-copy{flex:1}.menu-copy strong{font-size:13px;font-weight:650;display:block}.menu-copy small{color:#778273;margin-top:6px;font-size:10px;line-height:1.5;display:block}.menu-time{letter-spacing:-.5px;text-align:right;font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.menu-time small{letter-spacing:1px;color:#74816c;margin-top:4px;font-size:8px;display:block}.plan-head{color:#788276;justify-content:space-between;margin:25px 0 17px;font-size:11px;display:flex}.plan{margin:0;padding:0;list-style:none}.plan li{align-items:flex-start;gap:11px;padding-bottom:22px;display:flex;position:relative}.plan li:not(:last-child):before{content:"";background:#dce2d4;width:1px;position:absolute;top:13px;bottom:3px;left:4px}.phase-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px;margin-top:4px}.warm{background:#b2c298}.hard{background:#d99a50}.cool{background:#88aaa0}.plan li>span{flex:1;font-size:12px;font-weight:500}.plan small{color:#838b7d;margin-top:6px;font-size:10px;font-weight:400;line-height:1.5;display:block}.plan b{font-variant-numeric:tabular-nums;font-size:12px;font-weight:500}.preparation-note{color:#7c897c;margin:0 0 21px;font-size:10px}.sound-button{color:#405d49;background:0 0;border:1px solid #d8dfd2;border-radius:9px;width:100%;padding:13px;font-size:12px;font-weight:600}.sound-button span{margin-right:6px;font-size:17px}.sound-button:hover:not(:disabled){background:#edf1e7}.setup-note{align-items:flex-start;gap:8px;margin-top:16px;display:flex}.setup-note p{color:#7b887b;margin:0;font-size:10px;line-height:1.8}.note-dot{background:#849879;border-radius:50%;width:4px;height:4px;margin-top:7px}.player{--accent:#d6e9a5;color:#f5f7ed;background:#122d29;padding:27px 34px 22px;position:relative;overflow:hidden;box-shadow:0 14px 32px #173b2910}.player[data-phase=hard]{--accent:#f1c18d}.player[data-phase=recovery]{--accent:#a9d6c5}.player[data-phase=cooldown]{--accent:#b1cddc}.player-top{letter-spacing:1.5px;color:#a1b5a7;justify-content:space-between;align-items:center;font-size:10px;display:flex}.live-label{align-items:center;gap:8px;display:flex}.live-label i{background:var(--accent);border-radius:50%;width:6px;height:6px}.phase-heading{text-align:center;margin-top:28px}.phase-heading p{color:var(--accent);letter-spacing:3px;margin:0 0 9px;font-size:12px;font-weight:600}.phase-heading h2{letter-spacing:1px;font-size:17px;font-weight:450}.clock{text-align:center;letter-spacing:-5px;font-variant-numeric:tabular-nums;margin:15px 0 0;font-size:clamp(75px,9vw,116px);font-weight:300;line-height:1.15}.clock-caption{text-align:center;color:#96afa1;letter-spacing:1px;margin:4px 0 18px;font-size:10px}.tempo{color:var(--accent);justify-content:center;align-items:baseline;gap:8px;display:flex}.tempo strong{font-variant-numeric:tabular-nums;font-size:30px;font-weight:500}.tempo>span:last-child{letter-spacing:1px;font-size:10px}.tempo-wave{letter-spacing:1px;opacity:.8;align-self:center;margin-right:7px;font-size:12px}.progress-wrap{margin-top:28px}.progress-track{background:#3a5147;border-radius:8px;height:4px;overflow:hidden}#progress{background:var(--accent);width:0;height:100%}.progress-labels{color:#95aa9a;font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:10px;font-size:10px;display:flex}.next{border-top:1px solid #375046;align-items:center;gap:16px;margin:10px 0 4px;padding:20px 0;display:flex}.next>span:first-child{color:#92a899;letter-spacing:2px;font-size:9px}.next strong{flex:1;font-size:12px;font-weight:500}.next>span:last-child{color:#adc2b1;font-size:11px}.controls{gap:10px;display:flex}.controls button{border:0;border-radius:11px;min-height:55px;font-size:15px;font-weight:650}#primary{background:var(--accent);color:#17392d;flex:1}#primary:hover:not(:disabled){filter:brightness(1.08)}.controls .stop-button{color:#d9e3d6;background:#2e473e;width:80px}.player-hint{text-align:center;color:#a4b7a7;margin:14px 0 0;font-size:10px}.wake-lock-status{text-align:center;color:#c6d4c8;margin:9px 0 0;font-size:11px;line-height:1.6}.wake-lock-status[data-state=active]{color:var(--accent)}.public-note{color:#546c59;margin:0 0 25px;font-size:11px;line-height:1.8}.message{color:#546c59;text-align:center;min-height:20px;margin:15px 0 0;font-size:12px;line-height:1.6}.guide{grid-template-columns:repeat(3,1fr);gap:20px;padding:25px 0 32px;display:grid}.guide>div{align-items:flex-start;gap:13px;display:flex}.guide>div>span{color:#8fa080;border:1px solid #d7ddce;border-radius:50%;flex-shrink:0;place-items:center;width:29px;height:29px;font-size:11px;display:grid}.guide p{color:#7c867a;margin:0;font-size:10px;line-height:1.7}.guide strong{color:#41583f;margin-bottom:3px;font-size:12px;font-weight:600;display:block}footer{color:#8c9888;letter-spacing:.5px;border-top:1px solid #dcdfd4;justify-content:space-between;padding:22px 0 27px;font-size:9px;display:flex}.footer-dot{color:#bac4b0;margin:0 9px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:850px){.shell{padding:0 24px}.workspace{grid-template-columns:300px 1fr;gap:16px}.setup{padding:24px 16px}.player{padding:26px 22px 22px}.next{gap:10px}.next>span:last-child{font-size:10px}}@media (max-width:650px){.shell{padding:0 18px}.masthead{height:72px}.brand{font-size:24px}.edition{letter-spacing:1px;font-size:8px}.intro{padding:28px 0 24px}h1{font-size:27px}.subtitle{font-size:12px}.eyebrow{font-size:8px}.workspace{flex-direction:column;display:flex}.setup{padding:20px 18px}.section-heading{margin-bottom:16px}.menu-copy strong{font-size:14px}.menu-copy small{font-size:11px}.menu-option{padding:14px 12px}.plan-head{margin-top:20px}.plan li{padding-bottom:17px}.preparation-note{margin-bottom:16px}.setup-note{margin-top:12px}.player{padding:24px 24px 22px}.clock{font-size:104px}.phase-heading{margin-top:27px}.next>span:last-child{font-size:11px}.guide{gap:12px;padding:22px 0}.guide>div{display:block}.guide>div>span{margin-bottom:10px}.guide p{font-size:10px}footer{padding-bottom:calc(24px + env(safe-area-inset-bottom));gap:18px;line-height:1.7}footer>span:last-child{white-space:nowrap}body.workout-active .intro,body.workout-active .setup{display:none}body.workout-active .workspace{margin-top:20px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
