
:root{
 --ivory:#f7f1ec;--ivory2:#fffaf6;--ink:#302a2d;--muted:#756a70;--wine:#8f4e5b;--rose:#c98691;
 --dust:#e5c5c7;--blue:#8da9b4;--blue2:#dce7ea;--gold:#b99a6b;--line:rgba(48,42,45,.14);
 --shadow:0 28px 80px rgba(87,60,68,.14);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;background:linear-gradient(135deg,#faf6f2,#f2e9e6 48%,#eef3f3);min-height:100vh}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 8% 8%,rgba(201,134,145,.16),transparent 26%),radial-gradient(circle at 88% 16%,rgba(141,169,180,.14),transparent 25%),radial-gradient(circle at 60% 92%,rgba(185,154,107,.08),transparent 28%);z-index:-2}
.grain{position:fixed;inset:0;pointer-events:none;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 150 150' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E");z-index:-1}
button,input{font:inherit}.shell{max-width:1220px;margin:auto;padding:0 26px 70px}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{color:inherit;text-decoration:none;display:flex;align-items:center;gap:12px}.brand-mark{width:46px;height:46px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font:700 15px Georgia,serif;letter-spacing:.08em}.brand b{display:block;font:700 13px Georgia,serif;letter-spacing:.2em}.brand small{display:block;margin-top:3px;color:var(--muted);letter-spacing:.25em;font-size:10px}.topline{font:10px Georgia,serif;letter-spacing:.18em;color:var(--muted)}
.screen{display:none;animation:fade .35s ease}.screen.active{display:block}@keyframes fade{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.hero{display:grid;grid-template-columns:1.04fr .96fr;gap:56px;align-items:center;min-height:650px;padding:58px 0 34px}.eyebrow,.section-tag{font:700 11px Georgia,serif;letter-spacing:.22em;color:var(--wine)}.hero h1,.narrow h2{font:500 clamp(46px,5vw,72px)/1.15 Georgia,"Songti SC",serif;margin:20px 0}.hero h1 em{font-style:normal;color:var(--wine)}.lead,.section-lead{font-size:17px;line-height:1.9;color:#665e62}.chips{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0}.chips span{padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.56);font-size:12px}.access-card{margin-top:32px;padding:22px;border:1px solid var(--line);border-radius:22px;background:rgba(255,250,246,.77);box-shadow:0 16px 45px rgba(74,53,59,.08)}.access-card label{display:block;font-weight:700;margin-bottom:12px}.code-row{display:grid;grid-template-columns:52px 1fr auto;gap:10px}.code-row>span{display:grid;place-items:center;border:1px solid var(--line);border-radius:14px;background:white;color:var(--wine);font:700 22px Georgia}.code-row input{min-width:0;padding:0 15px;border:1px solid var(--line);border-radius:14px;background:white;outline:0;font-size:18px;letter-spacing:.16em}.code-row input:focus{border-color:var(--rose);box-shadow:0 0 0 4px rgba(201,134,145,.12)}.code-row button,.primary{border:0;border-radius:14px;padding:15px 20px;background:var(--ink);color:white;font-weight:700;cursor:pointer}.access-card p{font-size:12px;color:var(--muted);line-height:1.65;margin:12px 0 0}
.mirror-art{height:500px;position:relative;border-radius:34px;overflow:hidden;border:1px solid rgba(48,42,45,.13);background:linear-gradient(145deg,#e9d6d5 0%,#f8eee7 44%,#d9e6e8 100%);box-shadow:var(--shadow)}.halo{position:absolute;border:1px solid rgba(255,255,255,.7);border-radius:50%;left:50%;top:48%;transform:translate(-50%,-50%)}.halo.h1{width:360px;height:360px}.halo.h2{width:280px;height:280px}.halo.h3{width:200px;height:200px}.figure{position:absolute;bottom:45px;width:125px;height:290px;border-radius:80px 80px 25px 25px;background:linear-gradient(180deg,rgba(48,42,45,.86),rgba(48,42,45,.56));filter:drop-shadow(0 18px 25px rgba(48,42,45,.18))}.figure:before{content:"";position:absolute;width:92px;height:92px;border-radius:50%;background:linear-gradient(145deg,#f1c7b5,#c78578);top:-55px;left:17px}.figure span{position:absolute;width:90px;height:140px;border:1px solid rgba(255,255,255,.28);border-radius:50%;top:55px;left:18px}.figure.left{left:105px;transform:rotate(4deg);background:linear-gradient(180deg,#8e4e5b,#4c333b)}.figure.right{right:100px;transform:rotate(-5deg);background:linear-gradient(180deg,#7898a5,#3f545d)}.glass-heart{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);font:100px Georgia;color:rgba(255,255,255,.78);text-shadow:0 0 30px rgba(255,255,255,.7)}.thread{position:absolute;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform-origin:left center}.t1{width:420px;left:20px;top:150px;transform:rotate(18deg)}.t2{width:430px;left:70px;bottom:100px;transform:rotate(-12deg)}.t3{width:360px;right:-30px;top:220px;transform:rotate(40deg)}.caption{position:absolute;left:34px;top:32px;font:700 26px/1.08 Georgia;color:rgba(48,42,45,.78);letter-spacing:.12em}.note{position:absolute;right:28px;bottom:24px;border:1px solid rgba(48,42,45,.16);background:rgba(255,255,255,.55);backdrop-filter:blur(8px);padding:11px 14px;border-radius:999px;font-size:11px;letter-spacing:.16em}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:66px}.feature-grid article,.intro-grid>div{padding:24px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.48)}.feature-grid b{font:500 18px Georgia,"Songti SC",serif}.feature-grid p,.intro-grid p{font-size:13px;line-height:1.75;color:var(--muted);margin:9px 0 0}
.narrow{max-width:830px;margin:auto;padding:74px 0}.narrow h2{font-size:47px}.narrow h2 strong{color:var(--wine);font-weight:500}.intro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:34px 0}.intro-grid i{font:500 32px Georgia;color:var(--dust);display:block}.intro-grid b{display:block;margin-top:18px}.wide{width:100%;margin-top:18px}
.test-screen{max-width:900px;margin:auto;padding:52px 0}.test-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.test-head h2{font:500 38px Georgia,"Songti SC",serif;margin:10px 0 5px}.test-head p{margin:0;color:var(--muted)}.q-count{display:flex;align-items:baseline;gap:6px;font-family:Georgia}.q-count b{font-size:46px;color:var(--wine)}.q-count span{color:var(--muted)}.progress{height:8px;background:rgba(48,42,45,.08);border-radius:999px;margin-top:28px;overflow:hidden}.progress span{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,var(--wine),var(--rose),var(--blue));width:0;transition:.25s}.progress-meta{display:flex;justify-content:space-between;margin:8px 2px 24px;color:var(--muted);font-size:11px}.question-card{padding:34px;border:1px solid var(--line);border-radius:28px;background:rgba(255,250,246,.83);box-shadow:var(--shadow)}.question-card small{font:700 10px Georgia;letter-spacing:.2em;color:var(--wine)}.question-card h3{font:500 27px/1.55 Georgia,"Songti SC",serif;margin:17px 0 25px}.options{display:grid;gap:10px}.option{width:100%;text-align:left;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.68);padding:16px 18px;line-height:1.55;cursor:pointer;color:var(--ink);transition:.18s}.option:hover{transform:translateX(3px);border-color:rgba(143,78,91,.5)}.option.selected{background:#ead5d8;border-color:var(--wine);box-shadow:0 0 0 3px rgba(143,78,91,.08)}.hint{font-size:11px;color:var(--muted);margin:18px 0 0}.nav-row{display:flex;justify-content:space-between;gap:12px;margin-top:18px}.secondary{border:1px solid var(--line);border-radius:14px;padding:14px 20px;background:rgba(255,255,255,.55);color:var(--ink);font-weight:700;cursor:pointer}.nav-row button{min-width:140px}.text-btn{display:block;margin:20px auto;background:none;border:0;color:var(--muted);text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.finish{text-align:center}.seal{width:155px;height:155px;margin:20px auto 34px;border:4px double var(--wine);border-radius:50%;display:grid;place-items:center;transform:rotate(-5deg);font:11px Georgia;letter-spacing:.14em;color:var(--wine)}.seal b{font-size:20px}
.report-screen{padding:54px 0}.report-cover{display:grid;grid-template-columns:1fr 230px;gap:30px;align-items:center;padding:42px;border-radius:32px;border:1px solid var(--line);background:linear-gradient(135deg,rgba(255,250,246,.95),rgba(229,197,199,.52),rgba(220,231,234,.68));box-shadow:var(--shadow)}.type-symbol{font:500 62px Georgia;color:var(--wine);margin-top:12px}.report-cover h2{font:500 52px Georgia,"Songti SC",serif;margin:0 0 4px}.type-en{font:700 11px Georgia;letter-spacing:.22em;color:var(--wine)}.report-cover p{color:#645d61;line-height:1.85;max-width:670px}.clarity{border-left:1px solid var(--line);padding-left:26px;text-align:center}.clarity small{font:10px Georgia;letter-spacing:.14em;color:var(--muted)}.clarity b{display:block;font:500 70px Georgia;color:var(--wine);margin:10px}.clarity span{font-size:12px;color:var(--muted)}.report-tabs{display:flex;gap:8px;margin:24px 0}.report-tabs button{border:1px solid var(--line);background:rgba(255,255,255,.55);border-radius:999px;padding:12px 18px;cursor:pointer}.report-tabs button.active{background:var(--ink);color:white}.hidden{display:none!important}.report-content{display:grid;gap:18px}.report-section{padding:30px;border:1px solid var(--line);border-radius:26px;background:rgba(255,255,255,.57)}.report-section h3{font:500 28px Georgia,"Songti SC",serif;margin:0 0 12px}.section-hint{color:var(--muted);line-height:1.85}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.summary-card,.insight,.guide-card{padding:20px;border:1px solid var(--line);border-radius:18px;background:rgba(255,250,246,.72)}.summary-card small{font-size:11px;color:var(--muted)}.summary-card b{display:block;font:500 20px Georgia,"Songti SC",serif;margin:8px 0}.summary-card p,.insight p,.guide-card p{margin:0;color:var(--muted);line-height:1.7;font-size:13px}.dimension-list{display:grid;grid-template-columns:1fr 1fr;gap:13px}.dim{padding:17px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.5)}.dim-head{display:flex;justify-content:space-between;gap:10px}.dim-head span{font:700 16px Georgia;color:var(--wine)}.bar{height:8px;background:rgba(48,42,45,.08);border-radius:999px;margin:10px 0}.bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--wine),var(--rose),var(--blue))}.dim p{font-size:12px;line-height:1.65;color:var(--muted);margin:0}.cycle{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.cycle span{padding:10px 13px;border-radius:999px;background:#f1e1e2;border:1px solid rgba(143,78,91,.16);font-size:13px}.cycle i{font-style:normal;color:var(--wine)}.needs{display:flex;flex-wrap:wrap;gap:9px}.needs span{padding:11px 13px;border:1px dashed rgba(143,78,91,.35);border-radius:13px;background:white}.list{line-height:1.95;color:#5e565a}.list b{color:var(--ink)}.redflag{margin-top:18px;padding:24px;border:1px solid rgba(143,78,91,.28);border-radius:22px;background:linear-gradient(135deg,#fff6f4,#f4e4e5)}.redflag b{color:#7d3546}.redflag p{margin:9px 0 0;color:#6b575d;line-height:1.8;font-size:13px}.report-actions{display:flex;gap:12px;margin:22px 0}.report-note{text-align:center;max-width:850px;margin:24px auto;color:var(--muted);font-size:11px;line-height:1.7}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:24px 0;font:10px Georgia;letter-spacing:.15em;color:var(--muted)}
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--ink);color:white;border-radius:999px;padding:12px 18px;z-index:20;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.hero{grid-template-columns:1fr;padding-top:40px}.mirror-art{height:410px}.feature-grid,.intro-grid{grid-template-columns:1fr}.report-cover{grid-template-columns:1fr}.clarity{border-left:0;border-top:1px solid var(--line);padding:22px 0 0}.summary-grid{grid-template-columns:1fr}.dimension-list{grid-template-columns:1fr}}
@media(max-width:620px){.shell{padding:0 14px 48px}.topbar{height:70px}.topline{display:none}.brand-mark{width:38px;height:38px}.hero{min-height:0;gap:26px;padding:34px 0 20px}.hero h1{font-size:37px}.lead{font-size:15px}.code-row{grid-template-columns:46px 1fr}.code-row button{grid-column:1/-1}.mirror-art{height:330px;border-radius:24px}.figure{transform:scale(.77)!important;transform-origin:bottom}.figure.left{left:30px}.figure.right{right:28px}.caption{font-size:20px}.halo.h1{width:300px;height:300px}.halo.h2{width:225px;height:225px}.halo.h3{width:155px;height:155px}.glass-heart{font-size:80px}.narrow{padding:48px 0}.narrow h2{font-size:35px}.test-screen{padding:38px 0}.test-head h2{font-size:29px}.q-count b{font-size:38px}.question-card{padding:22px 16px}.question-card h3{font-size:22px}.nav-row button{min-width:0;flex:1}.report-screen{padding:34px 0}.report-cover{padding:24px 18px}.report-cover h2{font-size:39px}.clarity b{font-size:56px}.report-section{padding:22px 16px}.report-actions{flex-direction:column}.report-actions button{width:100%}footer{flex-direction:column;text-align:center;gap:7px}}
@media print{body{background:white}.topbar,.report-tabs,.report-actions,footer,.grain{display:none!important}.shell{max-width:none;padding:0}.screen{display:none!important}#screen-report{display:block!important}.report-content.hidden{display:grid!important}.report-cover,.report-section,.redflag{break-inside:avoid;box-shadow:none}}
