:root{--bg:#060914;--bg-secondary:#0b1020;--panel-bg:#0d1121c7;--panel-border:#ffffff14;--panel-border-strong:#ffffff1f;--panel-shadow:0 30px 80px #03050e73;--surface-strong:#ffffff08;--chip-bg:#ffffff0d;--chip-border:#ffffff14;--text-main:#f3f5ff;--text-soft:#ecefffbd;--text-muted:#d6dbff80;--accent-strong:#ffd08e;--sans:"Inter", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;font-family:var(--sans);color:var(--text-main);background:radial-gradient(circle at top, #6b5bff38, transparent 30%), radial-gradient(circle at 80% 0%, #ffa25c2e, transparent 22%), linear-gradient(180deg, var(--bg) 0%, var(--bg-secondary) 100%);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}body:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-size:28px 28px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000000b3,#0000);mask-image:linear-gradient(#000000b3,#0000)}a{color:inherit}button,input,textarea,select{font:inherit}#root{width:min(1280px,100% - 32px);margin:0 auto;padding:28px 0 40px}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--text-main);font-weight:600;line-height:1.15}h1{letter-spacing:-.05em;font-size:clamp(2.35rem,5vw,4.4rem)}h2{letter-spacing:-.03em;font-size:clamp(1.45rem,3vw,2rem)}h3{font-size:1.2rem}p{color:var(--text-soft)}strong{color:var(--text-main)}::selection{color:#fff7ea;background:#ffcb8147}@media (width<=768px){#root{width:min(100% - 20px,1280px);padding:18px 0 28px}}.app-shell{flex-direction:column;gap:28px;display:flex}.hero-panel,.mode-panel,.input-panel,.result-panel,.result-card{border:1px solid var(--panel-border);background:var(--panel-bg);box-shadow:var(--panel-shadow);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.hero-panel{background:radial-gradient(circle at top right, #ffaa6033, transparent 28%), radial-gradient(circle at 20% 10%, #765cff40, transparent 24%), var(--panel-bg);border-radius:32px;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:28px;padding:40px;display:grid;position:relative;overflow:hidden}.hero-panel:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff1f,#0000 70%);width:320px;height:320px;position:absolute;inset:auto -80px -120px auto}.hero-copy{z-index:1;gap:18px;max-width:780px;display:grid;position:relative}.eyebrow{color:var(--accent-strong);letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px;font-size:13px}.hero-text{max-width:720px;color:var(--text-soft);font-size:18px}.hero-highlights{z-index:1;flex-wrap:wrap;gap:12px;display:flex;position:relative}.hero-side{z-index:1;align-content:start;gap:16px;display:grid;position:relative}.hero-insight-card{background:linear-gradient(#090d1bb8,#10162894);border:1px solid #ffffff1a;border-radius:24px;gap:10px;padding:22px;display:grid;box-shadow:inset 0 1px #ffffff0d}.hero-insight-card span{color:var(--accent-strong);letter-spacing:.12em;text-transform:uppercase;font-size:13px}.hero-insight-card strong{font-size:1.15rem;line-height:1.45}.hero-highlights span,.summary-chip,.trigram-pair span,.coin-rules span,.coin-progress span,.row-value{border:1px solid var(--chip-border);background:var(--chip-bg);min-height:36px;color:var(--text-main);border-radius:999px;justify-content:center;align-items:center;padding:0 14px;font-size:14px;display:inline-flex}.mode-panel,.input-panel,.result-panel{border-radius:28px;padding:28px}.mode-panel{gap:20px;display:grid}.mode-notes{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.mode-note-card{background:#ffffff08;border:1px solid #ffffff14;border-radius:18px;gap:8px;padding:16px 18px;display:grid}.mode-copy h2,.panel-head h2{margin-bottom:0}.mode-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.mode-button,.ghost-button,.action-button,.coin-face-button,.number-field input{font:inherit}.mode-button,.ghost-button,.coin-face-button{border:1px solid var(--panel-border-strong);background:var(--surface-strong);color:var(--text-main);transition:transform .18s,border-color .18s,background .18s,box-shadow .18s}.mode-button{text-align:left;cursor:pointer;border-radius:22px;gap:6px;padding:18px 20px;display:grid}.mode-button strong{font-size:18px}.mode-button span{color:var(--text-soft);font-size:14px}.mode-button:hover,.ghost-button:hover,.coin-face-button:hover{border-color:#fff3;transform:translateY(-1px)}.mode-button:disabled,.ghost-button:disabled,.coin-face-button:disabled,.copy-button:disabled,.action-button:disabled{cursor:not-allowed;opacity:.65;transform:none}.mode-button.is-active,.coin-face-button.is-active{background:linear-gradient(135deg,#8461ff4d,#ffaa6029);border-color:#ffcb818c;box-shadow:0 18px 40px #0f12243d}.workspace{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:start;gap:24px;display:grid}.workflow-steps{gap:12px;margin-bottom:22px;display:grid}.step-card{background:#ffffff06;border:1px solid #ffffff12;border-radius:22px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 18px;display:grid}.step-card.is-current{background:linear-gradient(#ffcb8114,#ffffff08);border-color:#ffcb8147}.step-card.is-done{border-color:#8ad0ff33}.step-card-index{width:48px;height:48px;color:var(--accent-strong);letter-spacing:.12em;background:#ffffff0a;border:1px solid #ffffff14;border-radius:16px;place-items:center;font-size:13px;font-weight:700;display:grid}.step-card-copy{gap:4px;display:grid}.step-card-copy strong{font-size:1rem}.step-card-state{min-height:34px;color:var(--text-soft);background:#ffffff0a;border:1px solid #ffffff14;border-radius:999px;align-items:center;padding:0 14px;font-size:13px;display:inline-flex}.panel-head,.result-card-head,.coin-row-head,.moving-item-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.card-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.ghost-button{cursor:pointer;border-radius:999px;min-height:44px;padding:0 16px}.copy-button{border:1px solid var(--panel-border-strong);min-height:36px;color:var(--text-main);cursor:pointer;background:#ffffff0a;border-radius:999px;padding:0 14px;transition:background .18s,border-color .18s,transform .18s}.copy-button:hover{border-color:#ffcb8173;transform:translateY(-1px)}.copy-button.is-copied{background:#ffcb8129;border-color:#ffcb818c}.action-button{min-height:36px;color:var(--text-main);cursor:pointer;background:#ffcb8114;border:1px solid #ffcb8159;border-radius:999px;padding:0 14px;transition:background .18s,border-color .18s,transform .18s}.action-button:hover{border-color:#ffcb818c;transform:translateY(-1px)}.action-button.is-active{background:#ffcb812e;border-color:#ffcb81ad}.progress-card{background:#ffffff06;border:1px solid #ffffff14;border-radius:22px;gap:14px;margin-top:18px;padding:18px;display:grid}.progress-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.progress-card-head>div{gap:6px;display:grid}.progress-track{background:#ffffff0d;border-radius:999px;height:10px;position:relative;overflow:hidden}.progress-fill{border-radius:inherit;background:linear-gradient(90deg,#ffd08ed1,#765cffc2);height:100%;display:block}.line-navigator{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.line-nav-button{min-height:70px;color:var(--text-main);cursor:pointer;text-align:left;background:#080b167a;border:1px solid #ffffff12;border-radius:18px;gap:4px;padding:12px 14px;transition:transform .18s,border-color .18s,background .18s;display:grid}.line-nav-button:hover{border-color:#ffcb8147;transform:translateY(-1px)}.line-nav-button span{color:var(--text-muted);font-size:13px}.line-nav-button strong{font-size:15px}.line-nav-button.is-current{background:#ffcb811a;border-color:#ffcb817a}.line-nav-button.is-complete{border-color:#8ad0ff38}.ritual-banner{color:var(--text-main);background:radial-gradient(circle at 0,#ffcb8124,#0000 28%),#ffffff09;border:1px solid #ffcb813d;border-radius:18px;margin-top:14px;padding:14px 16px;line-height:1.7;animation:1.2s ease-in-out infinite ritualPulse}.notice-banner{color:var(--text-main);background:radial-gradient(circle at 0,#8ad0ff1f,#0000 28%),#ffffff09;border:1px solid #8ad0ff38;border-radius:18px;margin-top:14px;padding:14px 16px;line-height:1.7}.coin-rules,.coin-progress,.number-tips,.note-stack,.moving-list,.facts-grid{gap:14px;display:grid}.coin-rules,.coin-progress{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px}.coin-progress{margin-top:14px}.coin-list{gap:16px;margin-top:20px;display:grid}.coin-row{border:1px solid var(--panel-border);background:#ffffff08;border-radius:24px;padding:18px}.coin-row.is-complete{background:#ffcb8114;border-color:#ffcb814d}.coin-row.is-next{border-color:#8ad0ff52;box-shadow:0 0 0 1px #8ad0ff14}.coin-row.is-rolling{border-color:#ffcb8175;animation:.85s ease-in-out infinite rowGlow;box-shadow:0 0 0 1px #ffcb8114,0 18px 34px #ffaa601f}.row-order,.result-label,.fact-label,.coin-slot-label{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:13px;display:block}.coin-row h3,.result-card h3{margin:0;font-size:22px}.coin-row-body{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px;display:grid}.coin-slot{background:#070a143d;border:1px solid #ffffff0f;border-radius:18px;padding:14px}.coin-toggle{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.coin-face-button{cursor:pointer;border-radius:16px;place-items:center;gap:4px;min-height:72px;display:grid}.coin-row.is-rolling .coin-face-button{border-color:#ffcb8147}.coin-face-button strong,.fact-box strong{font-size:18px}.coin-face-button span,.fact-box p,.hexagram-copy p,.moving-item p,.note-box p,.empty-state p,.number-field small{color:var(--text-soft)}.number-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px;display:grid}.number-field{gap:10px;display:grid}.number-field>span{color:var(--text-main);font-weight:600}.number-field input{border:1px solid var(--panel-border-strong);width:100%;min-height:60px;color:var(--text-main);box-sizing:border-box;background:#080b1694;border-radius:18px;outline:none;padding:0 18px}.number-field input:focus{border-color:#ffcb81a6;box-shadow:0 0 0 4px #ffcb811f}.number-tips{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.question-panel{background:#ffffff09;border:1px solid #ffffff14;border-radius:24px;margin-top:20px;padding:20px}.question-field{gap:10px;margin-top:14px;display:grid}.question-field>span{color:var(--text-main);font-weight:600}.question-field textarea{border:1px solid var(--panel-border-strong);width:100%;min-height:130px;color:var(--text-main);resize:vertical;background:#080b1694;border-radius:18px;outline:none;padding:16px 18px}.question-field textarea:focus{border-color:#ffcb81a6;box-shadow:0 0 0 4px #ffcb811f}.question-field-foot{justify-content:space-between;align-items:center;gap:12px;display:flex}.question-field-foot span{color:var(--text-muted);font-size:13px}.question-suggestions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.question-chip{min-height:38px;color:var(--text-soft);cursor:pointer;background:#ffffff08;border:1px solid #ffffff14;border-radius:999px;padding:0 14px;transition:transform .18s,border-color .18s,background .18s,color .18s}.question-chip:hover,.question-chip.is-active{color:var(--text-main);background:#ffcb811a;border-color:#ffcb8159;transform:translateY(-1px)}.result-panel{gap:18px;display:grid;position:sticky;top:24px}.result-status{background:#ffffff08;border:1px solid #ffffff14;border-radius:22px;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 20px;display:flex}.status-badge{min-height:36px;color:var(--text-soft);white-space:nowrap;background:#ffffff0a;border:1px solid #ffffff14;border-radius:999px;align-items:center;padding:0 14px;display:inline-flex}.status-badge.is-ready{color:var(--text-main);background:#ffcb811a;border-color:#ffcb8159}.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.overview-card{background:#070a143d;border:1px solid #ffffff12;border-radius:18px;gap:8px;padding:16px 18px;display:grid}.overview-card span{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:13px}.overview-card strong{font-size:1rem;line-height:1.5}.result-card{border-radius:24px;padding:22px}.result-card+.result-card{margin-top:0}.hexagram-panel-body{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:20px;margin-top:18px;display:grid}.hexagram-figure{background:#070a1447;border:1px solid #ffffff0f;border-radius:18px;padding:16px}.hexagram-line-row{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:14px;display:grid}.hexagram-line-row+.hexagram-line-row{margin-top:10px}.hexagram-line-name{color:var(--text-muted);font-size:13px}.hexagram-line{align-items:center;min-height:16px;display:grid}.hexagram-line.is-yang{grid-template-columns:minmax(0,1fr)}.hexagram-line.is-yin{grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr)}.hexagram-line.is-highlight .line-full,.hexagram-line.is-highlight .line-half{background:linear-gradient(90deg,#ffe2a8,#ffb570);box-shadow:0 0 0 1px #ffe4b414,0 8px 18px #ffaa6033}.line-full,.line-half{background:linear-gradient(90deg,#e6eafff2,#a5b4ffe0);border-radius:999px;width:100%;height:12px;display:block}.line-gap{display:block}.hexagram-copy{gap:12px;display:grid}.classic-quote,.classic-reading-item{background:#ffffff09;border:1px solid #ffffff14;border-radius:18px;padding:16px 18px}.classic-quote{gap:10px;display:grid}.classic-quote-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.classic-reading-list{gap:14px;display:grid}.classic-reading-item{gap:10px;display:grid}.classic-raw-text{color:var(--text-main);font-size:17px;line-height:1.8}.summary-output{white-space:pre-wrap;word-break:break-word;color:var(--text-main);background:#ffffff09;border:1px solid #ffffff14;border-radius:18px;margin:0;padding:16px 18px;font-family:inherit;line-height:1.85}.judgement{color:var(--text-main);font-size:18px}.subtle-text{color:var(--text-muted)}.moving-item,.fact-box,.note-box,.empty-state{background:#070a143d;border:1px solid #ffffff0f;border-radius:18px;padding:16px 18px}.moving-item-head span{color:var(--accent-strong);font-size:14px}.moving-transform{color:var(--text-main)}.facts-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.empty-state{text-align:center;place-content:center;gap:8px;min-height:220px;display:grid}.empty-state-tips{gap:8px;margin-top:12px;display:grid}.empty-state-tips span{color:var(--text-soft);text-align:left;background:#ffffff06;border:1px solid #ffffff0d;border-radius:14px;padding:10px 12px;display:block}button:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:2px;outline:2px solid #ffcb818f}@keyframes ritualPulse{0%,to{box-shadow:0 0 #ffcb810a}50%{box-shadow:0 0 0 4px #ffcb810f}}@keyframes rowGlow{0%,to{transform:translateY(0);box-shadow:0 0 0 1px #ffcb8114,0 18px 34px #ffaa601a}50%{transform:translateY(-2px);box-shadow:0 0 0 1px #ffcb8129,0 24px 42px #ffaa6029}}@media (width<=1120px){.hero-panel,.workspace,.hexagram-panel-body{grid-template-columns:1fr}.result-panel{position:static}}@media (width<=820px){.hero-panel,.mode-panel,.input-panel,.result-panel,.result-card{border-radius:24px}.hero-panel,.mode-panel,.input-panel,.result-panel{padding:20px}.mode-switch,.mode-notes,.coin-rules,.coin-progress,.number-grid,.number-tips,.facts-grid,.coin-row-body,.overview-grid,.line-navigator{grid-template-columns:1fr}.panel-head,.result-card-head,.coin-row-head,.progress-card-head,.result-status{flex-direction:column;align-items:stretch}.row-value,.summary-chip,.card-actions,.classic-quote-head{justify-content:flex-start}.card-actions>.action-button,.card-actions>.copy-button,.card-actions>.ghost-button{width:fit-content}.step-card{grid-template-columns:44px minmax(0,1fr)}.step-card-state{grid-column:1/-1;justify-self:start}}@media (width<=560px){.hero-panel{padding:18px}.hero-text{font-size:16px}.hero-insight-card,.question-panel,.result-card,.coin-row{border-radius:20px}.coin-toggle{grid-template-columns:repeat(2,minmax(0,1fr))}.coin-face-button{min-height:64px}.hexagram-line-row{grid-template-columns:42px minmax(0,1fr);gap:10px}.hexagram-line.is-yin{grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mode-button,.ghost-button,.action-button,.coin-face-button,.copy-button,.question-chip,.line-nav-button{transition-duration:.01ms}.ritual-banner,.coin-row.is-rolling{animation:none}}
