:root{--ink:#172c30;--muted:#627478;--teal:#12645f;--red:#b54737;--line:#dbe3e2;--paper:#f2f5f5;--wood:#237856;--fire:#bb4639;--earth:#956b26;--metal:#627185;--water:#2c6ca4}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:16px;line-height:1.65}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #d19545;outline-offset:3px}header{height:94px;padding:0 4%;background:#142d30;color:white;display:flex;align-items:center;gap:24px}.brand{display:flex;gap:14px;align-items:center}.seal{background:var(--red);border:1px solid #d78b72;writing-mode:vertical-rl;letter-spacing:3px;font-family:serif;padding:8px 9px;font-size:20px}.brand b{font-family:serif;font-size:24px;letter-spacing:3px}.brand small{display:block;color:#9eb7b6;font-size:12px;letter-spacing:3px}.header-note{margin-left:auto;font-size:14px;color:#b9cecc}.ghost{background:transparent;color:inherit;border:1px solid #6a8384;border-radius:5px;padding:8px 16px}main{max-width:1560px;margin:auto;display:grid;grid-template-columns:310px minmax(0,1fr);gap:32px;padding:32px 4%}aside{background:white;border:1px solid var(--line);border-radius:8px;padding:25px;height:fit-content}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--muted);font-weight:600}h1{font-family:serif;font-size:25px;margin:9px 0}h2{font-family:serif;font-size:30px;margin:3px 0}h3{font-size:18px;margin:0 0 12px}.aside-heading p,.result-heading p{font-size:14px;color:var(--muted);margin:6px 0 20px}label{display:block;font-size:14px;margin:15px 0 0;color:var(--muted)}input,select{display:block;width:100%;border:1px solid #cdd7d6;color:var(--ink);background:#fff;border-radius:5px;padding:10px 9px;margin-top:6px;min-width:0;font-size:14px}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check{display:flex;align-items:center;gap:8px}.check input{width:auto;margin:0}.hint{font-size:12px;color:var(--muted)}.settings{margin:20px 0;font-size:14px}summary{cursor:pointer;color:var(--teal)}.primary{width:100%;background:var(--teal);color:white;border:0;border-radius:5px;padding:13px;margin-top:16px;font-weight:600;letter-spacing:2px}.primary:hover{background:#0b4d49}#error{font-size:14px;color:var(--red);margin:10px 0}.examples{border-top:1px solid var(--line);padding-top:22px;margin-top:20px}.examples button{display:block;width:100%;border:1px solid var(--line);border-radius:4px;background:#f5f8f7;color:var(--teal);text-align:left;font-size:14px;padding:10px;margin-top:10px}.examples p,.aside-foot{font-size:12px;color:var(--muted)}.aside-foot{border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.result-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.badge{color:var(--teal);background:#e1eeeb;padding:6px 12px;font-size:12px;border-radius:4px;white-space:nowrap}.meta{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding:12px 0 16px;display:flex;flex-wrap:wrap;gap:8px 20px}.chart-card{background:white;border:1px solid var(--line);border-radius:8px;overflow:hidden}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%}.chart th{font-size:14px;padding:13px;background:#eaf0ef;font-weight:500}.chart td{text-align:center;padding:12px;border-top:1px solid #edf0f0;font-size:14px;width:21%}.chart th:first-child,.chart td:first-child{width:16%;color:var(--muted);font-size:12px}.chart .han{font-family:"KaiTi",serif;font-size:42px;line-height:1.25}.chart td:nth-child(4){background:#f0f7f4}.wood{color:var(--wood)}.fire{color:var(--fire)}.earth{color:var(--earth)}.metal{color:var(--metal)}.water{color:var(--water)}.hidden-stem{display:inline-block;margin:0 5px;font-size:14px}.hidden-stem small{display:block;font-size:12px;color:var(--muted)}.overview{display:grid;grid-template-columns:1.1fr 1.15fr .9fr;gap:15px;margin:20px 0 26px}.overview>div{padding:20px;background:white;border:1px solid var(--line);border-radius:6px}.strength-title{display:flex;gap:16px;align-items:center;margin:8px 0 14px}.strength-title b{font-family:serif;font-size:28px}.strength-title span{font-size:14px;color:var(--muted)}#criteria{display:flex;flex-wrap:wrap;gap:6px}#criteria span{font-size:12px;padding:4px 7px;background:#e3efeb;color:var(--teal)}#criteria .no{background:#f0f0ef;color:#75817d}.elements-card p,.favor-card small{font-size:12px;color:var(--muted);line-height:1.6}.bars{display:grid;grid-template-columns:22px 1fr 15px;gap:10px;align-items:center;margin:7px 0;font-size:12px}.track{background:#f0f3f3;height:6px;border-radius:4px}.track i{display:block;height:100%;background:currentColor;border-radius:4px}.favor-card p{margin:11px 0;font-size:14px}.favor-card b{font-family:serif;letter-spacing:5px;font-size:21px;margin-left:15px}.tabs{display:flex;border-bottom:1px solid #cbd7d4;gap:22px;overflow-x:auto;margin-bottom:24px}.tabs button{border:0;background:transparent;padding:12px 0;white-space:nowrap;font-size:14px;color:var(--muted);border-bottom:3px solid transparent}.tabs .active{color:var(--teal);border-color:var(--teal);font-weight:600}.analysis-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.article{background:white;border:1px solid var(--line);padding:24px;border-radius:6px}.article.wide{grid-column:1/-1}.article p{font-size:14px;color:#42595a;margin:10px 0}.source{font-size:12px;color:var(--muted);display:block;margin-top:18px}.notice{background:#fff5e5;border-left:3px solid #b88334;padding:14px 18px;margin-bottom:18px;font-size:14px;color:#795723}.tag{display:inline-block;background:#e8f0ed;color:var(--teal);padding:4px 9px;margin:4px 6px 4px 0;font-size:12px;border-radius:3px}.list-item{padding:16px 0;border-bottom:1px solid var(--line)}.list-item:last-child{border:0}.list-item strong{font-size:16px}.list-item p{margin:6px 0;font-size:14px;color:var(--muted)}.list-item small{font-size:12px;color:var(--muted)}.cycles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.cycle{padding:16px 12px;text-align:left;background:white;border:1px solid var(--line);border-radius:5px;color:var(--ink)}.cycle.active{border:2px solid var(--teal);background:#eaf5f1;padding:15px 11px}.cycle b{font-family:serif;font-size:26px;display:block}.cycle span,.cycle small{display:block;font-size:12px;color:var(--muted)}.year-row{display:flex;gap:10px;align-items:end;margin:20px 0}.year-row label{flex:1}.year-row button{padding:10px 18px;border:0;background:var(--teal);color:white;border-radius:4px;font-size:14px}.years{display:flex;flex-wrap:wrap;gap:8px}.years button{padding:6px 11px;font-size:12px;background:white;border:1px solid var(--line);border-radius:4px;color:var(--teal)}.years button.active{background:var(--teal);color:white}footer{font-size:12px;color:var(--muted);padding:28px 0;text-align:right}a{color:var(--teal)}[hidden]{display:none!important}@media(min-width:1300px){main{gap:40px}.overview{gap:18px}}@media(max-width:1050px){main{grid-template-columns:265px minmax(0,1fr);gap:20px;padding:24px 20px}aside{padding:20px}.overview{grid-template-columns:1fr 1fr}.favor-card{grid-column:1/-1}.analysis-grid{grid-template-columns:1fr}.cycles{grid-template-columns:repeat(2,1fr)}}@media(max-width:740px){header{height:78px;padding:0 18px;gap:12px}.header-note{display:none}.ghost{margin-left:auto;padding:6px 10px;font-size:12px}.brand b{font-size:21px}main{display:block;padding:18px 14px}aside{margin-bottom:26px}.aside-heading p{margin-bottom:10px}.examples{margin-top:15px}.aside-foot{display:none}.result-heading h2{font-size:26px}.overview{grid-template-columns:1fr}.favor-card{grid-column:auto}.overview>div{padding:16px}.tabs{gap:20px}.article{padding:19px}.chart td{padding:10px 4px}.chart .han{font-size:32px}.hidden-stem{margin:0 2px;font-size:12px}.chart small{font-size:12px}.chart th{padding:12px 4px}.badge{padding:4px 8px}.meta{display:block}.meta span{display:block;margin:4px 0}}@media print{header{background:white;color:black;padding:10px;height:auto}.ghost,aside,.tabs,footer,.year-row,.years{display:none!important}main{display:block;padding:0}.view[hidden]{display:block!important}.overview{display:flex}.overview>div{flex:1}.article{break-inside:avoid;margin-bottom:15px}.view{margin-top:20px}.cycles{display:grid}.chart .han{font-size:28px}.badge{color:black}.analysis-grid{display:block}}
