:root{color-scheme:light;--ink:#29263d;--ink-soft:#5f6072;--paper:#f7f8fc;--card:#fff;--line:#d9dbea;--accent:#d95347;--accent-dark:#ab3a31;--mint:#d9f4eb;--mint-dark:#1d685c;--shadow:0 28px 80px rgba(33,32,69,.10);font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;font-size:16px}
*{box-sizing:border-box}html{min-height:100%;background:var(--paper)}body{margin:0;color:var(--ink);background:radial-gradient(circle at 78% 15%,rgba(189,204,243,.29),transparent 32%),radial-gradient(circle at 5% 87%,rgba(249,205,190,.23),transparent 31%),var(--paper);min-height:100vh}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.page-shell{max-width:1120px;min-height:100vh;margin:0 auto;padding:0 32px;display:flex;flex-direction:column}.site-header{min-height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(41,38,61,.13);gap:20px}.identity{display:flex;align-items:center;gap:12px;font-size:.92rem;font-weight:800;letter-spacing:.035em}.identity-mark{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;color:#fff;background:var(--ink);font-size:21px;line-height:1}.identity-divider{color:#b2b3c1;padding:0 4px}.header-note{font-size:.84rem;color:var(--ink-soft)}.main-area{width:min(100%,760px);margin:0 auto;flex:1;padding:48px 0 64px}.intro{margin:0 0 34px}.eyebrow{margin:0 0 14px;color:var(--accent-dark);font-size:.82rem;letter-spacing:.11em;font-weight:800}.intro h1{max-width:780px;margin:0;font-size:clamp(1.75rem,3.1vw,2.7rem);line-height:1.48;letter-spacing:-.035em}.intro-copy{margin:16px 0 0;color:var(--ink-soft);line-height:1.9;font-size:1rem;max-width:690px}.surface{background:var(--card);border:1px solid #e2e4ef;border-radius:25px;box-shadow:var(--shadow);padding:36px 44px 38px}.surface-topline,.result-topline{display:flex;align-items:center;justify-content:space-between;gap:15px}.step-label,.step-total,.result-kicker{font-size:.86rem;font-weight:800}.step-label{color:var(--accent-dark)}.step-total{color:#888a9b}.progress-track{height:8px;background:#ededf5;border-radius:99px;margin:16px 0 40px;overflow:hidden}.progress-fill{height:100%;width:8.33%;background:linear-gradient(90deg,#ed9077,#d95347);border-radius:99px;transition:width .25s ease}.question-cue{font-size:.89rem;font-weight:700;color:var(--ink-soft);margin:0 0 10px}.question-block h2,.result-surface h2{font-size:clamp(1.45rem,2.65vw,2rem);line-height:1.55;letter-spacing:-.025em;margin:0}.question-block h2{min-height:3.1em}.question-block h2:focus,.result-surface h2:focus{outline:none}.answer-list{border:0;padding:0;margin:29px 0 0;display:grid;gap:11px}.answer-option{min-height:62px;border:1.5px solid var(--line);border-radius:14px;display:flex;align-items:center;gap:14px;padding:14px 19px;font-size:1rem;font-weight:700;line-height:1.5;background:#fff;transition:border-color .16s,background .16s,transform .16s}.answer-option:hover{border-color:#a8abc7;transform:translateY(-1px)}.answer-option.is-selected{border-color:var(--accent);background:#fff6f3}.answer-option:focus-within{outline:3px solid rgba(217,83,71,.25);outline-offset:2px}.answer-option input{width:20px;height:20px;accent-color:var(--accent);flex:none;margin:0}.controls,.result-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:34px}.button{border-radius:13px;min-height:48px;padding:12px 21px;border:1px solid transparent;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;text-align:center;font-weight:800;line-height:1.4;transition:transform .16s,background .16s,border-color .16s}.button:not(:disabled):hover{transform:translateY(-1px)}.button:focus-visible,.tie-option:focus-visible,summary:focus-visible{outline:3px solid rgba(217,83,71,.42);outline-offset:3px}.button-primary{color:#fff;background:var(--ink);box-shadow:0 9px 22px rgba(41,38,61,.15)}.button-primary:hover{background:#3b3656}.button-primary:disabled{background:#c9cad4;color:#fff;box-shadow:none}.button-quiet{background:transparent;color:var(--ink-soft);border-color:transparent}.button-quiet:disabled{opacity:.36}.button-outline{background:#fff;border-color:#c8cada;color:var(--ink)}.disclaimer{font-size:.82rem;line-height:1.8;color:#707285;margin:22px 7px 0}.site-footer{border-top:1px solid rgba(41,38,61,.13);padding:25px 0 32px;font-size:.79rem;color:#7b7e90}
.result-surface{padding-top:44px}.result-code{background:var(--mint);color:var(--mint-dark);font-weight:800;font-size:.83rem;border-radius:99px;padding:7px 13px}.result-surface h2{margin-top:15px}.result-lead{font-size:1.1rem;font-weight:700;line-height:1.9;margin:19px 0 10px}.result-body,.support-copy{font-size:1rem;line-height:1.95;color:#525466;margin:0}.reflection,.little-step{padding:22px 23px;border-radius:16px;margin-top:27px}.reflection{background:#f4f1fa}.little-step{background:#eff8f5;margin-top:13px}.reflection-label{display:block;color:#776b98;font-size:.82rem;font-weight:800;letter-spacing:.04em}.little-step .reflection-label{color:#3f746b}.reflection p,.little-step p{font-size:1.05rem;font-weight:800;line-height:1.7;margin:8px 0 0}.line-panel{margin-top:34px;padding-top:30px;border-top:1px solid var(--line)}.line-panel h3{font-size:1.2rem;line-height:1.5;margin:0 0 8px}.line-panel>p{margin:0 0 19px;color:var(--ink-soft);line-height:1.8}.line-link{min-width:220px}.line-instruction{color:var(--ink-soft);font-size:.88rem;margin:12px 0 0}.setup-note{background:#f6f7fa;border:1px solid #e1e3ec;color:#696b7d;border-radius:12px;padding:14px 17px;line-height:1.7;margin:0}.line-preview{margin-top:22px;border-top:1px solid var(--line);padding-top:19px}.line-preview summary{cursor:pointer;font-weight:700;color:var(--ink-soft);font-size:.9rem}.line-preview p{line-height:1.9;color:#515365;margin:15px 0 0;white-space:pre-wrap}.result-controls{margin-top:29px}.tie-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:27px 0 25px}.tie-option{background:#fff;border:1.5px solid var(--line);border-radius:15px;min-height:82px;padding:15px;display:flex;align-items:center;text-align:left;gap:13px;font-weight:800;color:var(--ink)}.tie-option:hover{border-color:var(--accent);background:#fff6f3}.tie-letter{display:grid;place-items:center;flex:none;width:37px;height:37px;border-radius:11px;background:#f3f0f8;color:#796d9b}.tie-option:hover .tie-letter{background:#fce6e0;color:var(--accent-dark)}
@media(max-width:700px){.page-shell{padding:0 18px}.site-header{min-height:67px}.identity{font-size:.79rem;gap:9px}.identity-mark{width:28px;height:28px}.header-note{display:none}.main-area{padding:31px 0 45px}.intro{margin-bottom:25px}.intro h1{font-size:1.72rem}.intro-copy{font-size:.93rem;line-height:1.8}.surface{padding:25px 20px 27px;border-radius:20px}.progress-track{margin:15px 0 29px}.question-block h2{min-height:3.1em}.answer-list{margin-top:20px;gap:9px}.answer-option{min-height:58px;padding:12px 15px;font-size:.95rem}.controls,.result-controls{margin-top:25px}.button{padding:12px 15px;font-size:.91rem}.tie-options{grid-template-columns:1fr}.result-surface{padding-top:29px}.result-lead{font-size:1rem}.reflection,.little-step{padding:19px}.site-footer{padding-bottom:25px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
