/* Keep the established purple/gold theme, improve form and result readability. */
.zr-hero{min-height:630px!important;padding:46px 24px!important}
.zr-hero .tool-hero-desc{max-width:850px;line-height:1.8}
.zr-page{box-sizing:border-box;min-width:0;color:#282333}
.zr-page *{box-sizing:border-box}
.zr-page .form-card{box-shadow:none!important;padding:24px!important;background:#faf8ff!important}
.zr-page .mode-tabs{gap:8px}
.zr-page .mode-tab{min-height:46px;flex:1;max-width:260px}
.zr-page .mode-tab.active,.zr-page .mode-tab.active:hover{color:#fff!important}
.zr-page input[type=number],.zr-page select{min-height:44px!important;border-radius:9px;padding:8px 10px!important;font-size:16px!important;line-height:1.4}
.zr-page input:focus-visible,.zr-page select:focus-visible,.zr-page button:focus-visible,.zr-page [role=button]:focus-visible{outline:3px solid #a58ae7!important;outline-offset:2px}
.zr-page button,.zr-page .shilei-btn{min-height:42px;touch-action:manipulation}
.zr-page .query-date-row button{min-height:46px}
.zr-page button:disabled{cursor:wait;opacity:.65}
.zr-page .shilei-btn{color:#514368;background:#fff;font-size:14px}
.zr-page .shilei-btn.active{background:#6f4cc3;color:#fff;border-color:#6f4cc3}
.zr-page .query-bazi-row select{max-width:280px!important}
.zr-page .zr-help{font-size:13px;line-height:1.7;color:#625b70;margin:10px 0}
.zr-page .zr-feedback{padding:12px 16px;border:1px solid #d9ceef;border-radius:10px;background:#f3eefb;color:#4a3275;line-height:1.7;margin:12px 0}
.zr-page .zr-error{color:#9d2424;background:#fff3f3;border-color:#edc8c8}
.zr-page .zr-reason,.zr-page .zr-warning{font-size:13px;line-height:1.7;margin-top:6px}
.zr-page .zr-reason{color:#514368}.zr-page .zr-warning{color:#856012}
.zr-page .panel-title{flex-wrap:wrap;gap:10px}.zr-page .panel-title small{line-height:1.7;overflow-wrap:anywhere}
.zr-page .summary-table{display:table!important;width:100%;white-space:normal!important;font-size:14px;line-height:1.8;table-layout:fixed}
.zr-page .summary-table td,.zr-page .summary-table th{white-space:normal!important}
.zr-page .summary-table td{padding:9px 8px;overflow-wrap:anywhere;border-bottom:1px solid #eee8f4}
.zr-page .compare-col{min-width:0;flex:1 1 320px}
.zr-page .cal-cell{aspect-ratio:auto;min-height:115px;margin:0;padding:8px 1px;gap:2px}
.zr-page .cal-cell.empty{min-height:0}
.zr-page .cal-cell:hover{transform:none;border-color:#6f4cc3}
.zr-page .cal-cell.plain{background:#f4f1f8}
.zr-page .cal-cell.selected{outline:2px solid #85632e;outline-offset:-2px}
.zr-page .cal-day-badge{padding:1px 2px}
.zr-page .shi-card{padding:12px 8px;min-width:0}
.zr-page .shi-detail{background:#f3eff8;color:#40364e}
.zr-page .info-card,.zr-page .kpi-card{min-width:0;overflow-wrap:anywhere}
.zr-page .zr-save-row,.zr-page .zr-result-action{text-align:center}
.zr-page .ai-btn{max-width:100%;white-space:normal;min-height:54px;line-height:1.6;margin-inline:auto}
.zr-page #ai-tts-text{line-height:1.95!important;overflow-wrap:anywhere;max-width:100%;padding:4px 0}
.zr-page .zr-alternative{display:flex;flex-wrap:wrap;align-items:center;gap:12px;justify-content:space-between}
.zr-page .action-card-grid>div>div>div{flex-wrap:wrap}
@media(max-width:1199px){
 .public-header .hide-mobile{display:none!important}
 .public-header .btn-hamburger{display:flex!important}
}
@media(max-width:900px){
 .zr-page [style*="repeat(6,minmax"]{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .zr-page [style*="repeat(5,minmax"],.zr-page [style*="repeat(4,minmax"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:600px){
 .zr-hero{min-height:0!important;padding:26px 16px!important}
 .zr-hero h1{font-size:28px;line-height:1.4;margin:12px 0}
 .zr-hero .tool-hero-eyebrow{font-size:13px;letter-spacing:1px;padding:6px 10px}
 .zr-hero .tool-hero-desc{font-size:15px;line-height:1.8;margin-bottom:0}
 .zr-page{padding:12px!important;width:100%;margin-inline:0!important}
 .zr-page .panel{padding:14px!important}
 .zr-page .form-card{padding:14px!important}
 .zr-page .mode-tabs{gap:2px;padding:4px}
 .zr-page .mode-tab{padding:10px 6px;font-size:14px;min-height:44px}
 .zr-page .query-bazi-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important}
 .zr-page .query-bazi-row .bazi-title{grid-column:1/-1;font-size:14px!important;text-align:left}
 .zr-page .query-bazi-row>div{min-width:0}
 .zr-page .query-bazi-row input,.zr-page .query-bazi-row input[name="birth_y"]{width:100%!important;min-width:0;height:44px!important;font-size:16px!important}
 .zr-page .query-bazi-row>span:not(.bazi-title){grid-column:1/-1}
 .zr-page .query-bazi-row select{grid-column:1/-1;width:100%!important;max-width:none!important;height:44px!important;font-size:16px!important}
 .zr-page .query-date-row,.zr-page #compare-options [role=group]{display:grid!important;grid-template-columns:1.35fr 1fr 1fr;gap:8px!important;width:100%}
 .zr-page .query-date-row>div,.zr-page #compare-options [role=group]>div{min-width:0;gap:4px!important}
 .zr-page .query-date-row input,.zr-page #compare-options input{width:100%!important;min-width:0;height:46px!important;font-size:16px!important}
 .zr-page .query-date-row button{grid-column:auto;font-size:15px!important;height:44px!important;padding:8px!important}
 .zr-page .query-date-row button[type=submit]{grid-column:1/3}
 .zr-page .cal-grid{gap:3px}
 .zr-page .cal-cell{min-height:105px;border-radius:8px}
 .zr-page .cal-day-num{font-size:17px}.zr-page .cal-day-gz,.zr-page .cal-day-lunar,.zr-page .cal-day-badge{font-size:11px;line-height:1.4}
 .zr-page [style*="repeat(auto-fill"]{grid-template-columns:minmax(0,1fr)!important}
 .zr-page [style*="repeat(6,minmax"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .zr-page [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:minmax(0,1fr)!important}
 .zr-page .compare-col{flex-basis:100%;width:100%}
 .zr-page .suggest-card{padding:14px}
 .zr-page .summary-table td:first-child{width:78px}
 .zr-page .ai-btn{width:100%;padding:12px 16px!important;font-size:16px!important}
 .zr-page .ai-btn small{font-size:13px!important}
}
@media(prefers-reduced-motion:reduce){.zr-page *{animation:none!important;scroll-behavior:auto!important}}
