/*! tailwindcss v4.2.4 | MIT License | https://tailwindcss.com */
:root{--hex-line-stroke:4px;--hex-line-color:#1e293b;--hex-line-yang-color:#1e293b;--hex-line-yin-color:#1e293b;--hex-moving-color:#970005}.cast-stage{padding:var(--space-12) var(--space-4);background:var(--color-iching-bg-warm);border-radius:var(--radius-lg);place-items:center;min-height:360px;display:grid}.cast-coins{gap:var(--space-6);margin-bottom:var(--space-6);display:flex}.coin{background:radial-gradient(circle at 30% 30%, var(--color-iching-gold-light), var(--color-iching-gold) 60%, var(--color-iching-gold-dark));border:3px solid var(--color-iching-gold-dark);width:64px;height:64px;box-shadow:var(--shadow-2);transform-style:preserve-3d;border-radius:50%;animation:.7s cubic-bezier(.4,0,.2,1) infinite coin-flip;position:relative}.coin:before{content:"";background:var(--color-ink);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);opacity:.55;position:absolute;inset:30%}.coin-2{animation-delay:.1s}.coin-3{animation-delay:.2s}@keyframes coin-flip{0%{transform:rotateY(0)translateY(0)}50%{transform:rotateY(180deg)translateY(-12px)}to{transform:rotateY(360deg)translateY(0)}}.cast-status{font-family:var(--font-serif);font-size:var(--text-md);color:var(--color-iching-gold-dark);letter-spacing:.2em;text-align:center}.hex-pair{gap:var(--space-6);flex-direction:column;align-items:center;display:flex}@media (min-width:768px){.hex-pair{justify-content:center;align-items:stretch;gap:var(--space-8);flex-direction:row}.hex-pair .hex-arrow{color:var(--color-iching-gold-dark);align-self:center;font-size:2rem}}.hex-card{border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);width:100%;max-width:420px;padding:var(--space-6);text-align:center;box-shadow:var(--shadow-2);background:#fff}.hex-card-title{font-family:var(--font-serif);font-size:var(--text-sm);color:var(--color-text-muted);letter-spacing:.2em;margin-bottom:var(--space-2)}.hex-symbol{color:var(--color-iching-gold-dark);margin:var(--space-3) 0;font-size:4rem;line-height:1}.hex-image{width:200px;height:200px;margin:var(--space-3) auto;object-fit:contain;display:block}.hex-name{font-family:var(--font-serif);font-size:var(--text-lg);color:var(--color-ink);letter-spacing:.1em;font-weight:700}.hex-element{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-muted)}.hex-summary{margin-top:var(--space-3);font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.7}.yao-stack{padding:var(--space-3);gap:8px;max-width:320px;margin:0 auto;display:grid}.yao{align-items:center;gap:var(--space-2);height:12px;display:flex}.yao-line{height:var(--hex-line-stroke);background:var(--hex-line-color);flex:1}.yao.yin .yao-line{background:linear-gradient(90deg, var(--hex-line-color) 0 42%, transparent 42% 58%, var(--hex-line-color) 58% 100%)}.yao.is-moving .yao-line{background:var(--hex-moving-color)}.yao.yin.is-moving .yao-line{background:linear-gradient(90deg, var(--hex-moving-color) 0 42%, transparent 42% 58%, var(--hex-moving-color) 58% 100%)}.yao .yao-pos{font-family:var(--font-serif);color:var(--color-text-muted);width:2.5em;font-size:.85em}.yao .yao-mark{color:var(--hex-moving-color);text-align:center;width:1em;font-size:.85em}.relation-card{background:var(--color-iching-bg-warm);border-radius:var(--radius);padding:var(--space-5);margin-top:var(--space-6);border:1px solid #d4af3766}.relation-card h3{color:var(--color-iching-gold-dark);font-size:var(--text-md);letter-spacing:.1em;margin-top:0}.moving-line-list{gap:var(--space-3);margin-top:var(--space-4);display:grid}.moving-line-item{border-left:3px solid var(--color-crimson);padding:var(--space-3) var(--space-4);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#9700050a}.moving-line-pos{font-family:var(--font-serif);color:var(--color-crimson);margin-right:var(--space-2);font-weight:600}.derived-grid{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:1fr;display:grid}@media (min-width:640px){.derived-grid{grid-template-columns:repeat(3,1fr)}}.derived-item{border:1px solid var(--color-border-subtle);border-radius:var(--radius);padding:var(--space-4);text-align:center;background:#fff}.derived-item .derived-label{font-family:var(--font-serif);font-size:var(--text-sm);color:var(--color-text-muted);letter-spacing:.15em}.derived-item .derived-symbol{color:var(--color-iching-gold-dark);margin:var(--space-2) 0;font-size:2.5rem;line-height:1}.derived-item .derived-name{font-family:var(--font-serif);color:var(--color-ink);font-weight:600}