@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@400;500;600;700;900&display=swap');
:root{--bg:#f4f0e9;--ink:#283b37;--muted:#72796e;--line:#d8d8cc;--accent:#aa4a38;--sage:#dce3d6;--serif:'Noto Serif TC','Songti TC',serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'PingFang TC',sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}header{max-width:1320px;margin:auto;padding:28px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:22px;font-weight:800;letter-spacing:.09em;color:var(--ink);text-decoration:none}.brand span{font-size:11px;letter-spacing:.18em;display:block;font-weight:400;margin-top:6px}nav{display:flex;align-items:center;gap:30px}nav button{background:none;border:0;font-size:13px}nav button span{margin-left:14px}.badge,.eyebrow{font-size:10px;letter-spacing:.18em}.badge{border:1px solid var(--line);padding:8px 11px;border-radius:3px}main{max-width:1200px;padding:0 32px;margin:auto;min-height:75vh}.hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:30px;padding:70px 0 58px}.eyebrow{color:var(--accent);font-weight:600;display:block}.hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(42px,5.5vw,70px);line-height:1.5;letter-spacing:-.04em;margin:24px 0}.hero h1 em{font-style:normal;color:var(--accent)}p{line-height:1.9}.intro{max-width:410px;color:var(--muted);font-size:15px}.primary{border:0;background:var(--ink);color:#fff;padding:18px 26px;display:inline-flex;gap:50px;justify-content:space-between;align-items:center}.hero .primary{margin-top:25px;min-width:230px}.meta{font-size:11px;color:var(--muted);margin-top:18px}.art{position:relative;min-height:470px;display:grid;place-items:center}.orbit{width:365px;height:365px;border:1px solid #c9cbbd;border-radius:50%;position:relative;display:grid;place-items:center}.orbit:before,.orbit:after{content:'';position:absolute;border:1px solid #d1d2c5;border-radius:50%;inset:25px}.orbit:after{inset:55px}.portrait{width:230px;height:315px;border-radius:130px 130px 20px 20px;position:relative;background:#dce1d2;overflow:hidden;transform:rotate(-7deg);box-shadow:15px 20px 0 #e6e1d5;z-index:1;display:grid;place-items:center}.portrait svg{width:100%;height:100%}.art-label{position:absolute;bottom:25px;right:0;background:var(--bg);border:1px solid var(--line);padding:16px 20px;z-index:2;transform:rotate(3deg);font-family:var(--serif);font-size:16px}.art-label small{display:block;font-family:sans-serif;font-size:9px;letter-spacing:.12em;margin-bottom:8px;color:var(--muted)}.star{position:absolute;font-size:35px;color:var(--accent);left:15px;top:60px}.section-line{border-top:1px solid var(--line);padding:28px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.section-line div{display:flex;gap:14px}.section-line b{font-family:var(--serif);font-size:15px;font-weight:600}.section-line p{font-size:12px;color:var(--muted);margin:6px 0}.num{font-size:11px;color:var(--accent);padding-top:4px}.note{font-size:12px;color:var(--muted);line-height:1.9;padding:18px 0}.note a{color:inherit}.quiz{max-width:700px;margin:55px auto 70px}.quiz-top{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.textbtn{background:none;border:0;padding:8px 0;text-decoration:underline;text-underline-offset:5px;font-size:12px}.track{height:3px;background:var(--line);margin:20px 0 42px}.track span{display:block;background:var(--accent);height:100%;transition:width .3s}.quiz h1{font-family:var(--serif);font-size:30px;font-weight:500;line-height:1.8;min-height:110px}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}.choice{background:transparent;border:1px solid var(--line);padding:20px 8px;min-height:72px}.choice:hover,.choice.selected{background:var(--ink);color:white;border-color:var(--ink)}.quiz-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:25px;gap:10px}.error{color:var(--accent);font-size:13px;min-height:20px}.page-title{padding:50px 0 30px}.page-title h1{font-family:var(--serif);font-size:42px;font-weight:500;margin:18px 0}.page-title p{color:var(--muted);font-size:14px}.group{margin:25px 0 40px}.group-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px;font-family:var(--serif);font-size:20px}.group-title small{font-family:sans-serif;font-size:11px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}.typecard{border:1px solid var(--line);background:transparent;text-align:left;padding:24px 19px;transition:transform .2s,background .2s;min-height:205px}.typecard:hover{transform:translateY(-4px);background:#e8e9df}.typecard .symbol{font-family:var(--serif);font-size:35px;color:var(--accent);display:block;margin-bottom:23px}.typecard h3{font-family:var(--serif);font-size:20px;margin:0 0 8px}.typecard code{font-size:10px;letter-spacing:.15em;color:var(--muted)}.typecard p{font-size:12px;color:var(--muted);margin:12px 0 0}.report{padding:40px 0}.report-banner{background:#e7e7db;padding:12px 18px;font-size:12px;margin-bottom:25px;line-height:1.8;border-left:2px solid var(--accent)}.result-head{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;padding:30px 0 45px}.result-head h1{font-family:var(--serif);font-size:clamp(38px,5vw,60px);font-weight:500;margin:20px 0 8px}.result-head .code{font-size:12px;letter-spacing:.23em;color:var(--accent)}.tagline{font-family:var(--serif);font-size:23px;margin:30px 0 20px}.character-mark{display:grid;place-items:center;border:1px solid var(--line);border-radius:150px 150px 0 0;min-height:290px;position:relative;background:#e6e8dc}.character-mark strong{font-family:var(--serif);font-weight:400;font-size:120px;color:var(--accent)}.character-mark small{position:absolute;bottom:22px;font-size:10px;letter-spacing:.15em}.report-block{border-top:1px solid var(--line);padding:35px 0}.block-title{font-family:var(--serif);font-weight:500;font-size:26px;margin:0 0 12px}.radar-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.radar{width:100%;max-width:430px;display:block;margin:auto;overflow:visible}.radar text{font-size:12px;fill:var(--ink)}.bars{display:grid;gap:23px}.bar-top{display:flex;justify-content:space-between;font-size:14px}.barline{height:4px;background:var(--line);margin:10px 0}.barline i{height:100%;background:var(--accent);display:block}.bars p{font-size:12px;color:var(--muted);margin:0}.two{display:grid;grid-template-columns:1fr 1fr;gap:24px}.insight{padding:25px;background:#e9e9df}.insight h3{font-family:var(--serif);font-size:20px;font-weight:500;margin:0 0 10px}.insight p{font-size:14px;margin:0;line-height:2}.quote{font-family:var(--serif);font-size:25px;line-height:1.8;padding:18px 0}.quote small{display:block;font-family:sans-serif;color:var(--muted);font-size:12px;margin-top:14px}.quote a{color:inherit}.pills{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.pill{font-size:12px;border:1px solid var(--line);padding:8px 12px}.actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-top:25px}details{border-top:1px solid var(--line);padding:20px 0;font-size:13px}summary{cursor:pointer}details p,details li{color:var(--muted);line-height:1.9}footer{max-width:1200px;margin:35px auto 0;border-top:1px solid var(--line);padding:25px 32px 35px;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.1em;color:var(--muted)}@media(max-width:700px){header{padding:20px 22px}nav{gap:12px}.badge{display:none}main{padding:0 22px}.hero{grid-template-columns:1fr;padding:35px 0 20px;gap:10px}.hero h1{font-size:43px;margin:18px 0}.art{min-height:360px}.orbit{width:290px;height:290px}.portrait{height:255px;width:185px}.art-label{bottom:10px;right:8px}.section-line{grid-template-columns:1fr;gap:15px}.section-line p{margin-bottom:0}.grid{grid-template-columns:repeat(2,1fr);gap:10px}.typecard{padding:20px 15px;min-height:210px}.typecard h3{font-size:18px}.group-title small{max-width:130px;text-align:right;line-height:1.7}.quiz{margin-top:32px}.quiz h1{font-size:25px;min-height:125px}.choices{grid-template-columns:repeat(2,1fr)}.choice{padding:16px 8px;min-height:60px}.result-head{grid-template-columns:1fr;gap:20px;padding-top:15px}.character-mark{min-height:210px;border-radius:120px 120px 0 0}.character-mark strong{font-size:85px}.radar-layout,.two{grid-template-columns:1fr;gap:25px}.radar{max-width:340px}.page-title h1{font-size:35px}.report{padding-top:25px}.tagline{font-size:21px}.quiz-bottom .primary{padding:16px 20px;gap:25px}footer{font-size:8px;padding:23px 22px;flex-direction:column}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media print{header,footer,.actions,details,.report-banner{display:none}.report-block,.result-head{break-inside:avoid}body{background:white}.radar{max-width:300px}}
.context-choices{display:grid;gap:12px;margin:25px 0}.context-choices .choice{text-align:left;padding:22px}.scale-seven,.scale-nine{grid-template-columns:repeat(3,1fr)}.choices b{font-size:23px;font-weight:400}.choices small{display:block;font-size:11px;margin-top:10px;min-height:16px}.choices .choice{padding:14px 6px;min-height:82px}.insight{margin-bottom:0}.report-block p a{color:var(--ink)}@media(min-width:900px){.scale-seven{grid-template-columns:repeat(7,1fr)}.scale-nine{grid-template-columns:repeat(3,1fr)}}
.role-context{padding:20px 24px;background:#e7e7dc;border-left:2px solid var(--accent);font-size:14px;line-height:1.9}.role-context p{font-size:12px;color:var(--muted);margin:10px 0 0}.neighbor-section{margin:30px 0 36px}.neighbor-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:15px}.neighbor-card{background:transparent;border:1px solid var(--line);text-align:left;display:flex;gap:18px;align-items:center;padding:20px}.neighbor-card:hover{background:#e7e7dc}.neighbor-card>span{font-family:var(--serif);font-size:32px;color:var(--accent)}.neighbor-card b{font-family:var(--serif);font-size:18px;font-weight:500}.neighbor-card small{display:block;font-size:11px;color:var(--muted);margin-top:7px}.rule-table{overflow:auto}.rule-table table{border-collapse:collapse;width:100%;font-size:12px}.rule-table td,.rule-table th{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left}.reveal-head h1{font-size:clamp(35px,4vw,56px)}@media(max-width:700px){.neighbor-grid{grid-template-columns:1fr}.role-context{padding:17px}.reveal-head h1{font-size:39px}}
