@font-face{font-family:Libre Baskerville;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/libre-baskerville-latin-ext-400-normal-DehDhP4C.woff2) format("woff2"),url(/assets/libre-baskerville-latin-ext-400-normal-Dm_CMUlS.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Baskerville;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/libre-baskerville-latin-400-normal-C42RasBZ.woff2) format("woff2"),url(/assets/libre-baskerville-latin-400-normal-B6A5kCEq.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Baskerville;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/libre-baskerville-latin-ext-400-italic-BgvGgHFw.woff2) format("woff2"),url(/assets/libre-baskerville-latin-ext-400-italic-C64zF-fj.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Baskerville;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/libre-baskerville-latin-400-italic-Dx5Rrf3o.woff2) format("woff2"),url(/assets/libre-baskerville-latin-400-italic-BDjkfMIE.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Baskerville;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/libre-baskerville-latin-ext-700-normal-URU-TBJY.woff2) format("woff2"),url(/assets/libre-baskerville-latin-ext-700-normal-CwmVKpN0.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Libre Baskerville;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/libre-baskerville-latin-700-normal-CLGq6Yj4.woff2) format("woff2"),url(/assets/libre-baskerville-latin-700-normal-DFRs2Bxw.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Crimson Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/crimson-pro-vietnamese-wght-normal-Djpar-EE.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Crimson Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/crimson-pro-latin-ext-wght-normal-4mBZvMWv.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Crimson Pro Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/crimson-pro-latin-wght-normal-C4R2PX-h.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-primary-50: #fdf8f3;--color-primary-100: #f5ead9;--color-primary-200: #e4d0a3;--color-primary-300: #c9a961;--color-primary-400: #a88f6d;--color-primary-500: #8b6f47;--color-primary-600: #7a5f3a;--color-primary-700: #654d2f;--color-primary-800: #503c24;--color-primary-900: #3b2c1a;--color-primary-950: #261c10;--color-surface-50: #fffcf7;--color-surface-100: #faf8f5;--color-surface-200: #f5f2ed;--color-surface-300: #f0ebe3;--color-surface-400: #e6dfd7;--color-surface-500: #d4cfc7;--color-surface-600: #b5ada3;--color-surface-700: #5d4e44;--color-surface-800: #3d352f;--color-surface-900: #1a1614;--color-surface-950: #0d0b0a;--color-accent-50: #fdf8f3;--color-accent-100: #f5ead9;--color-accent-200: #e4d0a3;--color-accent-300: #c9a961;--color-accent-400: #a88f6d;--color-accent-500: #8b6f47;--color-accent-600: #7a5f3a;--color-accent-700: #654d2f;--color-accent-800: #503c24;--color-accent-900: #3b2c1a;--color-accent-950: #261c10;--color-paper: #faf7f2;--color-paper-dark: #17140f;--color-cream: #f3efe8;--color-cream-dark: #1e1a15;--color-warm-white: #fffdf9;--color-warm-white-dark: #252119;--color-parchment: #f7f3ec;--color-parchment-dark: #1c1812;--color-ink: #2c241e;--color-ink-dark: #ede8df;--color-ink-light: #4a3f35;--color-ink-light-dark: #cdc5b8;--color-ink-lighter: #6b5d4d;--color-ink-lighter-dark: #a89e8f;--color-ink-muted: #9a897a;--color-ink-muted-dark: #857a6b;--color-accent: #8b6b3d;--color-accent-dark: #d4b068;--color-accent-light: #a68550;--color-accent-light-dark: #e4c88a;--color-accent-hover: #7a5c32;--color-accent-hover-dark: #c9a35a;--color-gold: #c4a35a;--color-gold-dark: #d4b068;--color-gold-light: #ddc992;--color-gold-light-dark: #e4c88a;--color-border: #e4ddd2;--color-border-dark: #322c24;--color-border-light: #ede8e0;--color-border-light-dark: #282320;--color-border-subtle: #f5f1ea;--color-border-subtle-dark: #1e1a15;--color-vermillion: #c45a3b;--color-vermillion-dark: #d47a5f;--color-ultramarine: #3b5998;--color-ultramarine-dark: #6b8bc4;--color-viridian: #4a7c59;--color-viridian-dark: #6b9e7a;--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, sans-serif;--font-heading: Inter, ui-sans-serif, system-ui, -apple-system, sans-serif;--font-display: "Libre Baskerville", Georgia, "Times New Roman", serif;--font-reading: "Crimson Pro", Georgia, "Times New Roman", serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--font-ui: Inter, ui-sans-serif, system-ui, -apple-system, sans-serif;--text-xs: .75rem;--text-xs-line-height: 1rem;--text-sm: .875rem;--text-sm-line-height: 1.25rem;--text-base: 1rem;--text-base-line-height: 1.5rem;--text-lg: 1.125rem;--text-lg-line-height: 1.75rem;--text-xl: 1.25rem;--text-xl-line-height: 1.75rem;--text-2xl: 1.5rem;--text-2xl-line-height: 2rem;--text-3xl: 1.875rem;--text-3xl-line-height: 2.25rem;--text-3xl-letter-spacing: -.02em;--text-4xl: 2.25rem;--text-4xl-line-height: 2.5rem;--text-4xl-letter-spacing: -.02em;--text-5xl: 3rem;--text-5xl-line-height: 1;--text-5xl-letter-spacing: -.02em;--text-6xl: 3.75rem;--text-6xl-line-height: 1;--text-6xl-letter-spacing: -.02em;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-9: 2.25rem;--space-10: 2.5rem;--space-11: 2.75rem;--space-12: 3rem;--space-14: 3.5rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-28: 7rem;--space-32: 8rem;--space-36: 9rem;--space-40: 10rem;--space-44: 11rem;--space-48: 12rem;--space-52: 13rem;--space-56: 14rem;--space-60: 15rem;--space-64: 16rem;--space-72: 18rem;--space-80: 20rem;--space-96: 24rem;--space-px: 1px;--space-0_5: .125rem;--space-1_5: .375rem;--space-2_5: .625rem;--space-3_5: .875rem;--radius-none: 0;--radius-sm: .25rem;--radius-default: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-3xl: 2rem;--radius-full: 9999px;--shadow-soft: 0 2px 8px rgba(26, 22, 20, .04), 0 1px 3px rgba(26, 22, 20, .08);--shadow-medium: 0 4px 16px rgba(26, 22, 20, .06), 0 2px 6px rgba(26, 22, 20, .12);--shadow-strong: 0 8px 32px rgba(26, 22, 20, .08), 0 4px 12px rgba(26, 22, 20, .16);--shadow-soft-dark: 0 2px 8px rgba(0, 0, 0, .2), 0 1px 3px rgba(0, 0, 0, .3);--shadow-medium-dark: 0 4px 16px rgba(0, 0, 0, .3), 0 2px 6px rgba(0, 0, 0, .4);--shadow-strong-dark: 0 8px 32px rgba(0, 0, 0, .4), 0 4px 12px rgba(0, 0, 0, .5);--reading-width: 65ch;--content-width: 48rem;--duration-fast: .15s;--duration-default: .2s;--duration-normal: .25s;--duration-slow: .35s;--duration-slower: .5s;--ease-default: cubic-bezier(.4, 0, .2, 1);--ease-linear: linear;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--ease-spring: cubic-bezier(.175, .885, .32, 1.275)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes menuIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}:root{--font-reading: "Crimson Pro Variable", Georgia, "Times New Roman", serif;--font-ui: "Inter Variable", ui-sans-serif, system-ui, sans-serif;--c-love: var(--color-vermillion);--c-skill: var(--color-gold);--c-need: var(--color-viridian);--c-paid: var(--color-ultramarine);--c-love-deep: color-mix(in srgb, var(--c-love) 72%, var(--color-ink));--c-skill-deep: color-mix(in srgb, var(--c-skill) 55%, var(--color-ink));--c-need-deep: color-mix(in srgb, var(--c-need) 70%, var(--color-ink));--c-paid-deep: color-mix(in srgb, var(--c-paid) 72%, var(--color-ink));--btn-ink: var(--color-ink);--btn-ink-hover: color-mix(in srgb, var(--color-vermillion) 82%, var(--color-ink))}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-reading);font-size:1.125rem;line-height:1.55;font-optical-sizing:auto;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;margin:0}p{margin:0}a{color:inherit}button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}::selection{background:color-mix(in srgb,var(--color-gold) 35%,transparent)}:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-vermillion);border-radius:var(--radius-sm)}.page,.quiz{min-height:100dvh;background:radial-gradient(60rem 40rem at 85% -10%,var(--color-warm-white),transparent 60%),radial-gradient(50rem 36rem at -10% 110%,var(--color-parchment),transparent 55%),var(--color-paper)}.masthead{display:flex;align-items:center;justify-content:space-between;max-width:70rem;margin:0 auto;padding:var(--space-6) var(--space-6) var(--space-4)}.masthead-brand{display:inline-flex;align-items:center;gap:var(--space-3);text-decoration:none}.wordmark{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.01em}.masthead-kanji{font-size:var(--text-sm);color:var(--color-ink-muted);letter-spacing:.5em;margin-right:-.5em}.masthead-actions{display:flex;gap:var(--space-2)}.mark{position:relative;width:1.5rem;height:1.5rem;display:inline-block;flex:none}.mark i{position:absolute;width:.875rem;height:.875rem;border-radius:var(--radius-full);mix-blend-mode:multiply;opacity:.85}.mark i:nth-child(1){background:var(--c-love);top:0;left:50%;transform:translate(-50%)}.mark i:nth-child(2){background:var(--c-skill);top:50%;left:0;transform:translateY(-50%)}.mark i:nth-child(3){background:var(--c-need);top:50%;right:0;transform:translateY(-50%)}.mark i:nth-child(4){background:var(--c-paid);bottom:0;left:50%;transform:translate(-50%)}.overline{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:550;text-transform:uppercase;letter-spacing:.14em;color:var(--c-love-deep)}.section-head h2{font-size:var(--text-3xl);letter-spacing:var(--text-3xl-letter-spacing)}.section-head p{max-width:38rem;margin-top:var(--space-3);color:var(--color-ink-light);font-size:var(--text-lg)}.btn-primary{display:inline-flex;align-items:center;gap:var(--space-2_5);background:var(--btn-ink);color:var(--color-warm-white);font-family:var(--font-ui);font-size:var(--text-base);font-weight:500;letter-spacing:.01em;text-decoration:none;padding:var(--space-3_5) var(--space-7);border-radius:var(--radius-full);transition:background .25s ease,transform .25s ease}.btn-primary:hover{background:var(--btn-ink-hover);transform:translateY(-1px)}.btn-primary:focus-visible{box-shadow:inset 0 0 0 2px var(--color-warm-white)}.ghost-btn{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:500;color:var(--color-ink-light);padding:var(--space-2) var(--space-3_5);border-radius:var(--radius-full);transition:background .2s ease,color .2s ease}.ghost-btn:hover{background:color-mix(in srgb,var(--color-gold) 16%,transparent);color:var(--color-ink)}.ghost-btn.is-arming{background:color-mix(in srgb,var(--color-vermillion) 14%,transparent);color:var(--c-love-deep)}.hero{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;gap:var(--space-12);max-width:70rem;margin:0 auto;padding:var(--space-20) var(--space-6) var(--space-24)}.hero-text>*{animation:rise .7s cubic-bezier(.22,1,.36,1) both}.hero-text>*:nth-child(2){animation-delay:.08s}.hero-text>*:nth-child(3){animation-delay:.16s}.hero-text>*:nth-child(4){animation-delay:.24s}.hero-text>*:nth-child(5){animation-delay:.32s}@keyframes rise{0%{opacity:0;transform:translateY(.75rem)}to{opacity:1;transform:none}}.hero h1{font-size:clamp(2.5rem,6vw,4.25rem);line-height:1.08;letter-spacing:-.015em;margin:var(--space-5) 0 var(--space-6)}.hero h1 em{font-style:italic;color:var(--c-love-deep)}.lede{max-width:36rem;font-size:var(--text-xl);line-height:1.55;color:var(--color-ink-light)}.hero-cta{display:flex;align-items:center;gap:var(--space-5);margin-top:var(--space-8);flex-wrap:wrap}.hero-resume{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-ink-lighter);max-width:14rem}.hero-meta{margin-top:var(--space-5);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-ink-muted)}.hero-venn{display:flex;justify-content:center;animation:rise .9s cubic-bezier(.22,1,.36,1) .2s both}.venn{position:relative;width:min(24rem,82vw);aspect-ratio:1}.venn-circle{position:absolute;width:calc(38% + var(--s, .8) * 18%);aspect-ratio:1;border-radius:var(--radius-full);mix-blend-mode:multiply;opacity:.62;transform:translate(-50%,-50%);transition:width .8s cubic-bezier(.22,1,.36,1)}.venn-love{background:var(--c-love);left:50%;top:34%}.venn-skill{background:var(--c-skill);left:34%;top:50%}.venn-need{background:var(--c-need);left:66%;top:50%}.venn-paid{background:var(--c-paid);left:50%;top:66%}.venn-decorative .venn-circle{animation:breathe 9s ease-in-out infinite alternate}.venn-decorative .venn-skill{animation-delay:-2.5s}.venn-decorative .venn-need{animation-delay:-5s}.venn-decorative .venn-paid{animation-delay:-7s}@keyframes breathe{0%{scale:.96}to{scale:1.05}}.venn-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);writing-mode:vertical-rl;color:var(--color-paper);font-size:var(--text-sm);letter-spacing:.3em;-webkit-user-select:none;user-select:none}.venn-label{position:absolute;display:flex;flex-direction:column;align-items:center;gap:var(--space-0_5);text-align:center}.venn-label-love{left:50%;top:-1rem;transform:translate(-50%,-100%)}.venn-label-skill{left:-.75rem;top:50%;transform:translate(-100%,-50%)}.venn-label-need{right:-.75rem;top:50%;transform:translate(100%,-50%)}.venn-label-paid{left:50%;bottom:-1rem;transform:translate(-50%,100%)}.venn-label-name{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:550;text-transform:uppercase;letter-spacing:.1em;color:var(--color-ink-lighter);white-space:nowrap}.venn-label-score{font-family:var(--font-display);font-size:var(--text-2xl)}.venn-label-love .venn-label-score{color:var(--c-love-deep)}.venn-label-skill .venn-label-score{color:var(--c-skill-deep)}.venn-label-need .venn-label-score{color:var(--c-need-deep)}.venn-label-paid .venn-label-score{color:var(--c-paid-deep)}.circles-intro{background:var(--color-cream)}.circles-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-10);max-width:70rem;margin:0 auto;padding:var(--space-16) var(--space-6)}.circle-card-kanji{display:block;font-size:var(--text-4xl);line-height:1}.card-love .circle-card-kanji{color:var(--c-love-deep)}.card-skill .circle-card-kanji{color:var(--c-skill-deep)}.card-need .circle-card-kanji{color:var(--c-need-deep)}.card-paid .circle-card-kanji{color:var(--c-paid-deep)}.circle-card-romaji{font-family:var(--font-ui);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--color-ink-muted);margin:var(--space-3) 0 var(--space-4)}.circle-card h3{font-size:var(--text-xl);margin-bottom:var(--space-2_5)}.circle-card-line{color:var(--color-ink-light);font-size:var(--text-base);line-height:1.5}.method{max-width:70rem;margin:0 auto;padding:var(--space-20) var(--space-6) var(--space-16)}.method-steps{list-style:none;margin:var(--space-10) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-10)}.method-numeral{display:block;font-family:var(--font-display);font-style:italic;font-size:var(--text-3xl);color:var(--color-gold);margin-bottom:var(--space-3)}.method-steps h3{font-size:var(--text-lg);margin-bottom:var(--space-2_5)}.method-steps p{color:var(--color-ink-light);font-size:var(--text-base);line-height:1.55}.origin{max-width:42rem;margin:0 auto;padding:var(--space-8) var(--space-6) var(--space-24)}.origin p{font-size:var(--text-xl);line-height:1.55;color:var(--color-ink-light)}.dropcap{float:left;font-family:var(--font-display);font-size:3.4em;line-height:.82;padding:.06em .12em 0 0;color:var(--c-love-deep)}.quiz{display:flex;flex-direction:column}.quiz-bar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:var(--space-5);padding:var(--space-4) var(--space-6);background:color-mix(in srgb,var(--color-paper) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.quiz-exit{display:inline-flex;padding:var(--space-2);border-radius:var(--radius-full);color:var(--color-ink-lighter);transition:background .2s ease,color .2s ease}.quiz-exit:hover{background:color-mix(in srgb,var(--color-gold) 16%,transparent);color:var(--color-ink)}.quiz-progress{flex:1;display:flex;gap:var(--space-1)}.quiz-progress-seg{height:.1875rem;border-radius:var(--radius-full);background:var(--color-border-light);overflow:hidden}.quiz-progress-fill{height:100%;border-radius:var(--radius-full);transition:width .4s ease}.seg-love .quiz-progress-fill{background:var(--c-love)}.seg-skill .quiz-progress-fill{background:var(--c-skill)}.seg-need .quiz-progress-fill{background:var(--c-need)}.seg-paid .quiz-progress-fill{background:var(--c-paid)}.quiz-count{font-family:var(--font-ui);font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--color-ink)}.quiz-count-total{color:var(--color-ink-muted)}.quiz-stage{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;width:100%;max-width:44rem;margin:0 auto;padding:var(--space-8) var(--space-6) var(--space-16);min-height:calc(100dvh - 4rem)}.intro{position:relative;align-items:flex-start}.intro-kanji{position:absolute;right:0;top:50%;transform:translateY(-50%);writing-mode:vertical-rl;font-size:clamp(6rem,16vw,9rem);line-height:1;opacity:.13;-webkit-user-select:none;user-select:none;pointer-events:none}.intro-love .intro-kanji{color:var(--c-love)}.intro-skill .intro-kanji{color:var(--c-skill)}.intro-need .intro-kanji{color:var(--c-need)}.intro-paid .intro-kanji{color:var(--c-paid)}.intro-part{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:550;text-transform:uppercase;letter-spacing:.14em;color:var(--color-ink-lighter);animation:rise .6s cubic-bezier(.22,1,.36,1) both}.intro-romaji{text-transform:none;letter-spacing:.04em;font-weight:450;color:var(--color-ink-muted)}.intro-title{font-size:clamp(2.25rem,5.5vw,3.5rem);letter-spacing:-.015em;margin:var(--space-4) 0 var(--space-5);animation:rise .6s cubic-bezier(.22,1,.36,1) .07s both}.intro-lede{max-width:30rem;font-size:var(--text-xl);color:var(--color-ink-light);margin-bottom:var(--space-9);animation:rise .6s cubic-bezier(.22,1,.36,1) .14s both}.intro .btn-primary{animation:rise .6s cubic-bezier(.22,1,.36,1) .21s both}.intro-back{margin-top:var(--space-6)}.question{animation:rise .45s cubic-bezier(.22,1,.36,1) both}.question.is-leaving{opacity:.35;transition:opacity .26s ease}.q-part{display:flex;align-items:baseline;gap:var(--space-2_5);font-family:var(--font-ui);font-size:var(--text-xs);font-weight:550;text-transform:uppercase;letter-spacing:.14em;color:var(--color-ink-lighter)}.q-dot{width:.5rem;height:.5rem;border-radius:var(--radius-full);align-self:center}.dot-love{background:var(--c-love)}.dot-skill{background:var(--c-skill)}.dot-need{background:var(--c-need)}.dot-paid{background:var(--c-paid)}.q-part-count{color:var(--color-ink-muted);font-weight:450;letter-spacing:.06em;text-transform:none}.q-lead{margin-top:var(--space-6);margin-bottom:calc(-1 * var(--space-4));font-style:italic;font-size:var(--text-lg);color:var(--color-ink-lighter)}.q-lead+.q-text{margin-top:var(--space-5)}.q-text{font-family:var(--font-reading);font-weight:500;font-size:clamp(1.75rem,4.5vw,2.5rem);line-height:1.28;letter-spacing:-.01em;margin:var(--space-6) 0 var(--space-12);min-height:3.2em}.likert{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:30rem}.likert-stop{display:flex;align-items:center;justify-content:center;width:4.25rem;height:4.25rem;border-radius:var(--radius-full)}.likert-dot{border-radius:var(--radius-full);background:var(--color-border);transition:background .18s ease,scale .18s ease}.stop-1 .likert-dot{width:1.375rem;height:1.375rem}.stop-2 .likert-dot{width:1.75rem;height:1.75rem}.stop-3 .likert-dot{width:2.125rem;height:2.125rem}.stop-4 .likert-dot{width:2.5rem;height:2.5rem}.stop-5 .likert-dot{width:2.875rem;height:2.875rem}.likert-key{display:none}.likert-stop:hover .likert-dot{background:var(--color-gold-light);scale:1.08}.likert-stop:focus-visible{box-shadow:none}.likert-stop:focus-visible .likert-dot{box-shadow:inset 0 0 0 2px var(--color-ink)}.stage-love .likert-stop.is-selected .likert-dot{background:var(--c-love)}.stage-skill .likert-stop.is-selected .likert-dot{background:color-mix(in srgb,var(--c-skill) 88%,var(--color-ink))}.stage-need .likert-stop.is-selected .likert-dot{background:var(--c-need)}.stage-paid .likert-stop.is-selected .likert-dot{background:var(--c-paid)}.likert-stop.is-selected .likert-dot{scale:1.12}.likert-ends{display:flex;justify-content:space-between;width:100%;max-width:30rem;margin-top:var(--space-3);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-ink-lighter)}.quiz-nav{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:30rem;margin-top:var(--space-12);min-height:2.25rem}.quiz-back{display:inline-flex;align-items:center;gap:var(--space-1_5);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:500;color:var(--color-ink-lighter);padding:var(--space-1_5) var(--space-3);border-radius:var(--radius-full);transition:background .2s ease,color .2s ease}.quiz-back:hover{background:color-mix(in srgb,var(--color-gold) 16%,transparent);color:var(--color-ink)}.quiz-hint{margin-top:var(--space-10);font-family:var(--font-ui);font-size:var(--text-xs);letter-spacing:.04em;color:var(--color-ink-muted)}@media(pointer:coarse){.quiz-hint{visibility:hidden}}.shared-banner{background:var(--color-cream);padding:var(--space-3) var(--space-6);text-align:center;font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-ink-light)}.shared-banner a{color:var(--c-love-deep);font-weight:550}.result-hero{max-width:46rem;margin:0 auto;padding:var(--space-16) var(--space-6) var(--space-10);text-align:center}.result-hero>*{animation:rise .7s cubic-bezier(.22,1,.36,1) both}.result-hero>*:nth-child(2){animation-delay:.08s}.result-hero>*:nth-child(3){animation-delay:.16s}.archetype{font-size:clamp(2.5rem,7vw,4rem);letter-spacing:-.015em;line-height:1.1;margin:var(--space-4) 0 var(--space-5)}.archetype-line{font-size:var(--text-xl);color:var(--color-ink-light);max-width:36rem;margin:0 auto}.venn-section{display:flex;justify-content:center;padding:var(--space-12) var(--space-6) var(--space-16)}.venn-section .venn{margin:var(--space-10) var(--space-16)}.circle-breakdown{max-width:46rem;margin:0 auto;padding:0 var(--space-6) var(--space-20);display:grid;gap:var(--space-10)}.circle-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:var(--space-8);align-items:start}.circle-row-id{display:flex;gap:var(--space-4);align-items:baseline}.circle-kanji{font-size:var(--text-3xl);line-height:1}.row-love .circle-kanji{color:var(--c-love-deep)}.row-skill .circle-kanji{color:var(--c-skill-deep)}.row-need .circle-kanji{color:var(--c-need-deep)}.row-paid .circle-kanji{color:var(--c-paid-deep)}.circle-row-id h3{font-size:var(--text-xl)}.circle-strength{font-family:var(--font-display);font-style:italic;font-size:var(--text-lg);color:var(--color-ink-lighter)}.facet-line{display:grid;grid-template-columns:minmax(0,11rem) 1fr 2ch;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2)}.facet-name{font-family:var(--font-ui);font-size:var(--text-sm);font-weight:500}.facet-meter{display:block;height:.25rem;border-radius:var(--radius-full);background:var(--color-border-light);overflow:hidden}.facet-meter i{display:block;height:100%;border-radius:var(--radius-full)}.row-love .facet-meter i{background:var(--c-love)}.row-skill .facet-meter i{background:var(--c-skill)}.row-need .facet-meter i{background:var(--c-need)}.row-paid .facet-meter i{background:var(--c-paid)}.facet-score{font-family:var(--font-ui);font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--color-ink-muted);text-align:right}.facet-lead{margin-top:var(--space-3);font-style:italic;color:var(--color-ink-light);font-size:var(--text-base)}.matches{background:var(--color-cream);padding:var(--space-16) var(--space-6) var(--space-20)}.matches .section-head,.match-list{max-width:46rem;margin:0 auto}.match-list{list-style:none;padding:0;margin-top:var(--space-10);display:grid;gap:var(--space-6)}.job-card{display:grid;grid-template-columns:3rem 1fr;gap:var(--space-2)}.job-rank{font-family:var(--font-display);font-style:italic;font-size:var(--text-xl);color:var(--color-gold);padding-top:var(--space-6)}.job-body{background:var(--color-warm-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:var(--space-6) var(--space-7)}.job-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4)}.job-title{font-size:var(--text-2xl)}.job-sector{display:block;margin-top:var(--space-1);font-family:var(--font-ui);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--color-ink-muted)}.job-score{text-align:right;flex:none}.job-score-num{font-family:var(--font-display);font-size:var(--text-3xl)}.job-score-label{display:block;font-family:var(--font-ui);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--color-ink-muted)}.job-meta{display:flex;align-items:center;gap:var(--space-4);margin:var(--space-3) 0 var(--space-4)}.zone-chip{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:550;text-transform:uppercase;letter-spacing:.08em;padding:var(--space-1) var(--space-2_5);border-radius:var(--radius-full)}.chip-ikigai{background:color-mix(in srgb,var(--c-love) 13%,transparent);color:var(--c-love-deep)}.chip-passion{background:color-mix(in srgb,var(--c-love) 8%,color-mix(in srgb,var(--c-skill) 10%,transparent));color:color-mix(in srgb,var(--c-love-deep) 50%,var(--c-skill-deep))}.chip-mission{background:color-mix(in srgb,var(--c-love) 8%,color-mix(in srgb,var(--c-need) 10%,transparent));color:color-mix(in srgb,var(--c-love-deep) 50%,var(--c-need-deep))}.chip-profession{background:color-mix(in srgb,var(--c-skill) 10%,color-mix(in srgb,var(--c-paid) 8%,transparent));color:color-mix(in srgb,var(--c-skill-deep) 50%,var(--c-paid-deep))}.chip-vocation{background:color-mix(in srgb,var(--c-need) 9%,color-mix(in srgb,var(--c-paid) 8%,transparent));color:color-mix(in srgb,var(--c-need-deep) 50%,var(--c-paid-deep))}.fit-dots{display:inline-flex;gap:var(--space-1_5)}.fit-dot{width:.625rem;height:.625rem;border-radius:var(--radius-full)}.job-blurb{font-size:var(--text-lg);color:var(--color-ink-light)}.job-matched{margin-top:var(--space-2_5);font-style:italic;font-size:var(--text-base);color:var(--color-ink-lighter)}.job-facts{margin-top:var(--space-4);display:grid;gap:var(--space-1)}.job-facts p{font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-ink-light);line-height:1.5}.fact-label{display:inline-block;min-width:5.5rem;font-weight:550;color:var(--color-ink-lighter);text-transform:uppercase;font-size:var(--text-xs);letter-spacing:.07em}.job-market{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);margin-top:var(--space-5)}.market-scale{display:inline-flex;align-items:center;gap:var(--space-2)}.market-label{font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-ink-muted)}.market-dots{display:inline-flex;gap:.1875rem}.market-dots i{width:.3125rem;height:.3125rem;border-radius:var(--radius-full);background:var(--color-border)}.market-dots i.on{background:var(--color-ink-lighter)}.path-toggle{display:inline-flex;align-items:center;gap:var(--space-1_5);margin-top:var(--space-5);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:550;color:var(--c-paid-deep);padding:var(--space-2) 0;transition:color .2s ease}.path-toggle:hover{color:var(--color-ink)}.path-toggle svg{transition:transform .25s ease}.path-toggle.is-open svg{transform:rotate(180deg)}.roadmap{margin-top:var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--color-border-light);animation:rise .4s cubic-bezier(.22,1,.36,1) both}.roadmap-reading{margin-bottom:var(--space-6)}.roadmap-gap{font-size:var(--text-lg);line-height:1.5;color:var(--color-ink)}.roadmap-tag{display:block;font-family:var(--font-ui);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--c-paid-deep);margin-bottom:var(--space-1_5)}.roadmap-leverage{margin-top:var(--space-3);font-style:italic;color:var(--color-ink-light);font-size:var(--text-base)}.roadmap-horizon{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-3) 0;margin-bottom:var(--space-2)}.roadmap-horizon-label{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-ink-muted)}.roadmap-horizon-value{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-ink)}.milestones{list-style:none;margin:0;padding:0}.milestone{position:relative;display:grid;grid-template-columns:2rem 1fr;gap:var(--space-4);padding-bottom:var(--space-6)}.milestone:before{content:"";position:absolute;left:1rem;top:2rem;bottom:-.25rem;width:1.5px;background:var(--color-border);transform:translate(-50%)}.milestone:last-child{padding-bottom:0}.milestone:last-child:before{display:none}.milestone-index{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius-full);background:var(--color-warm-white);box-shadow:inset 0 0 0 1.5px var(--c-paid);font-family:var(--font-ui);font-size:var(--text-sm);font-weight:600;color:var(--c-paid-deep)}.milestone-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-1_5)}.milestone-head h5{font-family:var(--font-display);font-weight:400;font-size:var(--text-lg);margin:0}.milestone-duration{flex:none;font-family:var(--font-ui);font-size:var(--text-xs);color:var(--color-ink-muted);white-space:nowrap}.milestone-focus{font-size:var(--text-base);line-height:1.5;color:var(--color-ink-light)}.milestone-signal{display:flex;align-items:flex-start;gap:var(--space-1_5);margin-top:var(--space-2_5);font-family:var(--font-ui);font-size:var(--text-sm);line-height:1.45;color:var(--c-need-deep)}.milestone-signal svg{flex:none;margin-top:.15rem}.roadmap-first{display:flex;align-items:flex-start;gap:var(--space-2_5);margin-top:var(--space-6);padding:var(--space-4) var(--space-5);background:color-mix(in srgb,var(--c-paid) 7%,var(--color-warm-white));border-radius:var(--radius-md);font-size:var(--text-base);line-height:1.5;color:var(--color-ink)}.roadmap-first svg{flex:none;margin-top:.2rem;color:var(--c-paid-deep)}.stretch-card .roadmap{border-top-color:color-mix(in srgb,var(--c-paid) 20%,transparent)}.zones{max-width:46rem;margin:0 auto;padding:var(--space-16) var(--space-6) var(--space-10)}.zone-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-8);margin-top:var(--space-10)}.zone-shelf{background:var(--color-warm-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:var(--space-6) var(--space-7)}.zone-name{font-size:var(--text-xl)}.zone-formula{font-family:var(--font-ui);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--color-ink-muted);margin:var(--space-1_5) 0 var(--space-2_5)}.zone-missing{font-style:italic;font-size:var(--text-base);color:var(--color-ink-lighter);margin-bottom:var(--space-4)}.zone-shelf ul{list-style:none;margin:0;padding:0}.zone-shelf li{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4);padding:var(--space-2) 0}.zone-job-title{font-size:var(--text-lg)}.zone-job-score{font-family:var(--font-ui);font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--color-ink-muted)}.stretch{max-width:46rem;margin:0 auto;padding:var(--space-10) var(--space-6) var(--space-16)}.stretch-list{list-style:none;margin:var(--space-10) 0 0;padding:0;display:grid;gap:var(--space-5)}.stretch-card{background:color-mix(in srgb,var(--c-paid) 5%,var(--color-warm-white));border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:var(--space-5) var(--space-6)}.stretch-head{display:flex;justify-content:space-between;align-items:baseline}.stretch-head h4{font-size:var(--text-xl)}.stretch-score{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-ink-lighter)}.stretch-blurb{color:var(--color-ink-light);margin-top:var(--space-1_5)}.stretch-edu{margin-top:var(--space-2_5);font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-ink-lighter)}.method-note{max-width:42rem;margin:0 auto;padding:var(--space-10) var(--space-6) var(--space-20)}.method-note h2{font-size:var(--text-2xl);margin-bottom:var(--space-4)}.method-note p{color:var(--color-ink-light);font-size:var(--text-lg)}.site-footer{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-12) var(--space-6) var(--space-16);background:var(--color-cream);text-align:center}.site-footer p{max-width:30rem;font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-ink-lighter)}@media(max-width:56rem){.hero{grid-template-columns:1fr;padding-top:var(--space-10);padding-bottom:var(--space-16);gap:var(--space-14)}.hero-venn{order:-1}.hero-venn .venn{width:min(15rem,60vw)}.circles-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-10) var(--space-8)}.method-steps{grid-template-columns:1fr}.circle-row{grid-template-columns:1fr;gap:var(--space-4)}.zone-grid{grid-template-columns:1fr}.venn-section .venn{margin:var(--space-8) var(--space-12)}}@media(max-width:36rem){body{font-size:1.0625rem}.masthead,.hero,.origin,.quiz-stage,.result-hero,.circle-breakdown,.matches,.zones,.stretch,.method-note{padding-inline:var(--space-4)}.circles-grid{grid-template-columns:1fr;padding:var(--space-12) var(--space-5)}.likert-stop{width:3.25rem;height:3.25rem}.stop-1 .likert-dot{width:1.25rem;height:1.25rem}.stop-2 .likert-dot{width:1.5625rem;height:1.5625rem}.stop-3 .likert-dot{width:1.875rem;height:1.875rem}.stop-4 .likert-dot{width:2.1875rem;height:2.1875rem}.stop-5 .likert-dot{width:2.5rem;height:2.5rem}.q-text{margin-bottom:var(--space-8)}.job-card{grid-template-columns:1fr}.job-rank{padding:0 0 var(--space-1) var(--space-2)}.job-body{padding:var(--space-5)}.venn-label-skill{left:.25rem}.venn-label-need{right:.25rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
