:root { --paper:#f7f3ea; --ink:#26332d; --forest:#1f4c3b; --gold:#b08a45; --muted:#657169; --card:#fffdf8; --line:#ded9cd; --danger:#a33d32; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:ui-serif, Georgia, 'Noto Serif TC', serif; line-height:1.65; }
button,input { font:inherit; } button { cursor:pointer; }
.site-shell { min-height:100vh; }
.container { width:min(720px, calc(100% - 40px)); margin:auto; padding:48px 0 72px; }
.eyebrow { color:var(--gold); letter-spacing:.12em; font-size:.82rem; font-weight:700; }
h1,h2,h3,p { margin-top:0; } h1 { font-size:clamp(2.15rem,8vw,4.4rem); line-height:1.18; letter-spacing:-.04em; } h2 { font-size:clamp(1.55rem,5vw,2.35rem); line-height:1.28; } h3 { font-size:1.15rem; }
.lede { font-size:1.12rem; color:#46534c; white-space:pre-line; }
.hero-copy { max-width:36rem; font-size:1.13rem; color:#46534c; }.hero-copy p { margin:0 0 1.5rem; }.hero-copy strong { color:var(--ink); }
.intro-copy { font-size:1.08rem; color:#46534c; }.intro-copy p { margin:0 0 1.45rem; }.intro-copy p:last-child { margin-bottom:0; }.intro-copy strong { color:var(--ink); }
.panel { background:var(--card); border:1px solid var(--line); border-radius:20px; padding:24px; box-shadow:0 14px 35px rgba(31,76,59,.06); margin:20px 0; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:12px 22px; border:0; border-radius:999px; color:#fff; background:var(--forest); font-weight:700; text-decoration:none; transition:transform .15s,opacity .15s; }
.button:hover { transform:translateY(-1px); }.button:active { transform:scale(.98); }.button.secondary { color:var(--forest); background:#e8eee8; }.button.ghost { color:var(--forest); background:transparent; border:1px solid var(--forest); }.actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.script-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin-top:32px; }.script-card { padding:16px; border:1px solid var(--line); border-radius:14px; background:rgba(255,255,255,.5); }.script-card strong { display:block; }
.progress { height:7px; border-radius:999px; background:#e3e4dc; overflow:hidden; margin:20px 0 34px; }.progress>span { display:block; height:100%; background:var(--gold); transition:width .3s; }
.question-number { color:var(--gold); font-weight:700; }.question { font-size:1.25rem; line-height:1.55; }.option { display:block; width:100%; text-align:left; padding:16px; margin:10px 0; background:var(--card); border:1px solid var(--line); border-radius:14px; color:var(--ink); }.option:hover,.option.selected { border-color:var(--forest); background:#edf3ed; }.option:focus-visible,.button:focus-visible { outline:3px solid #d2b778; outline-offset:3px; }
label { display:block; margin:16px 0 6px; font-weight:700; } input[type=text],input[type=email] { width:100%; padding:13px; border:1px solid #babbb2; border-radius:10px; background:#fff; }.checkbox { display:flex; align-items:flex-start; gap:10px; font-size:.92rem; margin:18px 0; }.checkbox input { margin-top:6px; }.error { color:var(--danger); margin:12px 0 0; font-weight:700; }.hidden { display:none; }
.result-title { margin-bottom:5px; }.tagline { color:var(--forest); font-size:1.18rem; }.section-label { margin:0 0 14px; font-weight:800; font-size:1rem; letter-spacing:.03em; }.panel .section-label:not(:first-child) { border-top:1px solid var(--line); padding-top:27px; margin-top:30px; }.section-number { color:var(--gold); }.section-title { color:var(--forest); }.todo { background:#f6edda; color:#765414; border-radius:8px; padding:10px 12px; font-size:.92rem; }.cycle { display:grid; gap:8px; }.cycle div { background:#eff2ec; padding:9px 12px; border-radius:8px; }.cycle div:not(:last-child)::after { content:'↓'; display:block; color:var(--gold); text-align:center; margin-top:8px; }.compact-list { padding-left:20px; }.divider { border:0; border-top:1px solid var(--line); margin:36px 0; }
.result-page .container > .eyebrow:first-child,.result-page .result-title,.result-page .result-title + .tagline,.result-page .result-title + .tagline + .rich-text { margin:0; background:var(--card); }.result-page .container > .eyebrow:first-child { padding:24px 24px 8px; border:1px solid var(--line); border-bottom:0; border-radius:20px 20px 0 0; }.result-page .result-title { padding:2px 24px 10px; color:var(--forest); font-size:clamp(1.9rem,7.5vw,3.05rem); line-height:1.3; letter-spacing:-.035em; }.result-page .result-title + .tagline { padding:0 24px 14px; font-size:1.18rem; font-weight:700; }.result-page .result-title + .tagline + .rich-text { padding:0 24px 26px; border:1px solid var(--line); border-top:0; border-radius:0 0 20px 20px; box-shadow:0 14px 35px rgba(31,76,59,.06); }.result-page .result-title + .tagline + .rich-text + .email-notice { margin-top:22px; }
.email-notice { margin:22px 0; padding:15px 17px; border-left:4px solid var(--gold); border-radius:10px; background:#f3eddf; color:#4b514b; }
.rich-text { white-space:normal; }.combo-copy { padding-top:14px; border-top:1px solid var(--line); font-weight:600; }
.focus-belief { color:var(--gold); font-size:1.23rem; font-weight:800; line-height:1.8; }.cycle-copy { border-left:3px solid var(--gold); padding-left:16px; color:#3e4b43; }
.belief-custom { color:#46534c!important; font-weight:400!important; }.belief-layout p { margin:0 0 1.15rem; }.belief-quote,.belief-final { color:var(--forest); font-size:clamp(1.65rem,5.8vw,2.35rem); font-weight:800; line-height:1.35; }.belief-questions { margin:1.5rem 0; }.belief-questions p { margin:.65rem 0; }.belief-questions strong { color:var(--forest); font-weight:800; }.belief-trigger { margin-top:2.3rem!important; }.belief-final { margin-top:.35rem!important; }
.scene-list { color:#46534c; }.scene-item { margin:0 0 1.05rem; padding-left:1.45rem; text-indent:-1.45rem; }.scene-item strong { color:var(--gold); font-weight:800; }.scene-turning { margin:2rem 0 1.35rem; color:#46534c; }.scene-turning p { margin:0 0 .9rem; }.scene-kicker { color:var(--forest); font-size:1.2rem; font-weight:800; }.scene-answer { color:var(--forest); font-size:1.4rem; font-weight:800; line-height:1.55; }.scene-essence { margin:1.5rem 0 0; padding:16px 18px; border-radius:12px; background:#edf2e9; color:var(--forest); font-size:1.12rem; }.scene-essence strong { color:var(--forest); font-size:1.24rem; }
.panel .rich-text { color:#46534c; line-height:1.9; }.panel .rich-text[data-section="04"],.panel .rich-text[data-section="05"] { margin-top:4px; padding:17px 18px; border-radius:12px; background:#f3f4ee; }.panel .rich-text[data-section="04"] { border-left:3px solid var(--gold); }.panel .rich-text[data-section="05"] { border-left:3px solid #708b7c; }.action-copy { margin-top:5px; padding:19px 18px; border-radius:14px; background:#eaf1e9; border:1px solid #d9e4d8; color:var(--forest)!important; font-weight:600; }.secondary-script-card { background:linear-gradient(145deg,#fffdf8 0%,#f2f5ed 100%); }.secondary-script-card h2 { color:var(--forest); font-size:clamp(1.65rem,5vw,2.25rem); }.secondary-script-card .combo-copy { color:var(--forest); }.panel .rich-text[data-section="02"] { font-size:1.05rem; }
.decode-section { padding:30px 24px; }.decode-headline { color:var(--forest); font-size:clamp(1.8rem,6vw,2.8rem); line-height:1.32; letter-spacing:-.035em; }.decode-copy { color:#46534c; font-size:1.05rem; }.decode-copy p { margin:0 0 1.35rem; }.decode-copy strong { color:var(--ink); }.decode-question { color:var(--gold); font-size:clamp(1.65rem,6vw,2.5rem); font-weight:800; line-height:1.22; margin:1.8rem 0!important; }.decode-next { color:var(--forest); font-size:1.35rem; font-weight:800; margin-bottom:12px; }.decode-button { min-height:58px; padding:15px 26px; margin-top:8px; font-size:1.08rem; }.decode-footnote { margin:14px 0 0; color:var(--muted); font-size:.9rem; }
@media (max-width:480px) { .container { width:min(100% - 28px,720px); padding-top:34px; }.panel { padding:20px; }.script-grid { grid-template-columns:1fr; } }
.panel .rich-text[data-section="05"] { margin:0; padding:0; border:0; border-radius:0; background:transparent; }
.action-copy { padding:17px 18px; border:0; border-left:3px solid var(--gold); border-radius:12px; background:#f3f4ee; color:#46534c!important; font-weight:400; }
.cost-layout { color:#46534c; }
.cost-block { margin:0 0 1.2rem; padding:0 0 1.2rem; border-bottom:1px solid #dce2da; }
.cost-block p { margin:0 0 .4rem; }
.cost-label { color:var(--forest); font-size:1.18rem; font-weight:800; }
.cost-emotion-quote { color:var(--forest); font-size:1.28rem; font-weight:800; margin-top:.7rem!important; }
.cost-self { margin-top:1.7rem; padding-bottom:1.55rem; border-bottom:0; }
.cost-self-quote { margin-top:.75rem!important; padding:14px 16px; border-radius:12px; background:#f7ecd5; color:var(--forest); font-size:clamp(1.48rem,5vw,2rem); font-weight:800; line-height:1.4; }
.cost-cycle-label { margin:0 0 .65rem!important; color:var(--forest); font-size:1.08rem; font-weight:800; }
.cost-cycle { padding:14px 15px; border:1px solid #e1dfd4; border-radius:12px; background:#fffdf8; color:#46534c; font-size:.98rem; font-weight:600; line-height:1.8; }
.cost-cycle p { margin:0; }
.cost-cycle b { color:var(--gold); font-size:1.1em; }
.cost-cycle-down { color:var(--gold); font-size:1.35rem; font-weight:800; line-height:1.25; text-align:center; }
.cycle-custom { margin:0!important; padding:0!important; border:0!important; }
.cycle-layout { color:#46534c; }
.cycle-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 34px; position:relative; }
.cycle-step { display:flex; align-items:center; justify-content:center; min-height:74px; padding:12px 10px; border:1px solid #d9dfd7; border-radius:12px; background:#fffdf8; color:var(--forest); font-weight:700; line-height:1.45; text-align:center; position:relative; }
.cycle-step:nth-child(odd):not(.cycle-end)::after { content:'↑'; position:absolute; left:50%; bottom:-24px; z-index:1; transform:translateX(-50%); color:var(--gold); font-size:1.35rem; font-weight:800; }
.cycle-step:nth-child(even)::after { content:'↓'; position:absolute; left:50%; bottom:-24px; z-index:1; transform:translateX(-50%); color:var(--gold); font-size:1.35rem; font-weight:800; }
.cycle-start::before { content:'→'; position:absolute; right:-27px; color:var(--gold); font-size:1.35rem; font-weight:800; }
.cycle-end::before { content:'←'; position:absolute; right:-27px; color:var(--gold); font-size:1.35rem; font-weight:800; }
.cycle-grid .cycle-step:first-child::after,.cycle-grid .cycle-step:nth-child(7)::after,.cycle-grid .cycle-step:nth-child(8)::after { display:none; }
.cycle-conclusion { margin-top:54px; padding:22px 20px; border-radius:14px; background:#f7efdc; color:#46534c; }
.cycle-conclusion p { margin:0 0 1rem; }
.cycle-conclusion p:nth-child(2) { margin-bottom:.55rem; }
.cycle-key { margin-bottom:0!important; color:var(--forest); font-size:clamp(1.5rem,5.2vw,2rem); font-weight:800; line-height:1.4; }

#locale-switcher { position:fixed; z-index:50; top:18px; right:18px; }
#locale-switcher button { padding:8px 12px; border:1px solid rgba(24,60,50,.38); border-radius:999px; background:rgba(255,253,248,.94); color:var(--forest); box-shadow:0 6px 18px rgba(20,47,39,.12); font:700 .88rem var(--sans); cursor:pointer; }
.sales-copy { margin-top:22px; }
.sales-promise { margin:1.1rem 0 .7rem; color:#d97706; font-size:1.15rem; font-weight:800; }
.sales-list { display:inline-block; margin:.45rem auto 1rem; padding-left:1.35rem; text-align:left; line-height:1.75; }
.sales-price { margin:1rem 0; padding:1rem; border:1px solid rgba(217,119,6,.3); border-radius:12px; background:rgba(217,119,6,.08); text-align:center; }
.sales-price p { margin:0 0 .35rem; text-align:center; }.sales-price p:first-child { color:#777; font-size:.9rem; }.sales-price p:nth-child(2) { color:#e11d48; font-size:1.4rem; font-weight:800; }.sales-price p:last-child { margin-bottom:0; }
.sales-bonus { margin:.8rem 0!important; font-size:.93rem; line-height:1.65; }.sales-cta { width:100%; text-align:center; font-size:1.05rem; font-weight:800; }.sales-sub { color:#777!important; text-align:center; }
html[lang="zh-Hans"] body { font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif; }
@media (max-width:560px) { #locale-switcher { top:12px; right:12px; }.sales-cta { padding:14px 16px; font-size:.98rem; }.sales-list { padding-left:1.1rem; } }
