﻿:root{--primary:#5548d9;--deep:#3f35a7;--accent:#dd5976;--ink:#1d2638;--muted:#687386;--line:#e7eaf0;--bg:#f6f7f9;--soft:#f0effc;--shadow:0 8px 24px rgba(31,38,58,.08);--radius:8px}
*{box-sizing:border-box}html{scroll-behavior:smooth;max-width:100%;overflow-x:hidden}body{margin:0;max-width:100%;overflow-x:hidden;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.5;letter-spacing:0}a{text-decoration:none;color:inherit}button{font:inherit;color:inherit}.brand-banner{height:90px;background:#5145c7;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.brand-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(17,25,60,.18),transparent 40%,rgba(255,255,255,.12))}.brand{position:relative;line-height:1}.brand strong{font-size:26px}.brand span{font-size:17px;margin-left:8px}.brand-banner p{position:relative;font-size:12px;margin:7px 0 0;opacity:.82}.site-nav{min-height:52px;background:#fff;border-bottom:1px solid #eceef2;position:sticky;top:0;z-index:20}.nav-inner{min-height:52px;max-width:1160px;min-width:0;margin:auto;padding:7px 14px;display:grid;grid-template-columns:repeat(4,minmax(92px,120px));align-items:center;justify-content:center;gap:10px;position:relative}.nav-inner a{height:36px;border:1px solid #e1e4e9;border-radius:6px;display:grid;place-items:center;color:var(--muted);font-size:13px}.nav-inner a.active,.nav-inner a:hover{color:#5b50c7;border-color:#5b50c7;background:#f0effc}.nav-inner>[data-project-title]{position:absolute;right:20px;margin-left:0!important;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-page{max-width:1160px;margin:auto;padding:36px 20px 70px}.home-hero{min-height:190px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:34px 38px;display:flex;align-items:center;justify-content:space-between;gap:40px;position:relative;overflow:hidden}.home-hero:after{content:"";position:absolute;right:-40px;top:-80px;width:280px;height:280px;border:54px solid #eeecff;border-radius:50%}.home-hero>div,.hero-action{position:relative;z-index:1}.eyebrow,.directory-head span{font-size:11px;font-weight:700;color:var(--primary);letter-spacing:1.2px}.home-hero h1{font-size:30px;margin:8px 0 7px}.home-hero p{color:var(--muted);font-size:14px;margin:0}.hero-action{width:280px;background:#29263d;color:#fff;padding:20px 22px;border-radius:7px;display:flex;flex-direction:column;box-shadow:0 12px 24px rgba(35,30,72,.18)}.hero-action span{font-size:10px;color:#c8c4ff}.hero-action strong{font-size:16px;margin:4px 0 13px}.hero-action em{font-size:12px;color:#fff;font-style:normal}.test-directory{scroll-margin-top:65px;margin-top:48px}.directory-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:22px}.directory-head h2{font-size:25px;margin:2px 0 0}.directory-head p{font-size:13px;color:var(--muted);margin:0}.test-group{--group:#6658d9;--pale:#f1effc;margin-bottom:18px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.test-group>header{padding:18px 20px;display:flex;align-items:center;gap:13px;border-bottom:1px solid var(--line);background:var(--pale)}.test-group>header>span{font-size:11px;font-weight:800;color:var(--group);border:1px solid currentColor;border-radius:4px;padding:3px 5px}.test-group h3{font-size:18px;margin:0;color:var(--group)}.test-group header p{font-size:12px;color:var(--muted);margin:1px 0 0}.theme-relationship{--group:#d65370;--pale:#fff1f4}.theme-ability{--group:#2175bd;--pale:#edf6fb}.theme-wellness{--group:#168b79;--pale:#edf8f5}.test-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.test-card{min-width:0;min-height:154px;padding:20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;position:relative;transition:.18s}.test-card:nth-child(4n){border-right:0}.test-card:hover{background:#fafbfc;box-shadow:inset 0 0 0 1px var(--group);z-index:1}.test-icon{width:42px;height:42px;border-radius:7px;background:var(--pale);color:var(--group);display:grid;place-items:center;font-weight:800;font-size:17px}.test-info{margin-top:13px;min-width:0}.test-info strong,.test-info small{display:block}.test-info strong{font-size:14px}.test-info small{font-size:11px;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.test-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:13px}.test-foot em{font-size:10px;color:#98a0ae;font-style:normal}.test-foot i{font-style:normal;color:var(--group)}.card-tag{position:absolute;right:12px;top:12px;font-size:9px;background:#168b79;color:#fff;padding:3px 6px;border-radius:4px}.site-footer{min-height:80px;background:#fff;border-top:1px solid var(--line);display:grid;place-items:center;color:#929aa8;font-size:11px;padding:20px}
/* Project shell */
body[data-theme="personality"]{--primary:#6658d9;--deep:#4439aa;--soft:#f0edfc;--bg:#f7f5fc}body[data-theme="relationship"]{--primary:#d65370;--deep:#ae3853;--soft:#fff0f3;--bg:#fff7f8}body[data-theme="ability"]{--primary:#2175bd;--deep:#15558d;--soft:#eaf4fb;--bg:#f4f8fb}body[data-theme="wellness"]{--primary:#168b79;--deep:#0d6559;--soft:#e9f6f2;--bg:#f3f9f7}body[data-theme="pet"]{--primary:#e57926;--deep:#a94e12;--soft:#fff0dd;--bg:#fff8ef}.project-page{width:100%;max-width:980px;min-width:0;margin:auto;padding:28px 20px 70px}.crumb{display:flex;align-items:center;gap:8px;font-size:12px;color:#87909f;margin-bottom:18px}.crumb a{color:var(--primary)}.project-intro{width:100%;min-width:0;background:#fff;border:1px solid var(--line);border-top:4px solid var(--primary);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.intro-main{display:grid;grid-template-columns:72px minmax(0,1fr) 190px;gap:22px;align-items:center;padding:28px 30px}.intro-copy,.intro-details>div,.quiz-panel,.result-panel{min-width:0}.intro-icon{width:64px;height:64px;border-radius:8px;background:var(--soft);color:var(--primary);display:grid;place-items:center;font-size:25px;font-weight:800}.intro-copy h1{font-size:25px;margin:0 0 4px;overflow-wrap:anywhere}.intro-copy>p{font-size:13px;color:var(--muted);margin:0}.intro-action{height:44px;border:0;border-radius:6px;background:var(--primary);color:#fff;font-weight:700;cursor:pointer}.intro-action:hover,.primary-button:hover{background:var(--deep)}.intro-details{padding:22px 30px 26px;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,270px);gap:30px}.intro-details>div>p{font-size:13px;line-height:1.8;color:#4d5869;margin:0 0 12px;overflow-wrap:anywhere}.source-note{font-size:11px!important;color:#9098a5!important}.stat-line{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.stat-line div{min-width:0;background:var(--soft);padding:11px 5px;text-align:center;border-radius:5px}.stat-line b,.stat-line span{display:block}.stat-line b{color:var(--primary);font-size:15px}.stat-line span{font-size:10px;color:var(--muted);margin-top:2px;white-space:nowrap}.safety-note{border-left:3px solid var(--primary);background:var(--soft);font-size:11px;line-height:1.7;color:#536071;padding:12px 14px}.quiz-head{text-align:center;margin-bottom:19px}.quiz-head h1{font-size:22px;margin:0;overflow-wrap:anywhere}.quiz-head p{font-size:12px;color:var(--muted);margin:5px 0 0}.quiz-panel,.result-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:30px 34px}.quiz-meta{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted)}.quiz-meta strong{font-size:15px;color:var(--primary)}.progress{height:6px;background:#edf0f3;border-radius:6px;overflow:hidden;margin:10px 0 28px}.progress i{display:block;height:100%;background:var(--primary);transition:width .2s}.question{font-size:20px;line-height:1.6;margin:0 0 22px;overflow-wrap:anywhere}.answers{display:grid;grid-template-columns:1fr 1fr;gap:10px}.answer{position:relative;min-width:0}.answer:last-child:nth-child(odd){grid-column:1/-1}.answer input{position:absolute;opacity:0}.answer span{min-height:54px;border:1px solid #dfe3ea;background:#fff;border-radius:6px;padding:10px 14px;display:flex;align-items:center;cursor:pointer;color:#4e596b;font-size:13px}.answer b{width:27px;min-width:27px;height:27px;border-radius:50%;background:var(--soft);color:var(--primary);display:grid;place-items:center;margin-right:10px;font-size:11px}.answer:hover span,.answer input:checked+span{border-color:var(--primary);background:var(--soft)}.answer input:checked+span b{background:var(--primary);color:#fff}.quiz-message{min-height:28px;color:#c84c45;font-size:11px;padding-top:8px}.quiz-controls{display:flex;justify-content:space-between;gap:10px;margin-top:14px}.secondary-button,.primary-button{height:42px;border-radius:6px;padding:0 20px;cursor:pointer}.secondary-button{border:1px solid #d6dbe3;background:#fff}.primary-button{border:0;background:var(--primary);color:#fff;font-weight:700;min-width:120px}.result-head{background:var(--primary);color:#fff;padding:25px 28px;border-radius:var(--radius) var(--radius) 0 0;display:flex;align-items:center;justify-content:space-between}.result-head h1{font-size:22px;margin:0 0 3px}.result-head p{font-size:11px;margin:0;opacity:.78}.score{width:72px;min-width:72px;height:72px;border:5px solid rgba(255,255,255,.62);border-radius:50%;display:grid;place-items:center;text-align:center}.score b{font-size:20px;line-height:1}.score small{display:block;font-size:8px}.result-panel{border-top:0;border-radius:0 0 var(--radius) var(--radius);box-shadow:none}.result-summary{background:var(--soft);padding:14px 16px;border-radius:5px;font-size:13px;line-height:1.7}.factor-row{display:grid;grid-template-columns:105px 1fr 40px 52px;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #edf0f3;font-size:12px}.factor-track{height:7px;background:#edf0f2;border-radius:7px;overflow:hidden}.factor-track i{display:block;height:100%;background:var(--primary)}.factor-label{font-size:10px;color:var(--primary);background:var(--soft);padding:3px;text-align:center;border-radius:4px}.result-note{font-size:11px;color:#8a93a1;line-height:1.7;margin-top:18px}.crisis{background:#fff0ed;border:1px solid #f0c4bc;color:#913f34;padding:13px;border-radius:5px;font-size:12px;line-height:1.7;margin-top:14px}.pet-types{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pet-types button{height:130px;background:#fff;border:1px solid #ead7c7;border-radius:7px;cursor:pointer;font-size:16px;font-weight:700}.pet-types i{display:block;font-style:normal;font-size:36px;margin-bottom:7px}
@media(max-width:850px){.nav-inner>[data-project-title]{display:none}.test-grid{grid-template-columns:repeat(3,1fr)}.test-card:nth-child(4n){border-right:1px solid var(--line)}.test-card:nth-child(3n){border-right:0}.intro-main{grid-template-columns:64px 1fr}.intro-action{grid-column:1/-1}.intro-details{grid-template-columns:1fr}}
@media(max-width:560px){.brand-banner{height:90px}.nav-inner{grid-template-columns:repeat(2,minmax(0,1fr));padding:7px 14px;gap:8px}.nav-inner>[data-project-title]{display:none}.home-page,.project-page{padding:22px 14px 50px}.home-hero{padding:24px 20px;display:block}.home-hero h1{font-size:23px;max-width:75%}.home-hero p{font-size:12px;max-width:70%}.hero-action{width:100%;margin-top:22px;padding:16px 18px}.directory-head{align-items:start}.directory-head p{display:none}.test-group>header{padding:15px}.test-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.test-card,.test-card:nth-child(3n),.test-card:nth-child(4n){border-right:1px solid var(--line)}.test-card:nth-child(2n){border-right:0}.test-card{min-height:147px;padding:16px 13px}.test-info strong{font-size:13px}.intro-main{padding:21px 17px;grid-template-columns:52px minmax(0,1fr);gap:13px}.intro-icon{width:50px;height:50px;font-size:20px}.intro-copy h1{font-size:20px}.intro-action{width:100%}.intro-details{padding:18px 17px;grid-template-columns:minmax(0,1fr);gap:14px}.quiz-panel,.result-panel{padding:22px 16px}.question{font-size:18px}.answers{grid-template-columns:minmax(0,1fr)}.answer:last-child:nth-child(odd){grid-column:auto}.quiz-controls{position:sticky;bottom:0;background:#fff;padding:10px 0 2px}.factor-row{grid-template-columns:76px minmax(0,1fr) 31px}.factor-label{grid-column:2/4;justify-self:start}.result-head{padding:21px 17px;gap:12px}.result-head h1{font-size:19px}.score{width:64px;min-width:64px;height:64px}.pet-types{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Automatic answer flow */
.answer span{position:relative;padding-right:58px;transition:border-color .16s,background .16s,transform .16s}.answer span>i{position:absolute;right:14px;color:#a0a7b3;font-size:10px;font-style:normal}.answer:hover span{transform:translateY(-1px)}.answer input:checked+span>i{color:var(--primary);font-weight:700}.quiz-panel.is-answered{pointer-events:none}.quiz-panel.is-answered .answer input:checked+span{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 14%,transparent)}.quiz-auto-hint{text-align:center;color:#939baa;font-size:11px;margin:17px 0 2px}.quiz-controls-single{justify-content:flex-start;margin-top:4px}.quiz-controls-single .secondary-button{height:36px;font-size:12px;color:#717b8a}

/* Shareable result report */
.result-report{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 16px 42px rgba(28,35,54,.1)}.result-cover{min-height:210px;padding:38px 42px;background:linear-gradient(120deg,var(--primary),#29263d 78%);color:#fff;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px}.result-cover:after{content:"";position:absolute;width:270px;height:270px;border:1px solid rgba(255,255,255,.17);border-radius:50%;right:90px;top:-125px}.result-cover>div:not(.constellation),.result-cover>.score{position:relative;z-index:2}.report-kicker{display:block;font-size:10px;font-weight:800;letter-spacing:1.6px;opacity:.65;margin-bottom:14px}.result-cover h1{font-size:29px;line-height:1.3;margin:0 0 7px}.result-cover p{font-size:12px;margin:0;opacity:.72}.result-cover .score{width:92px;min-width:92px;height:92px;border-width:6px}.result-cover .score b{font-size:26px}.result-cover .score small{font-size:9px;margin-top:5px}.constellation{position:absolute;inset:0;opacity:.55}.constellation:before,.constellation:after{content:"";position:absolute;height:1px;background:rgba(255,255,255,.28);transform-origin:left center}.constellation:before{width:230px;right:70px;top:84px;transform:rotate(22deg)}.constellation:after{width:190px;right:165px;top:140px;transform:rotate(-29deg)}.constellation i{position:absolute;width:5px;height:5px;background:#fff;border-radius:50%;box-shadow:0 0 10px rgba(255,255,255,.8)}.constellation i:nth-child(1){right:78px;top:80px}.constellation i:nth-child(2){right:176px;top:119px}.constellation i:nth-child(3){right:258px;top:162px}.constellation i:nth-child(4){right:130px;top:180px}.constellation i:nth-child(5){right:330px;top:72px}.report-body{padding:34px 38px 30px}.report-overview{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(270px,.75fr);gap:18px;align-items:stretch}.astro-card,.overview-card,.report-section{border:1px solid var(--line);border-radius:7px;background:#fff}.astro-card{padding:22px 24px 10px;background:linear-gradient(180deg,#fff,#fbfbfd)}.astro-card canvas{display:block;width:100%;height:auto;max-height:330px;margin:2px auto 0}.section-title{display:flex;align-items:center;gap:12px}.section-title>span{width:31px;height:31px;border:1px solid var(--primary);border-radius:50%;display:grid;place-items:center;color:var(--primary);font-size:10px;font-weight:800}.section-title h2{font-size:17px;line-height:1.2;margin:0}.section-title p{font-size:10px;color:#9099a8;margin:4px 0 0}.overview-card{padding:26px 24px;display:flex;flex-direction:column;justify-content:center;background:var(--soft)}.result-badge{align-self:flex-start;padding:5px 10px;border:1px solid color-mix(in srgb,var(--primary) 28%,transparent);border-radius:4px;color:var(--primary);background:#fff;font-size:11px;font-weight:700}.overview-card h2{font-size:13px;color:#5f6979;margin:22px 0 0}.index-number{display:flex;align-items:end;gap:5px;margin:3px 0 13px}.index-number strong{font-size:50px;line-height:1;color:var(--primary)}.index-number small{font-size:12px;color:#8b94a2;margin-bottom:7px}.ideal-track{height:9px;background:#fff;border:1px solid #e3e6eb;position:relative}.ideal-track i{display:block;height:100%;background:var(--primary)}.ideal-track b{position:absolute;width:3px;height:17px;top:-5px;background:#272538;transform:translateX(-1px)}.ideal-labels{display:flex;justify-content:space-between;gap:8px;font-size:9px;color:#788291;margin-top:7px}.overview-card .result-summary{margin-top:21px;background:#fff;border-left:3px solid var(--primary);font-size:12px;padding:13px 14px}.report-section{margin-top:20px;padding:25px 27px}.report-section>.section-title{margin-bottom:17px}.result-report .factor-row{grid-template-columns:minmax(180px,1.2fr) minmax(130px,1fr) 42px 55px;padding:15px 0}.factor-row>div:first-child strong,.factor-row>div:first-child small{display:block}.factor-row>div:first-child strong{font-size:13px}.factor-row>div:first-child small{font-size:10px;color:#8a93a1;line-height:1.55;margin-top:3px}.advice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.advice-grid article{min-height:155px;padding:18px;background:#f8f9fb;border-top:3px solid var(--primary)}.advice-grid i{font-size:10px;color:var(--primary);font-style:normal;font-weight:800}.advice-grid h3{font-size:14px;margin:15px 0 7px}.advice-grid p{font-size:11px;color:#687386;line-height:1.75;margin:0}.result-wish{margin:20px 0 0;padding:24px 28px;background:var(--primary);color:#fff;font-size:15px;font-weight:600;line-height:1.8;text-align:center;border-radius:6px}.report-branding{min-height:74px;margin-top:20px;padding:12px 0;display:flex;align-items:center;gap:14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.report-branding>img{width:120px;max-height:48px;object-fit:contain;object-position:left center}.report-wordmark{font-size:16px;font-weight:800;color:var(--primary)}.report-branding>div{display:flex;flex-direction:column}.report-branding strong{font-size:11px}.report-branding small{font-size:9px;color:#939baa;margin-top:3px}.report-branding figure{margin:0 0 0 auto;text-align:center}.report-branding figure img{width:60px;height:60px;object-fit:contain}.report-branding figcaption{font-size:8px;color:#8b94a2}.result-report .result-note{text-align:center;margin:18px 0 0}.report-actions{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:10px;margin-top:18px}.report-actions>a,.report-actions>button{height:46px;display:grid;place-items:center}.save-button{border:0;border-radius:6px;background:var(--primary);color:#fff;font-weight:700;cursor:pointer}.save-button:hover{background:var(--deep)}.save-button:disabled{opacity:.7;cursor:wait}.save-button span{font-size:17px;margin-right:7px}

@media(max-width:760px){.report-overview{grid-template-columns:1fr}.overview-card{min-height:280px}.result-report .factor-row{grid-template-columns:minmax(125px,1fr) minmax(90px,.9fr) 38px 48px}.advice-grid{grid-template-columns:1fr}.advice-grid article{min-height:auto}.result-cover{padding:30px 27px}.report-body{padding:24px 21px}.report-section{padding:21px 19px}}
@media(max-width:560px){.answer span{padding-right:52px}.result-report{margin-left:-2px;margin-right:-2px}.result-cover{min-height:180px;padding:27px 20px}.result-cover h1{font-size:22px;max-width:220px}.result-cover .score{width:72px;min-width:72px;height:72px}.result-cover .score b{font-size:20px}.constellation i:nth-child(3),.constellation i:nth-child(5){display:none}.report-body{padding:18px 14px 21px}.astro-card{padding:18px 12px 4px}.astro-card canvas{max-height:290px}.overview-card{padding:23px 19px;min-height:255px}.result-report .factor-row{grid-template-columns:minmax(0,1fr) 48px;gap:7px 10px}.result-report .factor-row>div:first-child{grid-column:1/-1}.result-report .factor-row .factor-track{grid-column:1/2}.result-report .factor-row>.factor-label{grid-column:1/-1;justify-self:start}.result-report .factor-row>b{grid-column:2}.result-wish{padding:20px 16px;font-size:13px}.report-branding{align-items:flex-start}.report-wordmark{font-size:14px}.report-actions{grid-template-columns:1fr 1fr}.report-actions .save-button{grid-column:1/-1;grid-row:1}.report-actions>a,.report-actions>button{min-width:0;padding:0 10px}.report-actions .primary-button{grid-column:2;grid-row:2}.report-actions .secondary-button{grid-column:1;grid-row:2}}

/* Local imagery and result interactions */
.test-icon{overflow:hidden}.test-icon img,.intro-icon img{display:block;width:100%;height:100%;object-fit:cover}.intro-icon{overflow:hidden}.report-branding figure.is-placeholder>span{width:60px;height:60px;border:1px dashed #aeb6c2;display:grid;place-items:center;color:#8993a2;font-size:9px;line-height:1.45;background:#fafbfc}.astro-card,.overview-card,.report-section,.advice-grid article,.result-wish,.report-branding{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.result-report .factor-row{transition:transform .16s ease,background .16s ease,padding .16s ease}
@media(hover:hover){.astro-card:hover,.overview-card:hover,.report-section:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--primary) 32%,var(--line));box-shadow:0 12px 28px rgba(30,37,55,.1)}.advice-grid article:hover{transform:translateY(-5px);box-shadow:0 10px 22px rgba(30,37,55,.1)}.result-report .factor-row:hover{transform:translateX(4px);background:var(--soft);padding-left:10px;padding-right:10px}.result-wish:hover{transform:translateY(-3px);box-shadow:0 10px 22px color-mix(in srgb,var(--primary) 28%,transparent)}.report-branding:hover{transform:translateY(-2px)}}
