:root{--bg:#f3efe6;--bg-panel:#fffcf6e0;--bg-strong:#fffdf8;--ink:#1c2a24;--muted:#5e6f67;--line:#1c2a241f;--brand:#0b6b57;--brand-soft:#d7f0e8;--accent:#c76b39;--shadow:0 18px 48px #1c2a2414;--radius-lg:28px;--radius-md:18px;--radius-sm:12px;--max-width:1180px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis-weight:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;color:var(--ink);background:radial-gradient(circle at top left, #c76b392e, transparent 28%), radial-gradient(circle at top right, #0b6b5729, transparent 30%), linear-gradient(180deg, #f9f4ea 0%, var(--bg) 48%, #ebe4d8 100%);margin:0;font-family:SF Pro Display,PingFang SC,Helvetica Neue,sans-serif}a{color:inherit}button,input,textarea{font:inherit}.shell{width:min(100% - 32px, var(--max-width));margin:0 auto;padding:14px 0 48px}.landing-shell{place-items:center;width:min(100% - 32px,1220px);min-height:100vh;margin:0 auto;padding:36px 0;display:grid}.landing-hero{background:radial-gradient(circle at 0 0,#c76b3924,#0000 28%),radial-gradient(circle at 100% 0,#0b6b571f,#0000 30%),#fffcf6db;width:100%;max-width:1080px;padding:clamp(28px,5vw,56px)}.landing-copy{gap:28px;max-width:920px;display:grid}.landing-title-wrap{gap:10px;display:grid}.landing-title{letter-spacing:-.08em;margin:0;font-size:clamp(3rem,8vw,5.6rem);font-weight:700;line-height:.96}.landing-title span{display:block}.landing-title .accent{background:linear-gradient(90deg,#31c487 0%,#59d2ad 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.landing-subtitle{letter-spacing:-.06em;margin:0;font-size:clamp(2.4rem,6vw,4rem);line-height:1.02}.landing-description{color:#697b73;max-width:820px;margin:0;font-size:clamp(1.02rem,2vw,1.18rem);line-height:1.85}.landing-actions{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.landing-primary,.landing-secondary{border-radius:20px;min-width:min(100%,268px);min-height:72px;padding:0 28px;font-size:1.1rem;font-weight:700}.landing-primary{gap:10px;box-shadow:0 18px 34px #0b6b573d}.landing-button-mark{font-size:1.05rem}.landing-secondary{color:#19212f;cursor:pointer;background:#ffffffeb;border:1px solid #1c2a2414;justify-content:center;align-items:center;gap:12px;transition:transform .14s,box-shadow .18s;display:inline-flex;box-shadow:0 14px 28px #1c2a2414}.landing-secondary:hover{transform:translateY(-1px)}.landing-play{border:2px solid;border-radius:999px;place-items:center;width:34px;height:34px;font-size:.9rem;line-height:1;display:inline-grid}.topbar{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(#f3efe6f0,#f3efe6b8 72%,#0000);margin-bottom:16px;padding:10px 0 12px;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.brand-lockup{text-align:left;cursor:pointer;background:0 0;border:0;gap:4px;padding:0;display:grid}.brand-lockup h1{letter-spacing:-.05em;margin:0;font-size:clamp(1.9rem,4.6vw,3rem);line-height:.94}.brand-lockup p{color:var(--muted);margin:0;font-size:.98rem;font-weight:600}.brand-lockup:hover h1,.brand-lockup:hover p{color:var(--brand)}.app-grid{align-items:start;gap:24px;margin-top:0;display:grid}.panel{border-radius:var(--radius-lg);background:var(--bg-panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow);border:1px solid #fff6}.panel-pad{padding:24px}.progress-panel{z-index:15;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffcf6f0;position:sticky;top:14px}.progress-shell{gap:10px;display:grid}.progress-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.progress-header strong{letter-spacing:.08em;text-transform:uppercase;color:var(--brand);font-size:.8rem;display:inline-block}.progress-header span{color:var(--muted);margin-left:10px;font-size:.92rem;display:inline-block}.progress-count{color:var(--muted);white-space:nowrap;font-size:.88rem}.progress-track-wrap{padding:2px 0 0;position:relative}.progress-track{background:#1c2a2414;border-radius:999px;height:10px;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #1c2a2414}.progress-fill{background:linear-gradient(90deg, #0b6b57f2, #2fa884d1), var(--brand);border-radius:999px;transition:width .28s;position:absolute;inset:0 auto 0 0;box-shadow:0 10px 24px #0b6b5738}.progress-nodes{pointer-events:none;position:absolute;inset:50% 0 auto;transform:translateY(-50%)}.progress-node{background:#b8c2bee6;border:2px solid #ffffffeb;border-radius:999px;width:14px;height:14px;margin-left:-7px;transition:background .18s,transform .18s;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 10px #1c2a241f}.progress-node.active{background:var(--brand)}.progress-node.current{background:#1ea380;transform:translateY(-50%)scale(1.14)}.progress-labels{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.progress-label{color:var(--muted);text-align:center;cursor:default;background:0 0;border:0;padding:0;display:block}.progress-label span{font-size:.86rem;line-height:1.35;display:inline-block}.progress-label.is-clickable{cursor:pointer}.progress-label.is-clickable:hover span{text-underline-offset:4px;text-decoration:underline}.progress-label.active{color:var(--ink)}.progress-label.current span{color:var(--brand);font-weight:700}.content-grid{gap:24px;display:grid}.section-title{letter-spacing:-.03em;margin:0;font-size:1.4rem}.section-copy{color:var(--muted);margin:10px 0 0;line-height:1.65}.bilingual-copy{gap:6px;display:grid}.bilingual-copy span{color:var(--ink);line-height:1.65}.bilingual-copy small{color:var(--muted);font-size:.9rem;line-height:1.6}.stack{gap:16px;display:grid}.summary-panel{border:1px solid var(--line);background:#ffffffad;border-radius:20px;gap:14px;padding:18px 20px;display:grid}.summary-panel h3,.summary-panel h4{margin:0}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.summary-item{gap:4px;display:grid}.summary-item strong{color:var(--muted);font-size:.82rem}.summary-item span{line-height:1.45}.input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.field{gap:8px;display:grid}.field.full{grid-column:1/-1}.label{font-size:.92rem;font-weight:600}.hint{color:var(--muted);font-size:.9rem}.input,.textarea{border-radius:var(--radius-sm);width:100%;color:var(--ink);background:#fffffff0;border:1px solid #1c2a241f;padding:14px 16px;transition:border-color .18s,box-shadow .18s,transform .18s}.input:focus,.textarea:focus{border-color:#0b6b5757;outline:none;box-shadow:0 0 0 4px #0b6b5714}.textarea{resize:vertical;min-height:120px}.button-row{flex-wrap:wrap;gap:12px;display:flex}.button,.button-secondary,.ghost-button{cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 18px;transition:transform .14s,opacity .14s,box-shadow .18s;display:inline-flex}.button:hover,.button-secondary:hover,.ghost-button:hover{transform:translateY(-1px)}.button:disabled,.button-secondary:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.65;transform:none}.button{background:linear-gradient(135deg, var(--brand), #15856d);color:#fff;box-shadow:0 14px 28px #0b6b5733}.button-secondary{color:#fff;background:linear-gradient(135deg,#c76b39,#d98756);box-shadow:0 14px 28px #c76b392e}.ghost-button{border:1px solid var(--line);color:var(--ink);background:#ffffffb3}.chips{flex-wrap:wrap;gap:10px;display:flex}.chip{border:1px solid var(--line);cursor:pointer;background:#ffffffc2;border-radius:999px;padding:9px 12px;transition:background .14s,transform .14s}.chip:hover{background:#d7f0e8f2;transform:translateY(-1px)}.cards{gap:14px;display:grid}.cards.three{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.card{border:1px solid var(--line);background:#ffffffd1;border-radius:22px;gap:12px;padding:20px;display:grid}.card.selected{border-color:#0b6b5752;box-shadow:0 16px 24px #0b6b5714}.card h3,.card h4{letter-spacing:-.02em;margin:0}.card p{color:var(--muted);margin:0;line-height:1.6}.meta-row{flex-wrap:wrap;gap:8px;display:flex}.meta{min-height:32px;color:var(--brand);background:#0b6b5714;border-radius:999px;align-items:center;padding:0 10px;font-size:.86rem;font-weight:600;display:inline-flex}.meta.alt{color:var(--accent);background:#c76b391a}.list{color:var(--muted);margin:0;padding-left:18px;line-height:1.7}.loading-block{text-align:center;place-items:center;gap:14px;min-height:220px;display:grid}.spinner{border:4px solid #0b6b571f;border-top-color:var(--brand);border-radius:999px;width:54px;height:54px;animation:.9s linear infinite spin}.loading-copy{gap:8px;display:grid}.loading-copy strong{font-size:1.1rem}.loading-copy span{color:var(--muted)}.email-shell{gap:16px;display:grid}.email-preview{background:#fffdfa;border:1px solid #1c2a241a;border-radius:24px;padding:22px;box-shadow:inset 0 1px #fff9}.email-header{border-bottom:1px solid #1c2a2414;gap:10px;padding-bottom:18px;display:grid}.email-body{color:#21312a;white-space:pre-wrap;margin-top:20px;line-height:1.75}.split{gap:18px;display:grid}.toast{z-index:40;color:#fff;background:#107253f2;border-radius:18px;min-width:280px;max-width:min(420px,100vw - 36px);padding:16px 18px;animation:.22s toast-in;position:fixed;top:18px;right:18px;box-shadow:0 20px 32px #1072533d}.toast.error{background:#b44430f5;box-shadow:0 20px 32px #b444303d}.error-banner{color:#7c3423;background:#b4443014;border:1px solid #b4443024;border-radius:16px;padding:14px 16px}.summary-card{background:linear-gradient(#d7f0e8bd,#ffffffc7);border:1px solid #0b6b5724;border-radius:22px;gap:12px;padding:22px;display:grid}.muted{color:var(--muted)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (min-width:960px){.hero-grid{grid-template-columns:minmax(0,1.45fr) minmax(320px,.9fr);align-items:end}.content-grid{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:start}.split{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:start}}@media (max-width:820px){.shell{width:min(100% - 20px, var(--max-width));padding-top:8px}.landing-shell{width:min(100% - 20px,1220px);padding:20px 0}.landing-copy{gap:22px}.landing-actions{gap:14px}.landing-primary,.landing-secondary{width:100%;min-width:0;min-height:64px}.progress-header{flex-direction:column;align-items:flex-start;gap:6px}.progress-header span{margin-left:0}.input-grid,.summary-grid{grid-template-columns:minmax(0,1fr)}.topbar{margin-bottom:12px;padding-top:6px}.topbar-inner{flex-direction:column;align-items:flex-start;gap:8px}}
