:root{--bg-0:#0b0a17;--bg-1:#14122a;--bg-2:#1c1938;--gold:#d9b26a;--gold-soft:#f0d9a8;--text-0:#f2eee6;--text-1:#c3bdd6;--text-2:#8e88a8;--accent:#7d5fff;--danger:#e08a8a;--radius:14px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:radial-gradient(1200px 600px at 10% -10%, #7d5fff40, transparent 60%), radial-gradient(900px 500px at 100% 0%, #d9b26a1f, transparent 55%), var(--bg-0);color:var(--text-0);min-height:100vh;font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,system-ui,-apple-system,sans-serif}.app-shell{flex-direction:column;min-height:100vh;display:flex}.site-header{border-bottom:1px solid #d9b26a26;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:20px clamp(16px,5vw,56px);display:flex}.brand{letter-spacing:.04em;color:var(--gold-soft);font-size:1.4rem;font-weight:700}.brand-mark{margin-right:6px}.site-nav{flex-wrap:wrap;gap:8px;display:flex}.nav-link{color:var(--text-1);border:1px solid #0000;border-radius:999px;padding:8px 14px;font-size:.92rem;text-decoration:none;transition:all .15s}.nav-link:hover{color:var(--text-0);background:#ffffff0d}.nav-link.active{color:var(--bg-0);background:linear-gradient(135deg, var(--gold-soft), var(--gold));border-color:#0000;font-weight:600}.lang-switch{appearance:none;color:var(--gold-soft);cursor:pointer;background:#d9b26a14;border:1px solid #d9b26a66;border-radius:999px;padding:8px 14px;font-size:.82rem;font-weight:700;transition:all .15s}.lang-switch:hover{background:#d9b26a2e}.site-main{flex:1;width:100%;max-width:960px;margin:0 auto;padding:clamp(20px,5vw,56px)}.site-footer{text-align:center;color:var(--text-2);border-top:1px solid #d9b26a1a;padding:20px;font-size:.82rem}.page-title{color:var(--gold-soft);margin-bottom:6px;font-size:1.8rem}.page-subtitle{color:var(--text-2);margin-bottom:28px;line-height:1.6}.card{border-radius:var(--radius);background:linear-gradient(#ffffff0a,#ffffff03);border:1px solid #d9b26a2e;margin-bottom:20px;padding:24px;box-shadow:0 8px 30px #00000040}.form-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin-bottom:18px;display:grid}.field label{color:var(--text-2);margin-bottom:6px;font-size:.82rem;display:block}.field input,.field select{width:100%;color:var(--text-0);background:#ffffff0a;border:1px solid #ffffff24;border-radius:8px;padding:10px 12px;font-size:.95rem}.field input:focus,.field select:focus{border-color:var(--gold);outline:none}.btn{appearance:none;cursor:pointer;background:linear-gradient(135deg, var(--gold-soft), var(--gold));color:#241c05;border:none;border-radius:999px;padding:11px 26px;font-size:.95rem;font-weight:600;transition:transform .12s,box-shadow .12s}.btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px #d9b26a59}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary{color:var(--text-0);background:#ffffff14}.btn-row{flex-wrap:wrap;gap:12px;display:flex}.error-box{color:var(--danger);background:#e08a8a1a;border:1px solid #e08a8a4d;border-radius:10px;margin-bottom:16px;padding:12px 16px}.disclaimer{color:var(--text-2);margin-top:18px;font-size:.8rem;line-height:1.6}.section-heading{color:var(--gold-soft);letter-spacing:.02em;margin:0 0 10px;font-size:1rem}.pillars-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-bottom:8px;display:grid}.pillar-box{text-align:center;background:#7d5fff14;border:1px solid #7d5fff40;border-radius:10px;padding:16px 8px}.pillar-box .pillar-name{color:var(--text-2);margin-bottom:6px;font-size:.78rem}.pillar-box .pillar-value{color:var(--gold-soft);letter-spacing:.06em;font-size:1.5rem;font-weight:700}.element-tags{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.element-tag{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;padding:4px 12px;font-size:.82rem}.score-row{align-items:center;gap:10px;margin:10px 0;display:flex}.score-label{width:64px;color:var(--text-2);flex-shrink:0;font-size:.85rem}.score-dots{gap:4px;display:flex}.score-dot{background:#ffffff24;border-radius:50%;width:10px;height:10px}.score-dot.filled{background:linear-gradient(135deg, var(--gold-soft), var(--gold))}.score-text{color:var(--text-1);margin:4px 0 14px;font-size:.9rem;line-height:1.6}.tab-row{gap:10px;margin-bottom:20px;display:flex}.tab-btn{color:var(--text-1);cursor:pointer;text-align:center;background:#ffffff08;border:1px solid #ffffff1f;border-radius:10px;flex:1;padding:12px;font-size:.92rem}.tab-btn.active{border-color:var(--gold);color:var(--gold-soft);background:#d9b26a14}.hexagram-lines{flex-direction:column-reverse;gap:8px;width:160px;margin:6px auto 18px;display:flex}.hexagram-line{gap:12px;height:12px;display:flex}.hexagram-line .bar{background:var(--gold-soft);border-radius:3px;flex:1}.hexagram-line.yin .bar{flex:none;width:44%}.hexagram-line.changing .bar{background:var(--accent);box-shadow:0 0 8px #7d5fffb3}.tarot-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.tarot-card{background:linear-gradient(160deg,#7d5fff1f,#ffffff05);border:1px solid #7d5fff40;border-radius:12px;padding:18px}.tarot-card .position{color:var(--text-2);margin-bottom:6px;font-size:.75rem}.tarot-card .name{color:var(--gold-soft);margin-bottom:4px;font-size:1.05rem;font-weight:700}.tarot-card .orientation{background:#ffffff14;border-radius:999px;margin-bottom:10px;padding:2px 8px;font-size:.72rem;display:inline-block}.tarot-card .orientation.reversed{color:var(--danger);background:#e08a8a2e}.home-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:24px;display:grid}.home-card{border-radius:var(--radius);color:var(--text-0);background:linear-gradient(#ffffff0a,#ffffff03);border:1px solid #d9b26a2e;padding:26px 22px;text-decoration:none;transition:transform .15s,border-color .15s;display:block}.home-card:hover{border-color:var(--gold);transform:translateY(-3px)}.home-card .icon{margin-bottom:10px;font-size:1.8rem;display:block}.home-card h3{color:var(--gold-soft);margin:0 0 8px}.home-card p{color:var(--text-2);margin:0;font-size:.88rem;line-height:1.6}.loading-text{color:var(--text-2);padding:20px 0}.result-question{color:var(--text-1);margin-bottom:16px;font-style:italic}
