/* Unified, spatial nine-palace chart. All readings retain server-rendered values. */
.qm-board-layout.qm-unified{display:block}
.qm-unified .qm-board-caption{align-items:center;margin-bottom:16px}
.qm-unified .qm-board-caption h3{margin-bottom:4px;color:var(--qm-ink)}
.qm-unified .qm-grid{max-width:none;gap:14px}
.qm-unified .qm-cell{padding:18px 20px 12px;min-height:234px;background:linear-gradient(150deg,#fdfbff,#fff 160px)}
.qm-unified .qm-cell--center{background:radial-gradient(ellipse at center,#f7f1e4,#fcfaf5)}
.qm-unified .qmc-header strong{font-size:18px}
.qm-unified .qmc-header>span{font-size:12px}
.qm-unified .qmc-stems{padding:7px 0;margin:6px 0;gap:14px}
.qm-unified .qmc-stems>span{gap:8px}
.qm-unified .qmc-stems strong{font-size:30px}
.qm-unified .qmc-symbols{font-size:17px;gap:4px}
.qm-unified .qmc-symbols small{font-size:13px}
.qm-unified .qmc-footer{padding-top:10px}
.qmc-detail-hint{display:flex;justify-content:space-between;align-items:center;gap:4px;width:100%;padding-top:7px;margin-top:9px;border-top:1px solid #eee7f4;font-size:11px;color:#8b769b}
.qmc-detail-hint>span:last-child{font-size:17px;line-height:1}
.qm-cell--active .qmc-detail-hint{color:#6f4cc3}
.qm-cell--center .qmc-detail-hint{margin-top:auto;color:#8b7959;border-color:#e8ddc5}
.qm-unified .qm-palace-details{display:block}
.qm-palace-detail{margin-top:18px;padding:22px 24px;background:#fcfaff;border:1px solid #d9c8ec;border-radius:14px;overflow-wrap:anywhere;scroll-margin-top:90px}
.qm-palace-detail:focus{outline:2px solid #b094d8;outline-offset:2px}
.qmd-head{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.qmd-number{display:grid;place-items:center;flex:0 0 42px;height:42px;border:1px solid #e1d6ee;border-radius:12px;background:#f0eaf8;color:#7956a6;font-family:Georgia,serif;font-size:24px;line-height:1}
.qmd-title{min-width:0}.qmd-title h4{font-size:20px}.qmd-title>span{display:block;font-size:12px;color:var(--qm-muted)}
.qmd-head>.qm-rating,.qmd-center-label{flex-shrink:0;font-size:12px;padding:3px 9px;border-radius:7px}
.qmd-center-label{background:#f3ecdb;color:#806a3d}
.qmd-close{margin-left:auto;flex:none;min-height:40px;padding:6px 12px;border:1px solid #e1d6ee;border-radius:9px;background:#fff;color:#725493;font-size:13px!important}
.qmd-close span{font-size:18px;margin-left:6px}
.qmd-classifications{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px 0;border-top:1px solid #e9e0f2;border-bottom:1px solid #e9e0f2}
.qmd-classifications>div+div{border-left:1px solid #e9e0f2;padding-left:16px}
.qmd-classifications dt,.qmd-extra dt,.qmd-label{font-size:12px;color:var(--qm-muted)}
.qmd-classifications dd{font-size:15px;font-weight:600;margin:5px 0 0}
.qm-palace-detail .qmd-relation{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:14px 0;font-size:13px}
.qmd-relation>span{color:var(--qm-muted)}.qmd-relation strong{font-weight:500}
.qmd-extra{display:grid;gap:8px;padding:13px 0}
.qmd-extra>div{display:grid;grid-template-columns:70px minmax(0,1fr);gap:12px;align-items:baseline}
.qmd-extra dd{display:flex;flex-wrap:wrap;gap:3px 12px;margin:0;font-size:14px;line-height:1.8;color:#554b62}
.qmd-patterns{padding-top:14px;border-top:1px solid #e9e0f2}
.qmd-patterns .qm-tags{margin-top:8px;gap:7px}
.qmd-patterns .qm-tags span{padding:5px 10px;font-size:13px;color:#68517e;background:#f2edf8;border:1px solid #e9e0f2}
.qmd-evidence{margin-top:14px;padding-top:12px;border-top:1px solid #eee8f4}
.qmd-evidence summary{cursor:pointer;font-size:13px;font-weight:600;color:#725493;min-height:32px;line-height:1.8}
.qmd-evidence[open] summary{margin-bottom:10px}
.qmd-evidence>div{padding:0 12px;background:#f5f0f9;border-radius:8px}
.qmd-evidence p{margin:0;padding:12px 0;font-size:13px;line-height:1.85}.qmd-evidence p+p{border-top:1px solid #e9e0f2}
.qmd-evidence small,.qmd-evidence p>span{display:block;margin-top:5px;font-size:12px;color:var(--qm-muted)}
.qmd-card--center{background:#fcfaf5;border-color:#e8ddc5}
.qmd-card--center .qmd-number{color:#8a713e;background:#f4eddd;border-color:#e5d9bf}
.qmd-center-body{padding:4px 0}.qmd-center-symbol{display:none}
.qmd-center-facts{display:flex;gap:48px}.qmd-center-facts dt{font-size:12px;color:#8b7959}.qmd-center-facts dd{margin:6px 0 0;color:#725c35;font-size:20px;font-weight:600}
.qmd-center-body>p{margin-top:14px;color:#7c6b4e;font-size:13px;line-height:1.9}
.qm-readings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:26px}
.qm-readings .qm-summary{min-width:0;background:linear-gradient(145deg,#faf7fd,#fff);padding:22px 24px}
.qm-readings .qm-summary>p{margin-top:12px;font-size:15px;line-height:1.9}
.qm-readings .qm-summary>.qm-note{font-size:12px;margin-top:12px}
.qm-readings .qm-global-geju{display:block;margin-top:16px}
@media(max-width:900px){.qm-unified .qm-cell{padding:14px 12px 10px}.qm-unified .qmc-header strong{font-size:16px}.qm-unified .qm-grid{gap:9px}.qm-unified .qmc-stems>span{gap:5px}}
@media(max-width:700px){.qm-readings{grid-template-columns:1fr;gap:12px;margin-top:20px}}
@media(max-width:600px){
 .qm-unified .qm-board-caption{margin-bottom:12px;gap:8px}.qm-unified .qm-board-caption>span{font-size:10px}
 .qm-unified .qm-grid{gap:5px}.qm-unified .qm-cell{min-height:218px;padding:10px 6px 8px}
 .qm-unified .qmc-header strong{font-size:12px}.qm-unified .qmc-header>span{font-size:10px}
 .qm-unified .qmc-stems{gap:4px;padding:0;margin:8px 0}.qm-unified .qmc-stems>span{gap:1px}.qm-unified .qmc-stems strong{font-size:22px}
 .qm-unified .qmc-symbols{font-size:12px;gap:2px}.qm-unified .qmc-symbols small{font-size:10px}.qm-unified .qmc-footer{padding-top:6px;font-size:9px}
 .qmc-detail-hint{font-size:10px;margin-top:7px;padding-top:6px}.qmc-detail-hint>span:last-child{font-size:14px}
 .qm-palace-detail{padding:16px 14px;margin-top:14px;scroll-margin-top:76px}.qmd-head{gap:8px;margin-bottom:14px}.qmd-number{flex-basis:32px;height:36px;font-size:21px;border-radius:9px}
 .qmd-title h4{font-size:17px}.qmd-title>span{font-size:11px}.qmd-head>.qm-rating,.qmd-center-label{padding:2px 5px;font-size:11px}.qmd-close{padding:5px 8px;font-size:12px!important}.qmd-close span{margin-left:3px}
 .qmd-classifications{gap:7px}.qmd-classifications>div+div{padding-left:9px}.qmd-classifications dt{font-size:11px}.qmd-classifications dd{font-size:13px}.qmd-extra>div{grid-template-columns:62px minmax(0,1fr);gap:8px}.qmd-extra dd{font-size:13px}.qmd-patterns .qm-tags span{font-size:12px}
 .qm-readings .qm-summary{padding:18px}.qm-readings .qm-summary>p{font-size:14px}
}

/* Keep 40% of the former 32 + 32 + 40px gap before articles and FAQ. */
.qimen-wrap.tool-body{margin-bottom:12.8px!important}
.qimen-wrap .qm-disclaimer{margin-bottom:12.8px!important}
.qimen-wrap.tool-body ~ .ml-module-content{padding-top:16px}
/* Compact AI entry card; generated text remains naturally sized. */
.qm-result .qm-ai-section{padding:12px 24px}
.qm-ai-section .qm-section-head{margin-bottom:8px;align-items:center}
.qm-ai-section .qm-section-head>div{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.qm-ai-section .qm-eyebrow{order:1;margin:0}
.qm-ai-section .shushu-ai-controls{margin:8px 0 0;gap:6px}
.qm-ai-section #qm-ai-result:not([hidden]){margin-top:16px}
@media(max-width:600px){
 .qm-result .qm-ai-section{padding:15px 14px}
 .qm-ai-section .qm-section-head>div{gap:8px}
 .qm-ai-section .shushu-ai-status{font-size:12px;line-height:1.65}
}

/* Optional archive association: one compact control on desktop and mobile. */
.qimen-wrap .qm-profile-field { margin-top: 18px; }
.qimen-wrap .qm-profile-field label { display: block; margin-bottom: 8px; color: var(--text-primary, #302a25); font-weight: 600; font-size: 15px; }
.qimen-wrap .qm-profile-field select { box-sizing: border-box; width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid #ddd5c9; border-radius: 10px; background: #fffdf9; color: #302a25; font: inherit; font-size: 16px; }
.qimen-wrap .qm-profile-field select:focus-visible { outline: 2px solid #9a762b; outline-offset: 2px; }
.qimen-wrap .qm-profile-field .qm-note { margin: 7px 0 0; font-size: 13px; line-height: 1.6; }
.qimen-wrap .qm-profile-saved { margin: 12px 0; padding: 10px 14px; border-radius: 10px; background: #f7f3eb; color: #655137; font-size: 14px; }
.qimen-wrap .qm-profile-saved span { display: block; margin-top: 4px; font-size: 12px; color: #807463; }
