:root{color-scheme:dark;font-family:system-ui,-apple-system,"Microsoft YaHei",sans-serif;color:#f9f2ff;background:#100c19;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 16% 22%,#40204766,transparent 45%),radial-gradient(ellipse at 90% 75%,#30235c55,transparent 45%),#100c19}header{max-width:1120px;margin:auto;padding:30px 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff12}header a{color:inherit;text-decoration:none;letter-spacing:2px;font-size:17px}.brand-icon{color:#ef94ce;font-size:26px;vertical-align:middle;margin-right:9px}.edition{font-size:12px;letter-spacing:2px;color:#a89ab6}main{max-width:1060px;margin:64px auto 40px;padding:0 28px;min-height:540px}.home{display:grid;grid-template-columns:1.05fr 1fr;gap:72px;align-items:center}.eyebrow{color:#d5a1d8;letter-spacing:4px;font-size:12px;margin-bottom:24px}.orb{width:104px;height:104px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,#b875ef,#e962a2);box-shadow:0 0 70px #bf56c44a;font-size:52px;margin-bottom:32px}h1{font-family:"Songti SC","SimSun",serif;font-size:52px;font-weight:600;letter-spacing:4px;line-height:1.4;margin:0 0 20px}h1 em{font-style:normal;color:#e5a0d8}p{font-size:16px;line-height:1.9;color:#c0b3cf}.intro{max-width:375px}.facts{display:flex;gap:28px;margin-top:32px;padding-top:24px;border-top:1px solid #ffffff15;font-size:14px;color:#ad9dbd}.facts strong{display:block;font-family:Georgia,serif;color:#f3d5ec;font-size:25px;font-weight:400;margin-bottom:5px}.card{padding:34px;border:1px solid #aa7ec63d;border-radius:24px;background:linear-gradient(130deg,#2b1d38bb,#1a1427ee);box-shadow:0 24px 90px #0003}.small{font-size:13px;color:#b4a4c3;line-height:1.8}.card h2{font-size:24px;font-weight:600;margin:8px 0 10px;line-height:1.6}.card p{margin:0 0 26px}.label{display:block;font-size:14px;margin:28px 0 10px}input{width:100%;border:1px solid #7b638a;background:#110e1c;border-radius:12px;padding:16px;color:#fff;font:inherit;letter-spacing:2px}input::placeholder{letter-spacing:0;color:#8f809d}button{font:inherit;cursor:pointer;min-height:50px;border-radius:12px;border:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #edaae8;outline-offset:4px}.primary{width:100%;margin-top:18px;background:linear-gradient(100deg,#b886ef,#ef99c7);color:#24152e;font-weight:650;padding:16px;box-shadow:0 8px 24px #bd65d31c}.primary:hover{filter:brightness(1.08)}button:disabled{opacity:.4;cursor:not-allowed}.note{border-top:1px solid #ffffff16;margin-top:26px;padding-top:20px;font-size:13px;line-height:1.9;color:#af9fbc}.note strong{color:#e8b2cc;font-weight:500}.error{color:#ffb4c5;min-height:22px;font-size:14px;margin-top:8px}.quiz,.results{max-width:640px;margin:auto}.topline{display:flex;justify-content:space-between;align-items:center;color:#bca8cf;font-size:14px;margin-bottom:18px}.progress{height:4px;background:#372b46;border-radius:6px;overflow:hidden;margin-bottom:28px}.progress span{display:block;height:100%;background:linear-gradient(90deg,#ab7ee6,#ef9bce);transition:width .25s}.question{font-size:27px!important;line-height:1.6!important;margin:18px 0 26px!important}.options{display:grid;gap:12px}.option{text-align:left;border:1px solid #ffffff22;background:#191223;color:#dbd0e5;padding:16px;display:flex;align-items:center;gap:14px;font-size:16px}.option span{border:1px solid #8b7698;width:25px;height:25px;border-radius:50%;flex-shrink:0}.option.selected{border-color:#d6a1ec;background:#593a6855;color:white}.option.selected span{border:7px solid #d6a1ec;background:#291932}.navigation{display:flex;gap:15px;margin-top:24px}.navigation .primary{margin:0;flex:1}.secondary{background:transparent;color:#c9b5da;border:1px solid #6a527c;padding:12px 20px}.results{text-align:center}.results h1{font-size:34px}.score{font-family:Georgia,serif;font-size:76px;line-height:1.2;color:#e4a4db;margin:22px 0 8px}.score span{font-size:23px;color:#a38fb3}.result-copy{text-align:left}.dimension{margin:18px 0;text-align:left;font-size:14px;color:#cfc0dc}.dimension>div{display:flex;justify-content:space-between;margin-bottom:9px}.dimension .progress{margin-bottom:0;height:6px}.result-note{background:#ffffff06;padding:20px;border-radius:14px;text-align:left;margin-top:26px}.result-note h3{margin:0 0 8px;font-size:16px;color:#e7b6d6}.result-note p{margin:0;font-size:14px}footer{text-align:center;padding:20px 24px 32px;color:#a28fad;font-size:12px;line-height:2}footer span{color:#7e6f8c}@media(max-width:700px){header{padding:20px}.edition{font-size:10px;letter-spacing:1px}main{margin:30px auto;padding:0 22px;min-height:0}.home{grid-template-columns:1fr;gap:30px}.orb{width:76px;height:76px;font-size:38px;margin-bottom:22px}.eyebrow{margin-bottom:16px}h1{font-size:39px;letter-spacing:2px}.intro{max-width:none}.intro p{margin-bottom:0}.facts{gap:36px;margin-top:24px;padding-top:18px}.facts strong{font-size:23px}.card{padding:26px 22px;border-radius:20px}.question{font-size:23px!important}.results h1{font-size:29px}.home .card .label{margin-top:22px}footer{padding-top:4px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* A compact, self-contained mobile edition. */
body{background:radial-gradient(ellipse at 50% 15%,#40204766,transparent 45%),#100c19}header{max-width:520px;padding:18px 22px}.edition{font-size:12px;letter-spacing:0}main{max-width:520px;margin:26px auto 32px;padding:0 22px;min-height:0}.home{grid-template-columns:1fr;gap:24px}.intro{text-align:center;max-width:none}.orb{width:78px;height:78px;font-size:40px;margin:0 auto 20px}.eyebrow{font-size:12px;letter-spacing:2px;margin-bottom:20px}h1{font-size:36px;letter-spacing:1px}h1 em{font-size:.8em}.intro p{margin:0}.facts{justify-content:center;gap:30px;margin-top:20px;padding-top:18px}.facts strong{font-size:23px}.card{padding:26px 22px}.home .card h2{font-size:22px}.home .card p{margin-bottom:16px}.home .label{margin-top:18px}.home .note{margin-top:20px;padding-top:16px}.results h1{font-size:28px}footer{max-width:520px;margin:auto}@media(max-width:360px){main{padding:0 14px}header{padding:16px 14px}h1{font-size:32px}.facts{gap:20px}.card{padding:22px 18px}.navigation{gap:10px}.secondary{padding:12px 16px}}
/* Psychological age: lilac paper, pink highlights, fully local fonts. */
:root{color-scheme:light;color:#36244e;background:#faf6ff}body{background:radial-gradient(ellipse at 8% 5%,#ddcaf7aa,transparent 42%),radial-gradient(ellipse at 100% 45%,#ffcfe77a,transparent 45%),#fffcf8;color:#36244e}header{border-bottom-color:#7c56a31a}header a{letter-spacing:1px;font-size:16px}.brand-icon{color:#9864c7}.edition{color:#826695;font-size:12px}.intro h1{font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:25px;line-height:1.45;font-weight:700;letter-spacing:1px;margin-bottom:0}.gradient-title{display:block;font-size:clamp(42px,11vw,58px);line-height:1.4;background:linear-gradient(105deg,#7445bb,#d757ae,#884dd0);background-clip:text;-webkit-background-clip:text;color:transparent;font-weight:800;letter-spacing:5px}.question-mark{font:bold 100px/1 Georgia,serif;margin:12px auto;color:#b65ac6;text-shadow:0 5px 0 #e6b9ed,0 12px 25px #be82db35;transform:rotate(8deg)}.eyebrow{color:#8e60a7;letter-spacing:2px}.intro p,p{color:#796585}.intro p{font-size:15px}.facts{border-top-color:#956ab526;color:#887292;font-size:13px;gap:30px}.facts strong{color:#8051ad}.card{background:linear-gradient(145deg,#ffffffed,#fff9fff0);border:1px solid #e9d8f0;box-shadow:0 12px 42px #9362b212}.card h2{color:#442558}.small{color:#8a7296}.label{color:#604673}input{border:1px solid #d8c3e7;background:#fcf9ff;color:#422553}input::placeholder{color:#a48daf}.primary{background:linear-gradient(100deg,#9b73dc,#d77fbd);color:white;box-shadow:0 6px 18px #a877d126;font-weight:600}.error{color:#b42c5d}.note{border-top-color:#e9dcec;color:#87728f}.note strong{color:#a25b9d}.topline{color:#866399}.progress{background:#ecdfef}.progress span{background:linear-gradient(90deg,#b28add,#df8cbc)}.option{background:#fff;border:1px solid #e3d4ec;color:#685077}.option span{border-color:#ceb4dd}.option.selected{border-color:#aa75cd;background:#f3eafa;color:#583275}.option.selected span{border:7px solid #af7cd0;background:white}.secondary{color:#876698;border:1px solid #d9c4e6;background:#ffffff77}.score{color:#ad68c2;margin:8px 0}.score span{color:#9775a8;margin-left:8px;font-size:20px}.results h1{font-size:27px;margin:12px 0;color:#503363;font-family:"Microsoft YaHei",sans-serif;letter-spacing:1px}.results p{font-size:15px}.age-caption{font-size:12px;color:#a081ae;margin:10px 0 24px}.chart-heading{font-size:18px!important;text-align:left;margin-top:24px!important}.results .chart-heading+p{text-align:left;font-size:13px}.dimension{color:#735584;margin:23px 0}.axis-labels{font-size:12px;margin-top:8px;color:#9d85a7}.result-note{background:#f6eef9;border:1px solid #eee0f4;padding:18px;margin-top:18px}.result-note h3{color:#8b559f}.result-note p{color:#7b6386;font-size:14px}.method{text-align:left;font-size:13px;margin-top:24px;color:#947b9e;line-height:1.8}.method summary{cursor:pointer;padding:8px 0}.method p{font-size:12px;margin:8px 0}.return-home{width:100%;margin-top:12px}.quiz-tip{text-align:center}footer{color:#947b9f;font-size:12px}footer span{color:#ab96b4}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #9b64c6;outline-offset:4px}@media(max-width:380px){.edition{font-size:10px}header a{font-size:14px}.intro h1{font-size:23px}.gradient-title{font-size:44px}.question-mark{font-size:84px}.facts{gap:24px}}@media print{header,footer,#again,#return{display:none}.results{box-shadow:none;border:0}.method{display:block}body{background:white}}
/* City edition: white, deep ink, and teal. */
:root{color:#152f38;background:#f5fbfa}body{background:radial-gradient(ellipse at 100% 18%,#d8f3ed99,transparent 42%),#fbfefd;color:#152f38}.brand-icon{color:#0e8c80}header{border-bottom-color:#0c847b20}header a{color:#183e43}.edition,.eyebrow{color:#56847e}.intro h1{font-size:31px;line-height:1.5;margin:8px 0 20px}.gradient-title{font-size:clamp(34px,9vw,44px);letter-spacing:1px;background:none;color:#0b8b80}.intro p,p{color:#577570}.facts{border-top-color:#c9e4de;color:#66857f}.facts strong{color:#07897b}.city-stamp{margin:22px 0 0;padding:17px 24px;border:1px solid #a6d5ca;border-radius:12px;text-align:left;display:flex;gap:12px;align-items:center;color:#108b7d;font-size:22px;background:#e9f7f2}.city-stamp span{font-size:15px;flex:1;color:#468075}.city-stamp::first-letter{font-size:15px}.card{background:#fff;border-color:#d5e8e3;box-shadow:0 12px 34px #1f75680a}.card h2{color:#163e3d}.small{color:#66867f}.label{color:#315f58}input{background:#f8fcfa;border-color:#bfded4;color:#183e37}input::placeholder{color:#84a29a}.primary{background:linear-gradient(110deg,#11958b,#107e70);color:#fff;box-shadow:0 6px 16px #0b8b7a1a}.note{border-top-color:#dcebe5;color:#67887f}.note strong{color:#197c6b}.topline{color:#508075}.progress{background:#e3f1ec}.progress span{background:linear-gradient(90deg,#43baac,#118575)}.option{color:#31574f;border-color:#d0e5dd}.option span{border-color:#bad8cd}.option.selected{background:#ebf8f2;border-color:#48a58c;color:#126247}.option.selected span{border:7px solid #208e75;background:white}.secondary{color:#478171;border-color:#badacf}.results .city-name{font-size:64px;letter-spacing:9px;color:#087f72;margin:18px 0 14px}.city-tag{display:inline-block;border:1px solid #bae1d5;background:#eef9f4;color:#298573;padding:6px 15px;border-radius:30px;font-size:14px}.match-score{font-size:32px;font-weight:700;color:#0e8775;margin-top:20px}.match-score span{font-size:13px;font-weight:400;color:#75958c}.result-note{background:#f1f9f5;border-color:#e1f0e8}.result-note h3{color:#22816a}.result-note p{color:#52796c}.dimension{color:#477767}.axis-labels{color:#82a294}.method{color:#75978a}.method a{color:#147d66}.alternatives{text-align:left;display:grid;gap:12px;margin-top:16px}.alternatives>div{border:1px solid #dbece3;border-radius:12px;padding:16px}.alternatives strong{display:block;font-size:20px;color:#26725e}.alternatives strong span{float:right;font-size:14px;font-weight:400}.alternatives p{font-size:14px;margin:5px 0 8px}.alternatives small{font-size:12px;line-height:1.8;color:#799789}footer{color:#729384}footer span{color:#91ad9f}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline-color:#24987e}@media(max-width:380px){.intro h1{font-size:29px}.gradient-title{font-size:34px}.results .city-name{font-size:54px}}
