
:root{font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;color:#20343c;background:#f6f5ef}*{box-sizing:border-box}body{margin:0}.shell{max-width:630px;margin:auto;padding:20px 16px 55px}.top{display:flex;justify-content:space-between;align-items:center;padding:6px 2px 22px;font-size:12px;color:#637477}.top b{font-size:16px;color:#174851}.panel{background:#fff;border-radius:23px;padding:26px 22px;box-shadow:0 10px 35px #173f4812}h1{font-size:32px;line-height:1.48;margin:12px 0}h2{font-size:23px;line-height:1.55;margin:10px 0 16px}h3{font-size:17px;margin:4px 0 8px}p{line-height:1.85;margin:10px 0}.lead{font-size:16px}.muted{color:#637579;font-size:14px}.tag{color:#00828b;font-size:12px;font-weight:800;letter-spacing:.12em}.button,.option{display:block;width:100%;border:2px solid #e0e6e4;background:#fff;border-radius:14px;padding:15px 17px;font-size:15px;text-align:left;line-height:1.6;margin:11px 0;cursor:pointer;color:#22383e}.button.primary{background:#087e87;border-color:#087e87;color:white;text-align:center;font-weight:800}.button:disabled{opacity:.4;cursor:default}.option.selected{background:#e7f5f3;border-color:#00848b}.hidden{display:none}.progress{background:#e7eae6;height:7px;border-radius:8px;overflow:hidden;margin:16px 0 24px}.fill{background:#078891;height:100%;width:0;transition:width .2s}.box{background:#eff7f5;border-radius:16px;padding:17px;margin:17px 0}.future{background:#fdf5e8;border-left:4px solid #db9d43;border-radius:12px;padding:17px;margin:17px 0}.label{font-size:12px;color:#147780;font-weight:800;letter-spacing:.07em}.big{font-size:19px;font-weight:800;line-height:1.7}.steps{padding-left:20px;line-height:1.9}.foot{text-align:center;font-size:12px;color:#7b8585;padding:22px}.button:focus-visible,.option:focus-visible{outline:3px solid #db9d43}a{color:#006d77}

[hidden],.hidden{display:none!important}body{font-size:16px}.muted,.foot{color:#52666b}.tag{color:#096d75}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit}.button{text-decoration:none;min-height:48px}.button:disabled{opacity:1;background:#e5e9e8;border-color:#e5e9e8;color:#596b70}.option{position:relative;display:flex;gap:12px;align-items:flex-start;min-height:56px}.option input{flex:none;width:20px;height:20px;margin:3px 0 0;accent-color:#087780}.option:has(input:checked){background:#e7f5f3;border-color:#087780}.option:focus-within,button:focus-visible,a:focus-visible{outline:3px solid #9c6315;outline-offset:3px}fieldset{padding:0;margin:0;border:0;min-width:0}.panel:focus{outline:none}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip:focus{display:block;padding:16px;background:white}.foot{line-height:1.8}.top{gap:12px;flex-wrap:wrap}.big,h1,h2,p{overflow-wrap:anywhere}@media(max-width:360px){.shell{padding:16px 12px 32px}.panel{padding:24px 16px}h1{font-size:27px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@media print{body{background:white}.shell{max-width:none}.panel{box-shadow:none}button,#booking,.top,.foot,.skip{display:none!important}}

textarea{display:block;width:100%;font:inherit;line-height:1.7;border:1px solid #637579;border-radius:8px;padding:12px;margin:12px 0;resize:vertical}textarea:focus-visible{outline:3px solid #9c6315;outline-offset:3px}

.profile-field{margin:24px 0}.profile-field label{display:block;font-weight:700;margin-bottom:10px}.profile-field select{display:block;width:100%;min-height:52px;padding:12px;background:white;border:2px solid #637579;border-radius:12px;color:#20343c;font:inherit}.profile-field select:focus-visible{outline:3px solid #9c6315;outline-offset:3px}

.ai-card,.ai-stage{padding:20px;border:1px solid #cadbd6;border-radius:16px;margin:16px 0;background:#f4f9f7}.ai-stage{background:#fdf5e8;border-color:#dfc393}.business-ai{margin:30px 0}.ai-card h3,.ai-stage h3{font-size:19px;line-height:1.6}.option:has(input[type="checkbox"]:checked){background:#e7f5f3;border-color:#087780}.option:has(input:disabled){color:#667579;background:#f4f5f4}.extra-answer{margin:16px 0}.ai-card p{white-space:pre-wrap}

/* Warm homepage-aligned top. Diagnosis questions and logic remain unchanged. */
body:has(#home:not(.hidden)){background:#faf5ee}.top{color:#77604c}#home{position:relative;isolation:isolate;overflow:hidden;background:#fbf6ed;border-radius:22px;box-shadow:0 16px 60px #70472910;padding:0;color:#523d2b}.hero-photo{height:230px;background-size:cover;background-position:center 60%;position:relative}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#fbf6ed 0%,transparent 75%)}.hero-copy{position:relative;margin-top:-34px;padding:0 26px 24px}#home .tag{font-family:Georgia,serif;letter-spacing:.26em;font-weight:400;color:#8b664c;font-size:12px}.hero-brand{font-size:12px;line-height:1.8;color:#7d644e;margin:14px 0 25px}#home h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;font-size:clamp(25px,6.6vw,37px);line-height:1.65;letter-spacing:.015em;margin:0 0 22px}#home h1 em{font-style:normal;color:#9b6547;background:linear-gradient(transparent 75%,#efcf9a7a 75%)}#home .lead{font-size:16px;line-height:1.9;color:#594333}#homeIntro{font-size:14px;line-height:1.9;color:#725c48}.possibilities{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0}.possibilities>div{padding:16px 12px;background:#fffaf2c9;border:1px solid #dfc8a6;border-radius:13px}.possibilities span{font:10px/1.2 Georgia,serif;letter-spacing:.13em;color:#926c48}.possibilities h2{font-family:"Yu Mincho",serif;font-weight:500;font-size:15px;line-height:1.8;margin:9px 0}.possibilities p{font-size:12px;color:#826449;margin:0}.home-takeaway{padding:18px 0;border-top:1px solid #dfcbb0;border-bottom:1px solid #dfcbb0;font-size:14px;margin-bottom:20px}.home-takeaway b{font-weight:500;color:#856142}.home-takeaway p{margin:8px 0 0}#home .muted{color:#78614c;font-size:12px}#home .button.primary{background:#a36c4d;border-color:#a36c4d;color:#fffaf5;border-radius:13px;font-weight:500;font-size:16px;box-shadow:0 6px 15px #9b65472a;margin-top:16px}#home .button.primary span{margin-left:8px}.home-note{text-align:center;font-size:11px!important;line-height:1.7;margin-top:16px}@media(max-width:360px){.hero-copy{padding:0 19px 24px}.hero-photo{height:190px}.possibilities{grid-template-columns:1fr}}
.hero-photo{background-image:url("hero.webp")}

#home .tag{display:block;margin:0 0 30px}#homeLead{font-weight:600}#homeMeta{margin-top:26px;font-size:15px!important}#home .home-note{font-size:12px!important}

/* Interior screens aligned with the approved warm cover. */
:root{color:#594333;background:#faf5ee}body{color:#594333}main section:not(#home){background:#fffaf2;border:1px solid #eadccc;box-shadow:0 14px 45px #7953370c;border-radius:20px;padding:30px 26px}.top{color:#82664e}.tag{font-family:Georgia,serif;color:#916849;font-size:12px;font-weight:400;letter-spacing:.18em}main section:not(#home) h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(23px,5.9vw,29px);font-weight:500;line-height:1.7;color:#523d2b;margin:16px 0 20px}main section:not(#home) h3{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:500;color:#674831;line-height:1.7}.muted,.foot{color:#78624e}.label{color:#926744;font-size:12px;font-weight:500;letter-spacing:.05em}.button,.option{color:#594333;border:1px solid #d8c3aa;background:#fffdf8;border-radius:12px;padding:16px;margin:12px 0;font-weight:400}.button.primary{color:#fffdf7;background:#a36c4d;border-color:#a36c4d;font-weight:500;box-shadow:0 5px 13px #9b65471a}.button:not(.primary){background:transparent;border-color:#d9c8b5}.button:disabled,.button.primary:disabled{opacity:1;color:#8b7865;background:#ebe1d4;border-color:#e2d3c1;box-shadow:none;cursor:default}.option{gap:12px;min-height:58px;transition:background-color .15s,border-color .15s}.option input{accent-color:#9a6748}.option:has(input:checked),.option:has(input[type="checkbox"]:checked){background:#f2e2cb;border-color:#a36c4d;color:#523b28}.option:has(input:disabled){background:#f4eee5;border-color:#e1d5c6;color:#8b7966}.option.selected{background:#f2e2cb;border-color:#a36c4d}.option:focus-within,button:focus-visible,a:focus-visible,textarea:focus-visible,.profile-field select:focus-visible{outline:3px solid #87603d;outline-offset:3px}.progress{height:5px;background:#e9ddce;margin:22px 0 28px}.fill{background:#b4875e}.box{background:#f5ecde;border:1px solid #e8d9c3;border-radius:13px;padding:20px;margin:22px 0}.future{background:#fbf0dd;border-left:3px solid #bf9561;border-radius:10px;padding:20px;margin:22px 0}.big{color:#65452e;font-size:18px;font-weight:500;line-height:1.85}.profile-field{margin:27px 0}.profile-field label{font-size:15px;font-weight:500;color:#674831}.profile-field select{background:#fffdf8;border:1px solid #cbb598;border-radius:10px;color:#594333;min-height:54px;padding:13px;font-size:16px}textarea{background:#fffdf8;border:1px solid #cbb598;border-radius:10px;color:#594333;font-size:16px;padding:14px;line-height:1.85}.extra-answer{margin:20px 0;padding:16px;background:#f5ecde;border-radius:12px}#otherAnswerBox{margin:18px 0}.ai-card{background:#fffaf1;border:1px solid #ddc7a8;border-radius:13px;padding:22px;margin:17px 0}.ai-stage{background:#efe1cc;border:1px solid #d5bc98;border-radius:13px;padding:22px;margin:20px 0}.business-ai{margin:32px 0}a{color:#835a3d}#copyStatus{color:#805a39}#profileResult{color:#765c46}.steps{padding-left:22px;line-height:1.95}#choose .option{display:block;padding:20px}#choose .option .muted{display:block;margin-top:7px;font-size:13px;line-height:1.8}#profile .button.primary,#quiz .button.primary{margin-top:24px}#result .box .box{background:#fff9ef;border-color:#e5d3b9}#resultSummary{font-size:14px}#home{border:none}#home .muted{color:#78614c}@media(max-width:360px){main section:not(#home){padding:25px 19px}.option{padding:15px 12px}main section:not(#home) h2{font-size:23px}.box,.future{padding:17px}}@media(prefers-reduced-motion:reduce){.option{transition:none}}

main section:not(#home) .button.primary:not(:disabled){background:#976043;border-color:#976043}

.profile-field select,textarea{border-color:#a08060}

/* Results: a clear story rather than a stack of equal cards. */
#result{padding:30px 25px}#result>.tag{font-size:11px}#result>h2{font-size:27px;line-height:1.6;margin:14px 0 20px;color:#513b28}#result .result-profile{padding:0 0 20px;border-bottom:1px solid #dfcbb0;margin:0 0 22px}#result .result-profile .label{font-size:11px;color:#826b54}#result .result-profile p{font-size:12px;line-height:1.8;color:#826b54;margin:5px 0}#result .result-foundation{background:transparent;border:0;border-radius:0;padding:0;margin:22px 0}#result .result-foundation .big{font-size:17px;font-weight:600;margin:7px 0}#result .result-foundation p:last-child{font-size:13px;color:#826b54;margin:5px 0}#result .result-dream{background:transparent;border:0;border-top:1px solid #dfcbb0;border-bottom:1px solid #dfcbb0;border-radius:0;padding:24px 0;margin:24px 0}#result .result-dream .big{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:25px;line-height:1.65;font-weight:500;color:#805334;margin:12px 0}#result .result-dream p:last-child{font-size:14px;color:#78614c}#result .result-action{background:#f1dfc4;border:1px solid #d5b68e;border-radius:15px;padding:23px 20px;margin:28px 0 0}#result .result-action .label{font-size:15px;color:#754c2c;font-weight:600;letter-spacing:0}#result .result-action .big{font-size:19px;line-height:1.8;color:#513720;font-weight:600;margin:14px 0}#result .result-action #why{font-size:13px;line-height:1.85;color:#7e644b}#result .result-month{background:transparent;border:0;border-left:2px solid #c9a779;border-radius:0;margin:24px 0;padding:1px 0 1px 16px}#result .result-month .big{font-size:15px;font-weight:400;line-height:1.9}#result .result-month .muted{font-size:12px}#result .result-reasons{border-top:1px solid #e3d3be;border-bottom:1px solid #e3d3be;margin:26px 0;padding:0}#result summary{cursor:pointer;padding:17px 4px;font-size:14px;line-height:1.8;color:#745337;font-weight:500}#result summary:focus-visible{outline:3px solid #87603d;outline-offset:3px}#result .result-reasons .box{background:transparent;border:0;padding:0 4px;margin:7px 0 22px}#result .result-reasons h3{font-family:system-ui,sans-serif;font-size:16px;font-weight:600;margin:9px 0}#result .result-reasons p{font-size:14px;line-height:1.95}#result>.muted{font-size:12px;line-height:1.8;color:#86715b}#result .business-ai{padding-top:26px;border-top:1px solid #d4bd9e;margin:36px 0}#result .business-ai>h2{font-size:24px;line-height:1.7;margin-bottom:16px}#result .business-ai>.muted{font-size:12px;line-height:1.9}#result .ai-card{border:0;border-left:3px solid #b99162;border-radius:0;background:#f8eedf;padding:20px 18px;margin:20px 0}#result .ai-card .muted{font-size:11px;margin:0 0 6px}#result .ai-card h3{font-family:system-ui,sans-serif;font-size:18px;font-weight:600;line-height:1.6;margin:6px 0 12px}#result .ai-card p:last-child{font-size:14px;line-height:1.95;margin:0}#result .ai-stage{background:transparent;border:1px solid #d5bc98;border-radius:10px;margin:25px 0;padding:20px}#result .ai-stage h3{font-size:19px}#result .ai-stage p{font-size:13px}#result .consultation-panel{margin:38px -10px 24px;padding:27px 20px;background:#f0e0cb;border:1px solid #d7b995;border-radius:15px}#result .consultation-panel>.label{font-size:11px}#result .consultation-panel>h3{font-size:25px;font-weight:500;margin:14px 0 6px;line-height:1.65}#result .consultation-panel>p{font-size:14px;line-height:1.95}#result .consultation-panel>.muted{font-size:12px;color:#7d664f}#result .consultation-duration{display:inline-block;margin:13px 0;padding:7px 15px;background:#fff9ee;border:1px solid #d9be9c;border-radius:7px;color:#71492c}#result .consultation-duration b{font-size:18px;font-weight:600}#result #businessConsultation{padding:18px 0;margin:20px 0;border-top:1px solid #d6bd9c;border-bottom:1px solid #d6bd9c;font-size:17px;font-weight:500;line-height:1.9;color:#684326}#result .copy-panel{padding:20px 0 0;margin:25px 0 0;background:transparent!important;border:0!important;border-top:1px solid #d6bd9c!important;border-radius:0}#result .copy-panel h3{font-size:19px;font-weight:600;font-family:system-ui,sans-serif}#result .steps{font-size:13px;line-height:1.9;margin:16px 0}#result .steps li{margin:10px 0}#result .copy-panel>.muted{font-size:11px;line-height:1.85}#result .copy-preview{border-top:1px solid #d6bd9c;border-bottom:1px solid #d6bd9c;margin:18px 0}#result .copy-preview summary{font-size:12px}#result #resultSummary{font-size:13px;line-height:1.8;max-height:290px}#result .flow-caption{font-size:13px;font-weight:600;margin:24px 0 9px;color:#765033}#result #copyResult,#result #booking{font-size:15px;line-height:1.6;padding:15px 12px}#result #copyStatus{font-size:12px;line-height:1.8}#result .result-selftry{background:transparent;border:0;border-top:1px solid #dfcbb0;border-radius:0;padding:24px 0 0;margin:30px 0}#result .result-selftry b{font-size:15px;font-weight:600}#result .result-selftry p{font-size:13px;line-height:1.9;color:#7b654f}#result .result-tools{border-top:1px solid #dfcbb0;padding-top:18px;margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:10px}#result .result-tools .button{font-size:12px;line-height:1.6;text-align:center;margin:0;padding:12px 8px;min-height:48px;color:#806349;border-color:#dacaaf}@media(max-width:360px){#result{padding:25px 19px}#result>h2{font-size:25px}#result .result-dream .big{font-size:23px}#result .consultation-panel{margin-left:-7px;margin-right:-7px;padding:24px 16px}#result .consultation-panel>h3{font-size:23px}}

#result>h2:focus{outline:none}

#result .challenge-action p{font-size:15px;line-height:1.95;margin:14px 0}#result .challenge-findings{border-top:1px solid #d3b58d;margin-top:22px;padding-top:6px}#result .challenge-findings h3{font:600 14px/1.7 system-ui,sans-serif;color:#78512e;margin:20px 0 8px}#result .challenge-findings p{font-size:15px;line-height:1.9}#result .challenge-fit{border-top:1px solid #d3b58d;margin-top:20px}#result .challenge-fit p,#result .challenge-fit li{font-size:13px;line-height:1.9}#challengeConditions{padding-left:20px}#challengeConditions li{margin:10px 0}#result #month{white-space:pre-line}#challengeChoicesBox{border-top:1px solid #d8c3aa;padding-top:20px;margin:20px 0}#challengeChoicesBox legend{font-size:15px;color:#674831}#challengeChoicesBox .option{font-size:14px}

#result .result-essentials{margin:20px 0 24px}#result .result-essentials .result-action{margin:15px 0 0;padding:21px 19px}#result .result-essentials .result-action .big{font-size:20px;line-height:1.8;margin:13px 0 0}#result .result-essentials .result-month{border:1px solid #dcc4a2;border-radius:12px;background:#fffaf1;padding:20px 19px;margin:15px 0 0}#result .result-essentials .result-month>.label{font-size:15px;font-weight:600;color:#78512e}#result .result-essentials .result-month .big{font-size:17px;font-weight:500;margin:12px 0;line-height:1.9}#result .result-essentials #challengeGoalLabel{font-size:12px;margin:0 0 9px}#result .challenge-details,#result .result-context{border-top:1px solid #e2cfb5;border-bottom:1px solid #e2cfb5;margin:18px 0}#result .challenge-details summary,#result .result-context summary{font-size:13px;padding:17px 3px}#result .challenge-detail-body{padding:0 3px 20px}#result .challenge-detail-body h3{font-size:16px;font-weight:600;font-family:system-ui,sans-serif;margin:23px 0 9px}#result .challenge-detail-body p,#result .challenge-detail-body li{font-size:14px;line-height:1.95}#result .challenge-detail-body .muted{font-size:12px}#result #monthSteps{white-space:pre-line}#result .result-context .result-profile{margin-top:15px}#result .result-context .result-dream .big{font-size:21px}#result .result-context .result-foundation{margin-bottom:18px}#result .result-reasons{margin:18px 0}

/* v7: one action today, later observation, optional help */
[hidden]{display:none!important}
.result-after{padding:0 3px}.result-after p{font-size:15px;line-height:1.85;margin:8px 0 0}
.result-fit{border-top:1px solid #d8c5ad;padding-top:28px;margin-top:30px}
.result-fit h3{font-size:21px;line-height:1.65;margin-bottom:20px}
.result-fit fieldset{border:0;padding:0;margin:0;min-width:0}
.result-fit .option{font-size:15px;line-height:1.75;padding:15px}
.fit-guidance{background:#f2e5d2;padding:18px;border-radius:12px;font-size:15px;line-height:1.85}
