/* 五术排盘全屏表单样式 v3 */
/* 字体标准: 一级=二号22pt加粗, 二级=三号16pt, 网页=四号14pt, 排盘结果=三号16pt */
body{font-family:'SimSun','宋体',serif;}
/* 一级: 二号22pt加粗 */
.form-header h1,.result-card h3,.unlock-teaser h4,.followup-section h4{font-weight:bold !important;font-size:22pt !important;}
/* 二级: 三号16pt */
.input-box,select.input-box,.field-label,.gender-tab,.tab-item,.shake-btn,.submit-btn,.btn-unlock,.num-group input,.loading-text,.loc-btn{font-size:16pt !important;}
/* 网页: 四号14pt (默认全局已设) */
.field-label .tip,.hint,.solar-notice,.progress-text,.num-group label,.dir-btn,.cal-tab,.privacy,.tag{font-size:14pt !important;}
.progress-text .coin-result{width:28px !important;height:28px !important;line-height:28px !important;font-size:14pt !important;}
/* 排盘结果: 三号16pt */
.result-card p,.result-pan pre,.unlock-teaser p,.error-msg,.qa-item,.pan-table,.pan-table th,.pan-table td{font-size:16pt !important;}
:root{--bg:#F9F7F2;--card:#FFF;--text:#2C3E50;--sub:#666;--accent:#993333;--border:#EAE6DF;--gold:#D4AF37;}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'PingFang SC','Microsoft YaHei',sans-serif;background:var(--bg);color:var(--text);line-height:1.6;padding-bottom:100px;min-height:100vh;}
.form-header{padding:20px;display:flex;align-items:center;gap:15px;background:rgba(249,247,242,.95);position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(212,175,55,.15);}
.form-header .back-btn{font-size:20px;cursor:pointer;padding:5px;color:var(--accent);text-decoration:none;}
.form-header h1{font-family:'Songti SC','STSong',serif;font-size:18px;font-weight:600;}
.form-container{padding:0 20px;max-width:600px;margin:0 auto;box-sizing:border-box;}
.info-card{background:var(--card);padding:25px 20px;border-radius:16px;margin-bottom:20px;box-shadow:0 4px 12px rgba(0,0,0,.03);}
.field-group{margin-bottom:20px;}
.field-group:last-child{margin-bottom:0;}
.field-label{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--sub);margin-bottom:10px;}
.field-label .tip{font-size:11px;color:#999;}
.input-box,select.input-box{width:100%;padding:14px 16px;border:1px solid var(--border);border-radius:10px;font-size:16px;background:#FAFAF8;outline:none;color:var(--text);transition:border .3s;appearance:none;}
.input-box:focus{border-color:var(--accent);}
textarea.input-box{height:80px;resize:none;}
.date-time-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.gender-tabs{display:flex;gap:12px;}
.gender-tab{flex:1;padding:14px;text-align:center;border:1px solid var(--border);border-radius:10px;font-size:15px;cursor:pointer;background:#FAFAF8;transition:all .3s;}
.gender-tab.active{background:var(--accent);color:#fff;border-color:var(--accent);}
.shake-area{background:var(--card);border-radius:16px;padding:40px 20px;text-align:center;margin-bottom:20px;position:relative;overflow:hidden;}
.coins-icon{font-size:60px;margin-bottom:15px;display:block;transition:transform .1s;}
.shake-area.shaking .coins-icon{animation:shake .2s infinite;}
@keyframes shake{0%,100%{transform:translateX(0) rotate(0);}25%{transform:translateX(-5px) rotate(-5deg);}75%{transform:translateX(5px) rotate(5deg);}}
.shake-btn{background:var(--accent);color:#fff;border:none;padding:14px 40px;border-radius:30px;font-size:16px;letter-spacing:2px;cursor:pointer;margin-top:10px;}
.shake-btn:disabled{background:#ccc;}
.progress-text{font-size:13px;color:var(--sub);margin-top:15px;min-height:20px;}
.progress-text .coin-result{display:inline-block;width:24px;height:24px;line-height:24px;text-align:center;border-radius:50%;background:var(--accent);color:#fff;font-size:12px;margin:0 3px;}
.method-tabs{display:flex;background:var(--card);border-radius:12px;padding:4px;margin-bottom:20px;box-shadow:0 2px 8px rgba(0,0,0,.02);}
.tab-item{flex:1;text-align:center;padding:12px 0;font-size:15px;border-radius:10px;cursor:pointer;transition:all .3s;color:var(--sub);}
.tab-item.active{background:var(--accent);color:#fff;font-weight:600;box-shadow:0 4px 10px rgba(153,51,51,.3);}
.num-input-area{display:none;}
.num-input-area.active{display:block;}
.shake-area:not(.active){display:none;}
.num-group{margin-bottom:15px;}
.num-group label{font-size:13px;color:var(--sub);margin-bottom:6px;display:block;}
.num-group input{width:100%;padding:14px;border:1px solid var(--border);border-radius:10px;font-size:18px;text-align:center;letter-spacing:4px;outline:none;background:#FAFAF8;}
.num-group input:focus{border-color:var(--accent);}
.direction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.dir-btn{padding:12px;border:1px solid var(--border);border-radius:10px;text-align:center;font-size:14px;cursor:pointer;background:#FAFAF8;transition:all .3s;}
.dir-btn.active{background:var(--accent);color:#fff;border-color:var(--accent);}
.calendar-tabs{display:flex;gap:10px;margin-bottom:15px;}
.cal-tab{flex:1;padding:10px;text-align:center;border:1px solid var(--border);border-radius:8px;font-size:14px;cursor:pointer;background:#FAFAF8;}
.cal-tab.active{background:var(--accent);color:#fff;border-color:var(--accent);}
.hint{font-size:12px;color:#999;margin-top:8px;}
.solar-notice{display:flex;align-items:center;gap:8px;padding:12px 15px;background:rgba(153,51,51,.05);border-radius:8px;font-size:12px;color:var(--accent);margin-top:15px;}
.location-box{display:flex;align-items:center;gap:10px;}
.location-box .input-box{flex:1;}
.loc-btn{padding:14px 18px;background:#fff;border:1px solid var(--border);border-radius:10px;font-size:14px;color:var(--accent);cursor:pointer;white-space:nowrap;}
.submit-bar{position:static;max-width:600px;margin:0 auto;padding:20px 20px 30px;box-sizing:border-box;}
.submit-btn{width:100%;padding:16px;background:var(--accent);color:#fff;border:none;border-radius:30px;font-size:17px;letter-spacing:3px;cursor:pointer;box-shadow:0 6px 15px rgba(153,51,51,.3);}
.submit-btn:disabled{background:#ccc;cursor:not-allowed;}
.privacy{text-align:center;font-size:11px;color:#aaa;margin-top:10px;}
.loading-overlay{position:fixed;inset:0;background:rgba(249,247,242,.9);display:none;align-items:center;justify-content:center;z-index:200;backdrop-filter:blur(4px);}
.loading-overlay.active{display:flex;}
.loading-content{text-align:center;}
.loading-spinner{width:48px;height:48px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px;}
@keyframes spin{to{transform:rotate(360deg);}}
.loading-text{font-size:15px;color:var(--sub);}
.result-card{background:var(--card);border-radius:16px;padding:20px;margin-bottom:16px;box-shadow:0 4px 12px rgba(0,0,0,.03);}
.result-card h3{font-family:'Songti SC',serif;font-size:17px;margin-bottom:12px;padding-left:10px;border-left:3px solid var(--accent);}
.result-card p{font-size:14px;color:var(--sub);margin-bottom:8px;}
.result-pan{background:#F0EDE5;border-radius:10px;padding:14px;margin-bottom:10px;}
.result-pan pre{font-size:12px;overflow-x:auto;white-space:pre-wrap;}
.unlock-teaser{background:linear-gradient(135deg,#fff,#fdfbf7);border:1px solid rgba(153,51,51,.15);border-radius:16px;padding:24px 20px;text-align:center;margin-bottom:20px;}
.unlock-teaser h4{font-family:'Songti SC',serif;font-size:18px;margin-bottom:8px;}
.unlock-teaser p{font-size:13px;color:var(--sub);margin-bottom:18px;}
.btn-unlock{background:var(--accent);color:#fff;border:none;width:100%;padding:15px;border-radius:30px;font-size:16px;letter-spacing:2px;cursor:pointer;box-shadow:0 4px 12px rgba(153,51,51,.25);}
.tag{display:inline-block;font-size:12px;background:#F0EDE5;padding:2px 8px;border-radius:4px;color:#666;margin-right:5px;}
.error-msg{color:var(--accent);padding:12px;background:rgba(153,51,51,.05);border-radius:10px;font-size:14px;}
.followup-section{margin-top:20px;padding:16px;background:rgba(240,237,229,.5);border-radius:10px;border:1px solid var(--border);}
.followup-section h4{color:var(--accent);margin-bottom:10px;font-size:15px;}
.followup-list{max-height:260px;overflow-y:auto;margin-bottom:10px;}
.qa-item{padding:8px 12px;margin-bottom:6px;border-radius:6px;font-size:13px;line-height:1.6;}
.user-qa{background:var(--accent);color:#fff;margin-left:20px;}
.ai-qa{background:#fff;border:1px solid var(--border);margin-right:20px;}
.ai-qa strong{color:var(--accent);}
.loading-qa{color:var(--sub);font-style:italic;}
.followup-input-box{display:flex;gap:6px;}
.followup-input-box .input-box{flex:1;}
.followup-locked{margin-top:16px;padding:16px;text-align:center;background:rgba(200,200,200,.15);border-radius:8px;color:var(--sub);}
/* 排盘格式化展示样式 */
.pan-table{width:100%;border-collapse:collapse;font-size:13px;}
.pan-table th{background:rgba(153,51,51,.08);padding:8px 10px;text-align:left;font-weight:600;color:var(--accent);border-radius:4px;}
.pan-table td{padding:8px 10px;border-bottom:1px solid var(--border);}
.pan-table tr:last-child td{border-bottom:none;}
.pan-label{color:var(--sub);font-size:12px;}
.pan-value{font-weight:500;}
.pan-yao-row{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid rgba(0,0,0,.04);}
.pan-yao-row:last-child{border-bottom:none;}
.pan-yao-pos{width:50px;font-size:12px;color:var(--sub);flex-shrink:0;}
.pan-yao-yy{width:30px;font-size:18px;text-align:center;flex-shrink:0;}
.pan-yao-info{flex:1;font-size:13px;}
.pan-yao-dong{color:var(--accent);font-weight:600;}
.pan-yao-bian{font-size:11px;color:#999;margin-left:4px;}
.pan-gua-name{font-family:'Songti SC',serif;font-size:20px;color:var(--accent);font-weight:600;text-align:center;margin:10px 0;}
.pan-section-title{font-size:14px;font-weight:600;color:var(--accent);margin:16px 0 8px;padding-bottom:4px;border-bottom:1px solid rgba(153,51,51,.1);}
.pan-pill{display:inline-block;padding:2px 8px;border-radius:4px;font-size:12px;margin:2px;}
.pan-pill.accent{background:rgba(153,51,51,.1);color:var(--accent);}
.pan-pill.muted{background:#F0EDE5;color:#666;}
.pan-pill.jade{background:rgba(0,128,0,.1);color:#006600;}
.cache-badge{display:inline-block;font-size:11px;background:rgba(212,175,55,.15);color:#996600;padding:2px 8px;border-radius:4px;margin-left:8px;}

/* 八字日期时辰下拉框 */
#bzYear,#bzMonth,#bzDay,#birthTime{
  width:auto!important;
  min-width:90px;
  padding:10px 14px!important;
  font-size:16pt!important;
  border:1px solid #d0c8b8!important;
  border-radius:8px!important;
  background:#fff!important;
  margin:0 4px 8px 0!important;
  -webkit-appearance:menulist;
  appearance:menulist;
  height:auto!important;
  line-height:1.5!important;
  box-sizing:border-box!important;
  display:inline-block!important;
}
#bzYear{min-width:110px}
#bzMonth,#bzDay{min-width:80px}
#birthTime{min-width:140px}

/* ═══ 五术表单统一样式 ═══ */
/* 六爻.ly-* 对齐 其他.form-* 的值 */
.ly-wrap{max-width:600px !important;padding:20px 20px 30px !important;}
.ly-card{background:var(--card) !important;padding:25px 20px !important;border-radius:16px !important;margin-bottom:20px !important;box-shadow:0 4px 12px rgba(0,0,0,.03) !important;}
.ly-card::before{display:none !important;}
.ly-field{margin-bottom:20px !important;}
.ly-field:last-child{margin-bottom:0 !important;}
.ly-label{font-size:14px !important;color:var(--sub) !important;margin-bottom:10px !important;font-weight:500 !important;}
.ly-label .tip{font-size:11px !important;color:#999 !important;}
.ly-input,.ly-select{width:100% !important;padding:14px 16px !important;border:1px solid var(--border) !important;border-radius:10px !important;font-size:16px !important;background:#FAFAF8 !important;outline:none !important;color:var(--text) !important;transition:border .3s !important;appearance:none !important;font-family:'SimSun','宋体',serif !important;}
.ly-input:focus,.ly-select:focus{border-color:var(--accent) !important;}
.ly-notice{display:flex !important;align-items:flex-start !important;gap:8px !important;padding:12px 15px !important;background:rgba(153,51,51,.05) !important;border-radius:8px !important;font-size:12px !important;color:var(--accent) !important;margin-top:15px !important;line-height:1.5 !important;}
.ly-submit-bar{position:static !important;max-width:600px !important;margin:0 auto !important;padding:20px 20px 30px !important;box-sizing:border-box !important;}
.ly-submit-bar-inner{max-width:560px !important;margin:0 auto !important;}
.ly-submit{width:100% !important;padding:16px !important;background:var(--accent) !important;color:#fff !important;border:none !important;border-radius:30px !important;font-size:17px !important;letter-spacing:3px !important;cursor:pointer !important;box-shadow:0 6px 15px rgba(153,51,51,.3) !important;}
.ly-submit:disabled{background:#ccc !important;cursor:not-allowed !important;box-shadow:none !important;}
.ly-privacy{text-align:center !important;font-size:11px !important;color:#aaa !important;margin-top:10px !important;}
.ly-loading{position:fixed !important;inset:0 !important;background:rgba(249,247,242,.9) !important;display:none !important;align-items:center !important;justify-content:center !important;z-index:200 !important;backdrop-filter:blur(4px) !important;}
.ly-loading.active{display:flex !important;}
.ly-spinner{width:48px !important;height:48px !important;border:3px solid var(--border) !important;border-top-color:var(--accent) !important;border-radius:50% !important;animation:spin 1s linear infinite !important;margin:0 auto 16px !important;}
.ly-loading-text{font-size:15px !important;color:var(--sub) !important;}
.ly-result{max-width:600px !important;}
.ly-result-card{background:var(--card) !important;border-radius:16px !important;padding:20px !important;margin-bottom:16px !important;box-shadow:0 4px 12px rgba(0,0,0,.03) !important;}
.ly-result-card h3{font-family:'Songti SC',serif !important;font-size:17px !important;margin-bottom:12px !important;padding-left:10px !important;border-left:3px solid var(--accent) !important;}
.ly-unlock{background:linear-gradient(135deg,#fff,#fdfbf7) !important;border:1px solid rgba(153,51,51,.15) !important;border-radius:16px !important;padding:24px 20px !important;text-align:center !important;margin-bottom:20px !important;}
.ly-unlock h4{font-family:'Songti SC',serif !important;font-size:18px !important;margin-bottom:8px !important;}
.ly-unlock p{font-size:13px !important;color:var(--sub) !important;margin-bottom:18px !important;}
.ly-unlock-btn{background:var(--accent) !important;color:#fff !important;border:none !important;width:100% !important;padding:15px !important;border-radius:30px !important;font-size:16px !important;letter-spacing:2px !important;cursor:pointer !important;box-shadow:0 4px 12px rgba(153,51,51,.25) !important;text-decoration:none !important;display:block !important;text-align:center !important;}
.ly-error{color:var(--accent) !important;padding:12px !important;background:rgba(153,51,51,.05) !important;border-radius:10px !important;font-size:14px !important;}
.ly-desc{font-size:14px !important;color:var(--sub) !important;line-height:1.6 !important;}

/* ═══ 统一字体覆盖（六爻对齐其他四术） ═══ */
.ly-wrap,.ly-wrap *{font-family:'SimSun','宋体',serif !important;font-size:14pt !important;}
.ly-gua-name,.ly-result-card h3,.ly-unlock h4,.ly-section-title{font-weight:bold !important;font-size:22pt !important;}
.ly-label,.ly-input,.ly-select,.ly-shake-btn,.ly-submit,.ly-yao-row label,.ly-yao-row select,.ly-row4 .ly-select,.ly-unlock-btn,.ly-loading-text,.ly-yao-yy,.ly-yao-row .yr-name,.ly-yao-row .yr-dong{font-size:16pt !important;}
.ly-hint,.ly-notice,.ly-progress,.ly-label .tip,.ly-privacy,.ly-time-labels span,.ly-yao-row .yr-attr,.ly-yao-bian,.ly-cache,.ly-reset-link{font-size:14pt !important;}
.ly-pill,.ly-yao-pos,.ly-yao-info,.ly-yao-dong,.ly-desc,.ly-bian-name,.ly-analysis-item,.ly-error,.ly-yao-row .yr-symbol{font-size:16pt !important;}
.ly-gua-name{font-size:24pt !important;}


/* ===== AI分析 markdown 渲染样式（全局统一） ===== */
.md-p{margin:10px 0;line-height:1.9}
.md-h2{font-size:19px;color:#993333;margin:20px 0 8px;padding-bottom:7px;border-bottom:2px solid #f0e0e0;font-weight:700}
.md-h3{font-size:17px;color:#993333;margin:16px 0 6px;font-weight:600}
.md-h4{font-size:15px;color:#993333;margin:12px 0 4px;font-weight:600}
.md-h5{font-size:14px;color:#8a5a2b;margin:10px 0 4px;font-weight:600}
.md-box strong,.md-p strong,.md-ul li strong,.md-ol li strong{color:#993333}
.md-ul{margin:8px 0 8px 22px;list-style:disc}
.md-ol{margin:8px 0 8px 22px;list-style:decimal}
.md-ul li,.md-ol li{margin:4px 0;line-height:1.8}
.md-tbl{width:100%;border-collapse:collapse;margin:10px 0;font-size:13px}
.md-tbl th{background:#993333;color:#fff;padding:8px 10px;border:1px solid #d9c9c9;font-weight:600}
.md-tbl td{padding:8px 10px;border:1px solid #eee}
.md-tbl tr:nth-child(even) td{background:#faf7f2}
