/* ============================================================
   命理玄学平台 — 公共基础样式
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --gold:#c9a84c;--gold-light:#e8c97a;--gold-dark:#8b6914;
  --red:#8b1a1a;--red-light:#c0392b;
  --dark:#0a0806;--dark2:#140f05;--dark3:#1e1608;--dark4:#281e0a;
  --text:#e8dcc8;--text-muted:#9a8860;--text-dim:#6a5840;
  --radius:12px;--radius-sm:8px;
  --wood:#4a7c3f;--fire:#c0392b;--earth:#c8a84b;--metal:#a0a0b0;--water:#2c5f8a;
}
body{font-family:'Noto Serif SC','SimSun','宋体',serif;background:var(--dark);color:var(--text);min-height:100vh;overflow-x:hidden}
.bg-layer{position:fixed;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(ellipse at 15% 15%,rgba(201,168,76,.07) 0%,transparent 55%),
    radial-gradient(ellipse at 85% 85%,rgba(139,26,26,.09) 0%,transparent 55%),
    url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23c9a84c' fill-opacity='0.025'%3E%3Cpath d='M40 0L80 40L40 80L0 40z'/%3E%3C/g%3E%3C/svg%3E")}

/* 顶部导航 */
.top-nav{position:relative;z-index:10;background:rgba(10,8,6,.96);border-bottom:1px solid rgba(201,168,76,.2);padding:0 20px;display:flex;align-items:center;backdrop-filter:blur(8px);flex-wrap:wrap}
.nav-logo{font-size:1.2rem;font-weight:700;letter-spacing:.2em;background:linear-gradient(135deg,var(--gold-light),var(--gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;padding:13px 18px 13px 0;margin-right:6px;border-right:1px solid rgba(201,168,76,.2);white-space:nowrap;text-decoration:none}
.nav-links{display:flex;align-items:center;flex-wrap:wrap}
.nav-link{padding:13px 14px;font-size:.86rem;color:var(--text-muted);text-decoration:none;letter-spacing:.08em;white-space:nowrap;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}
.nav-link:hover{color:var(--gold-light)}
.nav-link.active{color:var(--gold-light);border-bottom-color:var(--gold)}

/* 页面头部 */
.page-header{position:relative;z-index:1;text-align:center;padding:40px 20px 28px;border-bottom:1px solid rgba(201,168,76,.15);background:linear-gradient(180deg,rgba(201,168,76,.04) 0%,transparent 100%)}
.page-header .logo{font-size:50px;line-height:1;margin-bottom:10px;animation:float 4s ease-in-out infinite;filter:drop-shadow(0 0 18px rgba(201,168,76,.45))}
.page-header h1{font-size:2.3rem;font-weight:700;letter-spacing:.3em;background:linear-gradient(135deg,var(--gold-light),var(--gold),var(--gold-dark));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:7px}
.page-header .sub{color:var(--text-muted);letter-spacing:.18em;font-size:.88rem}
.page-header .books{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin-top:12px}
.book-tag{font-size:.76rem;color:var(--gold);letter-spacing:.06em;padding:2px 9px;border:1px solid rgba(201,168,76,.3);border-radius:3px;background:rgba(201,168,76,.06)}

/* 主容器 */
.container{position:relative;z-index:1;max-width:920px;margin:0 auto;padding:26px 16px 60px;display:flex;flex-direction:column;gap:20px}

/* 卡片 */
.card{background:linear-gradient(135deg,rgba(30,22,8,.97),rgba(20,15,5,.99));border:1px solid rgba(201,168,76,.22);border-radius:var(--radius);padding:24px;box-shadow:0 4px 28px rgba(0,0,0,.5),inset 0 1px 0 rgba(201,168,76,.08);position:relative;overflow:hidden}
.card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.45}
.section-title{font-size:1.06rem;font-weight:600;color:var(--gold-light);letter-spacing:.15em;margin-bottom:18px;display:flex;align-items:center;gap:8px}

/* 按钮 */
.btn-gold{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 26px;background:linear-gradient(135deg,var(--gold-dark),var(--gold),var(--gold-dark));background-size:200% 100%;border:none;border-radius:var(--radius-sm);color:var(--dark);font-size:.98rem;font-weight:700;font-family:inherit;letter-spacing:.22em;cursor:pointer;transition:background-position .4s,transform .15s,box-shadow .2s;box-shadow:0 4px 16px rgba(201,168,76,.3)}
.btn-gold:hover{background-position:100% 0;transform:translateY(-1px);box-shadow:0 6px 24px rgba(201,168,76,.45)}
.btn-gold:active{transform:translateY(0)}
.btn-gold.full{display:flex;width:100%;padding:14px;font-size:1.02rem}

/* 表单 */
.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:13px;margin-bottom:16px}
.form-group{display:flex;flex-direction:column;gap:6px}
.form-group label{font-size:.81rem;color:var(--gold);letter-spacing:.1em}
.form-group input,.form-group select{background:rgba(0,0,0,.45);border:1px solid rgba(201,168,76,.28);border-radius:var(--radius-sm);color:var(--text);padding:9px 12px;font-size:.91rem;font-family:inherit;outline:none;transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
.form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23c9a84c' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;padding-right:33px}
.form-group input:focus,.form-group select:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,168,76,.13)}
.form-group input::placeholder{color:var(--text-dim)}
.form-group select option{background:var(--dark3);color:var(--text)}

/* 标签 */
.tag{display:inline-block;padding:2px 10px;border-radius:20px;font-size:.77rem;margin:2px 3px 2px 0}
.tag-gold{background:rgba(201,168,76,.15);border:1px solid rgba(201,168,76,.3);color:var(--gold-light)}
.tag-red{background:rgba(192,57,43,.15);border:1px solid rgba(192,57,43,.3);color:#e87060}
.tag-green{background:rgba(74,124,63,.15);border:1px solid rgba(74,124,63,.3);color:#7ec870}
.tag-blue{background:rgba(44,95,138,.15);border:1px solid rgba(44,95,138,.3);color:#60a0d0}
.tag-gray{background:rgba(160,160,176,.15);border:1px solid rgba(160,160,176,.3);color:#c0c0d0}

/* 五行色 */
.elem-wood{background:rgba(74,124,63,.22);color:#7ec870;border:1px solid rgba(74,124,63,.4)}
.elem-fire{background:rgba(192,57,43,.22);color:#e87060;border:1px solid rgba(192,57,43,.4)}
.elem-earth{background:rgba(200,168,75,.22);color:#d4b060;border:1px solid rgba(200,168,75,.4)}
.elem-metal{background:rgba(160,160,176,.22);color:#c0c0d0;border:1px solid rgba(160,160,176,.4)}
.elem-water{background:rgba(44,95,138,.22);color:#60a0d0;border:1px solid rgba(44,95,138,.4)}

.hl{color:var(--gold-light);font-weight:600}
.hl-red{color:#e87060;font-weight:600}
.hidden{display:none!important}
.analysis{line-height:1.95;color:var(--text);font-size:.91rem}
.analysis p{margin-bottom:10px}
.analysis h4{color:var(--gold);font-size:.87rem;margin:12px 0 5px;letter-spacing:.1em}
.bar-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.bar-label{width:32px;font-size:.84rem;text-align:right;flex-shrink:0}
.bar-track{flex:1;height:9px;background:rgba(255,255,255,.05);border-radius:5px;overflow:hidden}
.bar-fill{height:100%;border-radius:5px;transition:width 1s cubic-bezier(.4,0,.2,1)}
.bar-val{width:38px;font-size:.77rem;color:var(--text-muted);text-align:right;flex-shrink:0}
.divider{border:none;border-top:1px solid rgba(201,168,76,.12);margin:14px 0}
.site-footer{position:relative;z-index:1;text-align:center;padding:20px;color:var(--text-dim);font-size:.77rem;border-top:1px solid rgba(201,168,76,.1);letter-spacing:.05em}
@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}
.fade-up{animation:fadeUp .5s ease both}
.result-section{display:flex;flex-direction:column;gap:20px;animation:fadeUp .5s ease}
@media(max-width:600px){.card{padding:16px 13px}.form-grid{grid-template-columns:1fr 1fr}.page-header h1{font-size:1.7rem}.nav-link{padding:11px 9px;font-size:.8rem}}
