:root{--bg: #efeae3;--paper: #ffffff;--ink: #1c1917;--ink-weak: #57534e;--vermilion: #b8432a;--cta-bg: #1c1917;--cta-ink: #ffffff;--rule: #e7e2da;--paper-shadow: 0 1px 2px rgba(28, 25, 23, .08), 0 8px 24px rgba(28, 25, 23, .06)}@media (prefers-color-scheme: dark){:root{--bg: #161311;--paper: #211d19;--ink: #ede8e1;--ink-weak: #a8a29e;--vermilion: #d96a4a;--cta-bg: #ede8e1;--cta-ink: #161311;--rule: #3a342e;--paper-shadow: none}}*{margin:0;padding:0;box-sizing:border-box}html{font-family:system-ui,-apple-system,Hiragino Sans,Noto Sans JP,sans-serif;background:var(--bg);color:var(--ink)}body{min-height:100dvh}#app{max-width:640px;margin:0 auto;padding:16px}.screen{padding-top:8px}.question-header{display:flex;align-items:center;gap:12px;min-height:32px}.back-button{background:none;border:none;color:var(--ink-weak);font:inherit;font-size:20px;cursor:pointer;padding:4px 8px 4px 0}.progress{color:var(--ink-weak);font-size:13px;letter-spacing:.08em;font-variant-numeric:tabular-nums}.question-prompt{font-size:24px;font-weight:700;line-height:1.5;margin:24px 0 28px}.options{display:flex;flex-direction:column}.option{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-top:1px solid var(--rule);color:var(--ink);font:inherit;font-size:17px;line-height:1.6;text-align:left;width:100%;padding:18px 8px;cursor:pointer}.option:last-child{border-bottom:1px solid var(--rule)}.option-selected{background:var(--vermilion);color:#fff}.card-paper{position:relative;background:var(--paper);border-radius:12px;box-shadow:var(--paper-shadow);padding:28px 20px 20px;margin-top:8px}.stamp{position:absolute;top:16px;right:16px;width:44px;height:44px;display:grid;place-items:center;background:radial-gradient(circle at 30% 35%,rgba(255,255,255,.16),transparent 55%),var(--vermilion);color:#fff;font-size:17px;font-weight:700;line-height:1.1;writing-mode:vertical-rl;letter-spacing:.1em;transform:rotate(-3deg);opacity:.92;animation:stamp-in .25s ease-out;-webkit-user-select:none;user-select:none}@keyframes stamp-in{0%{transform:rotate(-3deg) scale(1.15);opacity:0}to{transform:rotate(-3deg) scale(1);opacity:.92}}@media (prefers-reduced-motion: reduce){.stamp{animation:none}}.headline{font-size:22px;font-weight:700;line-height:1.6;padding-right:56px;margin-bottom:8px}.card-section{margin-top:24px}.section-label{font-size:13px;font-weight:600;letter-spacing:.08em;color:var(--ink-weak);margin-bottom:10px}.card-paper p,.card-paper li{font-size:16px;line-height:1.8}.plan-note{color:var(--ink-weak);font-size:14px;margin-bottom:12px}.session{margin-top:14px}.session-name{font-size:15px;font-weight:700;margin-bottom:6px}.exercise-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.exercise-table td{border-top:1px solid var(--rule);padding:10px 6px;font-size:15px;line-height:1.6;vertical-align:top}.exercise-table tr:last-child td{border-bottom:1px solid var(--rule)}.exercise-order{width:1.5em;color:var(--ink-weak)}.exercise-name{font-weight:600;min-width:7em}.exercise-alt{display:block;font-weight:400;font-size:12px;color:var(--ink-weak)}.exercise-sets{white-space:nowrap;width:5em}.exercise-load{color:var(--ink-weak);font-size:13px}.diet-list{padding-left:1.4em}.timeline-list{list-style:none}.timeline-item{display:flex;gap:10px;padding:6px 0}.timeline-period{color:var(--vermilion);white-space:nowrap;font-variant-numeric:tabular-nums}.card-why{margin-top:24px}.why-summary{cursor:pointer;color:var(--ink-weak);font-size:14px}.why-question{font-size:15px;font-weight:700;margin-top:14px}.why-answer,.why-evidence{color:var(--ink-weak);font-size:14px;margin-top:4px}.why-evidence{margin-top:14px}.card-safety .safety-line{font-size:14px;color:var(--ink-weak)}.cta{display:block;width:100%;margin-top:28px;padding:16px;background:var(--cta-bg);color:var(--cta-ink);border:none;border-radius:0;font:inherit;font-size:17px;font-weight:700;cursor:pointer}.reset-link{display:block;margin:20px auto 4px;background:none;border:none;color:var(--ink-weak);font:inherit;font-size:12px;text-decoration:underline;cursor:pointer}.error-message{margin:32px 0 16px}.restart{background:none;border:none;color:var(--ink);font:inherit;text-decoration:underline;cursor:pointer}
