:root{--blue:#487fa8;--blue-dark:#294b65;--blue-soft:#e2edf6;--soft:#f3f7fb;--peach:#f4a38b;--ink:#233f53;--muted:#647b8b;--line:#d7e2ea;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--white);font:16px/1.65 Arial,"Helvetica Neue",sans-serif}button,input,textarea{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:3px solid var(--peach);outline-offset:4px}.preview-note{background:var(--blue-dark);color:#fff;text-align:center;padding:7px 16px;font-size:10px;letter-spacing:2px}.site-header{height:86px;max-width:1440px;margin:auto;padding:0 5%;display:flex;align-items:center;gap:44px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;font:29px Georgia,serif;white-space:nowrap}.brand img{display:block;width:36px;height:36px;flex:none}.brand span{display:flex;flex-direction:column}.brand small{font:7px Arial,sans-serif;letter-spacing:1.8px;margin-top:2px}.site-header nav{display:flex;gap:31px;margin-left:auto;font-size:13px}.site-header nav a:hover{color:var(--blue)}.header-cta{border:1px solid var(--blue-dark);background:transparent;padding:10px 17px;font-size:12px}.hero{min-height:700px;max-width:1440px;margin:auto;padding:72px 7% 85px;display:grid;grid-template-columns:1.02fr .98fr;gap:7%;align-items:center;overflow:hidden}.eyebrow,.reading-kicker{font-size:10px;font-weight:700;letter-spacing:2.3px;margin:0 0 22px}.eyebrow span{display:inline-block;width:29px;height:1px;background:var(--peach);vertical-align:middle;margin-right:12px}.hero h1{font:clamp(55px,6.4vw,91px)/.99 Georgia,serif;letter-spacing:-4px;margin:0 0 31px}.hero h1 em{font-weight:400;color:var(--blue)}.hero-intro{max-width:585px;font:20px/1.7 Georgia,serif;color:#536d80}.hero-actions{display:flex;gap:25px;align-items:center;margin-top:34px}.button{border:1px solid var(--blue-dark);padding:14px 20px;display:inline-flex;align-items:center;justify-content:space-between;gap:34px;font-size:13px}.primary{background:var(--blue-dark);color:#fff}.primary:hover{background:var(--blue)}.text-link{font-size:13px;border-bottom:1px solid var(--line);padding:11px 0}.text-link span{margin-left:13px}.trust-row{display:flex;gap:13px;align-items:center;font-size:10px;letter-spacing:1px;color:var(--muted);margin-top:40px}.trust-row i{width:3px;height:3px;background:var(--peach);border-radius:50%}.oracle-art{height:515px;position:relative;display:grid;place-items:center}.oracle-art:before{content:"";position:absolute;inset:7% 3%;background:radial-gradient(circle at 49% 46%,#fff 0 17%,#eaf2f7 18% 46%,transparent 47%)}.orbit{position:absolute;border:1px solid #b9cfdf;border-radius:50%}.orbit-one{width:450px;height:450px}.orbit-two{width:325px;height:325px}.orbit-two:after,.orbit-one:after{content:"";width:10px;height:10px;background:var(--peach);border-radius:50%;position:absolute;top:35px;right:75px}.orbit-two:after{top:auto;bottom:5px;right:90px;width:6px;height:6px;background:var(--blue)}.oracle-card{width:235px;height:345px;background:linear-gradient(165deg,var(--blue-dark),#376b8f);color:#fff;position:relative;z-index:2;padding:22px;box-shadow:0 30px 50px #294b6530;display:flex;flex-direction:column;align-items:center}.oracle-card:before{content:"";position:absolute;inset:10px;border:1px solid #8cb1ca}.oracle-card>p{font-size:8px;letter-spacing:2px;margin:0}.hero-hexagram{display:flex;flex-direction:column;gap:8px;width:78px;margin:auto}.hero-hexagram i,.result-hex i{height:7px;background:#fff;display:block;position:relative}.hero-hexagram .yin,.result-hex .yin{background:linear-gradient(90deg,#fff 42%,transparent 42% 58%,#fff 58%)}.hero-hexagram .moving:after{content:"×";position:absolute;right:-22px;top:-10px;color:var(--peach)}.oracle-card>div:last-child{text-align:center;display:grid}.oracle-card>div:last-child span{font:31px Georgia}.oracle-card strong{font:12px Arial;letter-spacing:2px}.oracle-card small{font-size:9px;opacity:.72}.art-caption{position:absolute;bottom:2px;right:4px;font:italic 13px/1.6 Georgia;color:var(--muted)}.intent-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 5%;display:flex;justify-content:center;gap:38px;font-size:12px}.intent-strip>span{color:var(--muted);letter-spacing:2px}.intent-strip a{font-family:Georgia,serif;font-size:15px}.intent-strip a:hover{color:var(--blue)}.section{padding:95px max(6%,calc((100vw - 1260px)/2))}.section-intro{display:grid;grid-template-columns:1.1fr 1fr;column-gap:12%;align-items:end;margin-bottom:55px}.section-intro .eyebrow{grid-column:1/-1}.section h2{font:46px/1.12 Georgia,serif;letter-spacing:-1.5px;margin:0}.section-intro>p:last-child{color:var(--muted);max-width:440px;margin-bottom:4px}.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.steps article{padding:25px 35px 10px 0;border-right:1px solid var(--line);min-height:300px}.steps article+article{padding-left:35px}.steps article:last-child{border-right:0}.steps article>span{font-size:10px;letter-spacing:2px;color:var(--muted)}.step-icon{height:94px;margin-top:20px;color:var(--blue);display:flex;align-items:center}.question-mark{font:65px Georgia}.coins{position:relative;width:130px}.coins i{width:48px;height:48px;border:1px solid var(--blue);border-radius:50%;position:absolute;background:#fff}.coins i:nth-child(1){left:0}.coins i:nth-child(2){left:32px;top:10px;background:var(--blue-soft)}.coins i:nth-child(3){left:65px}.mini-lines{width:65px;display:flex;flex-direction:column;gap:8px;justify-content:center}.mini-lines i{height:6px;background:var(--blue);width:65px}.mini-lines .split{background:linear-gradient(90deg,var(--blue) 42%,transparent 42% 58%,var(--blue) 58%)}.steps h3{font:25px Georgia;margin:0 0 12px}.steps p{font-size:14px;color:var(--muted);max-width:310px}.daily{padding-top:30px;padding-bottom:30px}.daily-card{min-height:390px;background:var(--blue-dark);color:#fff;padding:58px 7%;display:grid;grid-template-columns:1fr .75fr;align-items:center;overflow:hidden}.daily-card h2{font-size:52px}.daily-card>div:first-child>p:not(.eyebrow){color:#c9dce8;max-width:480px}.light span{background:var(--peach)}.pale{margin-top:20px;background:#fff;color:var(--blue-dark);border-color:#fff}.sun-symbol{height:270px;position:relative;display:grid;place-items:center}.sun-symbol span{width:170px;height:170px;border-radius:50%;background:var(--peach);box-shadow:0 0 0 30px #f4a38b18,0 0 0 60px #f4a38b10}.sun-symbol:before,.sun-symbol:after,.sun-symbol i:before,.sun-symbol i:after{content:"";position:absolute;width:1px;height:270px;background:#86a8bf}.sun-symbol:after{transform:rotate(90deg)}.sun-symbol i:before{transform:rotate(45deg)}.sun-symbol i:after{transform:rotate(-45deg)}.learn{background:var(--soft)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.section-heading>a{font-size:13px;border-bottom:1px solid var(--line)}.section-heading>p{max-width:430px;color:var(--muted);margin:0}.learn-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr;border-top:1px solid var(--line)}.learn-grid article{padding:28px 30px 10px 0}.learn-grid article+article{border-left:1px solid var(--line);padding-left:30px}.learn-grid small{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.learn-grid h3{font:25px/1.2 Georgia;margin:17px 0 13px}.learn-grid p{font-size:13px;color:var(--muted)}.learn-grid a{font-size:12px;border-bottom:1px solid var(--line)}.featured-guide{display:grid;grid-template-columns:135px 1fr;gap:24px}.guide-visual{background:var(--blue-soft);display:grid;place-items:center;align-content:center;font:37px/1.2 Georgia;color:var(--blue);min-height:210px}.hexagram-cards{border-top:1px solid var(--line)}.hexagram-cards>a{min-height:130px;display:grid;grid-template-columns:60px 90px 1fr 30px;gap:30px;align-items:center;border-bottom:1px solid var(--line);transition:padding .2s}.hexagram-cards>a:hover{padding-left:12px}.number{font:25px Georgia;color:var(--blue)}.hexagram-cards h3{font:26px Georgia;margin:2px 0}.hexagram-cards small{font-size:9px;letter-spacing:1.6px}.hexagram-cards p{font-size:12px;color:var(--muted);margin:0}.hexagram-cards b{font-size:20px;font-weight:normal}.tiny-hex{height:57px;width:62px;background:repeating-linear-gradient(to bottom,var(--blue-dark) 0 4px,transparent 4px 9px)}.tiny-hex.broken{background:repeating-linear-gradient(to bottom,var(--blue-dark) 0 4px,transparent 4px 9px);clip-path:polygon(0 0,42% 0,42% 100%,0 100%,0 0,58% 0,100% 0,100% 100%,58% 100%,58% 0)}.tiny-hex.peace{background:linear-gradient(to bottom,transparent 0 25px),repeating-linear-gradient(to bottom,var(--blue-dark) 0 4px,transparent 4px 9px);position:relative}.tiny-hex.peace:before{content:"";position:absolute;top:0;width:100%;height:25px;background:repeating-linear-gradient(to bottom,var(--blue-dark) 0 4px,transparent 4px 9px);clip-path:polygon(0 0,42% 0,42% 100%,0 100%,0 0,58% 0,100% 0,100% 100%,58% 100%,58% 0)}.all-hexagrams{margin-top:30px;background:none;border:1px solid var(--line);padding:13px 20px;font-size:12px}.all-hexagrams span{margin-left:30px}.method{background:var(--blue-soft);display:grid;grid-template-columns:.72fr 1.2fr;gap:9%;align-items:center}.method-mark{text-align:center;color:var(--blue)}.method-mark img{display:inline-block;width:220px;height:auto;max-width:100%}.method>div:last-child>p:not(.eyebrow){color:var(--muted);max-width:630px;margin:25px 0}.method .text-link{display:inline-block}footer{padding:48px 6%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;border-top:1px solid var(--line)}.footer-brand{font:32px Georgia}.footer-brand+p{font-size:12px;margin:0}.footer-brand~div{display:flex;gap:24px;font-size:11px}footer small{grid-column:1/-1;color:var(--muted);font-size:10px}
dialog{width:min(900px,calc(100% - 28px));max-height:94vh;padding:0;border:0;color:var(--ink);background:#fff;box-shadow:0 30px 80px #17364c70}dialog::backdrop{background:#17384b88;backdrop-filter:blur(7px)}.dialog-close{position:absolute;z-index:4;right:17px;top:10px;border:0;background:transparent;font:28px Georgia}.reading-progress{height:4px;display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.reading-progress i{background:#e4ebf0}.reading-progress i.active{background:var(--peach)}.reading-step{padding:55px 9% 60px;min-height:620px}.reading-step h2{font:44px/1.12 Georgia;margin:0}.reading-kicker{color:var(--blue)}.reading-lead{color:var(--muted);max-width:650px;margin:20px 0 28px}.field-label{display:block;font-size:9px;letter-spacing:2px;margin-bottom:7px}.question-step textarea{width:100%;min-height:120px;border:1px solid #a9bfce;background:var(--soft);padding:18px;resize:vertical;font:18px/1.5 Georgia}.prompt-row{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0}.prompt-row button{border:1px solid var(--line);background:#fff;border-radius:20px;padding:7px 12px;font-size:11px}.privacy-line{font-size:11px;color:var(--muted);margin:24px 0}.privacy-line span{margin-right:8px}.full{width:100%}.prepare-step{text-align:center}.breath-orbit{width:180px;height:180px;border:1px solid var(--line);border-radius:50%;margin:5px auto 30px;display:grid;place-items:center;position:relative}.breath-orbit span{width:82px;height:82px;background:var(--blue-soft);border-radius:50%;animation:breathe 4s ease-in-out infinite}.breath-orbit i{position:absolute;width:122px;height:122px;border:1px solid var(--peach);border-radius:50%}.prepare-step blockquote{background:var(--soft);border-left:3px solid var(--peach);margin:27px auto;padding:15px 19px;max-width:580px;font:italic 16px/1.5 Georgia;text-align:left}.demo-label{font-size:10px;color:var(--muted);text-align:center;margin:13px 0 0}.casting-layout{display:grid;grid-template-columns:1fr .62fr;gap:9%;align-items:center}.coin-stage{height:145px;position:relative;display:flex;justify-content:center;align-items:center;margin:10px 0}.coin{width:82px;height:82px;border-radius:50%;border:2px solid var(--blue);background:var(--blue-soft);display:grid;place-items:center;font:21px Georgia;color:var(--blue);margin-left:-12px;box-shadow:0 10px 17px #294b6518}.coin:first-child{margin-left:0;transform:rotate(-12deg)}.coin:nth-child(2){transform:translateY(-12px) rotate(7deg)}.coin:nth-child(3){transform:rotate(15deg)}.has-result .coin{animation:toss .45s ease-out}.coin-result{text-align:center;font-size:11px;letter-spacing:1px;color:var(--muted)}.cast-build{position:relative;background:var(--soft);padding:35px 50px;min-height:360px}.cast-build>span{display:block;font-size:9px;letter-spacing:2px;margin-bottom:40px}.building-lines{display:flex;flex-direction:column;gap:13px}.building-lines i{display:block;height:9px;background:var(--blue);position:relative}.building-lines i.yin{background:linear-gradient(90deg,var(--blue) 42%,transparent 42% 58%,var(--blue) 58%)}.building-lines i.empty{background:transparent;border-top:1px dashed #aec2cf}.building-lines i.moving{background:var(--peach)}.building-lines i b{position:absolute;right:-23px;top:-10px;color:var(--peach)}.cast-build small{position:absolute;right:11px;top:89px;font-size:7px;line-height:32px;color:var(--muted)}.result-step{padding-top:42px}.result-heading{height:170px;background:var(--blue-dark);display:flex;align-items:center;justify-content:center;gap:50px}.result-hex{display:flex;flex-direction:column;gap:8px;width:90px}.result-hex i.moving{background:var(--peach)}.change-arrow{color:#bad0de;font-size:25px}.result-title-row{display:grid;grid-template-columns:1fr 1fr;padding:25px 0;border-bottom:1px solid var(--line)}.result-title-row small,.result-summary small,.result-copy>small{font-size:8px;letter-spacing:1.7px;color:var(--muted)}.result-title-row h2{font-size:34px;margin-top:4px}.result-title-row h3{font:25px Georgia;margin:5px 0}.result-title-row span{color:var(--blue)}.result-summary{background:var(--soft);padding:19px 22px;margin-top:20px}.result-summary p{font:20px/1.5 Georgia;margin:6px 0}.result-tabs{display:flex;border-bottom:1px solid var(--line);margin-top:25px}.result-tabs button{border:0;background:none;padding:12px 18px 10px;font-size:11px;color:var(--muted)}.result-tabs button.active{color:var(--ink);border-bottom:2px solid var(--peach)}.result-copy{padding:24px 0 10px}.result-copy h3{font:24px Georgia;margin:7px 0}.result-copy p{font-size:14px;color:var(--muted)}.reflection{border-left:2px solid var(--peach);padding:2px 0 2px 17px;margin-top:20px}.reflection span{font-size:8px;letter-spacing:1.7px}.reflection p{font:17px Georgia;margin:3px 0;color:var(--ink)}.result-actions{display:flex;gap:10px;margin-top:18px}.outline{background:white;color:var(--blue-dark)}@keyframes breathe{50%{transform:scale(1.18);opacity:.75}}@keyframes toss{0%{transform:translateY(-25px) rotate(140deg);opacity:.5}}
@media(max-width:950px){.site-header nav{display:none}.header-cta{margin-left:auto}.hero{grid-template-columns:1fr .8fr;padding-left:6%;padding-right:6%}.hero h1{font-size:62px}.orbit-one{width:370px;height:370px}.oracle-card{width:205px;height:315px}.intent-strip{gap:20px;overflow:auto;justify-content:flex-start}.section-intro{grid-template-columns:1fr 1fr}.learn-grid{grid-template-columns:1fr 1fr}.learn-grid article:last-child{border-left:0;border-top:1px solid var(--line);grid-column:1/-1}.featured-guide{grid-template-columns:115px 1fr}}
@media(max-width:700px){.preview-note{font-size:8px;letter-spacing:1px}.site-header{height:70px;padding:0 5%}.brand{font-size:25px}.brand img{width:32px;height:32px}.header-cta{padding:8px 10px;font-size:10px}.hero{min-height:auto;grid-template-columns:1fr;padding:52px 6% 36px}.hero h1{font-size:54px;letter-spacing:-2.7px}.hero-intro{font-size:17px}.hero-actions{align-items:flex-start;flex-direction:column;gap:8px}.trust-row{gap:8px;flex-wrap:wrap;margin-top:28px}.oracle-art{height:420px;margin-top:15px}.orbit-one{width:345px;height:345px}.orbit-two{width:260px;height:260px}.oracle-card{width:190px;height:290px}.art-caption{right:0}.intent-strip{padding:15px 6%;gap:25px}.intent-strip>a{white-space:nowrap}.section{padding:65px 6%}.section h2{font-size:38px}.section-intro{grid-template-columns:1fr;gap:20px;margin-bottom:35px}.section-intro .eyebrow{grid-column:auto}.steps{grid-template-columns:1fr}.steps article,.steps article+article{border-right:0;border-bottom:1px solid var(--line);padding:22px 0;min-height:auto}.step-icon{height:76px}.daily{padding-top:0;padding-bottom:0}.daily-card{grid-template-columns:1fr;padding:45px 9%}.daily-card h2{font-size:40px}.sun-symbol{height:210px}.sun-symbol span{width:120px;height:120px}.sun-symbol:before,.sun-symbol:after,.sun-symbol i:before,.sun-symbol i:after{height:200px}.section-heading{align-items:flex-start;flex-direction:column}.learn-grid{grid-template-columns:1fr}.learn-grid article,.learn-grid article+article{border-left:0;border-top:1px solid var(--line);padding:24px 0}.learn-grid article:last-child{grid-column:auto}.featured-guide{grid-template-columns:90px 1fr}.hexagram-cards>a{grid-template-columns:40px 65px 1fr 15px;gap:11px}.hexagram-cards h3{font-size:20px}.hexagram-cards p{display:none}.tiny-hex{transform:scale(.8)}.method{grid-template-columns:1fr}.method-mark{text-align:left}.method-mark img{width:145px}footer{grid-template-columns:1fr 1fr}.footer-brand~div{grid-column:1/-1;flex-wrap:wrap}.reading-step{padding:45px 6% 40px;min-height:600px}.reading-step h2{font-size:35px}.prompt-row{flex-direction:column;align-items:flex-start}.casting-layout{grid-template-columns:1fr}.coin-stage{height:115px}.coin{width:65px;height:65px}.cast-build{min-height:285px;padding:25px 43px}.cast-build>span{margin-bottom:24px}.result-step{padding:35px 5%}.result-heading{height:135px}.result-title-row{grid-template-columns:1fr;gap:18px}.result-title-row h2{font-size:30px}.result-summary p{font-size:17px}.result-tabs{overflow:auto}.result-tabs button{white-space:nowrap;padding-left:10px;padding-right:10px}.result-actions{flex-direction:column}.result-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
.six-line-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.six-line-meta span{background:var(--soft);padding:11px;font-size:9px;letter-spacing:1px;color:var(--muted)}.six-line-meta b{display:block;margin-top:3px;font-size:12px;color:var(--ink);letter-spacing:0}.line-table{border-top:1px solid var(--line);font-size:11px}.line-table>div{display:grid;grid-template-columns:.5fr 1fr .8fr 1fr .7fr;gap:8px;align-items:center;padding:8px;border-bottom:1px solid var(--line)}.line-table .line-head{font-size:8px;letter-spacing:1px;color:var(--muted)}.line-table b{font-weight:normal;color:var(--blue)}.line-table .active-line{background:#fff5f1}.method-note{font-size:10px!important;border-left:2px solid var(--peach);padding-left:12px;margin-top:14px}@media(max-width:700px){.six-line-meta{grid-template-columns:1fr}.line-table>div{grid-template-columns:.4fr 1fr .8fr 1fr .7fr;font-size:9px;gap:4px}}
.han-glyph{font-family:"Kaiti SC","STKaiti","KaiTi","Noto Serif CJK SC","Songti SC",serif;font-weight:400}.oracle-card .card-name{display:flex;flex-direction:column;align-items:center;line-height:1}.oracle-card .card-name small{font:7px Arial,sans-serif;letter-spacing:1.5px;opacity:.68}.oracle-card .card-name .han-glyph{font-size:43px;line-height:1.14;margin-top:3px;color:#fff}.oracle-card .card-name strong{font:10px Arial,sans-serif;letter-spacing:2px}.oracle-card .card-name em{font:7px Arial,sans-serif;letter-spacing:1.3px;font-style:normal;opacity:.7;margin-top:4px}.symbol-language{background:#fff;border-top:1px solid var(--line)}.symbol-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.symbol-card{min-height:470px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;grid-template-rows:255px 1fr}.memory-mark,.classic-mark{display:flex;flex-direction:column;align-items:center;justify-content:center}.memory-mark{background:var(--soft);border-right:1px solid var(--line)}.memory-mark svg{width:105px;height:105px;fill:none;stroke:var(--blue);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.memory-mark small,.classic-mark>span{font-size:7px;letter-spacing:1.4px;color:var(--muted);text-align:center}.classic-mark{background:#fff}.specimen-hex{width:72px;display:flex;flex-direction:column;gap:7px;margin-bottom:22px}.specimen-hex i{height:6px;background:var(--blue-dark)}.specimen-hex.all-yin i{background:linear-gradient(90deg,var(--blue-dark) 42%,transparent 42% 58%,var(--blue-dark) 58%)}.specimen-hex.tai i:nth-child(-n+3){background:linear-gradient(90deg,var(--blue-dark) 42%,transparent 42% 58%,var(--blue-dark) 58%)}.name-mark{grid-column:1/-1;padding:26px 30px;display:flex;align-items:center;gap:25px}.name-mark>.han-glyph{font-size:72px;line-height:1;color:var(--blue);min-width:75px;text-align:center}.name-mark>div{border-left:1px solid var(--line);padding-left:24px}.name-mark small{font-size:8px;letter-spacing:2px;color:var(--muted)}.name-mark h3{font:24px Georgia,serif;margin:3px 0}.name-mark p{font-size:11px;color:var(--muted);margin:0}.peace-card .memory-mark svg{stroke:var(--peach)}.symbol-note{display:flex;gap:20px;align-items:center;margin:25px 0 0;font-size:12px;color:var(--muted)}.symbol-note span{font-size:8px;letter-spacing:1.7px;color:var(--ink);border:1px solid var(--line);padding:6px 9px}.result-title-row .han-glyph{font-size:1.18em;margin-left:5px}@media(max-width:900px){.symbol-grid{grid-template-columns:1fr}.symbol-card{grid-template-rows:220px 1fr}.memory-mark svg{width:90px}.name-mark>.han-glyph{font-size:62px}}@media(max-width:700px){.symbol-card{min-height:410px}.name-mark{padding:22px 18px;gap:15px}.name-mark>.han-glyph{font-size:55px;min-width:60px}.name-mark>div{padding-left:15px}.symbol-note{align-items:flex-start;flex-direction:column;gap:8px}}

/* Four-zone hexagram identity card: classic sign, memory symbol, English reading, Chinese name. */
.symbol-card{min-height:560px;grid-template-columns:1fr 1fr;grid-template-rows:245px 150px 165px}
.symbol-card .classic-mark{grid-column:1;grid-row:1;background:#fff;border-right:1px solid var(--line)}
.symbol-card .memory-mark{grid-column:2;grid-row:1;background:var(--soft);border-right:0}
.symbol-card .classic-mark .specimen-hex{margin-bottom:0}
.symbol-card .memory-mark strong{font-size:11px;line-height:1.35;letter-spacing:1.3px;text-align:center;margin-top:12px;padding:0 14px;font-weight:500}
.english-mark{grid-column:1/-1;grid-row:2;border-top:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;padding:22px 30px}
.english-mark h3{font:36px/1.05 Georgia,serif;letter-spacing:-.7px;margin:0 0 9px}
.english-mark p{font-size:13px;color:var(--muted);margin:0}
.chinese-mark{grid-column:1/-1;grid-row:3;border-top:1px solid var(--line);background:#fbfdfe;display:flex;align-items:center;padding:22px 30px;gap:30px}
.chinese-mark .han-glyph{font-size:68px;line-height:1;color:var(--blue);min-width:78px;text-align:center}
.chinese-mark span{font:15px Arial,sans-serif;letter-spacing:3px;color:var(--ink);border-left:1px solid var(--line);padding:14px 0 14px 30px}
.peace-card .chinese-mark .han-glyph{color:#d57f68}
@media(max-width:900px){.symbol-card{min-height:500px;grid-template-rows:215px 135px 150px}.english-mark h3{font-size:34px}}
@media(max-width:700px){.symbol-card{min-height:450px;grid-template-rows:190px 125px 135px}.symbol-card .memory-mark svg{width:75px;height:75px}.symbol-card .memory-mark strong{font-size:10px}.specimen-hex{width:62px}.english-mark,.chinese-mark{padding-left:22px;padding-right:22px}.english-mark h3{font-size:31px}.chinese-mark .han-glyph{font-size:57px;min-width:62px}.chinese-mark span{font-size:14px;padding-left:22px}}

/* Every memory mark has one dominant focal point; supporting strokes explain its motion. */
.memory-mark .focus-symbol{overflow:visible;stroke:var(--blue)}
.memory-mark .focus-symbol .support-stroke{stroke:var(--blue);stroke-width:2;opacity:.62}
.memory-mark .focus-symbol .focus-guide{stroke:var(--blue);stroke-width:1.5;opacity:.34}
.memory-mark .focus-symbol .focus-halo{fill:var(--blue-soft);stroke:none;opacity:.95}
.memory-mark .focus-symbol .focus-ring{fill:#fff;stroke:var(--blue-dark);stroke-width:2.4}
.memory-mark .focus-symbol .focus-core{fill:var(--peach);stroke:#fff;stroke-width:2.2}
.qian-symbol .support-stroke{stroke-width:2.2!important;opacity:.72!important}
.qian-symbol .focus-halo{opacity:.72!important}
.qian-symbol .focus-core{stroke-width:3!important}
.kun-symbol .support-stroke{opacity:.48!important}
.kun-symbol .focus-core{fill:var(--blue-dark)!important;stroke:var(--soft)!important}
.tai-symbol .support-stroke{stroke:var(--blue-dark)!important;opacity:.62!important}
.tai-symbol .focus-halo{fill:#f9d8ce!important;opacity:.66!important}
.tai-symbol .focus-ring{fill:#fff8f5!important;stroke:var(--peach)!important}
.tai-symbol .focus-core{fill:var(--blue-dark)!important;stroke:#fff!important}

/* Friendly illustrative marks: readable before the viewer knows I Ching terminology. */
.qian-symbol .sun-rays path{fill:none;stroke:var(--blue);stroke-width:3;stroke-linecap:round;opacity:.82}
.qian-symbol .sun-rays .short-rays{stroke-width:2;opacity:.48}
.qian-symbol .sun-disc{fill:var(--peach);stroke:#fff;stroke-width:3}
.qian-symbol .sun-face{fill:none;stroke:var(--blue-dark);stroke-width:2.2;stroke-linecap:round}
.qian-symbol .sun-cheek{fill:#fff;stroke:none;opacity:.62}
.kun-symbol .earth-body{fill:var(--blue-soft);stroke:none}
.kun-symbol .earth-surface{fill:none;stroke:var(--blue-dark);stroke-width:3.2;stroke-linecap:round}
.kun-symbol .earth-layer{fill:none;stroke:var(--blue);stroke-width:1.8;stroke-linecap:round;opacity:.55}
.kun-symbol .earth-embrace{fill:none;stroke:var(--blue);stroke-width:2.2;stroke-linecap:round;opacity:.75}
.kun-symbol .seed{fill:var(--peach);stroke:#fff;stroke-width:1.8}
.tai-symbol .heaven-force{fill:none;stroke:var(--blue-dark);stroke-width:2.4;stroke-linecap:round}
.tai-symbol .earth-force{fill:none;stroke:var(--peach);stroke-width:4.2;stroke-linecap:round}
.tai-symbol .heaven-arrow{fill:none;stroke:var(--blue-dark);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tai-symbol .earth-arrow{fill:none;stroke:var(--peach);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.tai-symbol .meeting-halo{fill:#fff;stroke:var(--blue-soft);stroke-width:7}
.tai-symbol .meeting-core{fill:url(#tai-balance);stroke:#fff;stroke-width:2.5}
.tai-symbol .balance-mark{fill:none;stroke:#fff;stroke-width:1.5;stroke-linecap:round}

/* Refined tone: symbolic and approachable, with the restraint of an editorial system. */
.qian-symbol .sun-disc{fill:var(--peach);stroke:var(--blue-dark);stroke-width:1.8}
.qian-symbol .sun-centre{fill:#fff;stroke:none;opacity:.82}
.kun-symbol .earth-body{fill:var(--blue-soft);stroke:var(--blue-dark);stroke-width:1.8;stroke-linejoin:round}
.kun-symbol .earth-surface{stroke:var(--blue-dark);stroke-width:4;stroke-linecap:square}
.kun-symbol .earth-layer{stroke:var(--blue);stroke-width:1.7;stroke-linecap:square;opacity:.56}
.kun-symbol .earth-embrace{stroke:var(--blue-dark);stroke-width:2;fill:none;opacity:.66}
.kun-symbol .earth-seed-halo{fill:#fff;stroke:none;opacity:.72}
.kun-symbol .seed{fill:var(--peach);stroke:var(--blue-dark);stroke-width:1.2}
.tai-symbol .tai-boundary{fill:none;stroke-linecap:square}
.tai-symbol .tai-boundary.heaven{stroke:var(--blue-dark);stroke-width:1.4;opacity:.3}
.tai-symbol .tai-boundary.earth{stroke:var(--peach);stroke-width:2.8;opacity:.42}
.tai-symbol .heaven-force{stroke:var(--blue-dark);stroke-width:2.6;stroke-linecap:round}
.tai-symbol .earth-force{stroke:var(--peach);stroke-width:4;stroke-linecap:round}
.tai-symbol .meeting-halo{fill:var(--soft);stroke:#fff;stroke-width:4}
.tai-symbol .meeting-core{stroke:var(--blue-dark);stroke-width:1.2}

/* Product-ready emblem study: strong silhouette, relief depth, and one-colour viability. */
.memory-mark .emblem-symbol{filter:drop-shadow(0 3px 2px rgba(41,75,101,.12))}
.emblem-symbol .emblem-ring{fill:#fff;stroke:var(--blue-dark);stroke-width:2.4}
.emblem-symbol.qian-symbol .sun-rays path{stroke:var(--blue-dark);stroke-width:3;opacity:1}
.emblem-symbol.qian-symbol .sun-disc{fill:var(--peach);stroke:var(--blue-dark);stroke-width:2.2}
.emblem-symbol.qian-symbol .sun-centre{fill:#fff;stroke:var(--blue-dark);stroke-width:1}
.emblem-symbol.kun-symbol .earth-axis{fill:none;stroke:var(--blue-dark);stroke-width:2.2;stroke-linecap:round}
.emblem-symbol.kun-symbol .earth-core{fill:var(--peach);stroke:var(--blue-dark);stroke-width:1.8}
.emblem-symbol.kun-symbol .earth-terrace{fill:var(--blue);stroke:var(--blue-dark);stroke-width:1.8;stroke-linejoin:round}
.emblem-symbol.kun-symbol .earth-terrace.middle{fill:#75a1c1}
.emblem-symbol.kun-symbol .earth-terrace.base{fill:var(--blue-dark)}
.emblem-symbol.kun-symbol .earth-cut{fill:none;stroke:#fff;stroke-width:1.5;stroke-linecap:round;opacity:.8}
.emblem-symbol.tai-symbol .tai-heaven{fill:none;stroke:var(--blue-dark);stroke-width:6;stroke-linecap:round}
.emblem-symbol.tai-symbol .tai-earth{fill:none;stroke:var(--peach);stroke-width:9;stroke-linecap:round}
.emblem-symbol.tai-symbol .tai-heaven-cap{fill:none;stroke:var(--blue-dark);stroke-width:3;stroke-linecap:round}
.emblem-symbol.tai-symbol .tai-earth-cap{fill:none;stroke:var(--peach);stroke-width:4;stroke-linecap:round}
.emblem-symbol.tai-symbol .meeting-halo{fill:#fff;stroke:var(--blue-soft);stroke-width:5}
.emblem-symbol.tai-symbol .meeting-core{fill:url(#tai-balance);stroke:var(--blue-dark);stroke-width:1.8}
.emblem-symbol.tai-symbol .balance-mark{stroke:#fff;stroke-width:1.6}

/* Open sculptural symbols: no enclosing badge, each hexagram controls its own space. */
.memory-mark .open-symbol{filter:drop-shadow(0 4px 2px rgba(41,75,101,.11))}
.open-symbol.qian-symbol .sun-rays path{fill:none;stroke:var(--blue-dark);stroke-width:2.8;stroke-linecap:round;opacity:.82}
.open-symbol.qian-symbol .sun-rays .short-rays{stroke-width:1.8;opacity:.42}
.open-symbol.qian-symbol .sun-disc{fill:var(--peach);stroke:var(--blue-dark);stroke-width:1.8}
.open-symbol.qian-symbol .sun-centre{fill:#fff;stroke:none;opacity:.86}
.open-symbol.kun-symbol .land-mass{fill:var(--blue);stroke:var(--blue-dark);stroke-width:1.8;stroke-linejoin:round}
.open-symbol.kun-symbol .land-horizon{fill:none;stroke:var(--blue-dark);stroke-width:5;stroke-linecap:square}
.open-symbol.kun-symbol .land-fissure{fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;opacity:.72}
.open-symbol.kun-symbol .earth-core{fill:var(--peach);stroke:#fff;stroke-width:2.4}
.open-symbol.kun-symbol .earth-core-cut{fill:none;stroke:var(--blue-dark);stroke-width:1.6;stroke-linecap:round}
.open-symbol.tai-symbol .tai-earth-mass{fill:var(--peach);stroke:var(--blue-dark);stroke-width:1.5;stroke-linejoin:round}
.open-symbol.tai-symbol .tai-earth-strata{fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;opacity:.72}
.open-symbol.tai-symbol .tai-heaven-mass{fill:var(--blue-dark);stroke:var(--blue-dark);stroke-width:1.5;stroke-linejoin:round}
.open-symbol.tai-symbol .tai-heaven-rays{fill:none;stroke:#fff;stroke-width:1.5;stroke-linecap:round;opacity:.58}
.open-symbol.tai-symbol .meeting-halo{fill:#fff;stroke:var(--blue-soft);stroke-width:4}
.open-symbol.tai-symbol .meeting-core{fill:url(#tai-balance);stroke:var(--blue-dark);stroke-width:1.5}
.open-symbol.tai-symbol .balance-mark{fill:none;stroke:#fff;stroke-width:1.5;stroke-linecap:round}

/* Scene-supported symbols: context teaches the image; the portable mark remains separable. */
.symbol-card .scene-mark{position:relative;display:block;overflow:hidden;background:#edf4f8}
.symbol-card .scene-mark .scene-art{position:absolute;inset:0;width:100%;height:100%;display:block;filter:none}
.symbol-card .scene-mark strong{position:absolute;z-index:3;left:14px;right:14px;bottom:13px;margin:0!important;padding:8px 10px!important;background:rgba(255,255,255,.82);backdrop-filter:blur(5px);color:var(--blue-dark);font-size:10px!important;letter-spacing:1.15px!important;border:1px solid rgba(255,255,255,.72)}
.scene-art .scene-cloud{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;opacity:.68}
.scene-art .portable-mark{filter:drop-shadow(0 3px 2px rgba(41,75,101,.14))}
.solar-mark path{fill:none;stroke:var(--blue-dark);stroke-width:3;stroke-linecap:round}
.solar-mark>circle:not(.mark-core){fill:var(--peach);stroke:var(--blue-dark);stroke-width:2}
.solar-mark .mark-core{fill:#fff;stroke:none}
.scene-kun .far-land{fill:#b8c9cc;opacity:.72}
.scene-kun .field-lines{fill:none;stroke:#d7c5aa;stroke-width:1.6;opacity:.52}
.scene-kun .soil-edge{fill:none;stroke:#554639;stroke-width:4}
.receiving-mark .mark-halo{fill:none;stroke:#fff;stroke-width:11;opacity:.18;stroke-linecap:round}
.receiving-mark .bearing-form{fill:none;stroke:#294b65;stroke-width:5;stroke-linecap:round}
.receiving-mark .mark-core{fill:var(--peach);stroke:#fff;stroke-width:2.2}
.receiving-mark .seed-line{fill:none;stroke:var(--blue-dark);stroke-width:1.6;stroke-linecap:round}
.scene-tai .distant-light{fill:#fff;opacity:.6}
.scene-tai .tai-landscape{fill:#7892a1;opacity:.78}
.scene-tai .horizon-line{fill:none;stroke:#fff;stroke-width:2;opacity:.65}
.exchange-mark .descending-force{fill:none;stroke:var(--peach);stroke-width:7;stroke-linecap:round}
.exchange-mark .rising-force{fill:none;stroke:var(--blue-dark);stroke-width:4.5;stroke-linecap:round}
.exchange-mark .meeting-halo{fill:#fff;opacity:.9;stroke:var(--blue-soft);stroke-width:5}
.exchange-mark .meeting-core{fill:url(#tai-balance);stroke:var(--blue-dark);stroke-width:1.6}
.exchange-mark .balance-mark{fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round}
@media(max-width:700px){.symbol-card .scene-mark strong{left:9px;right:9px;bottom:9px;padding:6px!important;font-size:8px!important}.scene-art .portable-mark{filter:drop-shadow(0 2px 1px rgba(41,75,101,.12))}}

/* Motion studies: the landscape names the phase; movement reveals its law. */
.symbol-card .motion-scene{position:relative;display:block;overflow:hidden;background:var(--blue-soft);isolation:isolate}
.motion-scene>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:landscapeBreath 12s ease-in-out infinite alternate}
.qian-motion>img{object-position:50% 35%;animation:qianSceneDay 8s cubic-bezier(.45,.03,.26,1) infinite}.kun-motion>img{object-position:50% 70%}.tai-motion>img{object-position:50% 48%}
.qian-motion:before{content:"";position:absolute;z-index:1;inset:0;background:#294b65;mix-blend-mode:multiply;pointer-events:none;animation:qianDaylight 8s cubic-bezier(.45,.03,.26,1) infinite}
.motion-scene:after{content:"";position:absolute;z-index:1;inset:45% 0 0;background:linear-gradient(transparent,rgba(17,43,61,.22))}
.motion-scene .motion-art{position:absolute;z-index:2;inset:0;width:100%;height:100%;display:block;overflow:visible}
.motion-scene strong{position:absolute;z-index:4;left:14px;right:14px;bottom:13px;margin:0!important;padding:8px 10px!important;background:rgba(255,255,255,.84);backdrop-filter:blur(6px);color:var(--blue-dark);font-size:10px!important;letter-spacing:1.15px!important;border:1px solid rgba(255,255,255,.72)}
.motion-note{position:absolute;z-index:4;top:12px;left:12px;padding:5px 7px;background:rgba(41,75,101,.72);color:#fff;font-size:7px;letter-spacing:1.2px;line-height:1}
.qian-sun{transform-origin:90px 74px;animation:qianRise 8s cubic-bezier(.45,.03,.26,1) infinite}
.qian-rays{fill:none;stroke:#fff;stroke-width:2.3;stroke-linecap:round;filter:drop-shadow(0 0 5px rgba(255,255,255,.75))}
.qian-glow{fill:rgba(255,255,255,.42);stroke:none;animation:solarPulse 2.2s ease-in-out infinite alternate}
.qian-disc{fill:var(--peach);stroke:#fff;stroke-width:1.8}
.phase-beads circle{fill:#fff;opacity:.2;animation:phaseLight 4.8s ease-in-out infinite}
.phase-beads circle:nth-child(2){animation-delay:.55s}.phase-beads circle:nth-child(3){animation-delay:1.1s}.phase-beads circle:nth-child(4){animation-delay:1.65s}.phase-beads circle:nth-child(5){animation-delay:2.2s}.phase-beads circle:nth-child(6){animation-delay:2.75s}
.kun-phase{opacity:0;animation:kunPhaseWindow 12s linear infinite}
.kun-phase-2{animation-delay:2s}.kun-phase-3{animation-delay:4s}.kun-phase-4{animation-delay:6s}.kun-phase-5{animation-delay:8s}.kun-phase-6{animation-delay:10s}
.kun-frost-field{fill:url(#kun-frost);opacity:.58}
.frost-front{fill:none;stroke:#fff;stroke-width:2.2;stroke-linecap:round;stroke-dasharray:8 10;animation:frostTravel 3.6s linear infinite}
.ice-veins{fill:none;stroke:#fff;stroke-width:1.5;stroke-linecap:round}
.square-field{fill:rgba(226,237,246,.2);stroke:#fff;stroke-width:1.5;opacity:.78}
.contained-light{fill:var(--peach);opacity:.28;filter:blur(3px)}.contained-core{fill:#f8d7a0;stroke:#fff;stroke-width:1.8}
.closing-form,.closing-tie{fill:none;stroke:var(--blue-dark);stroke-width:3.2;stroke-linecap:round}
.yellow-mantle{fill:url(#kun-gold)}.central-axis{fill:none;stroke:#fff;stroke-width:1.8;opacity:.8}
.dark-force,.ochre-force{fill:none;stroke-width:6;stroke-linecap:round}.dark-force{stroke:var(--blue-dark)}.ochre-force{stroke:#c7954e}.limit-core{fill:var(--peach);stroke:#fff;stroke-width:2}
.kun-stage-labels span{position:absolute;z-index:4;top:12px;left:12px;right:12px;padding:5px 7px;background:rgba(41,75,101,.74);color:#fff;font-size:6.5px;letter-spacing:.9px;line-height:1.2;opacity:0;animation:kunLabelWindow 12s linear infinite}
.kun-stage-labels span:nth-child(2){animation-delay:2s}.kun-stage-labels span:nth-child(3){animation-delay:4s}.kun-stage-labels span:nth-child(4){animation-delay:6s}.kun-stage-labels span:nth-child(5){animation-delay:8s}.kun-stage-labels span:nth-child(6){animation-delay:10s}
.kun-bearing path:first-child{fill:none;stroke:var(--blue-dark);stroke-width:4.5;stroke-linecap:round;filter:drop-shadow(0 2px 2px rgba(255,255,255,.45))}
.kun-bearing ellipse{fill:var(--peach);stroke:#fff;stroke-width:2}
.kun-bearing path:last-child{fill:none;stroke:var(--blue-dark);stroke-width:1.4;stroke-linecap:round}
.tai-motion .descending-force,.tai-motion .rising-force{fill:none;stroke-linecap:round;filter:drop-shadow(0 0 7px rgba(255,255,255,.45))}
.tai-motion .descending-force{stroke:var(--peach);stroke-width:7;stroke-dasharray:10 12;animation:flowDown 3.2s linear infinite}
.tai-motion .rising-force{stroke:#dcebf4;stroke-width:5;stroke-dasharray:8 11;animation:flowUp 3.2s linear infinite}
.tai-motion .meeting-halo{fill:#fff;opacity:.84;stroke:var(--blue-soft);stroke-width:5;animation:meetingBreathe 3.2s ease-in-out infinite}
.tai-motion .meeting-core{fill:url(#tai-balance);stroke:#fff;stroke-width:1.8;transform-origin:90px 95px;animation:balanceTurn 9s ease-in-out infinite alternate}
.tai-motion .balance-mark{fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;transform-origin:90px 95px;animation:balanceTurn 9s ease-in-out infinite alternate}
@keyframes landscapeBreath{to{transform:scale(1.035) translateY(-2px)}}
@keyframes qianRise{0%{transform:translateY(54px) scale(.42);opacity:.18}14%{transform:translateY(43px) scale(.54);opacity:.45}30%{transform:translateY(30px) scale(.68);opacity:.68}46%{transform:translateY(15px) scale(.82);opacity:.82}63%{transform:translateY(-2px) scale(.96);opacity:.94}80%{transform:translateY(-22px) scale(1.14);opacity:1}92%{transform:translateY(-25px) scale(1.18);opacity:.9}100%{transform:translateY(-25px) scale(1.18);opacity:0}}
@keyframes qianSceneDay{0%{transform:scale(1.02);filter:brightness(.58) saturate(.72)}30%{filter:brightness(.78) saturate(.86)}63%{filter:brightness(1) saturate(1)}82%,96%{transform:scale(1.05) translateY(-3px);filter:brightness(1.14) saturate(1.08)}100%{transform:scale(1.05) translateY(-3px);filter:brightness(.9) saturate(.9)}}
@keyframes qianDaylight{0%{opacity:.5}30%{opacity:.3}63%{opacity:.1}82%,96%{opacity:0}100%{opacity:.25}}
@keyframes solarPulse{to{transform:scale(1.12);opacity:.75}}
@keyframes phaseLight{0%,18%,100%{opacity:.18}28%,68%{opacity:1}}
@keyframes frostAdvance{0%,8%{clip-path:inset(0 100% 0 0);opacity:.08}72%,88%{clip-path:inset(0 0 0 0);opacity:.58}100%{clip-path:inset(0 0 0 0);opacity:0}}
@keyframes frostTravel{to{stroke-dashoffset:-36}}
@keyframes kunPhaseWindow{0%{opacity:0}3%,12%{opacity:1}16%,100%{opacity:0}}
@keyframes kunLabelWindow{0%{opacity:0;transform:translateY(-3px)}3%,12%{opacity:1;transform:translateY(0)}16%,100%{opacity:0}}
@keyframes flowDown{to{stroke-dashoffset:-44}}
@keyframes flowUp{to{stroke-dashoffset:38}}
@keyframes meetingBreathe{50%{transform:scale(1.12);opacity:.96}}
@keyframes balanceTurn{to{transform:rotate(14deg)}}
@media(max-width:700px){.motion-scene strong{left:9px;right:9px;bottom:9px;padding:6px!important;font-size:8px!important}.motion-note{top:8px;left:8px;font-size:6px}.phase-beads{display:none}}

/* Eight-trigram foundation: classic form, concrete natural image, practical action. */
.trigram-foundation{background:#f8f5ee;border-top:1px solid #e2ddd2;border-bottom:1px solid #e2ddd2}
.trigram-foundation .section-intro{margin-bottom:34px}
.trigram-key{display:grid;grid-template-columns:180px 230px 1fr;margin:0 0 12px;border-top:1px solid #d7d1c5;padding-top:12px;color:#71818b;font-size:8px;font-weight:700;letter-spacing:1.65px}
.trigram-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.trigram-card{display:grid;grid-template-columns:180px 230px minmax(0,1fr);min-height:224px;background:#fff;border:1px solid #d7d1c5;box-shadow:0 8px 24px rgba(41,75,101,.045);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.trigram-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(41,75,101,.09)}
.trigram-identity{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-rows:1fr auto;gap:13px 18px;align-items:end;padding:30px 24px 24px;background:#fbfaf6;border-right:1px solid #ded8cd}
.trigram-number{position:absolute;left:16px;top:13px;color:#9aa7ae;font:9px Arial,sans-serif;letter-spacing:1.8px}
.trigram-lines{grid-column:1/-1;align-self:center;width:108px;display:flex;flex-direction:column;gap:12px}
.trigram-lines i{display:block;height:9px;background:var(--blue-dark)}
.trigram-lines i.yin{background:linear-gradient(90deg,var(--blue-dark) 0 41%,transparent 41% 59%,var(--blue-dark) 59% 100%)}
.trigram-identity>div:last-child{grid-column:1/-1;display:flex;align-items:baseline;gap:13px}
.trigram-identity .han-glyph{font-size:48px;line-height:1;color:var(--blue-dark)}
.trigram-identity small{font-size:10px;font-weight:700;letter-spacing:2.4px;color:var(--blue)}
.trigram-vignette{position:relative;display:grid;place-items:center;background:linear-gradient(180deg,#f4f0e7,#ece6da);border-right:1px solid #ded8cd;overflow:hidden}
.trigram-vignette:after{content:"";position:absolute;inset:10px;border:1px solid rgba(41,75,101,.11);pointer-events:none}
.trigram-vignette>img{display:block;width:100%;height:100%;min-height:224px;object-fit:cover;object-position:center;filter:contrast(1.04) saturate(.82);mix-blend-mode:multiply}
.trigram-vignette svg{width:100%;height:100%;min-height:224px}
.trigram-vignette svg *{vector-effect:non-scaling-stroke}
.trigram-vignette path,.trigram-vignette ellipse,.trigram-vignette circle{fill:none;stroke:var(--blue-dark);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.trigram-vignette .mountain,.trigram-vignette .hill,.trigram-vignette .cliff{fill:#b9c9cf;stroke:#718b99}
.trigram-vignette .mountain.near,.trigram-vignette .cliff.right{fill:#91aab6}
.trigram-vignette .mountain.far,.trigram-vignette .cliff.left{opacity:.78}
.trigram-vignette .mist,.trigram-vignette .wind,.trigram-vignette .water-lines,.trigram-vignette .lake{stroke:#7d9fb2;opacity:.72}
.trigram-vignette .ground{stroke:#826e5e;stroke-width:2.5}
.trigram-vignette .flag,.trigram-vignette .bolt,.trigram-vignette .flame,.trigram-vignette .stop{fill:var(--peach);stroke:var(--blue-dark);stroke-width:1.8}
.trigram-vignette .flagpole,.trigram-vignette .rise,.trigram-vignette .impact,.trigram-vignette .exchange{stroke-width:2.2}
.trigram-vignette .platter{fill:#e7edf0;stroke-width:2}
.trigram-vignette .platter-base,.trigram-vignette .hand{stroke-width:3.1}
.trigram-vignette .weight{fill:#8fa8b4}.trigram-vignette .seedling{stroke:#577a67;stroke-width:2}
.trigram-vignette .cloud,.trigram-vignette .speech{fill:#fff;stroke:#6f8793}
.trigram-vignette .door{fill:#8ba5b2}.trigram-vignette .opening{fill:#f8f5ee;stroke-width:2.2}
.trigram-vignette .path,.trigram-vignette .river,.trigram-vignette .road{stroke:#fff;stroke-width:7;opacity:.82}
.trigram-vignette .lantern{fill:#728d9a}.trigram-vignette .flame{fill:#f4a38b}.trigram-vignette .eye{fill:#fff}.trigram-vignette .iris{fill:#9ab4c2}.trigram-vignette .pupil{fill:var(--blue-dark)}
.trigram-vignette .gate{fill:#e4eaec}.trigram-vignette .stop-line{stroke:#fff;stroke-width:3}
.trigram-vignette .cup{fill:#fff;stroke-width:2}.trigram-vignette .speech{fill:rgba(255,255,255,.72)}
.trigram-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:25px 26px}
.trigram-copy .trigram-nature{margin:0 0 10px;color:var(--blue);font-size:8px;font-weight:700;letter-spacing:1.55px}
.trigram-copy h3{margin:0 0 10px;font:31px/1 Georgia,serif;color:var(--blue-dark)}
.trigram-copy .trigram-alt{display:block;margin:-4px 0 10px;color:#8b746b;font-size:7px;font-weight:700;letter-spacing:1.35px}
.trigram-copy>p:not(.trigram-nature){margin:0;color:#647b8b;font-size:12px;line-height:1.55;max-width:270px}
.trigram-copy>p:not(.trigram-nature) strong{color:var(--blue-dark);font-weight:700}
.trigram-action{margin-top:18px;border-top:1px solid #e0e6e8;padding-top:9px;color:#8a6559;font-size:8px;font-weight:700;letter-spacing:1.4px}
.trigram-formula{margin-top:14px;min-height:88px;border:1px solid #d7d1c5;background:#fff;display:flex;align-items:center;justify-content:center;gap:20px;color:#71818b}
.trigram-formula span{font-size:9px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase}
.trigram-formula b,.trigram-formula strong{font:34px Georgia,serif;color:var(--blue-dark)}
.trigram-formula i{font:20px Georgia,serif;color:var(--peach);font-style:normal}
@media(max-width:1180px){.trigram-card{grid-template-columns:145px 190px minmax(0,1fr)}.trigram-key{grid-template-columns:145px 190px 1fr}.trigram-copy{padding:22px 20px}.trigram-lines{width:90px}.trigram-identity{padding-left:20px;padding-right:20px}}
@media(max-width:980px){.trigram-grid{grid-template-columns:1fr}.trigram-card{grid-template-columns:170px 230px 1fr}.trigram-key{display:none}}
@media(max-width:700px){.trigram-foundation{padding-left:4%;padding-right:4%}.trigram-grid{gap:11px}.trigram-card{grid-template-columns:112px 1fr;grid-template-rows:154px auto;min-height:0}.trigram-identity{grid-column:1;grid-row:1;padding:25px 14px 15px}.trigram-lines{width:82px;gap:9px}.trigram-lines i{height:7px}.trigram-identity .han-glyph{font-size:37px}.trigram-identity small{font-size:8px;letter-spacing:1.4px}.trigram-vignette{grid-column:2;grid-row:1;border-right:0}.trigram-vignette svg,.trigram-vignette>img{min-height:154px}.trigram-copy{grid-column:1/-1;grid-row:2;border-top:1px solid #ded8cd;padding:20px 22px}.trigram-copy h3{font-size:28px}.trigram-copy>p:not(.trigram-nature){max-width:none}.trigram-action{margin-top:12px}.trigram-formula{gap:10px;padding:15px;flex-wrap:wrap}.trigram-formula span{width:100%;text-align:center}.trigram-formula b,.trigram-formula strong{font-size:28px}}

/* Reading MVP: cast record, moving lines, and full-page links. */
.all-hexagrams{display:inline-flex;align-items:center}
.reading-line-table{display:grid;gap:12px}
.reading-line-row{display:flex;align-items:center;gap:24px;min-width:0;font-size:12px;color:var(--muted)}
.reading-line-row i{flex:none;display:block;width:82px;height:7px;background:var(--blue);position:relative}
.reading-line-row i.yin{background:linear-gradient(90deg,var(--blue) 42%,transparent 42% 58%,var(--blue) 58%)}
.reading-line-row i.moving:after,.result-hex i.moving:after{content:"×";position:absolute;right:-13px;top:-11px;color:var(--peach);font:18px Georgia}
.result-hex i{background:var(--blue-dark)}
.result-hex i.yin{background:linear-gradient(90deg,var(--blue-dark) 42%,transparent 42% 58%,var(--blue-dark) 58%)}
.result-hex i.moving,.result-hex i.yin.moving{background-color:var(--blue-dark)}
.result-title-row{grid-template-columns:125px minmax(0,1fr);gap:26px;align-items:center}
.result-title-row .result-hex{margin-left:10px}
.result-title-row>div{min-width:0}
.result-title-row p{font-size:14px;color:var(--muted)}
.reading-question{background:var(--soft);padding:16px 20px;overflow-wrap:anywhere}
.reading-question small,.reading-relating small{font-size:9px;letter-spacing:1.3px;color:var(--muted)}
.reading-line-note{border-top:1px solid var(--line);padding:18px 0}
.reading-line-note strong{font-size:13px;color:var(--ink)}
.reading-relating{display:flex;align-items:center;gap:35px;background:var(--soft);padding:24px;margin:24px 0}
.reading-relating .result-hex{flex:none}
.reading-relating h3{margin:4px 0}
.result-copy details{border-top:1px solid var(--line);padding:13px 0;font-size:13px}
.result-copy summary{cursor:pointer;color:var(--blue-dark)}
.result-copy details p[lang]{font-family:"Kaiti SC","STKaiti","KaiTi","Noto Serif CJK SC",serif;font-size:16px;color:var(--ink)}
.reading-disclaimer{font-size:11px;color:var(--muted)}
.result-actions{flex-wrap:wrap}
@media(max-width:700px){.result-title-row{grid-template-columns:86px minmax(0,1fr);gap:14px}.result-title-row h2{font-size:27px}.result-title-row .result-hex{width:70px;margin-left:0}.reading-line-row{gap:20px;font-size:10px}.reading-line-row i{width:65px}.reading-relating{gap:16px;padding:18px}.reading-relating .result-hex{width:65px}.reading-relating h3{font-size:21px}}

/* Full illustrated 64-hexagram directory on the home page. */
.catalog-intro{display:flex;align-items:end;justify-content:space-between;gap:28px;margin:72px 0 12px;padding-top:28px;border-top:1px solid var(--line)}
.catalog-intro h3{font:32px Georgia,serif;margin:0 0 6px}
.catalog-intro p{font-size:13px;color:var(--muted);margin:0}
.catalog-search-label{display:grid;gap:6px;min-width:min(100%,300px);font-size:9px;letter-spacing:1.5px;color:var(--muted)}
.catalog-search-label input{width:100%;border:1px solid var(--line);background:var(--soft);padding:11px 13px;font-size:14px;letter-spacing:0;color:var(--ink)}
.catalog-status{margin:18px 0;color:var(--muted);font-size:11px;letter-spacing:.7px}
.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.catalog-card{display:block;min-width:0;border:1px solid var(--line);background:#fff;transition:box-shadow .2s,transform .2s}
.catalog-card:hover{box-shadow:0 15px 35px #294b651c;transform:translateY(-3px)}
.catalog-picture{position:relative;aspect-ratio:4/3;background:#f8f5ed;overflow:hidden}
.catalog-picture img{display:block;width:100%;height:100%;object-fit:contain}
.catalog-hex{position:absolute;top:11px;left:11px;width:58px;padding:9px;background:#f8f5edef;display:grid;gap:4px;box-shadow:0 2px 12px #294b6520}
.catalog-hex i{display:block;height:4px;background:var(--blue-dark)}
.catalog-hex i.yin{background:linear-gradient(90deg,var(--blue-dark) 42%,transparent 42% 58%,var(--blue-dark) 58%)}
.catalog-copy{padding:18px 18px 20px}
.catalog-number{font-size:9px;letter-spacing:1.7px;color:var(--blue)}
.catalog-copy h4{font:22px/1.25 Georgia,serif;margin:7px 0 9px}
.catalog-copy h4 span{font-family:"Kaiti SC","STKaiti","KaiTi","Noto Serif CJK SC",serif;color:var(--blue);white-space:nowrap}
.catalog-copy p{font-size:12px;line-height:1.55;color:var(--muted);margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:56px}
.catalog-open{display:block;border-top:1px solid var(--line);margin-top:15px;padding-top:12px;font-size:11px;color:var(--blue-dark)}
.catalog-empty{grid-column:1/-1;color:var(--muted);font-size:14px}
@media(max-width:900px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:600px){.catalog-intro{display:block;margin-top:55px}.catalog-search-label{margin-top:20px}.catalog-grid{grid-template-columns:1fr;gap:20px}.catalog-copy h4{font-size:24px}}

/* First-class reading module, visible before the educational sections. */
.cast-section{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.88fr);gap:8%;align-items:center;background:linear-gradient(110deg,#e2edf6,#f3f7fb 62%,#fff)}
.cast-copy>p:not(.eyebrow){max-width:540px;color:#536d80;font-size:16px;line-height:1.75;margin:20px 0 28px}
.cast-method{display:flex;flex-wrap:wrap;gap:11px}
.cast-method span{padding:8px 11px;border:1px solid #bacddc;background:#ffffffa8;color:var(--blue-dark);font-size:10px;letter-spacing:.4px}
.cast-form{background:#fff;padding:34px;box-shadow:0 18px 48px #294b6519;border:1px solid #d7e2ea}
.cast-form label{display:block;font-size:10px;letter-spacing:1.6px;font-weight:700}
.cast-form label span{color:var(--muted);font-weight:400}
.cast-form textarea{display:block;width:100%;min-height:135px;resize:vertical;margin:13px 0;border:1px solid #adc3d3;background:var(--soft);padding:15px;font:18px/1.45 Georgia,serif}
.cast-form p{font-size:12px;color:var(--muted);margin:0 0 23px}
.cast-form small{display:block;text-align:center;font-size:10px;color:var(--muted);margin-top:12px}
@media(max-width:800px){.cast-section{grid-template-columns:1fr;gap:32px}.cast-form{max-width:600px}}
@media(max-width:600px){.cast-form{padding:23px}.cast-copy>p:not(.eyebrow){font-size:15px}.cast-method{gap:6px}.cast-method span{font-size:9px;padding:7px 8px}}

/* Overhead tabletop ritual with traditional-style round-square copper coins. */
.coin-area{min-width:0;text-align:center}
.coin-area .coin-stage{height:225px;margin:0;overflow:hidden;position:relative;display:grid;place-items:center;border:1px solid #d3c6b2;background:radial-gradient(ellipse at 50% 48%,#f5eddf 0,#eee2ce 68%,#e0cfb4 100%),repeating-linear-gradient(0deg,transparent 0 14px,#b9987014 15px 16px);box-shadow:inset 0 3px 15px #8a6f4a20}
.coin-stage:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(178deg,transparent 0 19px,#8a6c4b08 20px 21px)}
.coin-cluster{position:relative;z-index:3;display:flex;align-items:center;justify-content:center}
.coin-slot{position:relative;display:block;flex:none;width:76px;height:76px;margin-left:4px;perspective:650px;transform:rotate(var(--rest-angle,0deg));transform-style:preserve-3d}
.coin-slot:first-child{margin-left:0;--rest-angle:-9deg;--coin-delay:0ms;--splay-x:-18px}
.coin-slot:nth-child(2){--rest-angle:4deg;--coin-delay:100ms;--splay-x:0px}
.coin-slot:nth-child(3){--rest-angle:12deg;--coin-delay:200ms;--splay-x:18px}
.coin-slot .coin,.coin-slot .coin:first-child{position:relative;display:block;width:100%;height:100%;margin:0;border:0;border-radius:50%;background:transparent;box-shadow:none;transform-style:preserve-3d;transform:rotateX(0deg)}
.coin-slot .coin.face-t{transform:rotateX(180deg)}
.coin-face{position:absolute;inset:0;display:block;border:3px solid #95683e;border-radius:50%;backface-visibility:hidden;box-shadow:inset 0 0 0 3px #f3d9a4,inset 0 0 0 6px #a97643,0 6px 12px #49311b45;background:radial-gradient(circle at 30% 24%,#f5dda8,#bc8750 65%,#90613a);color:#634328}
.coin-face:after{content:"";position:absolute;inset:9px;border:1px solid #6e4b30b8;border-radius:50%;pointer-events:none}
.coin-face.tails{transform:rotateX(180deg);border-color:#63432f;background:radial-gradient(circle at 30% 24%,#b58c5c 0,#765033 58%,#493023 100%);box-shadow:inset 0 0 0 3px #c19b6c,inset 0 0 0 6px #65432d,0 6px 12px #35241b65;color:#fff0cb}
.coin-face.tails:after{border-color:#e8c38b90}
.coin-face.tails .cash-inscription{text-shadow:0 1px 2px #2b1a12}
.coin-face.tails .cash-hole{background:#d9c4a2;border-color:#503422;box-shadow:inset 0 1px 3px #3e281b,0 0 0 2px #a47b50}
.cash-hole{position:absolute;z-index:2;left:50%;top:50%;width:20px;height:20px;transform:translate(-50%,-50%);background:#e6d5b9;border:3px solid #8a5d38;box-shadow:inset 0 1px 3px #6142279c,0 0 0 2px #e7c596}
.cash-inscription{position:absolute;z-index:2;left:0;width:100%;text-align:center;font:700 13px/1 "Kaiti SC","STKaiti","KaiTi","Noto Serif CJK SC",serif;text-shadow:0 1px #efd3a1}
.cash-top{top:7px}.cash-bottom{bottom:7px}
.coin-area .coin-result{min-height:22px;max-width:290px;margin:9px auto 1px;line-height:1.45;letter-spacing:.2px}
.coin-legend{margin:0 auto 12px;font-size:9px;color:#6c6c65;letter-spacing:.5px}
.coin-legend span{padding:0 6px;color:var(--peach)}
.coin-slot.tossing{animation:coin-table-lift 2200ms var(--coin-delay) ease-in-out both}
.coin-slot .coin.tossing.face-h{animation:coin-table-heads 2200ms var(--coin-delay) ease-in-out both}
.coin-slot .coin.tossing.face-t{animation:coin-table-tails 2200ms var(--coin-delay) ease-in-out both}
.casting-step [data-cast]:disabled{opacity:.68;cursor:wait}
.coin-sound-toggle{border:0;background:none;padding:3px 6px;color:var(--blue-dark);font-size:10px;text-decoration:underline;text-underline-offset:3px}
@keyframes coin-table-lift{0%{transform:translate(0,0) rotate(var(--rest-angle)) scale(1)}16%{transform:translate(0,-5px) rotate(-5deg) scale(.98)}48%{transform:translate(var(--splay-x),-52px) rotate(10deg) scale(1.12)}72%{transform:translate(var(--splay-x),-34px) rotate(-8deg) scale(1.06)}88%{transform:translate(2px,2px) rotate(-3deg) scale(.97)}94%{transform:translate(-1px,-9px) rotate(2deg) scale(1.01)}100%{transform:translate(0,0) rotate(var(--rest-angle)) scale(1)}}
@keyframes coin-table-heads{0%,14%{transform:rotateX(0)}84%,100%{transform:rotateX(720deg)}}
@keyframes coin-table-tails{0%,14%{transform:rotateX(0)}84%,100%{transform:rotateX(900deg)}}
@media(max-width:700px){.casting-step{padding-top:35px}.coin-area .coin-stage{height:190px}.coin-slot{width:64px;height:64px}.cash-hole{width:18px;height:18px}.cash-inscription{font-size:11px}.casting-step .cast-build{min-height:150px;padding:20px 18px}.casting-step .cast-build>span{margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){.coin-slot.tossing,.coin-slot .coin.tossing.face-h,.coin-slot .coin.tossing.face-t{animation:none}.coin-slot .coin.tossing.face-h{transform:rotateX(0)}.coin-slot .coin.tossing.face-t{transform:rotateX(180deg)}}
.ai-reading-panel{margin:20px 0;padding:25px;background:#f3f7fb;border:1px solid #cbdce8;border-left:4px solid var(--blue);overflow-wrap:anywhere}
.ai-reading-panel h3{font:26px/1.2 Georgia;margin:8px 0 10px}
.ai-reading-panel>p{font-size:13px;line-height:1.6;color:var(--muted)}
.ai-reading-panel .button{max-width:100%;white-space:normal;text-align:center}
.ai-reading-panel .button:disabled{opacity:.65;cursor:wait}
.ai-reading-panel .ai-privacy{font-size:11px;margin:10px 0 0}
.ai-reading-output{margin-top:18px;line-height:1.65;color:var(--ink)}
.ai-reading-output:empty{display:none}
.ai-reading-output h4{font:21px/1.25 Georgia;margin:20px 0 5px}
.ai-reading-output p{margin:0 0 10px;font-size:14px}
.ai-reading-output details{margin-top:18px;border-top:1px solid var(--line);padding-top:12px}
@media(max-width:700px){.ai-reading-panel{padding:20px 16px}.ai-reading-panel h3{font-size:23px}}
.reading-nuclear{background:#fff;border:1px solid var(--line);align-items:flex-start}
.reading-nuclear .reading-method-note{font-size:11px;line-height:1.6;color:var(--muted);margin:8px 0}
.reading-nuclear a{font-size:12px;color:var(--blue-dark);text-decoration:underline;text-underline-offset:3px}
.reading-relating>div:last-child{min-width:0;overflow-wrap:anywhere}
