:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-background:#fff7f0;--color-surface:#fff;--color-ink:#4a3340;--color-muted:#7c606f;--color-primary:#ff6f91;--color-action:#ff6f91;--color-pink-light:#ffe7ec;--color-mint:#8fcdb7;--color-border:#f2dcd4;--font-body:ui-rounded, "Hiragino Maru Gothic ProN", ui-sans-serif, system-ui, -apple-system, "Segoe UI Variable", "Segoe UI", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", "Heiti TC", sans-serif;--radius-card:24px;--radius-control:16px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--content-width:640px;--touch-target:48px;--transition:.18s ease-out}@media (prefers-reduced-motion:reduce){:root{--transition:0s}}
*{box-sizing:border-box}body{background:var(--color-background);color:var(--color-ink);font-family:var(--font-body);background-image:radial-gradient(#f7e5e5 1.3px,#0000 1.3px);background-size:38px 38px;margin:0;font-size:16px;line-height:1.7}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}h1,h2,p,figure{margin:0}h1{letter-spacing:.03em;font-family:Noto Serif TC,Songti TC,serif;font-size:36px;line-height:1.5}h2{margin:0 0 16px;font-size:21px;line-height:1.5}p+p{margin-top:12px}button:disabled{cursor:not-allowed;color:#766a6e!important;background:#ede8e6!important;border-color:#ddd3d2!important}a,button,input{touch-action:manipulation}:focus-visible{outline:3px solid var(--color-action);outline-offset:5px}h1:focus{outline:none}.site-header{justify-content:space-between;align-items:center;max-width:1120px;height:90px;margin:auto;padding:20px 32px;display:flex}.site-header>a:last-child{padding:12px;font-size:13px;text-decoration:none}.brand{letter-spacing:-1px;font-family:Georgia,serif;font-size:29px;font-weight:600;text-decoration:none}.brand span{color:var(--color-action);margin-left:8px}footer{text-align:center;color:#806f78;padding:48px 20px;font-family:Songti TC,serif}footer small{font-family:var(--font-body);margin-top:12px;font-size:12px;display:block}.home{max-width:1060px;margin:10px auto}.hero-art{vertical-align:middle;width:50%;display:inline-block}.hero-art img{mix-blend-mode:multiply;border-radius:50%;width:100%;height:auto}.hero-copy{vertical-align:middle;width:50%;padding:30px;display:inline-block}.hero-copy h1{margin-bottom:20px;font-size:46px}.hero-copy>p{margin-top:12px}.hero-copy .button{min-width:240px;margin-top:26px}.home-note{border-top:1px solid var(--color-border);text-align:center;margin:70px 32px 0;padding:40px 0 0}.home-note p:last-child{color:var(--color-muted);font-size:14px}.button{border:1px solid var(--color-action);min-height:52px;color:var(--color-action);background:var(--color-background);transition:var(--transition);border-radius:18px;justify-content:center;align-items:center;gap:16px;padding:12px 24px;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}.primary{background:var(--color-action);color:#fff}.wide{width:100%}.muted{color:var(--color-muted)}.fine{color:var(--color-muted);font-size:13px;line-height:1.7}.center{text-align:center}.flow{max-width:640px;min-height:60vh;margin:25px auto 0;padding:0 24px}.flow h1{margin:26px 0 20px}.flow>h2{margin-top:32px}.utility{color:var(--color-muted);justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.text-button{color:var(--color-action);text-underline-offset:4px;background:0 0;border:0;min-height:44px;padding:8px 0;font-size:14px;text-decoration:underline}.options{border:0;flex-direction:column;gap:12px;margin:28px 0;padding:0;display:flex}.option{border:1px solid var(--color-border);cursor:pointer;min-height:62px;transition:var(--transition);background:#ffffffc9;border-radius:20px;align-items:center;gap:16px;padding:18px 20px;display:flex;box-shadow:0 3px 8px #4c384005}.option:hover{border-color:var(--color-action)}.option.selected{border-color:var(--color-action);box-shadow:0 0 0 1px var(--color-action);background:#fff0f4}.option input{width:22px;height:22px;accent-color:var(--color-action);cursor:pointer;flex-shrink:0}.option:has(input:focus-visible){outline:3px solid var(--color-action);outline-offset:3px}.letter{background:var(--color-pink-light);border-radius:50%;place-items:center;min-width:37px;height:37px;font-family:Georgia,serif;font-size:19px;display:grid}.option>span:nth-last-child(2){flex:1}.nickname{margin:24px 0;display:block}.nickname input{border:1px solid var(--color-border);width:100%;color:var(--color-ink);background:#fff;border-radius:14px;margin-top:10px;padding:14px;display:block}.flow>.fine{margin-bottom:24px}.progress-label{justify-content:space-between;margin:22px 0 6px;font-size:14px;display:flex}progress{appearance:none;background:var(--color-border);border:0;border-radius:20px;width:100%;height:9px;display:block;overflow:hidden}progress::-webkit-progress-value{background:var(--color-action);border-radius:20px}progress::-moz-progress-bar{background:var(--color-action)}.flow .question-title{margin:32px 0;font-size:30px}.nav-buttons{gap:16px;margin:34px 0 20px;display:flex}.nav-buttons .button{flex:1}.interlude,.analyzing{text-align:center;max-width:500px;margin:auto}.part-label{letter-spacing:.16em;color:var(--color-action);margin-top:26px;font-size:13px}.interlude .button{margin-top:30px}.interlude>.text-button{margin-top:12px}.character{max-width:290px;margin:18px auto}.character svg{width:100%;height:auto;display:block}.character figcaption{color:var(--color-muted);margin-top:-4px;font-size:11px}.pulse{position:relative}.floating-heart{color:var(--color-action);font-size:48px;animation:1.6s ease-in-out infinite float;position:absolute;top:15px;right:70px}.analyzing{padding:35px 0}.analyzing .character{animation:2s ease-in-out infinite float}.analyzing .text-button{margin-top:26px}.notice{background:var(--color-pink-light);border-radius:14px;margin:20px 0;padding:16px;font-size:13px;line-height:1.8}.confirm{border:2px solid var(--color-action);background:#fff;border-radius:18px;margin:16px 0;padding:20px}.confirm .button{margin:12px 8px 0 0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.result{max-width:640px;margin:24px auto;padding:0 24px}.result-heading{text-align:center}.result-heading h1{margin:8px 0;font-size:42px}.subtype{color:var(--color-action);font-size:20px;font-weight:600}.intro{text-align:left;line-height:1.9}.result blockquote{color:var(--color-action);margin:26px 0 32px;font-family:Songti TC,serif;font-size:21px}.age-card{background:var(--color-pink-light);text-align:center;border-radius:22px;padding:24px}.age-card h2{margin:0;font-size:17px}.age-card strong{font-family:Georgia,serif;font-size:48px;font-weight:500;display:block}.age-card small{font-family:var(--font-body);font-size:17px}.age-card p{color:#755460;font-size:13px}.result>section+section{margin-top:36px}.radar svg{width:100%;max-width:360px;margin:auto;display:block}.scores{grid-template-columns:repeat(2,1fr);gap:12px;margin:0;display:grid}.scores>div{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:6px;padding:8px 0;font-size:14px;display:flex}.scores dd{color:var(--color-action);margin:0;font-weight:600}.scores dd span{color:var(--color-muted);font-size:11px;font-weight:400}.traits{gap:16px;margin-top:24px;display:grid}.traits p{border-left:3px solid var(--color-action);margin:0;padding-left:16px}.traits strong,.traits span{display:block}.traits span{color:var(--color-muted);font-size:14px}.insight{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:24px 0}.insight h2:nth-of-type(2){margin-top:24px}.paywall{border:1px solid var(--color-border);background:#fff;border-radius:22px;padding:24px}.paywall .button{margin-top:20px}.paywall .fine,.future .fine{margin-top:10px}.result>.button{margin-top:18px}.result>.text-button{margin:auto;display:block}@keyframes float{50%{transform:translateY(-9px)}}@media (max-width:700px){.site-header{height:74px;padding:14px 20px}.brand{font-size:25px}.site-header>a:last-child{padding-right:0}.home{margin-top:0}.hero-art{width:min(100%,400px);margin:auto;padding:0 12px;display:block}.hero-copy{text-align:center;width:100%;padding:8px 24px;display:block}.hero-copy h1{margin-bottom:12px;font-size:38px;line-height:1.5}.hero-copy .button{border-radius:30px;width:100%;max-width:360px;margin-top:20px}.hero-copy>p{font-size:15px}.hero-copy>.fine{font-size:12px}.home-note{margin:48px 24px 0}.flow{margin-top:15px;padding:0 20px}.flow h1{font-size:30px}.flow .question-title{margin:28px 0;font-size:27px}.option{gap:12px;padding:16px 14px;font-size:15px}.options{margin:24px 0}.nav-buttons{gap:12px}.nav-buttons .button{padding:12px 16px}.result{padding:0 20px}.result-heading h1{font-size:35px}.result .character{max-width:240px}.result blockquote{font-size:19px}.scores{gap:8px}.scores>div{font-size:13px}.utility{font-size:12px}footer{font-size:14px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@font-face{font-family:LoveDNA TC;src:url(/fonts/LoveDNA-TC.woff2)format("woff2");font-weight:400;font-display:swap}.share-controls{padding-top:6px}.share-controls h2{margin-bottom:12px}.share-actions{grid-template-columns:1fr 1fr;gap:12px;margin:14px 0;display:grid}.story-preview{border:1px solid var(--color-border);border-radius:18px;width:180px;max-width:100%;height:auto;margin:24px auto;display:block;box-shadow:0 8px 30px #4c384010}.share-controls details{margin:16px 0;font-size:14px}.share-controls summary{cursor:pointer;color:var(--color-action);padding:10px 0}.share-controls ol{padding-left:24px}.share-url{border:1px solid var(--color-border);width:100%;min-height:48px;color:var(--color-ink);background:#fff;border-radius:12px;padding:12px;font-size:13px}.delete-confirm{border:1px solid var(--color-border);border-radius:16px;margin:20px 0;padding:16px}.delete-confirm .button{margin:10px 8px 0 0;font-size:14px}.share-actions .button{gap:6px;padding:10px;font-size:14px}.share-notice{color:var(--color-muted);margin:12px 0;font-size:13px}.commerce{max-width:680px}.order-card{background:var(--paper,#fffaf7);border:1px solid #ead8dd;border-radius:24px;margin:24px 0;padding:28px}.price{color:#995368;margin:16px 0;font-size:36px;display:block}.commerce-actions{flex-direction:column;gap:12px;margin:24px 0;display:flex}.order-card .fine{overflow-wrap:anywhere}.deep-report section{border-bottom:1px solid #ead8dd;padding:24px 0}.deep-report p{line-height:1.9}.report-list{padding-left:22px;line-height:2}.admin-orders{gap:16px;display:grid}.admin-orders article{overflow-wrap:anywhere;border:1px solid #ead8dd;border-radius:18px;padding:20px}.commerce input{width:100%;font:inherit;background:#fff;border:1px solid #d8bbc5;border-radius:12px;margin:8px 0 16px;padding:14px}.admin-orders button{margin-top:12px}.commerce .button{text-align:center}.admin-section{margin-top:32px}body{background-image:radial-gradient(#f2e4db 1.4px,#0000 1.4px);background-size:22px 22px}h1,h2,.brand,.result blockquote,footer{font-family:var(--font-body)}h1{letter-spacing:-.035em;font-weight:800;line-height:1.35}h2{letter-spacing:-.02em;font-weight:750}.brand{letter-spacing:-1.2px;font-weight:800}footer{color:var(--color-muted)}.button{border:2px solid var(--color-border);color:var(--color-ink);background:#fff;border-radius:22px;font-weight:750;box-shadow:0 4px #ffdccf}.button.primary{background:var(--color-action);border-color:var(--color-action);color:#fff;box-shadow:0 4px #dc5279}.button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px #ffdccf}.button.primary:hover:not(:disabled){box-shadow:0 5px #dc5279}.button:active:not(:disabled){box-shadow:none;transform:translateY(3px)}.text-button{color:var(--color-ink)}.option{border:2px solid var(--color-border);background:var(--color-surface);box-shadow:none;border-bottom:5px solid #ffdccf;border-radius:22px;padding:16px 18px}.option:hover,.option.selected{border-color:var(--color-action);box-shadow:none;background:#fff;border-bottom-color:#ffe7ec}.option input{width:20px;height:20px}.option .letter{min-width:25px;height:25px;font-family:var(--font-body);color:var(--color-action);background:#fff;border:2px solid;font-size:14px;font-weight:700}.option:nth-of-type(2) .letter{color:#dfc86c}.option:nth-of-type(3) .letter{color:#8fcdb7}.option:nth-of-type(4) .letter{color:#bfa7d4}.nickname input,.commerce input{border:2px solid var(--color-border);border-radius:22px;box-shadow:0 4px #ffdccf}progress{border:2px solid var(--color-border);background:#fff;height:12px}progress::-webkit-progress-bar{background:#fff}progress::-webkit-progress-value{background:var(--color-action)}.progress-label{color:var(--color-muted)}.flow .question-title{font-family:var(--font-body);letter-spacing:0;border:2px solid var(--color-border);background:#fff;border-bottom:5px solid #ffdccf;border-radius:24px;margin:24px 0;padding:18px 20px;font-size:23px;font-weight:600;line-height:1.6}.paywall,.order-card{border:2px solid var(--color-border);background:#fff;border-bottom:5px solid #ffdccf}.price{color:var(--color-action)}.deep-report section,.admin-orders article{border-color:var(--color-border)}.age-card p{color:var(--color-muted)}@media (max-width:700px){.flow .question-title{padding:16px 18px;font-size:20px}.option{padding:14px 16px}.hero-copy .button{border-radius:22px}}.age-card strong{font-family:var(--font-body);font-weight:800}.option:has(input[name^=q]){position:relative}.option input[name^=q]{opacity:0;position:absolute;right:18px}.result-analysis{max-width:560px;margin-top:30px}.result-analysis h3{margin:0 0 12px;font-size:18px;font-weight:750;line-height:1.5}.result-analysis .result-eyebrow{letter-spacing:.16em;color:var(--color-muted);font-size:12px;font-weight:700}.result-analysis .result-heading .character{max-width:210px;margin:22px auto 12px}.result-analysis .result-heading .age-card{background:0 0;border:0;margin:12px 0 18px;padding:0}.result-analysis .age-card h2{color:var(--color-muted);font-size:13px;font-weight:500}.result-analysis .age-card strong{letter-spacing:-.06em;color:#e89b1a;text-shadow:0 4px #ffdfb0;margin:8px 0;font-size:78px;font-weight:850;line-height:1.2}.result-analysis .age-card small{letter-spacing:0;color:var(--color-muted);text-shadow:none;margin-left:6px;font-size:21px}.result-analysis .age-card p{font-size:12px;font-weight:700}.result-analysis .result-heading h1{letter-spacing:-.03em;margin:12px 0 8px;font-size:30px}.result-analysis .subtype{color:#dc5279;font-size:15px}.result-analysis .intro{text-align:center;color:var(--color-muted);max-width:420px;margin:18px auto 0;font-size:15px}.result-tags{flex-wrap:wrap;justify-content:center;gap:8px;margin:22px 0 14px;display:flex}.result-tags span{color:#ca4169;background:#ffe7ec;border:1px solid #ff9bb4;border-radius:99px;padding:5px 11px;font-size:12px;font-weight:700}.result-disclaimer{color:var(--color-muted);max-width:420px;margin:auto;font-size:11px;line-height:1.7}.analysis-card{background:#fff;border:1px solid #f0e4df;border-radius:26px;padding:26px;box-shadow:0 7px 10px #6952480b,0 3px 4px #69524808}.result-analysis .quote-card{text-align:center;margin-top:32px;padding:30px 24px}.result-analysis .quote-card blockquote{color:var(--color-ink);margin:18px 0 14px;font-size:23px;font-weight:800;line-height:1.6}.result-analysis .section-label{color:var(--color-muted);margin:0 0 14px;font-size:14px;font-weight:750;line-height:1.6}.result-analysis .analysis-section{margin-top:36px}.analysis-card p{color:var(--color-muted);font-size:14px;line-height:1.9}.analysis-card .fine{font-size:12px}.dna-highlights{flex-wrap:wrap;gap:8px 16px;margin-bottom:16px;font-size:14px;font-weight:700;display:flex}.dna-highlights strong{color:#dc5279}.result-analysis .traits{gap:16px;margin-top:20px}.result-analysis .traits p{border-left:0;padding-left:15px;position:relative}.result-analysis .traits p:before{content:"";background:#ff6f91;border-radius:50%;width:6px;height:6px;position:absolute;top:10px;left:0}.result-analysis .traits p:nth-child(2):before{background:#8fcdb7}.result-analysis .traits strong{color:var(--color-ink);font-size:13px}.result-analysis .traits span{font-size:13px}.relationship-scenes{grid-template-columns:1fr 1fr;gap:12px;display:grid}.relationship-scenes .analysis-card{padding:20px}.relationship-scenes h3{color:#dc5279;font-size:14px}.relationship-scenes p{font-size:13px}.result-analysis .insight{border:0;padding:0}.result-analysis .insight h2:nth-of-type(2){margin-top:30px}.result-analysis .insight-lead{color:var(--color-ink);font-weight:700}.insight-lead strong{color:#dc5279}.reflection-note{background:#fff9e9;border:1px dashed #f2c66e;border-radius:18px;margin-top:20px;padding:16px}.reflection-note strong{color:#b8790b;font-size:13px}.reflection-note p{margin-top:8px;font-size:12px}.result-analysis .share-controls,.result-analysis .paywall{background:#fff;border:1px solid #f0e4df;border-radius:26px;padding:24px;box-shadow:0 7px 10px #6952480b}.result-analysis .share-controls h2,.result-analysis .paywall h2{font-size:21px}.result-analysis .radar svg .radar-profile{fill:#ff6f91;stroke:#dc5279}@media (max-width:700px){.result-analysis{margin-top:22px}.result-analysis .result-heading h1{font-size:27px}.result-analysis .age-card strong{font-size:72px}.analysis-card{padding:22px}.relationship-scenes{gap:10px}.relationship-scenes .analysis-card{padding:18px 15px}.result-analysis .share-controls,.result-analysis .paywall{padding:22px}.result-analysis .share-actions{grid-template-columns:1fr}}.result-analysis .analysis-card p{line-height:1.95}.result-analysis .love-index{--index-color:#54c7aa;margin-bottom:25px}.result-analysis .index-1{--index-color:#ff6f91}.result-analysis .index-2{--index-color:#ffca64}.result-analysis .index-3{--index-color:#ad93ef}.index-heading{align-items:center;gap:9px;display:flex}.index-heading strong{font-size:15px}.index-heading b{color:var(--index-color);margin-left:auto;font-size:20px}.index-heading span{border:1px solid var(--index-color);color:var(--color-ink);border-radius:20px;padding:2px 8px;font-size:10px}.index-blocks{grid-template-columns:repeat(10,1fr);gap:5px;margin-top:10px;display:grid}.index-blocks span{background:#fff8f3;border:2px solid #f2dcd4;border-radius:5px;height:13px}.index-blocks .filled{background:var(--index-color);border-color:var(--index-color)}.result-analysis .love-index p{color:var(--color-muted);margin:7px 0 0;font-size:12px}.index-note{border-top:1px solid #f2dcd4;margin-top:20px;padding-top:18px}.behavior-cards{gap:12px;display:grid}.result-analysis .behavior-cards p{margin:0;padding:20px 24px;font-size:14px}.partner-quote{text-align:center}.partner-quote blockquote{margin:10px 0;font-size:20px;font-weight:750;line-height:1.7}.story-intro{align-items:center;gap:16px;display:flex}.story-intro>p{flex:1}.story-intro .character{flex:0 0 120px;width:120px}.personality-story h3{color:var(--color-muted);margin-top:26px;font-size:14px}.story-list{margin:12px 0;padding-left:20px;font-size:14px;line-height:1.95}.story-list li{margin-bottom:10px;padding-left:5px}.pink-list li::marker{color:#ff6f91}.mint-list li::marker{color:#54c7aa}.gold-list li::marker{color:#ffca64}.scenario-card h3,.rose-text{color:#dc5279}.scenario-surface{font-weight:650}.expression-comparison{text-align:center;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-bottom:24px;display:grid}.expression-comparison>div{background:#fff8e9;border:2px solid #ffca64;border-radius:20px;padding:18px 12px}.expression-comparison h3{color:var(--color-muted);margin:0 0 10px;font-size:12px}.expression-comparison strong{color:#b57912;font-size:17px}.expression-comparison p{color:var(--color-muted);margin:8px 0 0;font-size:10px}@media (max-width:480px){.story-intro{display:block}.story-intro .character{width:110px;margin:0 auto}.expression-comparison{gap:7px}.expression-comparison>div{padding:16px 9px}.expression-comparison strong{font-size:15px}.partner-quote blockquote{font-size:18px}}.character svg image{width:100%;height:100%}.scene-art,.interlude .scene-art{max-width:380px}.analyzing .scene-art{max-width:310px}.personality-directory{max-width:960px;margin:auto;padding:20px}.personality-directory>h1,.personality-directory>p{text-align:center}.personality-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin:30px 0;display:grid}.personality-grid>a{border:1px solid var(--color-border);text-align:center;background:#fff;border-radius:24px;padding:20px;text-decoration:none;box-shadow:0 5px 12px #6952480b}.personality-grid h2{margin:8px 0;font-size:18px}.personality-grid p{color:var(--color-muted);font-size:13px}.personality-grid .character{max-width:190px;margin:0 auto}.skip-link{z-index:100;background:#fff;padding:10px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.metric-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0;display:grid}.metric-grid>div{text-align:center;border:1px solid var(--color-border);background:#fff;border-radius:18px;padding:20px 10px}.metric-grid strong,.metric-grid span{display:block}.metric-grid strong{color:var(--color-action);font-size:26px}.metric-grid span{font-size:12px}footer>a{margin-top:16px;font-size:13px;display:block}@media (max-width:700px){.personality-grid{grid-template-columns:repeat(2,1fr);gap:12px}.personality-grid>a{padding:12px}.personality-directory h1{font-size:27px}.personality-grid h2{font-size:15px}.metric-grid{gap:7px}.metric-grid span{font-size:11px}}.text-button,.result-analysis .subtype,.scores dd,.dna-highlights strong,.relationship-scenes h3,.scenario-card h3,.rose-text,.insight-lead strong{color:#bb365d}.index-heading b{color:#4a3340}.result-analysis .age-card strong{color:#a36a0a}.expression-comparison strong{color:#926009}.hero-art img{border-radius:24px}.button:not(.primary),.result-tags span,.metric-grid strong{color:#bb365d}:is(:focus-visible,.option:has(input:focus-visible)){outline-color:#bb365d}.button.primary{color:#382431}
