:root { --ink:#29241d; --muted:#786f62; --paper:#f5efe3; --paper2:#fffaf0; --red:#872722; --gold:#b28a46; --line:rgba(69,54,38,.17); }
* { box-sizing:border-box; }
html { background:#ddd4c4; }
body { margin:0; color:var(--ink); background:radial-gradient(circle at 10% 0,rgba(255,255,255,.75),transparent 28%),var(--paper); font-family:"Noto Serif SC","Songti SC",SimSun,serif; }
button,input,select { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
a { color:inherit; text-decoration:none; }
.qimen-app { width:min(100%,520px); min-height:100vh; margin:auto; padding:env(safe-area-inset-top) 17px max(32px,env(safe-area-inset-bottom)); }
.topbar { display:grid; grid-template-columns:42px 1fr 52px; align-items:center; min-height:70px; border-bottom:1px solid var(--line); }
.topbar>div { text-align:center; }
.topbar h1 { margin:2px 0 0; font-size:19px; letter-spacing:.15em; }
.kicker,.eyebrow { color:var(--red); font:700 8px/1.2 Arial,sans-serif; letter-spacing:.25em; }
.back,.text-button { display:grid; place-items:center; min-width:42px; min-height:42px; border:0; background:none; color:var(--ink); font-size:20px; }
.text-button { color:var(--red); font-size:13px; }
.setup-panel { overflow:hidden; }
.setup-panel.open { padding-top:22px; }
.panel-heading,.section-heading,.summary-title { display:flex; justify-content:space-between; align-items:end; }
.panel-heading h2,.section-heading h2,.summary-title h2 { margin:3px 0 0; font-size:22px; letter-spacing:.1em; }
.panel-heading>span,.legend { color:var(--muted); font-size:10px; }
.setup-form { margin-top:16px; padding:15px; border:1px solid var(--line); border-radius:18px 4px 18px 4px; background:rgba(255,251,242,.7); }
.identity-row { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(108px,.8fr); gap:10px; align-items:end; }
.identity-row fieldset,.calendar-field { min-width:0; margin:0; padding:0; border:0; }
.identity-row legend,.calendar-field legend { margin:0 0 7px 3px; color:var(--muted); font-size:11px; }
.identity-row fieldset { display:flex; height:45px; align-items:center; gap:12px; padding:0 10px; border:1px solid var(--line); border-radius:8px; background:var(--paper2); }
.identity-row fieldset label,.calendar-field label { display:flex; align-items:center; gap:5px; }
.identity-row input[type="radio"],.calendar-field input[type="radio"] { width:16px; height:16px; padding:0; accent-color:var(--red); }
.identity-row fieldset span,.calendar-field span { display:inline; margin:0; color:var(--ink); font-size:12px; white-space:nowrap; }
.calendar-field { display:flex; align-items:center; gap:15px; margin-top:12px; padding:10px 3px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.calendar-field legend { float:left; width:auto; margin:2px 10px 0 0; }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
label span { display:block; margin:0 0 7px 3px; color:var(--muted); font-size:11px; }
input,select { width:100%; height:45px; padding:0 10px; color:var(--ink); border:1px solid var(--line); border-radius:8px; background:var(--paper2); }
.full-field { display:block; margin-top:11px; }
.cast-button { display:flex; justify-content:center; align-items:center; width:100%; height:52px; margin-top:14px; padding:0 17px; border:0; border-radius:4px 14px 4px 14px; color:#fff8eb; background:var(--red); letter-spacing:.12em; }
.cast-button b { font-size:20px; }
.method-row { display:grid; grid-template-columns:auto 1fr; gap:3px 10px; margin-top:12px; padding:10px 2px 0; border-top:1px solid var(--line); }
.method-row span { grid-row:1/3; align-self:center; color:var(--muted); font-size:11px; }
.method-row b { font-size:12px; }
.method-row i { color:var(--red); font-size:10px; font-style:normal; }
.chart-summary { padding:25px 2px 22px; }
.purpose-badge { padding:6px 10px; color:var(--red); border:1px solid rgba(135,39,34,.23); border-radius:20px; font-size:11px; }
.date-line { margin:14px 0 2px; font-size:13px; }
.lunar-line { margin:0; color:var(--muted); font-size:11px; }
.question-line { display:flex; flex-direction:column; gap:4px; margin:12px 0 0; padding:10px 12px; border-left:2px solid var(--red); background:rgba(135,39,34,.05); font-size:11px; }
.question-line span { color:var(--muted); line-height:1.6; }
.pill-row { display:grid; grid-template-columns:repeat(4,42px); gap:8px; margin-top:13px; }
.pillar { text-align:center; }
.pillar small { display:block; margin-bottom:4px; color:var(--muted); font-size:10px; }
.pill-row .pillar span { display:grid; place-items:center; width:42px; height:38px; color:#f9edd7; background:var(--ink); border-radius:4px 11px 4px 11px; font-size:14px; }
.key-facts { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin-top:18px; border:1px solid var(--line); background:var(--line); }
.key-facts div { padding:11px 12px; background:rgba(255,251,242,.8); }
.key-facts small { display:block; color:var(--muted); font-size:9px; }
.key-facts strong { display:block; margin-top:4px; font-size:12px; }
.chart-section { margin:0 -17px; padding:22px 12px 24px; background:#e9dfcd; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.section-heading { padding:0 5px 14px; }
.legend i { display:inline-block; width:6px; height:6px; margin-right:5px; background:var(--gold); border-radius:50%; }
.palace-grid-shell { position:relative; padding:34px 34px; }
.palace-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0; aspect-ratio:1/.94; border-top:1px solid rgba(65,50,33,.25); border-left:1px solid rgba(65,50,33,.25); }
.outer-an { position:absolute; z-index:2; color:#61574b; font-size:14px; line-height:1; pointer-events:none; }
.outer-an.an-4 { top:18%; left:12px; }
.outer-an.an-9 { top:19px; left:50%; transform:translateX(-50%); }
.outer-an.an-2 { top:18%; right:12px; }
.outer-an.an-3 { top:50%; left:12px; transform:translateY(-50%); }
.outer-an.an-7 { top:50%; right:12px; transform:translateY(-50%); }
.outer-an.an-8 { bottom:18%; left:12px; }
.outer-an.an-1 { bottom:19px; left:48%; transform:translateX(-100%); }
.outer-an.an-5 { bottom:19px; left:52%; }
.outer-an.an-6 { right:12px; bottom:18%; }
.outer-element { position:absolute; z-index:3; color:#8f2822; font-size:12px; font-weight:700; line-height:1; pointer-events:none; white-space:nowrap; }
.outer-element.element-4 { top:7px; left:20%; transform:translateX(-50%); }
.outer-element.element-9 { top:7px; left:50%; transform:translateX(-50%); }
.outer-element.element-2 { top:7px; right:20%; transform:translateX(50%); }
.outer-element.element-3 { top:50%; left:2px; transform:translateY(-50%); writing-mode:vertical-rl; }
.outer-element.element-7 { top:50%; right:2px; transform:translateY(-50%); writing-mode:vertical-rl; }
.outer-element.element-8 { bottom:7px; left:20%; transform:translateX(-50%); }
.outer-element.element-1 { bottom:7px; left:50%; transform:translateX(-50%); }
.outer-element.element-6 { right:20%; bottom:7px; transform:translateX(50%); }
.outer-element.element-5 { display:none; }
.palace { position:relative; min-width:0; padding:0; overflow:hidden; color:var(--ink); border:0; border-right:1px solid rgba(65,50,33,.25); border-bottom:1px solid rgba(65,50,33,.25); background:rgba(255,250,240,.86); text-align:left; }
.palace:active { transform:scale(.98); }
.palace.is-zhifu { box-shadow:inset 0 0 0 2px var(--red); }
.palace.is-zhishi:not(.is-zhifu) { box-shadow:inset 0 0 0 2px var(--gold); }
.shen,.star,.door { position:absolute; left:25%; width:50%; font-size:16px; font-weight:700; line-height:1.15; text-align:center; white-space:nowrap; }
.shen { top:10px; }
.star { top:39px; }
.door { top:70px; left:25%; width:50%; }
.tian-gan { position:absolute; top:68px; right:9px; font-size:19px; font-weight:700; }
.gong-name { position:absolute; bottom:8px; left:8px; font-size:14px; }
.four-disasters { position:absolute; bottom:7px; left:50%; display:flex; justify-content:center; gap:2px; width:58%; transform:translateX(-50%); }
.four-disasters i { padding:1px 3px; border-radius:3px; font-size:8px; font-style:normal; font-weight:700; white-space:nowrap; }
.di-gan { position:absolute; right:9px; bottom:8px; font-size:18px; font-weight:700; }
.marks { position:absolute; top:6px; right:5px; display:flex; flex-direction:column; align-items:flex-end; gap:2px; max-height:72%; font-size:8px; }
.marks i,.status-legend span,.reading-marks span { padding:2px 4px; border-radius:3px; font-style:normal; font-weight:700; }
.mark-kong { color:#1d9b40!important; background:rgba(29,155,64,.1); }
.mark-mu { color:#dc7b0b!important; background:rgba(220,123,11,.11); }
.mark-xing { color:#a02ab5!important; background:rgba(160,42,181,.1); }
.mark-po { color:#d1203d!important; background:rgba(209,32,61,.1); }
.mark-ma { color:#008fab!important; background:rgba(0,143,171,.1); }
.palace em { position:absolute; right:4px; bottom:30px; padding:2px 4px; color:#fff; background:var(--red); border-radius:3px; font-size:8px; font-style:normal; }
.center-symbol { margin:auto; color:var(--red); font-size:40px; }
.center-symbol { position:absolute; top:47%; left:50%; transform:translate(-50%,-50%); }
.center-symbol.center-values { display:flex; flex-direction:column; gap:6px; width:96%; color:#86231f; font-size:14px; line-height:1.3; text-align:center; }
.center-symbol.center-values b { font-weight:700; white-space:nowrap; }
.center-note { position:absolute; top:65%; right:0; left:0; color:var(--muted); font-size:10px; text-align:center; }
.el-wood { color:#159447!important; }
.el-fire { color:#ef3f35!important; }
.el-earth { color:#9b6225!important; }
.el-metal { color:#ef740c!important; }
.el-water { color:#1685d8!important; }
.el-auspicious { color:#28a54a!important; }
.el-purple { color:#8d55b7!important; }
.stem-legend { margin:11px 0 0; color:var(--muted); font-size:9px; text-align:center; }
.stem-legend b { color:var(--red); }
.status-legend { display:flex; justify-content:center; flex-wrap:wrap; gap:5px; margin-top:12px; font-size:9px; }
.reading-section { padding:27px 2px 10px; }
.reading-hero { display:grid; grid-template-columns:42px 1fr auto; gap:10px; align-items:center; }
.reading-seal { display:grid; place-items:center; width:40px; height:40px; color:#f7ecd8; background:var(--red); border-radius:50%; }
.reading-hero h2 { margin:3px 0 0; font-size:19px; }
.luck { padding:6px 9px; border:1px solid var(--line); border-radius:20px; font-size:11px; }
.luck.da_ji,.luck.xiao_ji { color:var(--red); border-color:rgba(135,39,34,.3); }
.yongshen-card { margin-top:18px; padding:16px; color:#f7ecd8; background:var(--ink); border-radius:4px 18px 4px 18px; }
.yongshen-card small { color:#cdb78f; }
.yongshen-card h3 { margin:5px 0 8px; font-size:18px; }
.yongshen-card p { margin:0; color:#ded2bc; font-size:11px; line-height:1.7; }
.suggestions { margin-top:16px; }
.suggestions p { display:grid; grid-template-columns:28px 1fr; gap:9px; margin:0; padding:12px 2px; border-bottom:1px solid var(--line); font-size:12px; line-height:1.75; }
.suggestions span { color:var(--red); font:700 10px Arial,sans-serif; }
.patterns { margin-top:14px; border:1px solid var(--line); background:rgba(255,251,242,.55); }
.patterns summary { padding:14px; cursor:pointer; font-size:14px; }
.patterns summary b { float:right; color:var(--red); }
.patterns div { padding:0 13px 7px; }
.patterns article { padding:10px 0; border-bottom:1px dashed var(--line); }
.patterns article:last-child { border-bottom:0; }
.patterns p { margin:7px 0 0; color:var(--muted); font-size:13px; line-height:1.8; }
.patterns strong { display:block; color:var(--ink); font-size:14px; }
.palace-readings { padding:26px 2px 6px; border-top:1px solid var(--line); }
.palace-readings > summary { cursor:pointer; list-style:none; user-select:none; }
.palace-readings > summary::-webkit-details-marker { display:none; }
.palace-readings .details-state::before { content:'点击展开'; }
.palace-readings .details-state::after { content:'＋'; display:inline-block; margin-left:7px; color:var(--red); font-size:17px; line-height:1; }
.palace-readings[open] .details-state::before { content:'点击收起'; }
.palace-readings[open] .details-state::after { content:'－'; }
.palace-readings:not([open]) > .section-heading { padding-bottom:20px; }
.palace-reading-list { display:grid; gap:12px; }
.palace-reading-card { overflow:hidden; border:1px solid #c8dce4; border-radius:4px; background:#fff; box-shadow:0 2px 7px rgba(47,57,61,.09); }
.palace-reading-card header { display:flex; justify-content:space-between; align-items:center; min-height:48px; padding:0 14px; border-bottom:1px solid #bad7e2; background:#dff1f7; color:#1b6b89; }
.palace-reading-card.xiao_ji,.palace-reading-card.da_ji { border-color:#bfdcad; }
.palace-reading-card.xiao_ji header,.palace-reading-card.da_ji header { color:#27802a; border-color:#bfdcad; background:#e1f1d9; }
.palace-reading-card.xiao_xiong,.palace-reading-card.da_xiong { border-color:#e7bebe; }
.palace-reading-card.xiao_xiong header,.palace-reading-card.da_xiong header { color:#c34141; border-color:#e7bebe; background:#f4dede; }
.palace-reading-card header span { font-size:18px; font-family:Arial,"Noto Serif SC",sans-serif; }
.reading-luck { padding:4px 8px; color:#fff; background:#7a8589; border-radius:3px; font:700 12px Arial,sans-serif; }
.palace-reading-card.xiao_ji .reading-luck,.palace-reading-card.da_ji .reading-luck { background:#49aa4d; }
.palace-reading-card.xiao_xiong .reading-luck,.palace-reading-card.da_xiong .reading-luck { background:#dc5050; }
.palace-facts { padding:13px 14px 0; }
.palace-facts p { margin:0 0 9px; color:#242424; font-family:Arial,"Microsoft YaHei",sans-serif; font-size:14px; line-height:1.65; }
.palace-facts b { color:#111; }
.tian-stem { color:#bc2e2e; font-weight:700; }
.reading-marks { display:flex; flex-wrap:wrap; gap:6px; margin:3px 14px 0; min-height:0; font-size:12px; }
.palace-reading-card .palace-explain { margin:10px 14px 14px; font-family:Arial,"Microsoft YaHei",sans-serif; }
.palace-reading-card .palace-explain p { margin:0; padding:8px 0; color:#333; border-bottom:1px dotted #e8e2d9; font-size:14px; line-height:1.8; }
.palace-reading-card .palace-explain p:last-child { border-bottom:0; }
.palace-reading-card .pattern-note { margin:0 14px 14px; padding-top:10px; color:#555; border-top:1px dashed #ddd; font-family:Arial,"Microsoft YaHei",sans-serif; }
.palace-reading-card .pattern-note p { margin:7px 0 0; font-size:13px; line-height:1.75; }
.pattern-note strong { display:block; color:var(--red); font-size:15px; }
.life-reading-section { padding:28px 4px 8px; border-top:1px solid var(--line); }
.life-hero { margin-bottom:16px; }
.life-ming-card,.life-topic-card { margin-bottom:12px; padding:16px; border:1px solid var(--line); background:rgba(255,251,243,.88); box-shadow:0 4px 12px rgba(74,54,31,.05); }
.life-zodiac-card { margin-bottom:12px; padding:16px; border:1px solid var(--line); background:#fff8eb; box-shadow:0 4px 12px rgba(74,54,31,.05); }
.life-wealth-store-card { margin-bottom:12px; padding:16px; border:1px solid #d8c4a8; background:#fffaf1; box-shadow:0 4px 12px rgba(74,54,31,.05); }
.life-wealth-store-card small { color:var(--red); letter-spacing:.12em; }
.wealth-store-heading { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin:7px 0 10px; padding-bottom:9px; border-bottom:1px dotted #d9c8b1; }
.wealth-store-heading h3 { margin:0; color:#8d261f; font-size:24px; }
.wealth-store-heading span { color:#806247; font-size:13px; }
.wealth-store-basis,.wealth-store-meaning p,.wealth-store-note { font-family:Arial,"Microsoft YaHei",sans-serif; font-size:14px; line-height:1.7; }
.wealth-store-meaning { margin-top:10px; padding:12px; border-left:3px solid #a52a22; background:#fff3e8; }
.wealth-store-meaning b { color:#9b2c24; }
.wealth-store-meaning p { margin:6px 0 0; }
.wealth-store-note { margin:10px 0 0; color:#776d60; font-size:12px; }
.life-health-card { margin-bottom:12px; padding:16px; border:1px solid #d8c4a8; background:#fffaf1; box-shadow:0 4px 12px rgba(74,54,31,.05); }
.life-health-card small { color:var(--red); letter-spacing:.12em; }
.life-health-card h3 { margin:7px 0 10px; color:#8d261f; font-size:22px; }
.life-marriage-card { margin-bottom:12px; padding:16px; border:1px solid #d8c4a8; background:#fffaf1; box-shadow:0 4px 12px rgba(74,54,31,.05); }
.life-career-card { margin-bottom:12px; padding:16px; border:1px solid #d8c4a8; background:#fffaf1; box-shadow:0 4px 12px rgba(74,54,31,.05); }
.life-love-card,.life-study-card { margin-bottom:12px; padding:16px; border:1px solid #d8c4a8; background:#fffaf1; box-shadow:0 4px 12px rgba(74,54,31,.05); }
.life-love-card > small,.life-study-card > small { color:var(--red); letter-spacing:.12em; }
.life-career-card > small { color:var(--red); letter-spacing:.12em; }
.career-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:7px 0 10px; padding-bottom:9px; border-bottom:1px dotted #d9c8b1; }
.career-heading h3 { margin:0; color:#8d261f; font-size:22px; }
.career-heading span { color:#6f5a42; font-size:12px; }
.bazi-guide-block { margin-top:12px; padding:10px; background:#f5efe5; border-left:3px solid #b55236; }
.bazi-guide-block h4 { margin:0 0 7px; color:#7b3327; }
.bazi-guide-block p { margin:6px 0; font-family:Arial,"Microsoft YaHei",sans-serif; font-size:14px; line-height:1.7; }
.bazi-guide-block section + section { margin-top:9px; padding-top:8px; border-top:1px dotted #d9c8b1; }
.bazi-guide-block .guide-warning { color:#8d261f; }
.bazi-guide-block .guide-note { color:#776d60; font-size:12px; }
.life-marriage-card > small { color:var(--red); letter-spacing:.12em; }
.marriage-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:7px 0 10px; padding-bottom:9px; border-bottom:1px dotted #d9c8b1; }
.marriage-heading h3 { margin:0; color:#8d261f; font-size:22px; }
.marriage-heading span { color:#6f5a42; font-size:12px; text-align:right; }
.life-marriage-card p { margin:7px 0; font-family:Arial,"Microsoft YaHei",sans-serif; font-size:14px; line-height:1.75; }
.marriage-core { padding:10px; background:#fff1e8; border-left:3px solid #b55236; }
.marriage-star-counts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin-top:9px; }
.marriage-star-counts span { padding:8px; border:1px solid #dfd4c5; background:#f8f7f4; text-align:center; color:#756b5d; }
.marriage-star-counts span.is-present { border-color:#c77864; background:#fff8f3; color:#8d261f; }
.marriage-star-counts b,.marriage-star-counts small { display:block; }
.marriage-star-counts small { margin-top:2px; color:#7d7468; letter-spacing:0; }
.marriage-signals h4,.marriage-adjustments h4 { margin:14px 0 5px; color:#7b3327; }
.marriage-signals section { padding:8px 0; border-top:1px dotted #d9c8b1; }
.marriage-signals section p:first-child { display:flex; justify-content:space-between; gap:10px; color:#8d261f; }
.marriage-signals section span { color:#756b5d; font-size:12px; }
.marriage-adjustments { margin-top:10px; padding:9px 10px; background:#f5efe5; }
.marriage-adjustments section { padding:7px 0; border-top:1px dotted #d9c8b1; }
.marriage-adjustments section.is-recommended { margin-left:-10px; padding-left:8px; border-left:3px solid #b55236; background:#fff8f3; }
.life-marriage-card .marriage-timing,.life-marriage-card .marriage-note { color:#776d60; font-size:12px; }
.health-count-basis,.health-alert-list p,.health-balanced,.health-note { font-family:Arial,"Microsoft YaHei",sans-serif; font-size:14px; line-height:1.7; }
.health-element-counts { display:grid; grid-template-columns:repeat(5,1fr); gap:5px; margin:10px 0; }
.health-element-counts span { padding:8px 2px; border:1px solid #dfd1bd; background:#fff; text-align:center; font-size:12px; }
.health-element-counts b { display:block; font-size:16px; }
.health-element-counts .is-high { border-color:#b42b25; background:#fff0ed; color:#a32320; }
.health-alert-list section { margin-top:9px; padding:11px; border-left:3px solid #b42b25; background:#fff3e8; }
.health-alert-list h4 { margin:0 0 5px; color:#9b2c24; }
.health-alert-list p { margin:4px 0; }
.health-note { margin:10px 0 0; color:#776d60; font-size:12px; }
.life-tabs { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; margin:12px 0; padding:5px; background:#e9dfcc; border:1px solid #d2c2a8; border-radius:8px; }
.life-tabs button { padding:10px 6px; color:#746858; background:transparent; border:0; border-radius:6px; font-family:inherit; font-size:11px; line-height:1.5; cursor:pointer; }
.life-tabs button b { font-size:16px; font-weight:700; }
.life-tabs button.is-active { color:#fffaf0; background:#982723; box-shadow:0 3px 8px rgba(115,28,25,.2); }
.life-page[hidden] { display:none; }
.life-bazi-engine-card { margin:16px 0; padding:18px; border:1px solid #d8cdbb; background:#fffaf1; }
.life-bazi-engine-card > h3 { margin:6px 0 12px; font-size:22px; }
.bazi-policy,.bazi-engine-source { color:#786a58; font-size:13px; }
.bazi-pillar-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; margin:14px 0; }
.bazi-pillar-grid > div { display:flex; flex-direction:column; align-items:center; gap:4px; padding:10px 4px; border:1px solid #ded3c2; background:#fff; }
.bazi-pillar-grid b { font-size:21px; color:#8f241f; }
.bazi-pillar-grid span { font-size:12px; text-align:center; }
.bazi-detail-card { margin:16px 0; padding:18px; border:1px solid #d8cdbb; background:#fffaf1; }
.bazi-detail-card > h3 { margin:6px 0 10px; font-size:22px; }
.bazi-table-wrap { width:100%; margin:12px 0 6px; overflow-x:auto; }
.bazi-chart-table { width:100%; min-width:430px; border-collapse:collapse; table-layout:fixed; background:#fff; font-size:13px; }
.bazi-chart-table th,.bazi-chart-table td { padding:7px 3px; border:1px solid #ddd2c1; text-align:center; vertical-align:middle; }
.bazi-chart-table th { background:#f3eadb; color:#6f3028; font-weight:700; }
.bazi-chart-table thead th { background:#9b2923; color:#fff; }
.bazi-chart-table th:first-child { width:72px; }
.bazi-chart-table .ten-god { color:#9b2923; font-weight:700; }
.bazi-chart-table .stem-branch { color:#9b2923; font-size:20px; font-weight:700; }
.bazi-cell-line { display:block; line-height:1.65; white-space:nowrap; }
.bazi-table-note { margin:4px 0 12px; color:var(--muted); font-size:12px; }
.bazi-ten-god-kb { margin:12px 0 0; padding:12px; border-left:3px solid #9b2923; background:#f8efe6; }
.bazi-ten-god-kb h4 { margin:0 0 8px; color:#8f241f; font-size:17px; }
.bazi-ten-god-kb p { margin:0; padding:7px 0; border-top:1px dotted #d7c6b2; line-height:1.65; }
.bazi-ten-god-kb h4 + p { border-top:0; }
.missing-ten-god-reading { margin-top:12px; padding:10px 12px; border:1px solid #e0b9ad; background:#fff7f2; }
.missing-ten-god-reading h5 { margin:0 0 4px; color:#a32620; font-size:16px; }
.missing-ten-god-reading .missing-ten-god-note { color:#856f65; font-size:13px; }
.missing-ten-god-reading p b { color:#9b2923; }
.ten-god-reading { padding:8px 0; border-top:1px dotted #d7c6b2; }
.ten-god-reading > p { border:0; padding:3px 0; }
.ten-god-placement { margin-left:10px !important; padding-left:9px !important; border-left:2px solid #d3b58e !important; color:#574b3e; }
.ten-god-placement strong { color:#8f241f; }
.ten-god-count-note { color:var(--muted); font-size:12px; }
.bazi-plain-reading { margin:12px 0; padding:12px; border:1px solid #d9c8b5; background:#fff; }
.bazi-plain-reading h4 { margin:0 0 6px; color:#8f241f; font-size:20px; }
.bazi-plain-reading .plain-reading-lead { margin:0 0 10px; color:#766858; font-size:13px; }
.bazi-plain-reading .plain-reading-block { display:grid; grid-template-columns:30px 1fr; gap:10px; padding:14px 0; border-top:1px dotted #d7c6b2; }
.plain-reading-index { display:flex; width:28px; height:28px; align-items:center; justify-content:center; border-radius:50%; color:#fff; background:#9b2923; font-size:11px; font-weight:700; }
.plain-reading-block section { min-width:0; }
.bazi-plain-reading h5 { margin:0 0 5px; font-size:16px; color:#2e2922; }
.bazi-plain-reading p { margin:0; line-height:1.85; }
.bazi-plain-reading > small { display:block; margin-bottom:5px; color:#9b2923; letter-spacing:.08em; }
.life-bazi-engine-card > .bazi-plain-reading { margin:16px 0 0; padding:14px 0 0; border:0; border-top:1px solid #d9c8b5; background:transparent; }
.life-bazi-engine-card > .bazi-plain-reading > small { display:none; }
.bazi-analysis-grid { display:grid; gap:10px; }
.bazi-analysis-grid section { padding:12px; border-left:3px solid #9d2924; background:#f8f0e5; }
.bazi-analysis-grid h4 { margin:4px 0 7px; font-size:17px; }
.bazi-analysis-grid p { margin:5px 0; line-height:1.65; }
.bazi-engine-warning { padding:12px; color:#a02320; background:#fff0ed; border-left:3px solid #b52b27; }
.life-zodiac-card small { color:var(--red); letter-spacing:.12em; }
.life-zodiac-card h3 { margin:7px 0 12px; color:#8d261f; font-size:24px; }
.zodiac-relations p { margin:0; padding:9px 0; border-top:1px dotted #d9c8b1; font-size:14px; line-height:1.7; }
.zodiac-relations p span { display:block; color:#756b5d; font-size:12px; }
.zodiac-relations .warning b { color:#a02a24; }
.life-changsheng-card { margin-bottom:12px; padding:16px; border:1px solid #d8c4a8; background:#fffaf1; box-shadow:0 4px 12px rgba(74,54,31,.05); }
.life-changsheng-card small { color:var(--red); letter-spacing:.12em; }
.changsheng-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:7px 0 10px; padding-bottom:9px; border-bottom:1px dotted #d9c8b1; }
.changsheng-heading h3 { margin:0; color:#8d261f; font-size:24px; }
.changsheng-heading b { color:#6f5a42; font-size:13px; }
.life-changsheng-card p { margin:8px 0; font-family:Arial,"Microsoft YaHei",sans-serif; font-size:14px; line-height:1.75; }
.changsheng-meaning { padding:10px; background:#fff1e8; border-left:3px solid #b55236; }
.changsheng-reading + .changsheng-reading { margin-top:12px; padding-top:10px; border-top:1px dotted #d9c8b1; }
.changsheng-reading p { margin:5px 0; }
.changsheng-reading strong { color:#7b3327; }
.changsheng-reading .changsheng-stem-detail { padding:7px 8px; background:rgba(181,82,54,.08); }
.changsheng-pillar-guide { margin-top:12px; padding:12px; background:#f5efe5; border-left:3px solid #9b6a3d; }
.changsheng-pillar-guide h4 { margin:0; color:#7b3327; font-size:17px; }
.changsheng-pillar-guide .pillar-guide-intro { margin:4px 0 10px; color:#776d60; font-size:12px; }
.changsheng-pillar-guide section { padding:10px 0; border-top:1px dotted #d9c8b1; }
.changsheng-pillar-guide section:first-of-type { border-top:0; }
.pillar-guide-heading { display:flex; justify-content:space-between; align-items:baseline; gap:10px; }
.pillar-guide-heading h5 { margin:0; color:#8d261f; font-size:15px; }
.pillar-guide-heading span { color:#806f5c; font-size:12px; white-space:nowrap; }
.changsheng-pillar-guide section p { margin:5px 0; }
.life-changsheng-card .changsheng-note { color:#776d60; font-size:12px; }
.life-shensha-card { margin-bottom:12px; padding:16px; border:1px solid #d8c4a8; background:#fffaf1; box-shadow:0 4px 12px rgba(74,54,31,.05); }
.life-shensha-card small { color:var(--red); letter-spacing:.12em; }
.life-shensha-card h3 { margin:7px 0 10px; color:#8d261f; font-size:22px; }
.shensha-directions { margin-top:12px; padding:10px; background:#f5efe5; border-left:3px solid #b55236; }
.shensha-directions h4 { margin:0 0 7px; color:#7b3327; }
.shensha-directions section { padding:8px 0; border-top:1px dotted #d9c8b1; }
.shensha-directions h5 { margin:0; color:#8d261f; font-size:15px; }
.shensha-directions p { margin:5px 0; font-size:13px; line-height:1.7; }
.shensha-directions .direction-star { padding:6px 8px; background:#fff8f3; }
.life-shensha-card p { margin:0; padding:8px 0; border-top:1px dotted #d9c8b1; font-family:Arial,"Microsoft YaHei",sans-serif; font-size:14px; line-height:1.65; }
.branch-family-list p span,.shensha-list p span { display:block; color:#756b5d; font-size:12px; }
.branch-family-list .is-active { color:#8f2922; background:#fff3e9; }
.shensha-list .is-present { color:#8d261f; font-weight:600; }
.shensha-list .is-present span { font-weight:400; }
.shensha-list .is-absent { color:#8b8277; }
.life-shensha-card .shensha-note { color:#776d60; font-size:12px; }
.life-ming-card small { color:var(--red); letter-spacing:.12em; }
.life-ming-card h3 { margin:6px 0 12px; font-size:20px; }
.life-opposite-card { border-left:3px solid #b78a43; }
.opposite-note { padding:10px 12px; color:#7f541c; background:#fbf2df; border-left:3px solid #c99746; }
.life-ming-card p,.life-topic-card p { margin:8px 0; font-family:Arial,"Microsoft YaHei",sans-serif; font-size:14px; line-height:1.8; }
.ming-symbol-profile .door-career { margin-top:-2px; padding:8px 10px; color:#7d2a21; background:#fff1e8; border-left:3px solid #b55236; }
.ming-disasters { display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin:8px 0 12px; padding:9px 10px; background:#fff2ed; border-left:3px solid #a52220; font-size:13px; }
.ming-disasters b { color:#8d201e; margin-right:2px; }
.ming-disasters span { padding:3px 7px; border-radius:3px; font-weight:700; }
.life-traits { margin:12px 0; padding:11px 13px; background:rgba(135,39,34,.045); border-left:3px solid var(--red); }
.life-traits h4 { margin:0 0 6px; color:var(--red); font-size:15px; }
.life-traits p { margin:0; padding:6px 0; border-bottom:1px dotted var(--line); }
.life-traits p:last-child { border-bottom:0; }
.life-topic-card header { display:flex; align-items:center; gap:9px; padding-bottom:9px; border-bottom:1px solid var(--line); }
.life-topic-card header span { display:grid; place-items:center; width:25px; height:25px; color:#fff; background:var(--red); border-radius:50%; font-size:12px; }
.life-topic-card header h3 { flex:1; margin:0; font-size:18px; }
.life-topic-card header b { color:var(--red); font-size:12px; }
.life-topic-card.has-disasters { border:2px solid #b62925; background:#fff8f4; box-shadow:0 5px 16px rgba(166,34,31,.14); }
.life-topic-card.has-disasters header { border-bottom-color:#e6aaa4; }
.life-topic-card.has-disasters header h3 { color:#9d201e; }
.topic-disasters { display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin:10px 0 8px; padding:8px 10px; background:#fff0ea; border-left:3px solid #b62925; font-family:Arial,"Microsoft YaHei",sans-serif; font-size:13px; }
.topic-disasters > b { color:#8d201e; }
.topic-disasters span { padding:3px 7px; border-radius:3px; font-weight:700; }
.element-relation { margin:10px 0; padding:11px 12px; background:#f6efe3; border:1px solid #e6d8c5; }
.element-relation small { color:var(--red); font-weight:700; letter-spacing:.12em; }
.element-relation p { margin:5px 0; }
.element-relation > strong { display:block; padding-top:6px; color:#8c2b26; border-top:1px dotted #d9c8b1; font-size:14px; }
.element-relation .relation-line { padding-top:6px; border-top:1px dotted #d9c8b1; }
.element-relation .relation-line strong { color:#8c2b26; font-size:14px; }
.symbol-relations { margin-top:12px; padding-top:10px; border-top:1px dashed rgba(112,83,46,.25); }
.symbol-relations h4 { margin:0 0 7px; color:#982723; font-size:14px; }
.symbol-relations p { margin:5px 0; padding:7px 9px; background:rgba(255,255,255,.55); }
.symbol-relations .wealth-summary { margin-top:9px; color:#7f241f; background:#fff3df; border-left:3px solid #a02a24; }
.disaster-impact { margin-top:12px; padding:10px; background:#fff0ec; border:1px solid #e1aaa3; border-left:4px solid #a52220; }
.disaster-impact h4 { margin:0 0 7px; color:#981f1d; font-size:14px; }
.disaster-impact .topic-disasters { margin:0 0 6px; padding:5px 0; background:transparent; border-left:0; }
.disaster-impact p { margin:0; padding:7px 0; color:#75221f; border-top:1px dotted #dfb7b1; font-size:13px; line-height:1.7; }
.career-summary { margin:-22px 16px 16px; padding:10px 12px; color:#7f241f; background:#fff3df; border:1px solid #e6d8c5; border-left:3px solid #a02a24; font-size:14px; line-height:1.8; }
.life-detail { padding-top:8px; color:#5f574d; border-top:1px dotted var(--line); font-size:13px; line-height:1.8; }
.life-detail p { margin:0; padding:6px 0; border-bottom:1px dotted var(--line); }
.life-detail p:last-child { border-bottom:0; }
.stem-pair-list p { padding:8px 0; border-bottom:1px dotted var(--line); }
.stem-pair-list p:last-child { border-bottom:0; }
.stem-pair-list b,.stem-pair-list span { display:block; }
.stem-pair-list span { margin-top:4px; color:#665d52; }
.naming-empty,.naming-card { margin-bottom:12px; padding:16px; border:1px solid #d8c4a8; background:#fffaf1; box-shadow:0 4px 12px rgba(74,54,31,.05); }
.naming-empty small,.naming-card > small { color:var(--red); letter-spacing:.12em; }
.naming-empty h3,.naming-card h3 { margin:7px 0 10px; color:#8d261f; font-size:21px; }
.naming-empty.is-error { border-color:#d99b94; background:#fff2ee; }
.naming-overview { position:relative; padding-right:108px; }
.naming-overview > h3 { font-size:28px; }
.naming-score { position:absolute; top:17px; right:18px; display:grid; place-items:center; width:72px; height:72px; color:#fff9ef; border-radius:50%; background:#982723; }
.naming-score b { font-size:25px; line-height:1; }
.naming-score span { font-size:10px; }
.naming-score-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:6px; margin-top:14px; }
.naming-score-grid span { padding:8px; background:#f5eadb; font-size:12px; }
.naming-score-grid b { float:right; color:#8d261f; }
.naming-source { margin:12px 0 0; color:#7d7265; font-size:11px; }
.naming-grid-list { display:grid; gap:8px; }
.naming-grid-list section { padding:10px; border-left:3px solid #a12a24; background:#f8f0e5; }
.naming-grid-list section span,.naming-grid-list section b { display:block; }
.naming-grid-list section span { color:#756858; font-size:11px; }
.naming-grid-list section b { margin:3px 0 5px; }
.naming-grid-list section p,.naming-card > p,.naming-verdict p,.name-char-list p { margin:5px 0; font-family:Arial,"Microsoft YaHei",sans-serif; font-size:13px; line-height:1.75; }
.naming-verdict { margin-top:10px; padding:10px; border-left:3px solid #b55236; background:#fff1e8; }
.naming-verdict > b,.naming-verdict > small { display:block; }
.naming-verdict > small { margin-top:3px; color:#766b5e; }
.name-char-list p { padding:7px 0; border-top:1px dotted #d8c8b5; }
.knowledge-source { color:var(--muted); text-align:center; font-size:11px; }
footer { padding:26px 0 8px; color:var(--muted); text-align:center; font-size:10px; }
footer a { color:var(--red); letter-spacing:.1em; }
.palace-dialog { width:min(calc(100% - 28px),460px); max-height:min(82vh,720px); padding:22px; overflow-y:auto; color:var(--ink); border:0; border-radius:22px 5px 22px 5px; background:var(--paper2); box-shadow:0 25px 80px rgba(31,25,18,.35); }
.palace-dialog::backdrop { background:rgba(35,29,22,.58); backdrop-filter:blur(3px); }
.palace-dialog form { float:right; }
.palace-dialog form button { width:36px; height:36px; border:1px solid var(--line); border-radius:50%; background:none; font-size:20px; }
.palace-dialog h2 { margin:8px 0 12px; }
.palace-dialog .palace-facts { padding:4px 0 0; }
.palace-dialog .dialog-marks { margin:2px 0 4px; }
.dialog-explain { margin-top:12px; }
.palace-dialog .dialog-explain p { margin:0; padding:9px 0; color:#333; border-bottom:1px dotted #ded5c8; font-size:14px; line-height:1.8; }
.palace-dialog .dialog-explain p:last-child { border-bottom:0; }
.dialog-tags { display:flex; flex-wrap:wrap; gap:6px; }
.dialog-tags span { padding:6px 10px; color:var(--red); background:rgba(135,39,34,.08); border-radius:15px; font-size:12px; }
.dialog-pattern { margin-top:14px; padding-top:12px; border-top:1px dashed #d8cdbf; }
.dialog-pattern strong { color:var(--red); font-size:15px; }
.palace-dialog .dialog-pattern p { margin:6px 0 0; color:#555; font-size:13px; line-height:1.75; }
@media (max-width:350px) { .qimen-app { padding-left:10px; padding-right:10px; } .chart-section { margin-left:-10px; margin-right:-10px; } .identity-row { grid-template-columns:1fr; } .palace-grid-shell { padding-right:28px; padding-left:28px; } .outer-an { font-size:12px; } .outer-element { font-size:11px; } .shen,.star,.door { font-size:14px; } .tian-gan,.di-gan { font-size:17px; } .gong-name { font-size:12px; } .four-disasters i { font-size:7px; padding:1px 2px; } }
@media (min-width:700px) { body { padding:26px 0; } .qimen-app { border:1px solid var(--line); border-radius:24px; box-shadow:0 22px 70px rgba(66,52,36,.13); } }


/* 八字大运流年 */
.life-dayun-card { margin-bottom:12px; padding:16px; border:1px solid #d8c4a8; background:#fffaf1; box-shadow:0 4px 12px rgba(74,54,31,.05); }
.life-dayun-card small { color:var(--red); letter-spacing:.12em; }
.dayun-heading { display:flex; align-items:baseline; justify-content:space-between; gap:8px; flex-wrap:wrap; margin:7px 0 4px; }
.dayun-heading h3 { margin:0; color:#8d261f; font-size:19px; }
.dayun-heading span { color:#776d60; font-size:12px; }
.dayun-basis { margin:8px 0 0; color:#5c5448; font-family:Arial,"Microsoft YaHei",sans-serif; font-size:13px; line-height:1.7; }
.dayun-preference { margin:6px 0 0; padding:7px 10px; background:#f5efe5; border-left:3px solid #b78a43; color:#7b5a24; font-size:13px; line-height:1.6; }
.dayun-table-wrap { margin-top:10px; overflow-x:auto; }
.dayun-table { width:100%; border-collapse:collapse; font-family:Arial,"Microsoft YaHei",sans-serif; font-size:13px; background:#fffdf8; }
.dayun-table th { padding:7px 6px; background:#f3e8d6; color:#7b3327; font-weight:700; border:1px solid #e2d3b8; white-space:nowrap; }
.dayun-table td { padding:8px 6px; border:1px solid #e8dbc2; text-align:center; color:#4a4238; line-height:1.5; }
.dayun-table .dy-ganzhi b { font-size:15px; color:#8d261f; display:block; }
.dayun-table .dy-ganzhi small { color:#776d60; font-size:11px; letter-spacing:0; }
.dayun-table td small { display:block; color:#776d60; font-size:11px; }
.dayun-table tr.grade-good td { background:#fbf6ea; }
.dayun-table tr.grade-press td { background:#fbf1ee; }
.dayun-table tr.grade-mid td { background:#fdfbf6; }
.dayun-table .grade-tag { font-size:12px; font-weight:700; }
tr.grade-good .grade-tag { color:#2d6a4f; }
tr.grade-press .grade-tag { color:#b23a30; }
tr.grade-mid .grade-tag { color:#8b8277; }
.dayun-liunian { margin-top:12px; padding:10px; background:#f5efe5; border-left:3px solid #b55236; }
.dayun-liunian h4 { margin:0 0 8px; color:#7b3327; }
.liunian-item { padding:8px 0; border-top:1px dotted #d9c8b1; }
.liunian-item:first-of-type { border-top:0; }
.liunian-head { display:flex; justify-content:space-between; gap:8px; align-items:center; }
.liunian-head b { color:#4a4238; font-size:14px; }
.liunian-head span { font-size:12px; font-weight:700; }
.liunian-item.grade-good .liunian-head span { color:#2d6a4f; }
.liunian-item.grade-press .liunian-head span { color:#b23a30; }
.liunian-item.grade-mid .liunian-head span { color:#8b8277; }
.liunian-item p { margin:4px 0 0; font-family:Arial,"Microsoft YaHei",sans-serif; font-size:13px; line-height:1.7; color:#4a4238; }
.liunian-item p small { display:block; color:#776d60; font-size:12px; margin-top:2px; }
.life-dayun-card .dayun-note { color:#776d60; font-size:12px; margin:10px 0 0; line-height:1.7; }


/* 四害破解建议 */
.disaster-resolve { margin-top:9px; padding:9px 11px; background:#fbf4e4; border:1px solid #e5d3ae; border-radius:8px; }
.disaster-resolve > summary { cursor:pointer; color:#7b3327; font-weight:700; font-size:13px; list-style:none; }
.disaster-resolve > summary::before { content:'🔧 '; }
.disaster-resolve section { margin-top:8px; padding-top:7px; border-top:1px dotted #dfcba4; color:#5c5448; font-size:13px; line-height:1.7; }
.disaster-resolve section:first-of-type { border-top:0; padding-top:0; }
.disaster-resolve-steps { margin:6px 0 0; padding:7px 9px; background:#fffdf6; border-radius:6px; }
.disaster-resolve-steps summary { cursor:pointer; color:#8a6a3a; font-size:12px; list-style:none; }
.disaster-resolve-steps summary::before { content:'▸ '; }
.disaster-resolve-steps p { margin:4px 0 0; color:#6f6657; font-size:12px; line-height:1.7; padding-left:2px; }
.disaster-resolve-mini { margin:3px 0 0; padding:6px 9px; background:#fbf4e4; border-left:3px solid #c99746; color:#6f5d3d; font-size:12px; line-height:1.7; border-radius:0 6px 6px 0; }


/* ===== 第三部分 · 紫微命盘 ===== */
.life-ziwei-head { padding:14px 16px; background:#fffdf6; border:1px solid #e5d3ae; border-radius:12px; margin-bottom:12px; }
.life-ziwei-head > small { display:block; color:#8a6a3a; font-size:12px; letter-spacing:.08em; margin-bottom:6px; }
.life-ziwei-head h3 { margin:0 0 10px; color:#4a3f32; font-size:19px; letter-spacing:.06em; }
.ziwei-badges { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:8px; }
.ziwei-badges span { padding:4px 10px; border-radius:999px; background:rgba(141,40,36,.07); border:1px solid rgba(141,40,36,.22); color:#7b3327; font-size:12.5px; }
.ziwei-badges b { margin-right:5px; color:#a05242; font-weight:700; }
.ziwei-date { margin:0; color:#8a7a66; font-size:12.5px; line-height:1.7; }
.life-ziwei-card { padding:13px 15px; background:#fffdf6; border:1px solid #e5d3ae; border-radius:12px; margin-bottom:12px; }
.life-ziwei-card h3 { margin:0 0 10px; color:#7b3327; font-size:14.5px; letter-spacing:.08em; border-bottom:1px dashed #dfcba4; padding-bottom:7px; }
.life-ziwei-card p { margin:4px 0; color:#5c5448; font-size:13px; line-height:1.8; }
.ziwei-stars-line b { color:#7b3327; }
.ziwei-combo { background:rgba(184,134,11,.08); border-left:3px solid #c99746; padding:7px 10px; border-radius:0 8px 8px 0; color:#6f5d3d !important; }
.ziwei-juline { color:#8a7a66 !important; font-size:12.5px !important; }
.ziwei-mutagen-list p { display:flex; align-items:center; gap:8px; padding:5px 8px; background:rgba(255,252,245,.6); border-radius:6px; }
.ziwei-mutagen-list b { color:#4a3f32; }
.ziwei-mutagen-list em { font-style:normal; color:#b55236; font-weight:700; margin-left:2px; }
.ziwei-mutagen-list span { background:rgba(141,40,36,.07); color:#7b3327; padding:1px 8px; border-radius:999px; font-size:12px; }
.ziwei-palace-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
.ziwei-palace-grid section { padding:9px 8px; border:1px solid #eadfc4; border-radius:9px; background:rgba(255,252,245,.5); text-align:center; }
.ziwei-palace-grid section.is-body { border-color:#b55236; }
.ziwei-palace-grid small { display:block; color:#8a7a66; font-size:11.5px; margin-bottom:4px; }
.ziwei-palace-grid section > b { display:block; color:#4a3f32; font-size:13px; margin-bottom:5px; }
.ziwei-stars { display:flex; flex-wrap:wrap; justify-content:center; gap:4px; margin:0 0 4px; }
.ziwei-stars span { padding:2px 7px; border-radius:5px; background:rgba(141,40,36,.08); color:#7b3327; font-size:12px; position:relative; }
.ziwei-stars em { font-style:normal; color:#b55236; font-weight:700; margin-left:1px; font-size:11px; }
.ziwei-stars .empty { background:transparent; color:#b7a98e; }
.ziwei-minor { color:#8a7a66 !important; font-size:11.5px !important; line-height:1.6 !important; margin:0 0 3px !important; }
.ziwei-decadal { color:#b7a98e !important; font-size:11px !important; margin:0 !important; }
.ziwei-palace-meanings p { padding:4px 0; border-bottom:1px dotted #eadfc4; }
.ziwei-palace-meanings p:last-child { border-bottom:0; }
.ziwei-palace-meanings b { color:#7b3327; }
.ziwei-palace-meanings span { display:block; margin-top:3px; color:#4f493f; line-height:1.75; }
.ziwei-palace-meanings strong { color:#8d2824; }
.ziwei-source { color:#8a7a66; font-size:12px; line-height:1.7; }
@media (max-width:640px) { .ziwei-palace-grid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:420px) { .ziwei-palace-grid { grid-template-columns:repeat(2,1fr); } }
