@layer reset{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer tokens{:root,.site-theme-song{--font-cjk-system:"Songti SC", "STSong", "Noto Serif CJK SC", "Source Han Serif SC", SimSun, serif;--font-ui:"Zhiming Noto Serif SC", var(--font-cjk-system);--font-reading:var(--font-cjk-system);--font-latin:Georgia, "Times New Roman", var(--font-cjk-system);--font-western:"Cinzel", "Playfair Display", Georgia, var(--font-cjk-system);--fs-1:12px;--fs-2:13px;--fs-3:14px;--fs-4:15px;--fs-5:16px;--fs-6:17px;--fs-7:18px;--fs-8:20px;--fs-9:22px;--fs-10:24px;--fs-12:28px;--fs-display-1:clamp(17px, 2.2vw, 20px);--fs-display-2:clamp(18px, 2.4vw, 22px);--fs-display-3:clamp(19px, 2.6vw, 22px);--fs-display-4:clamp(24px, 2.2vw, 34px);--fs-display-5:clamp(26px, 4vw, 34px);--fs-display-6:clamp(28px, 4vw, 46px);--fs-display-7:clamp(2rem, 6vw, 3.25rem);--fs-display-8:clamp(32px, 6vw, 58px);--fs-display-9:clamp(36px, 4vw, 58px);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--gap:clamp(12px, 2.4vw, 20px);--page-gutter:clamp(16px, 3vw, 32px);--radius-1:2px;--radius-2:6px;--radius-3:8px;--radius-round:999px;--coin-rim:#b89146;--coin-face:radial-gradient(circle at 35% 35%, #e2c17c, #8c6827 75%, #4a340e);--coin-back:radial-gradient(circle at 35% 35%, #d1ab64, #73531b 80%, #3e2b0c);--coin-hole:#111;--coin-hole-line:#5a4014;--coin-ink:#3b2807;--slip-wood:linear-gradient(90deg, #d9c49a, #ead9b4 45%, #cdb382);--daily-coin:radial-gradient(circle, #e7cf9a 0 30%, #c39a52 31% 100%);--card-table:#0c1220;--card-table-deep:#0b1c1b;--card-back-line:#d7ad6299;--card-ink:#f4ecd8;--yao-yang:#d7ad62;--yao-yin:#71b884;--yao-moving:#c74b38;--yao-moving-glow:0 0 6px #c74b3899;--coin-pattern-line:#3c280a99;--coin-ink-glint:0 .5px 0 #ffffff4d;--card-caption:#04060ceb;--shadow-dock:0 -2px 12px #00000014;--shadow-deck:0 6px 16px #00000073;--shadow-fan:-2px 3px 8px #00000073;--shadow-art:0 12px 26px #00000047;--shadow-coin:0 6px 14px #0009;--shadow-coin-hole:inset 0 0 4px #000000e6;--shadow-preview:0 8px 24px #00000080;--shadow-thumb:0 1px 3px #0003;--shadow-crystal:0 18px 42px #0000003d;--shadow-crystal-card:0 12px 28px #0003;--paper-texture:url(/visuals/song/v052/xuan-paper.webp);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3efe3;--bg-rgb:243 239 227;--bg-deep:#ebe4d4;--paper:#fbf8f0;--paper-rgb:250 247 238;--paper-deep:#f1ebdc;--field-rgb:255 253 247;--white-rgb:255 255 255;--ink:#292d28;--ink-rgb:41 45 40;--ink-2:#444b44;--ink-soft:#545a52;--ink-muted:#62685f;--ink-faint:#8b8b81;--on-accent:#fffaf0;--on-gold:#1d1a12;--line:#7c643e52;--line-soft:#4b423024;--line-rgb:124 100 62;--panel-line:var(--line-soft);--cinnabar:#9f3d2d;--cinnabar-rgb:159 61 45;--cinnabar-strong:#873526;--danger:#8f2f21;--jade:#3b5446;--jade-rgb:88 117 101;--jade-strong:#324b3e;--gold:#9a8150;--gold-rgb:154 129 80;--gold-ink:#725c31;--water-rgb:63 104 112;--verdict-calm:#4f5560;--verdict-help:#2f5a3f;--action-bg:#9f3d2d;--action-bg-hover:#873526;--action-border:#873526;--action-border-hover:#6f2b20;--on-action:#fffaf0;--wx-wood:#4f6d51;--wx-fire:#963528;--wx-earth:#76552e;--wx-metal:#725f34;--wx-water:#3f6870;--shadow:none;--shadow-raised:none;--shadow-popover:0 10px 24px #292d2824;--shadow-modal:0 16px 40px #00000059;--shadow-toast:0 8px 24px #0000002e;--shadow-card:0 8px 20px #0006;--shadow-card-lift:0 10px 22px #d7ad6259;--shadow-inset:inset 0 0 24px #0000000f, 0 4px 12px #0000000a;--scrim:#292d287a}.ritual-scope-western,.public-share-theme-western{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#06110f;--bg-rgb:6 17 15;--bg-deep:#020706;--paper:#0b1c1b;--paper-rgb:8 22 21;--paper-deep:#06110f;--field-rgb:0 0 0;--white-rgb:255 255 255;--ink:#f4ecd8;--ink-rgb:244 236 216;--ink-2:#f4ecd8;--ink-soft:#c9c1ad;--ink-muted:#c9c1ad;--ink-faint:#a49c88;--on-accent:#1c1408;--on-gold:#1d1a12;--line:#cba35b57;--line-soft:#ded6b81f;--line-rgb:203 163 91;--panel-line:#d7ad6240;--cinnabar:#d98a74;--cinnabar-rgb:217 138 116;--cinnabar-strong:#c97560;--danger:#f0a092;--jade:#71b884;--jade-rgb:113 184 132;--jade-strong:#8fcaa0;--gold:#d7ad62;--gold-rgb:215 173 98;--gold-ink:#d7ad62;--water-rgb:107 158 203;--verdict-calm:#c9c1ad;--verdict-help:#8fcaa0;--action-bg:#9f3d2d;--action-bg-hover:#873526;--action-border:#873526;--action-border-hover:#6f2b20;--on-action:#fffaf0;--wx-wood:#71b884;--wx-fire:#d98a74;--wx-earth:#b99958;--wx-metal:#c8c8bb;--wx-water:#6b9ecb;--shadow:none;--shadow-raised:0 28px 80px #00000061;--shadow-popover:0 10px 24px #00000073;--shadow-modal:0 16px 40px #0000008c;--shadow-toast:0 8px 24px #0006;--shadow-card:0 8px 20px #0006;--shadow-card-lift:0 10px 22px #d7ad6259;--shadow-inset:inset 0 0 40px #000c, 0 8px 24px #00000080;--scrim:#000000a6}:root{--visual-card-back:url(/visuals/generated/352w-de5eb74f10bb5785.webp);--visual-card-back-image-set:image-set(url(/visuals/generated/224w-55e6d2cbfe8e0df9.webp) 1x, url(/visuals/generated/352w-de5eb74f10bb5785.webp) 2x);--visual-scroll-panel:url(/visuals/generated/640w-972f0e07c7779b45.webp);--visual-scroll-panel-image-set:image-set(url(/visuals/generated/320w-5a3a801c0f99c4be.webp) 1x, url(/visuals/generated/640w-972f0e07c7779b45.webp) 2x, url(/visuals/generated/960w-013ceb98c4ef200c.webp) 3x);--visual-ritual-stage:url(/visuals/generated/1440w-ba53ccb61e80af31.webp);--visual-ritual-stage-image-set:image-set(url(/visuals/generated/768w-38af1adf3a171e15.webp) 1x, url(/visuals/generated/1440w-ba53ccb61e80af31.webp) 2x);--visual-card-back-fallback:var(--visual-card-back);--visual-scroll-panel-fallback:var(--visual-scroll-panel);--visual-ritual-stage-fallback:var(--visual-ritual-stage)}@supports (background-image:image-set(url("test.webp") 1x)){:root{--visual-card-back:image-set(url(/visuals/generated/224w-55e6d2cbfe8e0df9.webp) 1x, url(/visuals/generated/352w-de5eb74f10bb5785.webp) 2x);--visual-scroll-panel:image-set(url(/visuals/generated/320w-5a3a801c0f99c4be.webp) 1x, url(/visuals/generated/640w-972f0e07c7779b45.webp) 2x, url(/visuals/generated/960w-013ceb98c4ef200c.webp) 3x);--visual-ritual-stage:image-set(url(/visuals/generated/768w-38af1adf3a171e15.webp) 1x, url(/visuals/generated/1440w-ba53ccb61e80af31.webp) 2x)}}}@layer base{html{color:var(--ink);background:var(--bg)}body{background:var(--bg) var(--paper-texture) repeat;min-height:100vh;font-family:var(--font-ui);letter-spacing:0;margin:0}button,input,textarea,select{font:inherit;letter-spacing:0}button{cursor:pointer}h1,h2,h3{font-family:var(--font-ui);text-shadow:none}:is(a,button,summary,input,textarea,select,[role=button],[tabindex]):focus-visible{outline:2px solid var(--cinnabar);outline-offset:3px;box-shadow:none}input:where(:not([type=checkbox],[type=radio],[type=range],[type=file])),textarea,select{width:100%;min-height:42px;padding:0 var(--space-3);border:1px solid var(--line);border-radius:var(--radius-1);color:var(--ink);background:rgb(var(--field-rgb) / .72);font-family:var(--font-reading);outline:none;transition:border-color .24s,background-color .24s,box-shadow .24s}textarea{resize:vertical;min-height:158px;padding:14px;line-height:1.6}:is(input,textarea,select):hover:not(:focus){border-color:rgb(var(--gold-rgb) / .42)}:is(input,textarea,select):focus{border-color:var(--jade)}::placeholder{color:var(--ink-muted);opacity:1}@media (max-width:720px){input:where(:not([type=checkbox],[type=radio],[type=range],[type=file])),select{min-height:44px;padding:0 10px}textarea{min-height:110px}}}@layer layout{.site-theme-song{color:var(--ink);font-family:var(--font-ui)}.site-theme{background:var(--bg) var(--paper-texture) repeat;flex-direction:column;min-height:100vh;display:flex}.site-main{flex:1;min-height:100vh}.site-theme:has(.home-page) .site-main{flex:none;min-height:0}.skip-link{z-index:10000;padding:10px var(--space-4);border:1px solid var(--cinnabar-strong);color:var(--on-accent);background:var(--cinnabar);font-size:var(--fs-4);text-decoration:none;position:absolute;top:8px;left:8px;transform:translateY(-160%)}.skip-link:is(:focus,:focus-visible){outline:2px solid var(--ink);outline-offset:2px;transform:translateY(0)}main:focus{outline:none}.top-nav{z-index:20;border-bottom:1px solid var(--line);background:rgb(var(--paper-rgb) / .96) var(--paper-texture);grid-template-columns:116px minmax(0,1fr) auto;align-items:center;gap:34px;min-height:66px;display:grid;position:sticky;top:0}.home-page .top-nav{background-color:rgb(var(--paper-rgb) / .9);width:100%;height:66px;position:relative}.brand-mark{border-right:1px solid var(--line-soft);width:116px;min-width:max-content;height:65px;color:var(--ink);font-size:var(--fs-10);letter-spacing:.08em;white-space:nowrap;justify-content:center;align-items:center;text-decoration:none;display:flex}:where(.top-nav) a{min-height:32px;color:var(--ink-2);align-items:center;text-decoration:none;display:inline-flex}:where(.top-nav) a:is(.active,:hover){color:var(--cinnabar)}:where(.top-nav) a.active{-webkit-text-decoration:underline 1px var(--cinnabar);-webkit-text-decoration:underline 1px var(--cinnabar);-webkit-text-decoration:underline 1px var(--cinnabar);text-decoration:underline 1px var(--cinnabar);text-underline-offset:20px}.desktop-nav-links{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:42px;display:flex}.desktop-nav-links a{min-height:65px;color:var(--ink-soft);font-size:var(--fs-5);padding-top:2px}.desktop-nav-links a:is(.active,:hover){color:var(--cinnabar)}.mobile-method-tabs{display:none}.nav-actions{justify-self:end;align-items:center;gap:14px;margin-right:30px;display:inline-flex}.icon-button{border:1px solid var(--line-soft);border-radius:var(--radius-1);color:var(--ink-muted);background:0 0;transition:all .26s cubic-bezier(.25,.46,.45,.94)}.settings-toggle,.sound-toggle{align-items:center;gap:var(--space-2);border:1px solid var(--line-soft);border-radius:var(--radius-1);min-height:40px;color:var(--ink-muted);background:0 0;display:inline-flex}.settings-toggle{min-width:70px;min-height:44px;padding:0 var(--space-3);color:var(--ink-soft);border:0}.home-page .settings-toggle{padding:0 6px}.settings-toggle svg,.sound-toggle svg{fill:currentColor;flex:none;width:18px;height:18px}.sound-control{align-items:center;gap:10px;display:inline-flex}.sound-toggle{padding:0 14px}.sound-toggle:hover:not(:disabled){border-color:var(--gold);color:var(--gold-ink);background:rgb(var(--gold-rgb) / .12)}.sound-volume{align-items:center;gap:var(--space-2);min-width:120px;color:var(--ink-muted);font-size:var(--fs-1);display:inline-flex}.sound-volume input{width:78px;accent-color:var(--gold)}.account-menu-shell{z-index:1;position:relative}.user-seal-button{border-radius:var(--radius-round);min-width:56px;min-height:46px;color:var(--gold-ink);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:5px;padding:2px;display:inline-flex}.account-login-link{color:var(--ink-2);padding-inline:14px;text-decoration:none}.account-status-placeholder{cursor:progress;opacity:.62}.user-seal-art{width:40px;height:40px;color:var(--ink);background:var(--paper);font-family:var(--font-reading);font-size:var(--fs-8);flex:none;place-items:center;font-weight:500;line-height:1;display:grid}.account-caret{flex:none;transition:transform .16s}.user-seal-button[aria-expanded=true] .account-caret{transform:rotate(180deg)}.account-menu{z-index:80;width:238px;padding:var(--space-2);border:1px solid var(--line);color:var(--ink);background:var(--paper);position:absolute;top:calc(100% + 8px);right:0}.account-menu[hidden]{display:none}.account-menu-identity{min-width:0;padding:10px 11px var(--space-3);border-bottom:1px solid var(--line-soft);gap:3px;display:grid}.account-menu-identity :is(strong,span){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-menu-identity strong{font-size:var(--fs-4);font-weight:500}.account-menu-identity span{color:var(--ink-soft);font-size:var(--fs-1)}.account-menu button{width:100%;min-height:44px;color:var(--ink);font-size:var(--fs-3);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;padding:0 11px;text-decoration:none;display:flex}.account-menu button:hover{color:var(--cinnabar);background-color:rgb(var(--cinnabar-rgb) / .05)}.site-footer{justify-content:space-between;align-items:center;gap:var(--space-5);width:100%;height:71px;color:var(--ink-muted);background:rgb(var(--paper-rgb) / .66) url(/visuals/song/v052/footer-mountains.avif) center bottom / cover no-repeat;font-size:var(--fs-2);padding:9px 60px;display:flex}.site-footer p{margin:0}.site-footer nav{gap:var(--space-6);font-size:var(--fs-1);display:flex}.site-footer a{color:inherit}.footer-brand{align-items:center;gap:var(--space-3);display:flex}.footer-brand-seal{background:url(/visuals/song/v052/brand-seal.png) 50%/contain no-repeat;flex:none;width:34px;height:34px;display:block}.footer-brand p{font-family:var(--font-latin);font-size:var(--fs-1);letter-spacing:.08em}.home-page{background:var(--bg) var(--paper-texture);width:100%;max-width:none;margin:0;padding:0;overflow-x:clip}.v010-page,.v010-home{gap:var(--gap);width:min(1080px,100%);padding:var(--gap) var(--page-gutter) 40px;margin:0 auto;display:grid}.method-shell{background:var(--bg)}.transport-risk-banner{z-index:2;width:min(1180px,100% - 32px);margin:var(--space-3) auto 0;border:1px solid rgb(var(--cinnabar-rgb) / .45);color:var(--danger);background:rgb(var(--cinnabar-rgb) / .06);font-size:var(--fs-3);border-left-width:3px;padding:10px 14px;line-height:1.55;position:relative}.login-shell{isolation:isolate;min-height:100vh;padding:var(--space-6);color:var(--ink);background:var(--bg);place-items:center;display:grid;position:relative;overflow:hidden}.login-shell:before{z-index:-1;content:"";opacity:.46;background:url(/visuals/song/home-hero.avif) 62%/cover no-repeat;position:absolute;inset:0}.login-panel{border:1px solid var(--line);background:rgb(var(--paper-rgb) / .92);width:min(100%,520px);padding:28px}.login-panel:before{width:38px;height:3px;margin-bottom:var(--space-5);content:"";background:var(--cinnabar);display:block}.login-panel h1{margin:0 0 var(--space-5);color:var(--ink);font-size:var(--fs-display-7);letter-spacing:.08em;text-wrap:nowrap;white-space:nowrap;font-weight:400;line-height:1}.login-panel form{gap:var(--space-4);display:grid}.auth-links a{color:var(--cinnabar);text-underline-offset:4px}.legal-page{width:min(880px,100% - 32px);color:var(--ink);margin:0 auto;padding:72px 0 96px}.legal-page :is(h1,h2){color:var(--ink);font-weight:500}.legal-page h1{font-size:var(--fs-display-8);margin:28px 0 18px}.legal-page h2{font-size:var(--fs-9);margin:30px 0 10px}.legal-page p{max-width:76ch;color:var(--ink-2);line-height:1.8}.legal-back{min-height:36px;color:var(--gold-ink);align-items:center;line-height:1.4;text-decoration:none;display:inline-flex}.legal-back:hover{color:var(--ink)}.legal-updated{color:var(--ink-muted);font-size:var(--fs-2);margin-top:34px}@media (max-width:720px){body:has(.mobile-method-tabs){padding-bottom:calc(76px + env(safe-area-inset-bottom))}html:has(.mobile-method-tabs){scroll-padding-bottom:calc(76px + env(safe-area-inset-bottom))}.top-nav{min-height:56px;padding-left:max(12px, env(safe-area-inset-left));grid-template-rows:46px;grid-template-columns:auto minmax(0,1fr) auto;gap:0}.home-page .top-nav{grid-template-rows:54px;grid-template-columns:72px minmax(0,1fr) auto;height:54px;min-height:54px}.brand-mark{width:auto;min-width:64px;height:54px;font-size:var(--fs-8);padding-inline:4px 14px}.desktop-nav-links{display:none}.mobile-method-tabs{z-index:50;width:100%;min-width:0;padding:var(--space-2) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));border-top:1px solid var(--line-soft);background:var(--bg);box-shadow:var(--shadow-dock);grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid;position:fixed;inset:auto 0 0;overflow:visible}.mobile-method-tabs>a{width:100%;min-width:0;min-height:44px;color:var(--ink-soft);text-align:center;white-space:nowrap;justify-content:center;padding:0 2px}.home-page .mobile-method-tabs>a{min-height:47px;font-size:var(--fs-2);border-bottom:1px solid #0000;gap:3px}.mobile-method-tabs>a.active{color:var(--cinnabar)}.home-page .mobile-method-tabs>a.active{border-bottom-color:var(--cinnabar)}.nav-actions{gap:var(--space-1);margin-right:max(8px, env(safe-area-inset-right));grid-column:3}.home-page .nav-actions{grid-row:1}.settings-toggle{padding:0 10px}.sound-toggle{min-width:44px;min-height:44px;padding:0 10px}.home-page .settings-toggle{padding:0}.settings-toggle span,.sound-toggle span,.sound-volume,.account-caret{display:none}.sound-control{gap:0}.user-seal-button{min-width:44px;min-height:44px}.user-seal-art{width:36px;height:36px;font-size:var(--fs-7)}.account-menu{width:220px;right:-2px}.site-footer{align-items:flex-start;gap:var(--space-1);height:auto;min-height:104px;padding:10px var(--space-5) 14px;flex-flow:column wrap}.site-footer nav{flex-wrap:wrap;gap:0 18px}.site-footer a{align-items:center;min-height:44px;display:inline-flex}.footer-brand-seal{width:31px;height:31px}.login-shell{align-items:start;padding-top:clamp(28px,9vh,72px)}}}@layer components{.primary-action,.secondary-action,.ghost-action{border-radius:var(--radius-1);min-height:46px;transition:border-color .18s,background-color .18s,color .18s,transform .12s}.primary-action{z-index:4;width:fit-content;min-width:168px;padding:0 var(--space-6);border:1px solid var(--action-border);color:var(--on-action);background:var(--action-bg);font-size:var(--fs-5);letter-spacing:.08em;flex:none;margin-top:0;font-weight:500;position:relative}a.primary-action{justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.primary-action:hover:not(:disabled){border-color:var(--action-border-hover);color:var(--on-action);background:var(--action-bg-hover);transform:translateY(-1px)}.primary-action:active:not(:disabled){transform:translateY(1px)}.primary-action:disabled{cursor:not-allowed;opacity:.62}.secondary-action,.ghost-action{border:1px solid var(--line);min-height:44px;color:var(--jade);background:rgb(var(--paper-rgb) / .62);justify-content:center;align-items:center;padding:0 18px;text-decoration:none;display:inline-flex}:is(.secondary-action,.ghost-action):hover:not(:disabled){border-color:var(--jade);color:var(--jade-strong);background:rgb(var(--jade-rgb) / .08)}.ghost-action:disabled{cursor:not-allowed;opacity:.58}.login-panel .primary-action,.ghost-action.full{width:100%}.ghost-action.compact{font-size:var(--fs-1)}.text-link{min-height:44px;color:var(--jade);text-underline-offset:4px;align-items:center;margin-inline:6px;text-decoration:underline;display:inline-flex}.glow-active{border-width:1.5px;border-color:var(--gold);animation:2.2s ease-in-out infinite gold-pulse}@keyframes gold-pulse{0%,to{border-color:rgb(var(--gold-rgb) / .42);box-shadow:0 0 4px rgb(var(--gold-rgb) / .15)}50%{border-color:rgb(var(--gold-rgb) / 1);box-shadow:0 0 16px rgb(var(--gold-rgb) / .62), inset 0 0 8px rgb(var(--gold-rgb) / .22)}}.dashboard-error-actions,.home-primary-actions,.pending-action-buttons,.consult-result-actions,.recast-actions,.consult-resume,.consult-error{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dashboard-error-actions{justify-content:center}.field-block{gap:var(--space-2);margin:14px 0;display:grid}.field-block span{color:var(--ink);font-size:var(--fs-3)}.user-text{font-family:var(--font-reading)}.check-row{align-items:center;gap:var(--space-2);min-height:44px;color:var(--ink);cursor:pointer;display:inline-flex}.check-row input{width:20px;height:20px;accent-color:var(--cinnabar);margin:0}.segmented-choices{gap:var(--space-2);flex-wrap:wrap;display:flex}.segmented-choice{border:1px solid var(--line);min-width:64px;min-height:44px;color:var(--ink);background:var(--paper);cursor:pointer;justify-content:center;align-items:center;padding:0 14px;display:inline-flex;position:relative}.segmented-choice input{opacity:0;cursor:pointer;position:absolute;inset:0}.segmented-choice.active{border-color:var(--cinnabar);color:var(--on-action);background:var(--cinnabar)}.segmented-choice:has(input:focus-visible){outline:2px solid var(--cinnabar);outline-offset:2px}.form-status{padding:10px var(--space-3);border:1px solid rgb(var(--gold-rgb) / .28);color:var(--jade);background:rgb(var(--gold-rgb) / .08);font-size:var(--fs-2);margin:14px 0 0;line-height:1.6}.form-error{color:var(--danger);font-size:var(--fs-3)}.muted,.disclaimer,.privacy-note{color:var(--ink-muted);font-size:var(--fs-2);line-height:1.7}.privacy-note{padding:10px var(--space-3);border:1px solid var(--line-soft);border-left:3px solid var(--jade);background:rgb(var(--jade-rgb) / .05);margin:10px 0 0}.v010-hint,.v010-privacy-note{border-left:3px solid var(--jade);color:var(--ink-soft);background:rgb(var(--jade-rgb) / .06);font-size:var(--fs-3);padding:6px 10px}.song-kicker{color:var(--cinnabar);font-family:var(--font-latin);font-size:var(--fs-1);letter-spacing:.28em;text-transform:uppercase;font-weight:600}.v010-kicker{color:var(--cinnabar);font-size:var(--fs-2);letter-spacing:.16em;margin:0 0 6px}.v010-kicker a{color:inherit}.panel-title{justify-content:space-between;align-items:baseline;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.panel-title span,.section-kicker{color:var(--ink);font-family:var(--font-ui);font-size:var(--fs-8);font-weight:700}.panel-title small{color:var(--ink-muted);font-size:var(--fs-2);line-height:1.7}.paper-card{border:1px solid var(--line);color:var(--ink);background:var(--paper);padding:clamp(16px,3vw,24px)}.paper-card :is(h1,h2,h3){margin:0 0 var(--space-2);color:var(--ink);letter-spacing:.06em;font-weight:500}.paper-card h1{font-size:var(--fs-display-5)}.paper-card h2{font-size:var(--fs-display-3)}.paper-card h3{font-size:var(--fs-6)}.paper-card p{margin:0 0 var(--space-2);line-height:1.7}.v010-page-head p{color:var(--ink-soft)}.v010-tabs{gap:var(--space-1);border-bottom:1px solid var(--line);display:flex;overflow-x:auto}.v010-tabs [role=tab]{min-width:72px;min-height:44px;color:var(--ink-soft);font:inherit;font-size:var(--fs-5);cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:0;padding:0 18px}.v010-tabs [role=tab][aria-selected=true]{border-color:var(--line);color:var(--cinnabar);background:var(--paper);margin-bottom:-1px}:is(.daily-evidence,.consult-advanced,.birth-advanced,.consult-result-details,.strength-breakdown)>summary{min-height:44px;color:var(--jade);cursor:pointer;align-items:center;display:inline-flex}:is(.daily-evidence,.consult-advanced,.birth-advanced,.consult-result-details,.strength-breakdown)>summary:before{content:"＋";font-size:var(--fs-2);margin-right:6px}:is(.daily-evidence,.consult-advanced,.birth-advanced,.consult-result-details,.strength-breakdown)[open]>summary:before{content:"－"}:is(.coin-ladder-record,.liuyao-other-lines,.yijing-classics-fold)>summary{min-height:44px;color:var(--jade);cursor:pointer;align-items:center;display:flex}.accessible-disclosure{min-width:0;display:grid}.accessible-disclosure>:is(h2,h3,h4){margin:0}.accessible-disclosure [hidden]{display:none}.disclosure-panel,.accessible-disclosure>[role=region]{scroll-margin-top:112px}.disclosure-toggle{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:10px var(--space-3);border:1px solid rgb(var(--gold-rgb) / .24);color:var(--gold-ink);background:rgb(var(--gold-rgb) / .075);text-align:left;cursor:pointer;display:flex}.disclosure-toggle:is(:hover,[aria-expanded=true]){border-color:rgb(var(--jade-rgb) / .48);background:rgb(var(--jade-rgb) / .1)}.disclosure-toggle>span:first-child{color:var(--ink);font:inherit}.disclosure-action{color:var(--jade);font-size:var(--fs-1);flex:none}@media (max-width:720px){.field-block span{font-size:var(--fs-2)}.panel-title{margin-bottom:10px}}.home-landscape-band{border:1px solid var(--line);background:url(/visuals/song/home-hero.avif) center 38% / cover no-repeat, var(--paper-deep);height:clamp(72px,14vw,140px)}.home-today{gap:14px;display:grid}.home-date-head{align-items:baseline;gap:var(--space-1) var(--space-4);flex-wrap:wrap;display:flex}.home-date-head h1{margin:0}.home-date-head p{color:var(--ink-soft);margin:0}.home-date-civil{gap:10px;display:inline-flex}.home-date-head .home-date-pillars{margin:0 0 var(--space-6);color:var(--ink-2);font-size:var(--fs-4);letter-spacing:.08em}.daily-line-card{padding-top:var(--space-3);border-top:1px solid var(--line);gap:6px;display:grid}.daily-line{align-items:baseline;gap:var(--space-1) 6px;font-size:var(--fs-6);flex-wrap:wrap;line-height:1.7;display:flex}.daily-line b{color:var(--cinnabar);font-weight:600}.daily-line-day{font-size:var(--fs-8);font-weight:600}.daily-line-sep,.daily-line-headline{color:var(--ink-soft)}.daily-evidence ul{margin:var(--space-1) 0 0;padding-left:var(--space-5);color:var(--ink-soft);line-height:1.7}.pending-action-card{padding:10px var(--space-3);border:1px dashed var(--line);background:rgb(var(--cinnabar-rgb) / .04)}.daily-ritual-entry{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.daily-ritual-entry p{color:var(--ink-soft)}.luck-strip,.chart-warnings,.daily-deepen-card{border:1px solid var(--line);color:var(--ink);background:var(--paper);padding:14px clamp(16px,3vw,24px)}.luck-strip p{align-items:baseline;gap:6px var(--space-3);flex-wrap:wrap;margin:0;display:flex}.luck-strip strong{font-size:var(--fs-8)}.luck-strip-label,.luck-strip-note{color:var(--ink-soft)}.luck-verdict{padding:1px var(--space-2);font-size:var(--fs-2);letter-spacing:.08em;border:1px solid;justify-self:start;align-items:center;display:inline-flex}.luck-verdict-助力{color:var(--verdict-help)}.luck-verdict-平稳{color:var(--verdict-calm)}.luck-verdict-压力{color:var(--danger)}.chart-warnings{border-left:3px solid var(--cinnabar)}.chart-warnings ul{margin:0 0 var(--space-2);color:var(--ink);padding-left:18px;line-height:1.7}.daily-deepen-idle{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.daily-deepen-idle p{color:var(--ink-soft);margin:0}:is(.daily-deepen-result,.daily-slip) dl{margin:var(--space-2) 0 0;gap:6px;display:grid}:is(.daily-deepen-result,.daily-slip) dl div{gap:var(--space-2);grid-template-columns:5.5em minmax(0,1fr);display:grid}:is(.daily-deepen-result,.daily-slip) dt{color:var(--cinnabar)}:is(.daily-deepen-result,.daily-slip) dd{margin:0}.daily-deepen-result dd{font-family:var(--font-reading)}.home-chart-disclosure{padding:var(--space-1) clamp(16px, 3vw, 24px) var(--space-3);border:1px solid var(--line);background:var(--paper)}.home-chart-disclosure>summary{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:52px;color:var(--ink);font-size:var(--fs-5);letter-spacing:.08em;cursor:pointer;padding:0 60px;list-style:none;display:flex}.home-chart-disclosure>summary::-webkit-details-marker{display:none}.home-chart-disclosure>summary:after{border-right:1.5px solid var(--ink-muted);border-bottom:1.5px solid var(--ink-muted);content:"";flex:none;width:8px;height:8px;margin-top:-4px;transition:transform .16s;transform:rotate(45deg)}.home-chart-disclosure[open]>summary:after{margin-top:2px;transform:rotate(225deg)}.home-chart-band{gap:var(--space-3) 30px;background-color:rgb(var(--paper-rgb) / .2);grid-template:"basis basis""pillars balance""pillars summary"1fr"link link"/minmax(0,64fr) minmax(280px,36fr);width:100%;padding:18px 60px 15px;display:grid}.home-chart-basis{color:var(--ink-soft);grid-area:basis;margin:0}.home-chart-band .text-link{grid-area:link;justify-self:start}.home-pillars{grid-area:pillars;grid-template-columns:repeat(4,minmax(0,1fr));height:190px;margin:10px 0 0;display:grid}.home-pillars .pillar-column{place-items:center;gap:var(--space-1);min-width:0;padding:0 var(--space-3);border-right:1px solid var(--line-soft);text-align:center;opacity:0;grid-template-rows:24px 17px 80px 17px 20px;animation:.42s ease-out forwards pillar-reveal;display:grid;position:relative}.home-pillars .pillar-column:nth-child(2){animation-delay:90ms}.home-pillars .pillar-column:nth-child(3){animation-delay:.18s}.home-pillars .pillar-column:nth-child(4){animation-delay:.27s}.home-pillars .pillar-column:last-child{border-right:0}.home-pillars .pillar-column :is(p,small){color:var(--ink-soft);font-size:var(--fs-2);white-space:nowrap;margin:0;line-height:1.2}.home-pillars .pillar-column strong{color:var(--ink);font-size:var(--fs-10);letter-spacing:0;flex-direction:column;gap:0;font-weight:500;line-height:1;display:flex}.home-pillars .pillar-glyph{font-size:39px;line-height:1}.home-pillars .day-pillar>p,.home-pillars .day-pillar strong{color:var(--cinnabar)}.pillar-glyph.element-wood{color:var(--wx-wood)}.pillar-glyph.element-fire{color:var(--wx-fire)}.pillar-glyph.element-earth{color:var(--wx-earth)}.pillar-glyph.element-metal{color:var(--wx-metal)}.pillar-glyph.element-water{color:var(--wx-water)}.pillar-hidden-stems{display:none}@keyframes pillar-reveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.home-element-balance{gap:var(--space-2);margin-top:var(--space-4);grid-area:balance;display:grid}.home-element-balance>div{--element-color:var(--jade);align-items:center;gap:var(--space-3);grid-template-columns:24px minmax(0,1fr) 28px;display:grid}.home-element-balance>[data-element=wood]{--element-color:var(--wx-wood)}.home-element-balance>[data-element=fire]{--element-color:var(--wx-fire)}.home-element-balance>[data-element=earth]{--element-color:var(--wx-earth)}.home-element-balance>[data-element=metal]{--element-color:var(--wx-metal)}.home-element-balance>[data-element=water]{--element-color:var(--wx-water)}.home-element-balance>div>span{color:var(--ink-2);font-size:var(--fs-2)}.home-element-balance i{background-color:var(--line-soft);height:1px;display:block;overflow:visible}.home-element-balance b{background:var(--element-color);height:6px;margin-top:-3px;display:block}.home-element-balance strong{color:var(--ink-soft);font-size:var(--fs-1)}.ziping-summary{color:var(--ink-2);font-size:var(--fs-1);flex-wrap:wrap;grid-area:summary;align-content:start;gap:7px 17px;margin:14px 0 0;display:flex}.ziping-summary span:nth-child(2){color:var(--wx-water)}.ziping-summary span:nth-child(3){color:var(--cinnabar)}.dashboard-loading{min-height:448px;color:var(--ink-soft);text-align:center;margin:0;padding:80px 60px}.dashboard-state-panel{place-content:start center;gap:var(--space-4);min-height:448px;margin:0;padding:80px 60px;display:grid}.v010-home-onboarding{width:min(760px,100%)}.v010-onboarding form{gap:var(--space-3);display:grid}.birth-profile-fields{gap:14px;display:grid}.birth-profile-fields fieldset{padding:10px var(--space-3) var(--space-3);border:1px solid var(--line);margin:0}.birth-profile-fields legend{padding:0 var(--space-1);color:var(--ink)}.birth-profile-fields small{color:var(--ink-soft);font-size:var(--fs-2)}.birth-profile-fields .field-block{margin:0}.birth-date-segments{gap:var(--space-2);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);display:grid}.birth-segment{align-items:center;gap:6px;display:flex}.birth-segment :is(input,select),.birth-profile-fields :is(input[type=time],input[inputmode=decimal],select),.city-combobox input{width:100%;min-width:0;min-height:44px;font-size:var(--fs-5);padding:0 10px}.birth-time-row{align-items:end;gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;display:grid}.birth-place-grid,.birth-coordinate-grid,.consult-advanced-grid,.profile-field-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));display:grid}.birth-advanced{gap:10px;display:grid}.city-combobox{position:relative}.city-combobox-list{z-index:30;max-height:280px;padding:var(--space-1);border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow-popover);margin:0;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.city-combobox-list[hidden]{display:none}.city-combobox-list li{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;min-height:44px;padding:0 10px;display:flex}.city-combobox-list li small{color:var(--ink-soft)}.city-combobox-list li:is([aria-selected=true],:hover){background:rgb(var(--jade-rgb) / .1)}.daily-ritual{gap:14px;display:grid}.daily-ritual-tabs{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.daily-ritual-tabs [role=tab]{min-height:64px;padding:var(--space-2) var(--space-1);border:1px solid var(--line);color:var(--ink-soft);background:var(--paper);font:inherit;cursor:pointer;justify-items:center;gap:2px;display:grid}.daily-ritual-tabs [role=tab][aria-selected=true]{border-color:var(--cinnabar);color:var(--cinnabar)}.daily-ritual-glyph{font-size:var(--fs-10)}.daily-ritual-panel{gap:var(--space-3);min-height:220px;display:grid}.daily-ritual-stage{justify-items:center;gap:var(--space-4);padding:var(--space-3) 0;display:grid}.daily-slip-back,.daily-card-back,.daily-coin-back{border:1px solid var(--line);color:var(--cinnabar);font-size:var(--fs-12);place-items:center;display:grid}.daily-slip-back{border-radius:var(--radius-2) var(--radius-2) 18px 18px;background:var(--slip-wood);width:64px;height:180px}.daily-card-back{border-radius:var(--radius-3);width:112px;height:172px;color:var(--card-ink);background:var(--card-table-deep)}.daily-coin-back{background:var(--daily-coin);border-radius:50%;width:96px;height:96px}.daily-slip-face,.daily-draw-result{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--line);background:var(--paper);transform-origin:top;display:grid}.daily-slip-face{border-top:4px solid var(--cinnabar)}:is(.daily-slip-face,.daily-draw-result) h3{color:var(--ink);font-size:var(--fs-9);margin:0;font-weight:500}.daily-slip-day,.daily-draw-kicker{color:var(--ink-soft);font-size:var(--fs-2);letter-spacing:.12em;margin:0}.daily-draw-tag{margin-left:var(--space-2);color:var(--cinnabar);font-size:var(--fs-2);border:1px solid;padding:0 6px}.daily-hexagram-symbol{margin-right:var(--space-2)}.daily-primary-text{padding:var(--space-2) var(--space-3);border-left:3px solid var(--jade);margin:0}.daily-primary-text p{margin:0 0 var(--space-1)}.daily-primary-text cite{color:var(--ink-soft);font-size:var(--fs-2);font-style:normal}.daily-draw-action{gap:2px;display:grid}.daily-draw-action strong{color:var(--cinnabar);font-weight:500}.daily-ritual-note{color:var(--ink-soft);font-size:var(--fs-3);text-align:center;margin:0}.daily-ritual-empty{color:var(--ink-soft);gap:10px;display:grid}.daily-slip-face.is-revealing{animation:.9s cubic-bezier(.2,.8,.2,1) both slip-rise}.daily-draw-result.is-revealing{animation:.9s ease-out both card-flip}@keyframes slip-rise{0%{opacity:0;transform:translateY(40px)scaleY(.6)}to{opacity:1;transform:translateY(0)scaleY(1)}}@keyframes card-flip{0%{opacity:.2;transform:perspective(600px)rotateY(90deg)}to{opacity:1;transform:perspective(600px)rotateY(0)}}.recast-quote{margin:0 0 var(--space-3);border-left:3px solid var(--cinnabar);background:rgb(var(--cinnabar-rgb) / .05);padding:10px 14px}.recast-quote p{font-size:var(--fs-7);letter-spacing:.12em;margin:0}.recast-quote cite{color:var(--ink-soft);font-size:var(--fs-2);font-style:normal}.recast-verdict{gap:var(--space-1);display:grid}.recast-verdict strong{color:var(--cinnabar);font-weight:500}@media (max-width:720px){.home-landscape-band{background-image:url(/visuals/song/v052/home-hero-mobile.avif)}.home-date-head .home-date-pillars{font-size:var(--fs-2)}.daily-line{font-size:var(--fs-5)}.home-chart-disclosure>summary{padding:14px var(--space-5)}.home-chart-band{height:auto;padding:var(--space-5);display:block}.home-pillars{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;height:auto;margin:14px 0 0}.home-pillars .pillar-column{border-bottom:1px solid var(--line-soft);grid-template-rows:24px 17px 76px 17px 20px;min-height:164px}.home-pillars .pillar-column strong{font-size:var(--fs-8)}.home-pillars .pillar-column:nth-child(2n){border-right:0}.ziping-summary{margin-bottom:var(--space-1)}.birth-time-row{grid-template-columns:minmax(0,1fr)}}.consult-question textarea{width:100%;min-height:96px;padding:10px var(--space-3);font-size:var(--fs-5);resize:vertical;line-height:1.6}.consult-question textarea[readonly]{background:var(--paper-deep)}.consult-question small{color:var(--ink-soft)}.consult-topics{margin:var(--space-3) 0 0;border:0;padding:0}.consult-topics legend{margin-bottom:var(--space-2);color:var(--ink)}.consult-method,.consult-method-panel,.chart-tab-panel{gap:var(--gap);display:grid}.consult-params{gap:10px;display:grid}.consult-params p{color:var(--ink-soft)}.consult-progress{color:var(--jade)}.consult-stage{min-width:0;overflow-x:clip}.method-stage{border-right:1px solid var(--line);height:auto;min-height:auto;padding:22px;scroll-margin-block-start:80px;overflow:hidden}.consult-result{gap:14px;display:grid}.consult-result h2:focus{outline:none}.consult-result-actions{z-index:6;position:relative}.ritual-scope-western{padding:var(--gap);border:1px solid var(--line);color:var(--ink);background:radial-gradient(circle at 50% 12%, rgb(var(--gold-rgb) / .13), transparent 34rem), var(--bg-deep)}.tarot-ritual{gap:var(--space-4);min-width:0;max-width:100%;display:grid;container-type:inline-size}.tarot-draw-ritual,.tarot-reveal{gap:var(--space-4);min-width:0;display:grid}.ritual-head{justify-content:space-between;align-items:center;gap:10px var(--space-4);flex-wrap:wrap;display:flex}.ritual-kicker{font-size:var(--fs-2);letter-spacing:.12em}.ritual-status{margin:var(--space-1) 0 0;font-size:var(--fs-3);line-height:1.6}.tarot-load-progress{font-size:var(--fs-1);text-align:right;margin:-8px 0 0}.ritual-ghost{min-height:44px;padding:0 var(--space-4);border:1px solid var(--line);border-radius:var(--radius-1);color:var(--gold-ink);background:rgb(var(--gold-rgb) / .1);font:inherit;cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.ritual-ghost:hover:not(:disabled){border-color:var(--gold);background:rgb(var(--gold-rgb) / .2)}.ritual-ghost:disabled{cursor:not-allowed;opacity:.5}.ritual-shuffle{padding:var(--space-2) 0 var(--space-1);justify-items:center;gap:14px;display:grid}.ritual-deck{aspect-ratio:.64;width:clamp(84px,24cqi,116px);margin:var(--space-2) 0 var(--space-1);position:relative}.ritual-deck-card{border:1px solid var(--card-back-line);border-radius:var(--radius-2);background:var(--visual-card-back) center / cover, var(--card-table);box-shadow:var(--shadow-deck);transform:translate(calc(var(--deck-layer) * -1.5px), calc(var(--deck-layer) * -1.5px));position:absolute;inset:0}.ritual-deck[data-shuffling=true] .ritual-deck-card{animation:.46s ease-in-out infinite ritual-riffle-right;animation-delay:calc(var(--deck-layer) * 45ms)}.ritual-deck[data-shuffling=true] .ritual-deck-card:nth-child(odd){animation-name:ritual-riffle-left}@keyframes ritual-riffle-right{0%,to{transform:translate(0)rotate(0)}50%{transform:translate(40px,-6px)rotate(9deg)}}@keyframes ritual-riffle-left{0%,to{transform:translate(0)rotate(0)}50%{transform:translate(-40px,-6px)rotate(-9deg)}}.ritual-shuffle-btn{touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;min-height:44px}.ritual-hint{font-size:var(--fs-2);text-align:center;margin:0;line-height:1.6}.tarot-fan{--fan-card-w:clamp(40px, 9cqi, 60px);--fan-card-h:calc(var(--fan-card-w) / .64);--fan-row:calc(var(--fan-card-h) * .55);grid-template-columns:repeat(26,minmax(0,1fr));grid-auto-rows:var(--fan-row);min-width:0;max-width:100%;padding:28px calc(var(--fan-card-w) / 2) calc(var(--fan-card-h) * .45 + 12px);display:grid}.tarot-fan-card{--fan-y:calc(var(--fan-d) * var(--fan-d) * 12px);--fan-r:calc(var(--fan-d) * 14deg);--fan-lift:-18px;--fan-scale:1.06;width:100%;height:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0;position:relative}.tarot-fan-card:before{width:var(--fan-card-w);aspect-ratio:.64;margin-left:calc(var(--fan-card-w) / -2);border:1px solid var(--card-back-line);content:"";background:var(--visual-card-back) center / cover, var(--card-table);box-shadow:var(--shadow-fan);pointer-events:none;transform:translateY(var(--fan-y)) rotate(var(--fan-r));transform-origin:50% 120%;border-radius:5px;transition:transform .18s,box-shadow .18s,opacity .18s;position:absolute;top:0;left:50%}.tarot-fan-card:is(:hover:not([aria-disabled=true]),:focus-visible){z-index:5;outline:none}.tarot-fan-card:is(:hover:not([aria-disabled=true]),:focus-visible):before{box-shadow:var(--shadow-card-lift);transform:translateY(calc(var(--fan-y) + var(--fan-lift))) rotate(var(--fan-r)) scale(var(--fan-scale))}.tarot-fan-card:focus-visible:before{outline:2px solid var(--gold);outline-offset:2px}.tarot-fan-card[data-picked=true]{cursor:default}.tarot-fan-card[data-picked=true]:before{opacity:.32}.tarot-fan-card[data-picked=true] span{top:calc(var(--fan-card-h) - 6px - 1.4em);width:var(--fan-card-w);margin-left:calc(var(--fan-card-w) / -2);color:var(--gold-ink);font-size:var(--fs-2);opacity:.32;pointer-events:none;transform:translateY(var(--fan-y)) rotate(var(--fan-r));transform-origin:50% calc(var(--fan-card-h) * .2 + 6px + 1.4em);place-items:center;font-weight:700;display:grid;position:absolute;left:50%}.tarot-fan[data-disabled=true] .tarot-fan-card:not([data-picked=true]){cursor:not-allowed}.tarot-fan[data-disabled=true] .tarot-fan-card:not([data-picked=true]):before{filter:saturate(.6)}@container not (min-width:790px){.tarot-fan{overscroll-behavior-x:contain;scrollbar-width:thin;grid-template-columns:repeat(39,46px);grid-auto-rows:auto;gap:10px 4px;padding:18px 10px 14px;overflow-x:auto}.tarot-fan-card{--fan-card-w:46px;--fan-card-h:calc(var(--fan-card-w) / .64);--fan-y:calc(var(--fan-m) * var(--fan-m) * 8px);--fan-r:calc(var(--fan-m) * 4deg);--fan-lift:-8px;--fan-scale:1;aspect-ratio:.64;height:auto}}.ritual-slots{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.ritual-slots li{align-items:center;gap:var(--space-1) var(--space-2);min-width:0;padding:var(--space-2) 10px;border:1px dashed var(--line);flex:140px;grid-template-columns:auto minmax(0,1fr);display:grid}.ritual-slots li small{color:var(--ink-muted);font-size:var(--fs-1);grid-column:1/-1;line-height:1.5;display:none}.ritual-slots li:is([data-filled=true],[data-next=true]) small{display:block}.ritual-slots li[data-filled=true]{background:rgb(var(--gold-rgb) / .08);border-style:solid}.ritual-slots li[data-next=true]{border-color:var(--gold)}:is(.ritual-slots,.tarot-slot-label,.tarot-reading-position) b{border:1px solid var(--line);border-radius:var(--radius-round);min-width:1.7em;height:1.7em;color:var(--gold-ink);font-size:var(--fs-1);place-items:center;font-weight:700;display:inline-grid}.tarot-layout{--card-w:min(158px, 29cqi);justify-content:center;align-items:start;gap:14px clamp(10px,2.4cqi,18px);min-width:0;display:grid}.tarot-layout[data-layout=single]{--card-w:min(210px, 62cqi);grid-template-areas:"s1"}.tarot-layout[data-layout=row]{grid-template-areas:"s1 s2 s3";grid-template-columns:repeat(3, minmax(0, var(--card-w)))}.tarot-layout[data-layout=grid]{--card-w:min(142px, 29cqi);grid-template-columns:repeat(3, minmax(0, var(--card-w)))}.tarot-layout[data-spread=two_options]{grid-template-areas:"o1 now o2"".adv."}.tarot-layout[data-spread=relationship]{grid-template-areas:"you rel other"".adv."}.tarot-layout[data-layout=cross]{--card-w:clamp(56px, 14cqi, 96px);--slot-h:calc(var(--card-w) / .64);grid-template-areas:". . . .c10"".c5. .c10"".c5. .c9""c4 c1 c6.c9""c4 c1 c6.c8"".c3. .c8"".c3. .c7"". . . .c7";grid-template-columns:repeat(3, var(--card-w)) calc(var(--card-w) * .3) var(--card-w);grid-template-rows:repeat(8, calc(var(--slot-h) / 2 + 4px));gap:0 calc(var(--card-w) * .34)}.tarot-slot{grid-area:var(--slot-area,auto);justify-items:center;gap:6px;min-width:0;display:grid;position:relative}.tarot-slot-label{max-width:100%;font-size:var(--fs-2);text-align:center;align-items:center;gap:6px;line-height:1.3;display:inline-flex}.tarot-slot-card{width:var(--card-w);aspect-ratio:.64;perspective:900px;max-width:100%;position:relative}.tarot-flip{transform-style:preserve-3d;transition:transform .62s cubic-bezier(.2,.72,.2,1);position:absolute;inset:0}.tarot-flip[data-flipped=true]{transform:rotateY(180deg)}.tarot-flip-face{border:1px solid var(--card-back-line);border-radius:var(--radius-2);backface-visibility:hidden;position:absolute;inset:0;overflow:hidden}.tarot-flip-back{background:var(--visual-card-back) center / cover, var(--card-table);box-shadow:var(--shadow-card)}.tarot-flip-front{background:var(--card-table);transform:rotateY(180deg)}.tarot-flip-front picture{place-items:center;display:grid;position:absolute;inset:4px}.card-art{border:1px solid rgb(var(--ink-rgb) / .2);background:rgb(var(--bg-rgb) / .4);width:100%;height:100%;box-shadow:var(--shadow-art);object-fit:contain;margin:0 auto;display:block}.tarot-slot[data-orientation=reversed] .card-art{transform:rotate(180deg)}.tarot-slot[data-orientation=reversed] .tarot-flip-front{border-color:rgb(var(--cinnabar-rgb) / .75)}.tarot-slot-meta{background:linear-gradient(180deg, transparent, var(--card-caption) 55%);text-align:center;pointer-events:none;justify-items:center;gap:1px;padding:22px 6px 6px;display:grid;position:absolute;inset:auto 0 0}.tarot-slot-meta strong{overflow-wrap:anywhere;max-width:100%;font-size:clamp(12px,2.4cqi,15px);line-height:1.2}.tarot-slot-meta small{color:var(--gold-ink);font-size:var(--fs-1)}.tarot-slot[data-orientation=reversed] .tarot-slot-meta small{color:var(--cinnabar)}.tarot-slot-hit{z-index:3;border-radius:var(--radius-2);cursor:pointer;background:0 0;border:0;padding:0;position:absolute;inset:0}.tarot-slot[data-active=true] .tarot-flip-face{box-shadow:0 0 0 2px var(--gold), 0 10px 24px rgb(var(--gold-rgb) / .25)}.tarot-layout[data-layout=cross] .tarot-slot-label{z-index:4;pointer-events:none;position:absolute;top:4px;left:4px}.tarot-layout[data-layout=cross] .tarot-slot-name{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tarot-layout[data-layout=cross] .tarot-slot[data-crossing=true]{z-index:2;pointer-events:none}.tarot-layout[data-layout=cross] .tarot-slot[data-crossing=true] .tarot-slot-card{transform:rotate(90deg)scale(.9)}.tarot-layout[data-layout=cross] .tarot-slot[data-crossing=true] .tarot-slot-hit{pointer-events:auto}.tarot-layout[data-layout=cross] .tarot-slot[data-crossing=true] .tarot-slot-label{top:calc(50% - .9em);right:calc(var(--card-w) * -.22);left:auto}.tarot-readings{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.tarot-readings li{gap:var(--space-1);padding:10px var(--space-3);border:1px solid var(--line-soft);border-left:3px solid var(--line);background:rgb(var(--white-rgb) / .03);scroll-margin-block:96px;display:grid}.tarot-readings li[data-active=true]{border-left-color:var(--gold);background:rgb(var(--gold-rgb) / .08)}.tarot-reading-position{font-size:var(--fs-2);align-items:center;gap:6px;display:flex}.tarot-readings strong{font-size:var(--fs-4)}.tarot-readings p{font-family:var(--font-reading);font-size:var(--fs-3);margin:0;line-height:1.7}.tarot-reading-pending{opacity:.7}.method-yijing-stage{border:1px solid var(--line);min-height:100%;color:var(--ink);background:rgb(var(--paper-rgb) / .88);align-content:center;padding:clamp(16px,3vw,34px);display:grid}.yijing-coin-stage{gap:var(--space-5);min-width:0;max-width:100%;margin-bottom:var(--space-6);border:1px solid var(--line);background:rgb(var(--bg-rgb) / .72);box-shadow:0 4px 18px rgb(var(--ink-rgb) / .04);border-radius:4px;padding:clamp(14px,4vw,24px);display:grid}.coin-stage-header{text-align:center}.coin-stage-header h3{color:var(--method-accent,inherit);font-size:var(--fs-8);margin:0 0 6px}.coin-stage-status{color:var(--ink-muted);font-size:var(--fs-2);margin:0}.coin-tray{width:min(320px,100%);min-height:170px;padding:26px var(--space-3) 18px;border:1px solid var(--line);background:radial-gradient(circle at center, rgb(var(--cinnabar-rgb) / .06), rgb(var(--bg-rgb) / .95) 72%);box-shadow:var(--shadow-inset);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;margin:0 auto;display:flex;position:relative}.coins-container{perspective:800px;justify-content:center;align-items:center;gap:clamp(10px,5vw,24px);display:flex}.coin-item{border:2px solid var(--coin-rim);background:var(--coin-face);width:clamp(44px,13vw,56px);height:clamp(44px,13vw,56px);box-shadow:var(--shadow-coin);cursor:default;transform-style:preserve-3d;-webkit-user-select:none;user-select:none;border-radius:50%;position:relative}.coin-item[data-side=reverse]{transform:rotateY(180deg)}.coin-item[data-side=idle]{opacity:.55;filter:grayscale(.35)}.coin-item.tumbling{animation:.6s cubic-bezier(.25,1,.5,1) both coin-tumble}.coin-item.tumbling[data-side=inscription]{animation:.44s cubic-bezier(.25,1,.5,1) both coin-toss-inscription;animation-delay:var(--coin-delay,0s)}.coin-item.tumbling[data-side=reverse]{animation:.44s cubic-bezier(.25,1,.5,1) both coin-toss-reverse;animation-delay:var(--coin-delay,0s)}@keyframes coin-tumble{0%{transform:translateY(0)rotateX(0)rotateY(0)scale(1)}25%{transform:translateY(-28px)rotateX(240deg)rotateY(180deg)scale(1.08)}50%{transform:translateY(-40px)rotateX(480deg)rotateY(360deg)scale(1.15)}75%{transform:translateY(-16px)rotateX(640deg)rotateY(540deg)scale(1.04)}to{transform:translateY(0)rotateX(720deg)rotateY(720deg)scale(1)}}@keyframes coin-toss-inscription{0%{transform:translateY(0)rotateX(0)rotateY(0)scale(1)}45%{transform:translateY(-38px)rotateX(400deg)rotateY(360deg)scale(1.12)}to{transform:translateY(0)rotateX(720deg)rotateY(720deg)scale(1)}}@keyframes coin-toss-reverse{0%{transform:translateY(0)rotateX(0)rotateY(0)scale(1)}45%{transform:translateY(-38px)rotateX(400deg)rotateY(450deg)scale(1.12)}to{transform:translateY(0)rotateX(720deg)rotateY(900deg)scale(1)}}.coin-face{backface-visibility:hidden;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.coin-face-front{transform:rotateY(0)}.coin-face-back{background:var(--coin-back);transform:rotateY(180deg)}.coin-square{border:1.5px solid var(--coin-hole-line);background:var(--coin-hole);width:16px;height:16px;box-shadow:var(--shadow-coin-hole);position:absolute}.coin-inscription{color:var(--coin-ink);font-family:var(--font-ui);letter-spacing:.5px;text-shadow:var(--coin-ink-glint);writing-mode:vertical-rl;font-size:8px;font-weight:700;position:absolute}.coin-pattern{border:1px dashed var(--coin-pattern-line);border-radius:50%;width:32px;height:32px;position:absolute}.coin-sum-hint{max-width:100%;min-height:1.4em;margin:var(--space-3) 0 0;color:var(--gold-ink);font-size:var(--fs-1);letter-spacing:1px;text-align:center;overflow-wrap:anywhere}.coin-step-ladder{gap:var(--space-2);border:1px solid var(--line);background:rgb(var(--white-rgb) / .6);border-radius:4px;min-width:0;padding:10px;display:grid}.ladder-step{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-1) 6px;font-size:var(--fs-2);border-radius:3px;grid-template-columns:3em minmax(0,1fr) auto;transition:background .2s;display:grid}.ladder-step.step-current{background:rgb(var(--cinnabar-rgb) / .08);outline:1px solid rgb(var(--cinnabar-rgb) / .2)}.step-name{color:var(--ink-muted)}.step-bar{align-items:center;display:flex}.line-placeholder{background:rgb(var(--white-rgb) / .08);border-radius:2px;width:100%;height:4px;display:block}.line-glyph{gap:6px;width:100%;height:8px;display:flex}.line-glyph em{border-radius:1px;height:100%;display:block}.line-glyph.yang em{background:var(--yao-yang);width:100%}.line-glyph.yin em{background:var(--yao-yin);flex:1}.line-glyph.moving em{background:var(--yao-moving);box-shadow:var(--yao-moving-glow)}.step-val{color:var(--ink-muted);font-size:var(--fs-1);text-align:right;white-space:nowrap}.step-done .step-val{color:var(--ink);font-weight:500}.coin-stage-actions{justify-content:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.coin-stage-actions>button{white-space:normal;min-width:0;max-width:100%}.hexagram-shift{align-items:center;gap:10px var(--space-4);border:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);min-width:0;padding:14px;display:grid}.hexagram-shift[data-static=true]{grid-template-columns:minmax(0,1fr);justify-items:center}.shift-column{justify-items:center;gap:10px;min-width:0;margin:0;display:grid}.shift-column figcaption{justify-items:center;gap:2px;display:grid}.shift-column figcaption span{color:var(--ink-muted);font-size:var(--fs-1)}.shift-column figcaption strong{color:var(--ink);font-size:var(--fs-7)}.shift-arrow{color:var(--gold-ink);font-size:var(--fs-9)}.shift-lines{gap:7px;width:min(120px,100%);margin:0;padding:0;list-style:none;display:grid}.shift-line{height:9px;position:relative}.shift-glyph{gap:14%;display:flex;position:absolute;inset:0}.shift-glyph em{background:var(--ink);border-radius:1px;flex:1}.shift-line.is-moving .shift-glyph em,.shift-line.is-flipping .shift-glyph-to em{background:var(--cinnabar)}.hexagram-shift[data-animate=false] .shift-glyph-from{display:none}.hexagram-shift[data-animate=true] .shift-line.is-flipping .shift-glyph-from{animation:.36s ease-in both shift-line-out;animation-delay:calc(.5s + var(--flip-order) * .22s)}.hexagram-shift[data-animate=true] .shift-line.is-flipping .shift-glyph-to{animation:.42s ease-out both shift-line-in;animation-delay:calc(.86s + var(--flip-order) * .22s)}@keyframes shift-line-out{0%{opacity:1;transform:rotateX(0)}to{opacity:0;transform:rotateX(90deg)}}@keyframes shift-line-in{0%{opacity:0;transform:rotateX(-90deg)}to{opacity:1;transform:rotateX(0)}}.shift-moving{color:var(--ink-muted);font-size:var(--fs-2);text-align:center;grid-column:1/-1;margin:0}.method-yijing-result,.liuyao-board{gap:var(--space-4);min-width:0;display:grid}.liuyao-board{gap:14px}.liuyao-board-head{gap:6px;display:grid}.liuyao-board-time{gap:6px var(--space-4);flex-wrap:wrap;margin:0;display:flex}.liuyao-board-time div{align-items:baseline;gap:6px;display:flex}.liuyao-board-time dt{color:var(--ink-muted);font-size:var(--fs-1)}.liuyao-board-time dd{color:var(--ink);font-size:var(--fs-5);margin:0;font-weight:600}.liuyao-board-palace{gap:var(--space-1) var(--space-3);color:var(--ink-muted);font-size:var(--fs-2);flex-wrap:wrap;margin:0;display:flex}.liuyao-primary{gap:var(--space-2);padding:14px var(--space-4);border:1px solid var(--line);border-left:4px solid var(--cinnabar);background:rgb(var(--cinnabar-rgb) / .06);display:grid}.liuyao-primary-ref{color:var(--cinnabar);font-size:var(--fs-2);letter-spacing:.06em}.liuyao-primary blockquote{color:var(--ink);font-size:var(--fs-display-1);margin:0;line-height:1.7}.liuyao-primary-rule,.liuyao-primary-hint{color:var(--ink-muted);font-size:var(--fs-2);margin:0;line-height:1.6}.liuyao-yongshen{align-items:baseline;gap:var(--space-1) 10px;padding:var(--space-2) var(--space-3);border:1px dashed var(--gold);flex-wrap:wrap;margin:0;display:flex}.liuyao-yongshen>span{color:var(--gold-ink);font-size:var(--fs-1)}.liuyao-yongshen small{color:var(--ink-muted);font-size:var(--fs-2);flex-basis:100%;line-height:1.6}.liuyao-lines{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.liuyao-line{align-items:center;gap:var(--space-1) 10px;min-width:0;padding:var(--space-2) 10px;border:1px solid var(--line-soft);font-size:var(--fs-3);grid-template-columns:2.6em 2.4em 2.4em minmax(4.2em,auto) auto minmax(0,1fr);display:grid}.liuyao-line-pos,.liuyao-line-spirit{color:var(--ink-muted);font-size:var(--fs-1)}.liuyao-line-relation{color:var(--ink);font-weight:600}.liuyao-line-ganzhi{color:var(--ink);white-space:nowrap}.liuyao-line[data-void=true] .liuyao-line-ganzhi{-webkit-text-decoration:underline dashed var(--ink-muted);-webkit-text-decoration:underline dashed var(--ink-muted);-webkit-text-decoration:underline dashed var(--ink-muted);text-decoration:underline dashed var(--ink-muted);text-underline-offset:4px}.liuyao-line-mark{gap:var(--space-1);display:inline-flex}.liuyao-line-mark em,:is(.liuyao-line-tags,.liuyao-hidden) b{min-width:1.6em;padding:0 var(--space-1);border:1px solid var(--line);color:var(--gold-ink);font-size:var(--fs-1);place-items:center;font-style:normal;display:inline-grid}.liuyao-line-mark .liuyao-moving-mark{border-color:var(--cinnabar);color:var(--cinnabar)}.liuyao-line-tags{gap:var(--space-1) var(--space-2);flex-wrap:wrap;min-width:0;display:flex}:is(.liuyao-line-tags,.liuyao-hidden) i{color:var(--ink-muted);font-size:var(--fs-1);font-style:normal}.liuyao-line-tags i[data-tag=void]{color:var(--cinnabar)}.liuyao-line-changed{color:var(--jade);font-size:var(--fs-2);grid-column:2/-1}.liuyao-line[data-moving=true]{border-left:3px solid var(--cinnabar)}:is(.liuyao-line,.liuyao-hidden li)[data-yongshen=true]{border-color:var(--gold);background:rgb(var(--gold-rgb) / .14);box-shadow:inset 0 0 0 1px var(--gold)}:is(.liuyao-line-tags,.liuyao-hidden) b{border-color:var(--gold);color:var(--on-gold);background:var(--gold)}.liuyao-hidden h4{color:var(--ink-muted);font-size:var(--fs-2);margin:0 0 6px}.liuyao-hidden ul{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.liuyao-hidden li{align-items:center;gap:var(--space-1) 10px;border:1px dashed var(--line-soft);font-size:var(--fs-3);flex-wrap:wrap;padding:6px 10px;display:flex}.liuyao-yong-text{color:var(--ink);font-size:var(--fs-3);margin:0;line-height:1.7}.liuyao-other-lines ol{gap:6px;margin:0;padding-left:0;list-style:none;display:grid}.liuyao-other-lines li span{margin-right:var(--space-2);color:var(--ink-muted);font-size:var(--fs-1)}@media (max-width:720px){.tarot-layout[data-layout=single]{--card-w:min(230px, 62cqi)}.tarot-layout[data-layout=row]{--card-w:calc((100cqi - 24px) / 3)}.tarot-layout:is([data-layout=grid],[data-layout=cross]){--card-w:calc((100cqi - 16px) / 2);gap:14px var(--space-3);grid-template:none/repeat(2,minmax(0,1fr))}.tarot-layout:is([data-layout=grid],[data-layout=cross]) .tarot-slot{grid-area:auto}.tarot-layout[data-layout=cross] .tarot-slot-label{position:static}.tarot-layout[data-layout=cross] .tarot-slot-name{clip:auto;width:auto;height:auto;position:static;overflow:visible}.tarot-layout[data-layout=cross] .tarot-slot[data-crossing=true]{pointer-events:auto}.tarot-layout[data-layout=cross] .tarot-slot[data-crossing=true] .tarot-slot-card{transform:none}.liuyao-line{grid-template-columns:2.6em 2.4em 2.4em minmax(0,1fr)}.liuyao-line-mark{justify-self:start}.liuyao-line-tags{grid-column:2/-1}}.report-panel{padding:var(--space-5);color:var(--ink);background:rgb(var(--paper-rgb) / .92);box-shadow:var(--shadow);flex-direction:column;gap:14px;display:flex}.report-sections{flex:1;align-content:start;gap:10px;display:grid}.report-section-nav{gap:var(--space-2);scroll-padding-inline:var(--space-1);scrollbar-width:none;padding-bottom:2px;display:flex;overflow-x:auto}.report-section-nav::-webkit-scrollbar{display:none}.report-section-nav a{min-height:36px;padding:var(--space-2) 10px;border:1px solid rgb(var(--gold-rgb) / .2);color:var(--gold-ink);background:rgb(var(--gold-rgb) / .07);font-size:var(--fs-1);white-space:nowrap;flex:none;line-height:1.4;text-decoration:none}.report-section{border:1px solid var(--line);background:rgb(var(--paper-rgb) / .96);animation:.42s both report-section-reveal;animation-delay:calc(var(--reveal-index,0) * 80ms);padding:14px;scroll-margin-top:112px}.report-section h3{margin:0 0 var(--space-2);color:var(--ink);font-size:var(--fs-5)}.report-section p{color:var(--ink);font-family:var(--font-reading);font-size:var(--fs-5);white-space:pre-wrap;margin:0;line-height:1.8}@keyframes report-section-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stream-status,.warning-status{padding:10px var(--space-3);border:1px solid var(--line);color:var(--ink);background:rgb(var(--paper-rgb) / .92);font-size:var(--fs-2)}.stream-status small{margin-left:var(--space-2);color:var(--ink-muted);font-size:var(--fs-1)}.warning-status{border-left:3px solid var(--gold);line-height:1.6}.generation-progress{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.generation-progress li{border:1px solid var(--line-soft);min-height:34px;color:var(--ink-muted);background:rgb(var(--field-rgb) / .72);font-size:var(--fs-1);text-align:center;padding:7px 6px;line-height:1.35}.generation-progress li.active{border-color:var(--jade);color:var(--jade);background:rgb(var(--jade-rgb) / .08)}.report-skeleton{gap:10px;display:grid}.report-skeleton span{border:1px solid var(--line-soft);background:linear-gradient(90deg, transparent, rgb(var(--line-rgb) / .08), transparent), rgb(var(--field-rgb) / .72);background-size:220% 100%;height:72px;animation:1.4s ease-in-out infinite skeleton-shimmer;display:block}@keyframes skeleton-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.report-action-stack{z-index:2;gap:var(--space-3);display:grid;position:relative}.disclaimer{border-top:1px solid var(--line-soft);margin-top:auto;padding-top:14px}.reading-report .report-panel{width:100%;padding:var(--space-4) 0;border:0;border-bottom:1px solid var(--line-soft);background:0 0}.report-v2-body{gap:var(--space-4);min-width:0;font-family:var(--font-reading);display:grid}.report-v2-lead{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--line);border-left:4px solid var(--cinnabar);background:rgb(var(--cinnabar-rgb) / .05);display:grid}.report-verdict{color:var(--ink);font-size:var(--fs-display-2);margin:0;font-weight:600;line-height:1.55}.report-confidence{color:var(--ink-muted);font-family:var(--font-ui);font-size:var(--fs-2);flex-wrap:wrap;align-items:baseline;gap:2px 6px;margin:0;display:flex}.report-confidence strong{color:var(--ink)}.report-confidence small{font-size:var(--fs-1)}.report-v2-block{gap:10px;min-width:0;display:grid}.report-v2-block h3{color:var(--gold-ink);font-size:var(--fs-5);margin:0}.report-v2-block p{color:var(--ink);margin:0;line-height:1.7}.report-basis,.report-actions{counter-reset:report-item;gap:10px;margin:0;padding:0;list-style:none;display:grid}:is(.report-basis,.report-actions) li{min-width:0;padding:var(--space-3) var(--space-3) var(--space-3) 40px;border:1px solid var(--line-soft);counter-increment:report-item;gap:6px;display:grid;position:relative}:is(.report-basis,.report-actions) li:before{top:var(--space-3);left:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-round);width:20px;height:20px;color:var(--gold-ink);content:counter(report-item);font-family:var(--font-ui);font-size:var(--fs-1);place-items:center;display:grid;position:absolute}.report-basis li{align-items:baseline;column-gap:var(--space-2);grid-template-columns:auto minmax(0,1fr)}.report-basis li p{color:var(--ink-muted);font-size:var(--fs-3);grid-column:1/-1}.report-basis span{color:var(--ink-muted);font-size:var(--fs-1)}.report-basis strong{color:var(--ink);font-size:var(--fs-3);overflow-wrap:anywhere}.report-action-text{font-size:var(--fs-4);font-weight:600}.report-action-checks{gap:var(--space-1);margin:0;display:grid}.report-action-checks div{gap:var(--space-2);grid-template-columns:5.5em minmax(0,1fr);display:grid}.report-action-checks dt,.report-yiji dt{font-family:var(--font-ui)}.report-action-checks dt{color:var(--ink-muted);font-size:var(--fs-1);line-height:1.7}.report-action-checks dd{color:var(--ink);font-size:var(--fs-3);margin:0;line-height:1.6}.report-adopt{min-width:0;min-height:44px;font-family:var(--font-ui);justify-self:start}.report-adopt.is-adopted:disabled{cursor:default;opacity:1}.report-actions li[data-adopted=true]{border-color:var(--jade)}.report-adopt-message{font-size:var(--fs-2)}.report-adopt-message.is-alert{color:var(--cinnabar)}.report-yiji{gap:6px;margin:0;display:grid}.report-yiji div{gap:var(--space-2);grid-template-columns:2em minmax(0,1fr);display:grid}.report-yiji dt{color:var(--cinnabar);font-weight:700}.report-yiji div+div dt{color:var(--ink-muted)}.report-yiji dd{color:var(--ink);margin:0;line-height:1.7}.report-v2-details article{gap:var(--space-1);border-top:1px solid var(--line-soft);padding:10px 0;display:grid}.report-v2-details h4{color:var(--ink-muted);font-size:var(--fs-2);margin:0}.report-v2-details p{color:var(--ink);white-space:pre-wrap;margin:0;line-height:1.7}.report-v2-followups ul{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.report-v2-followups button{text-align:left;min-width:0;min-height:44px}.report-v2-followups span{padding:var(--space-2) var(--space-3);border:1px solid var(--line-soft);color:var(--ink);display:inline-block}.method-result-list{align-content:start;gap:var(--space-3);display:grid}.method-result-list h2{color:var(--ink)}.method-result-list article{border-top:1px solid var(--line-soft);gap:6px;padding:13px;display:grid}.method-xianxia .method-result-list article{border-top-color:var(--line);background:rgb(var(--paper-rgb) / .88)}.method-result-list article span{color:var(--method-accent,var(--gold-ink));font-size:var(--fs-1)}.method-result-list article strong{color:var(--ink);font-size:var(--fs-5)}.method-result-list article p{color:var(--ink-muted);font-size:var(--fs-5);margin:0;line-height:1.8}.method-empty-state{border:1px solid var(--line);color:var(--ink);background:rgb(var(--paper-rgb) / .88);gap:10px;padding:14px;display:grid}.method-empty-state :is(p,ul){margin:0}.method-empty-state strong{color:var(--gold-ink);font-size:var(--fs-3)}.method-empty-state ul{color:var(--ink-muted);font-size:var(--fs-1);gap:6px;padding-left:18px;line-height:1.6;display:grid}.yijing-classics{color:var(--ink);background:rgb(var(--paper-rgb) / .88);margin-top:6px}.yijing-moving-lines ol{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.yijing-moving-lines li{color:var(--ink-muted);font-size:var(--fs-2);line-height:1.75}.bazi-panel,.element-panel,.stone-panel{min-height:250px;color:var(--ink);background:rgb(var(--paper-rgb) / .88);padding:18px}.bazi-panel{position:relative;overflow:hidden}:where(.bazi-panel,.element-panel) h2{color:var(--ink);font-size:var(--fs-7);margin:4px 0 14px}:is(.bazi-panel,.element-panel) strong{color:var(--ink)}.bazi-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.bazi-meta,.luck-cycles,.bazi-elements{margin:0 0 var(--space-3);flex-wrap:wrap;gap:6px;display:flex}:is(.bazi-meta,.luck-cycles) span{border:1px solid var(--line);color:var(--gold-ink);background:rgb(var(--gold-rgb) / .08);font-size:var(--fs-1);padding:3px 7px}.day-master,.pillar-card,.bazi-elements span,.annual-flow,.ziping-analysis,.bazi-complete-plate{border:1px solid var(--line-soft);color:var(--ink);background:rgb(var(--jade-rgb) / .06)}.day-master{min-width:58px;padding:var(--space-2) 10px;place-items:center;display:grid}.day-master span,.pillar-card span,.annual-flow span,.ziping-heading span,.ziping-grid span{color:var(--ink-muted);font-size:var(--fs-1)}.day-master strong{font-size:var(--fs-9);line-height:1.1}.pillar-grid{gap:var(--space-2);margin:6px 0 var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.pillar-card{min-height:72px;padding:10px var(--space-2);text-align:center;align-content:center;gap:7px;display:grid}.pillar-card strong,.annual-flow strong{font-size:var(--fs-7)}.bazi-elements span{font-size:var(--fs-1);padding:3px 7px}.bazi-elements .wood{color:var(--wx-wood)}.bazi-elements .fire{color:var(--wx-fire)}.bazi-elements .earth{color:var(--wx-earth)}.bazi-elements .metal{color:var(--wx-metal)}.bazi-elements .water{color:var(--wx-water)}.annual-flow{margin:0 0 var(--space-3);gap:5px;padding:10px;display:grid}.ziping-analysis,.bazi-complete-plate{gap:var(--space-2);margin:0 0 var(--space-3);padding:10px;display:grid}.bazi-complete-plate{gap:10px}.ziping-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.ziping-heading strong,.ziping-grid strong{color:var(--ink)}.ziping-grid{grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:6px;display:grid}.ziping-grid span{border:1px solid var(--line);background:rgb(var(--gold-rgb) / .08);padding:5px 6px}.annual-flow p,.ziping-analysis p,.bazi-complete-plate .pillar-card p,.bazi-warning{color:var(--ink-muted);font-size:var(--fs-1);margin:0;line-height:1.6}.bazi-complete-plate .pillar-card{text-align:left;align-content:start;min-height:0}.bazi-complete-plate .pillar-card p{line-height:1.55}.bazi-warning{margin-top:var(--space-2)}.bazi-detail-grid{grid-template-columns:minmax(112px,.8fr) repeat(2,minmax(120px,1fr));gap:10px;display:grid}.bazi-chart-details{margin-top:var(--space-2);gap:10px;display:grid}.five-elements-orbit{background:url(/visuals/song/wuxing-scroll.avif) 50%/cover no-repeat}.orbit{border-radius:var(--radius-round);width:184px;height:184px;margin:44px auto;position:relative}.orbit-art{object-fit:contain;opacity:.82;width:calc(100% + 64px);max-width:none;height:calc(100% + 64px);filter:drop-shadow(0 8px 14px rgb(var(--ink-rgb) / .16));mix-blend-mode:multiply;transition:filter .4s,opacity .4s;position:absolute;inset:-32px}.orbit-node{--element-glow:18px;--element-opacity:1;--element-scale:1;--orbit-radius:74px;--orbit-node-size:40px;--orbit-node-offset:calc(var(--orbit-node-size) / -2);width:var(--orbit-node-size);height:var(--orbit-node-size);border:1px solid var(--line);border-radius:var(--radius-round);color:var(--ink);background:rgb(var(--paper-rgb) / .92);box-shadow:0 0 var(--element-glow) currentColor;place-items:center;display:grid;position:absolute;top:50%;left:50%}@supports (color:color-mix(in lab, red, red)){.orbit-node{box-shadow:0 0 var(--element-glow) color-mix(in srgb, currentColor 38%, transparent)}}.orbit-node{opacity:var(--element-opacity);transform:rotate(var(--orbit-angle)) translate(var(--orbit-radius)) rotate(var(--orbit-counter-angle)) translate(var(--orbit-node-offset), var(--orbit-node-offset)) scale(var(--element-scale));transition:box-shadow .24s,opacity .24s,transform .24s}.orbit-node[data-intensity=high]{border-color:currentColor}.orbit-node[data-intensity=low]{border-color:var(--line-soft)}.orbit-node.wood{color:var(--wx-wood)}.orbit-node.fire{color:var(--wx-fire)}.orbit-node.earth{color:var(--wx-earth)}.orbit-node.metal{color:var(--wx-metal)}.orbit-node.water{color:var(--wx-water)}.element-row{margin:var(--space-2) 0;color:var(--ink-muted);font-size:var(--fs-2);grid-template-columns:24px 1fr 24px;align-items:center;gap:10px;display:grid}.element-track{background:rgb(var(--white-rgb) / .07);height:6px;overflow:hidden}.element-track span{background:linear-gradient(90deg, var(--jade), var(--gold));height:100%;display:block}.stone-list{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));display:grid}.stone-item{--stone-color:#f4ecd8d1;gap:var(--space-3);min-width:0;padding:var(--space-3);border:1px solid var(--line);background:linear-gradient(rgb(var(--paper-rgb) / .94), rgb(var(--paper-rgb) / .94)), var(--visual-scroll-panel) center / cover;grid-template-columns:58px 1fr;display:grid}.stone-item>div:not(.stone-gem){align-content:start;gap:var(--space-2);min-width:0;display:grid}:where(.stone-item p,.stone-item span){margin:0}.stone-gem{border:1px solid var(--line);background:rgb(var(--bg-rgb) / .58);transform-origin:50% 60%;border-radius:5px;width:58px;height:84px;transition:transform .24s;animation:3.8s ease-in-out infinite crystal-glow;position:relative;overflow:hidden}.stone-gem img{object-fit:cover;filter:sepia(.24)saturate(.62)contrast(.92)opacity(.9);width:100%;height:100%}.stone-item:hover .stone-gem{transform:rotate(4deg)translateY(-2px)}@keyframes crystal-glow{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)translateY(-1px)}}.stone-heading{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:0;display:flex}:where(.stone-item) h3{min-width:0;font-size:var(--fs-5);overflow-wrap:anywhere;margin:0;line-height:1.35}.stone-item h3{color:var(--gold-ink)}.stone-item :is(p,span){color:var(--ink-soft);font-size:var(--fs-2);line-height:1.65}.stone-item>div:not(.stone-gem)>span{overflow-wrap:anywhere;display:block}.stone-color,.stone-tags span{border:1px solid var(--line);max-width:100%;color:var(--jade);background:rgb(var(--jade-rgb) / .06);font-size:var(--fs-2);white-space:normal;overflow-wrap:anywhere;align-items:center;gap:5px;padding:2px 7px;display:inline-flex}.stone-color i{border-radius:var(--radius-round);background:var(--stone-color);width:8px;height:8px;box-shadow:0 0 12px var(--stone-color)}.stone-tags{flex-wrap:wrap;gap:6px;margin:0;display:flex}.western-crystal-panel{align-content:center;gap:18px;min-height:100%;display:grid}.western-crystal-empty{max-width:560px;padding:var(--space-6);border:1px solid rgb(var(--water-rgb) / .22);background:linear-gradient(180deg, rgb(var(--bg-rgb) / .82), rgb(var(--bg-rgb) / .92)), url(/visuals/western-crystal-altar-wide.svg) center / cover;text-align:center;gap:10px;margin:0 auto;display:grid}:is(.western-crystal-empty,.western-crystal-overview) h2{font-size:var(--fs-12);margin:0}.western-crystal-empty p,.western-crystal-overview p,.western-crystal-item p,.western-crystal-disclaimer{font-size:var(--fs-2);margin:0;line-height:1.75}.western-crystal-overview{border:1px solid rgb(var(--gold-rgb) / .24);background:linear-gradient(180deg, rgb(var(--bg-rgb) / .84), rgb(var(--bg-rgb) / .94)), url(/visuals/western-crystal-altar-wide.svg) center / cover;max-width:760px;box-shadow:inset 0 0 48px rgb(var(--water-rgb) / .08), var(--shadow-crystal);grid-template-columns:minmax(0,1fr) 148px;gap:10px;margin:0 auto;padding:22px;display:grid}.western-crystal-overview>span,.western-crystal-overview h2,.western-crystal-overview p,.western-crystal-meta{grid-column:1}.western-crystal-overview>span{font-family:var(--font-western);font-size:var(--fs-2)}.western-crystal-ritual-art{grid-area:1/2/span 4;align-self:center;width:148px;height:148px;position:relative}.western-crystal-ritual-art img{width:100%;height:100%;filter:drop-shadow(0 0 16px rgb(var(--water-rgb) / .26));object-fit:contain;position:absolute;inset:0}.western-crystal-ritual-art img+img{opacity:.72;transform:rotate(18deg)scale(.78)}.western-crystal-meta,.western-crystal-tags{gap:var(--space-2);flex-wrap:wrap;display:flex}.western-crystal-meta span,.western-crystal-tags span,.western-crystal-heading span{padding:var(--space-1) var(--space-2);border:1px solid rgb(var(--water-rgb) / .3);background:rgb(var(--water-rgb) / .08);font-size:var(--fs-1)}.western-crystal-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;width:100%;display:grid}.western-crystal-item{--western-crystal-color:#e1ebffd1;border:1px solid var(--western-crystal-color);grid-template-columns:72px minmax(0,1fr);gap:14px;min-width:0;padding:14px;display:grid}@supports (color:color-mix(in lab, red, red)){.western-crystal-item{border:1px solid color-mix(in srgb, var(--western-crystal-color) 40%, rgb(var(--gold-rgb) / .22))}}.western-crystal-item{background:linear-gradient(180deg, rgb(var(--bg-rgb) / .84), rgb(var(--bg-rgb) / .94)), url(/visuals/western-crystal-rune-ring.svg) center / 230px auto;box-shadow:inset 0 0 28px var(--western-crystal-color), var(--shadow-crystal-card)}@supports (color:color-mix(in lab, red, red)){.western-crystal-item{box-shadow:inset 0 0 28px color-mix(in srgb, var(--western-crystal-color) 10%, transparent), var(--shadow-crystal-card)}}.western-crystal-gem{border:1px solid var(--western-crystal-color);width:72px;height:104px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.western-crystal-gem{border:1px solid color-mix(in srgb, var(--western-crystal-color) 52%, rgb(var(--ink-rgb) / .22))}}.western-crystal-gem{background:rgb(var(--bg-rgb) / .86);box-shadow:0 0 26px var(--western-crystal-color), inset 0 0 20px rgb(var(--ink-rgb) / .06);border-radius:5px}@supports (color:color-mix(in lab, red, red)){.western-crystal-gem{box-shadow:0 0 26px color-mix(in srgb, var(--western-crystal-color) 48%, transparent), inset 0 0 20px rgb(var(--ink-rgb) / .06)}}.western-crystal-gem img{filter:saturate(1.08)contrast(1.06);object-fit:cover;width:100%;height:100%}.western-crystal-heading{margin-bottom:var(--space-2);flex-wrap:wrap;align-items:center;gap:7px;display:flex}.western-crystal-heading h3{width:100%;font-size:var(--fs-7);margin:0}.western-crystal-item strong{font-size:var(--fs-2);margin-top:10px;line-height:1.65;display:block}.western-crystal-disclaimer{padding-top:var(--space-3);border-top:1px solid rgb(var(--water-rgb) / .2)}@media (max-width:720px){.report-panel{padding:14px}.report-section{scroll-margin-top:148px}.bazi-detail-grid{gap:var(--space-2);grid-template-columns:1fr}.western-crystal-overview{padding:var(--space-4);grid-template-columns:1fr}.western-crystal-ritual-art{grid-area:auto/1;justify-self:center;width:112px;height:112px;margin:2px 0}.western-crystal-list{grid-template-columns:1fr}.western-crystal-item{padding:var(--space-3);grid-template-columns:62px minmax(0,1fr);gap:10px}.western-crystal-gem{width:62px;height:90px}}.reading-center-page{background:var(--paper-texture) repeat;min-height:100vh}.reading-center-hero{min-height:112px;padding:var(--space-6) clamp(22px, 4vw, 60px) var(--space-5);border-bottom:1px solid var(--line-soft);background:linear-gradient(90deg, rgb(var(--bg-rgb) / .98) 0 42%, rgb(var(--bg-rgb) / .6) 68%, rgb(var(--bg-rgb) / .95)), url(/visuals/song/v052/footer-mountains.avif) right 38% / min(58vw, 860px) auto no-repeat}.reading-center-hero h1{font-size:var(--fs-display-9);letter-spacing:.12em;margin:0;font-weight:500}.reading-center-hero p{max-width:760px;margin:var(--space-2) 0 0;color:var(--ink-muted);line-height:1.7}.reading-view-tabs{gap:var(--space-3);padding:var(--space-4);flex-wrap:wrap;display:flex}:is(.reading-view-tabs,.reading-detail-surface) .primary-action{justify-content:center;align-items:center;gap:var(--space-2);display:inline-flex}.reading-workbench{border:1px solid var(--line);background:rgb(var(--paper-rgb) / .72);grid-template-columns:minmax(440px,42%) minmax(0,1fr);width:calc(100% - clamp(32px,3vw,48px));min-height:320px;margin:0 auto 18px;transition:opacity .16s;display:grid}.reading-workbench[hidden]{display:none}.reading-list-surface,.reading-detail-surface{min-width:0}.reading-index{border-right:1px solid var(--line);min-width:0}.reading-filters{padding:var(--space-4);border-bottom:1px solid var(--line-soft);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.reading-filters>label:first-child{grid-column:1/-1}.reading-filters :is(input,select){width:100%;min-width:0;min-height:44px;padding:var(--space-2) 10px;background:rgb(var(--field-rgb) / .72);font-size:var(--fs-5);border-radius:0;line-height:1.3}.reading-summary-items{padding:0 var(--space-4);margin:0;list-style:none}.reading-summary-items button{gap:var(--space-2);width:100%;padding:var(--space-4) var(--space-2);border:0;border-bottom:1px solid var(--line);color:inherit;text-align:left;background:0 0;display:grid}.reading-summary-items button[aria-pressed=true]{background:rgb(var(--cinnabar-rgb) / .08)}.reading-summary-items strong{font-size:var(--fs-7);overflow-wrap:anywhere}.reading-summary-items :is(span,small){font-size:var(--fs-3);line-height:1.5}.reading-page-controls{justify-content:space-between;gap:var(--space-3);padding:var(--space-4);display:flex}.reading-page-controls button,.reading-back{min-height:44px}.reading-back{margin:var(--space-4)}.reading-detail{min-width:0;padding:18px 22px 22px}.reading-detail-empty{text-align:center;place-items:center;gap:10px;min-height:260px;display:grid}.reading-detail-empty p{color:var(--ink-muted);margin:0}.reading-center-loading{min-height:420px;padding:80px var(--space-6);color:var(--ink-muted);text-align:center;margin:0}.reading-detail-header{gap:var(--space-3);border-bottom:1px solid var(--line);padding-bottom:14px;display:grid}.reading-detail-header>div>span,.reading-section-heading span{color:var(--cinnabar);font-size:var(--fs-1)}.reading-detail-header h2{font-size:var(--fs-display-4);margin:5px 0 0;font-weight:500}.reading-detail-header dl,.reading-evidence-grid{gap:var(--space-2) 22px;flex-wrap:wrap;margin:0;display:flex}:is(.reading-detail-header dl,.reading-evidence-grid) div{gap:7px;display:flex}:is(.reading-detail-header,.reading-evidence-grid) :is(dt,dd){color:var(--ink-muted);font-size:var(--fs-1);margin:0}:is(.reading-detail-header,.reading-evidence-grid) dd{color:var(--ink)}.reading-legacy-tag{margin-left:var(--space-2);border:1px solid var(--line);color:var(--ink-muted);font-size:var(--fs-1);vertical-align:middle;padding:0 6px;display:inline-block}.reading-recast{gap:var(--space-1) 10px;color:var(--ink-muted);font-size:var(--fs-2);flex-wrap:wrap;margin:6px 0 0;display:flex}.reading-recast a{color:var(--jade)}.reading-question,.reading-evidence,.reading-followups{padding:var(--space-4) 0;border-bottom:1px solid var(--line-soft)}:is(.reading-question,.reading-evidence,.reading-followups) h3{font-size:var(--fs-6);margin:0 0 10px;font-weight:500}.reading-question p,.reading-wuxing-summary,:is(.reading-crystal-evidence,.reading-stone-evidence) p{color:var(--ink-2);margin:0;line-height:1.75}.reading-section-heading{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.reading-tarot-evidence,:is(.reading-crystal-evidence,.reading-stone-evidence) ul{gap:var(--space-2);margin:var(--space-3) 0 0;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));padding:0;list-style:none;display:grid}.reading-tarot-evidence article,:is(.reading-crystal-evidence,.reading-stone-evidence) li{border-left:2px solid rgb(var(--gold-rgb) / .5);gap:5px;padding:6px 10px;display:grid}.reading-tarot-evidence span,:is(.reading-crystal-evidence,.reading-stone-evidence) span{color:var(--ink-muted);font-size:var(--fs-1)}.reading-tarot-evidence p{color:var(--ink-muted);font-size:var(--fs-1);margin:0;line-height:1.55}.reading-followups>ol{gap:14px;margin:0 0 14px;padding:0;list-style:none;display:grid}.reading-followups>ol>li{gap:var(--space-2);display:grid}.followup-question,.followup-answer{grid-template-columns:28px minmax(0,1fr);align-items:start;gap:9px;display:grid}:is(.followup-question,.followup-answer)>span{border:1px solid var(--line);width:26px;height:26px;color:var(--cinnabar);font-size:var(--fs-1);border-radius:50%;place-items:center;display:grid}.followup-answer>span{color:var(--jade)}:is(.followup-question,.followup-answer) p{color:var(--ink);font-family:var(--font-reading);font-size:var(--fs-2);margin:0;line-height:1.65}.followup-answer section+section{margin-top:var(--space-2)}.reading-followups form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.reading-followups textarea{resize:vertical;width:100%;min-height:78px}.reading-followup-field{gap:6px;display:grid}.reading-followup-field>span{color:var(--ink-muted);font-size:var(--fs-2)}.reading-action-message{margin:var(--space-3) 0 0}.reading-detail-actions,.reading-data-actions,.reading-delete-confirm,.reading-clear-confirm{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.reading-detail-actions{padding-top:var(--space-4)}.reading-detail-actions button,.reading-data-actions button,.reading-import-action{justify-content:center;align-items:center;gap:7px;display:inline-flex}.reading-data-actions{min-height:60px;padding:var(--space-3) clamp(20px, 4vw, 60px);border-top:1px solid var(--line);background:rgb(var(--paper-rgb) / .72);justify-content:flex-end}.reading-data-actions :is(button,.reading-import-action){min-height:36px;padding:var(--space-2) 10px;color:var(--ink-muted);font:var(--fs-2) / 1 var(--font-ui);cursor:pointer;background:0 0;border:0}:is(.reading-data-actions,.reading-detail-actions) .danger{color:var(--cinnabar)}.reading-import-action{position:relative;overflow:hidden}.reading-import-action input{opacity:0;cursor:pointer;position:absolute;inset:0}.reading-reflection{padding-block:var(--space-6);border-block:1px solid var(--line)}.reading-reflection fieldset{gap:var(--space-4);border:0;min-width:0;padding:0;display:grid}.reading-reflection label{gap:var(--space-2);font-size:var(--fs-5);display:grid}.reading-reflection :is(input:not([type=checkbox]),textarea,button){max-width:100%;min-height:44px;font-size:var(--fs-5)}.reading-reflection textarea{line-height:1.6}.reading-reflection .reflection-action{min-width:0;margin:0 0 var(--space-3);padding:var(--space-3);border:1px solid var(--line-soft);gap:10px;display:grid}.reading-reflection .reflection-action>legend{align-items:center;gap:var(--space-2);padding:0 var(--space-1);display:flex}.reading-reflection .reflection-completed{align-items:center;gap:var(--space-3);white-space:nowrap;min-height:44px;display:flex}.reading-reflection .reflection-completed input[type=checkbox]{flex:none;width:20px;min-width:20px;height:20px;min-height:20px;margin:0}.reflection-source{border:1px solid var(--line);color:var(--ink-muted);font-size:var(--fs-1);padding:0 6px}.reflection-action[data-source=ai] .reflection-source{border-color:var(--jade);color:var(--jade)}.reflection-action-checks{gap:var(--space-2);grid-template-columns:minmax(8em,.6fr) minmax(0,1fr) minmax(0,1fr);min-width:0;display:grid}.reflection-action-checks label,.reading-reflection .reflection-action>label:not(.reflection-completed){gap:var(--space-1);min-width:0;display:grid}.reflection-action-checks :is(input,select){min-width:0;min-height:44px}.reading-reflection .reflection-choice{min-width:0;padding:var(--space-2) 10px;border:1px dashed var(--line-soft);flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0;display:flex}.reading-reflection .reflection-choice>legend{padding:0 var(--space-1);color:var(--ink-muted);font-size:var(--fs-2)}.reading-reflection .reflection-choice label{min-height:44px;font-size:var(--fs-4);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.reading-reflection .reflection-choice input[type=radio]{width:18px;min-width:18px;height:18px;min-height:18px;accent-color:var(--cinnabar);flex:none;margin:0}.reading-reflection .reflection-choice .reflection-clear{min-width:0;min-height:36px}.reflection-verification{margin:var(--space-1) 0 var(--space-3)}.cycle-review-panel{gap:var(--space-3);margin:var(--space-3) 0 var(--space-4);padding:var(--space-3);border:1px solid var(--line);color:var(--ink);background:rgb(var(--paper-rgb) / .96);display:grid}.retention-panel-heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.retention-panel-heading>div:first-child{gap:2px;display:grid}.retention-panel-heading span{color:var(--ink-muted);font-size:var(--fs-1);line-height:1.3}.retention-panel-heading strong{color:var(--ink);font-size:var(--fs-4);line-height:1.35}.cycle-review-summary,.cycle-empty-state,.cycle-followups{gap:var(--space-2);display:grid}.cycle-review-summary>span{color:var(--gold-ink);font-size:var(--fs-1);font-weight:700;line-height:1.4}:is(.cycle-empty-state,.cycle-followups) p{color:var(--ink);font-size:var(--fs-2);margin:0;line-height:1.55}.cycle-empty-state{border:1px dashed rgb(var(--gold-rgb) / .24);padding:10px}.retention-chip-row,.cycle-theme-list{flex-wrap:wrap;gap:6px;display:flex}.retention-chip-row small{padding:var(--space-1) 7px;border:1px solid var(--line-soft);color:var(--ink-muted);background:rgb(var(--white-rgb) / .04);font-size:var(--fs-1);line-height:1.2}.cycle-theme-list span{padding:6px var(--space-2);border:1px solid rgb(var(--gold-rgb) / .2);color:var(--ink);background:rgb(var(--gold-rgb) / .07);font-size:var(--fs-1);line-height:1.4}.retention-window-toggle{grid-template-columns:repeat(2,minmax(70px,1fr));gap:6px;display:grid}.retention-window-toggle button{min-height:32px;color:var(--ink-muted);font-size:var(--fs-1);padding:0 9px}.retention-window-toggle button.selected{border-color:var(--gold);color:var(--gold-ink);background:rgb(var(--gold-rgb) / .1)}.cycle-details-toggle{justify-self:start}.cycle-review-details{gap:10px;display:grid}.cycle-review-details[hidden]{display:none}.cycle-reading-list{gap:var(--space-2);display:grid}.cycle-reading-list button{gap:var(--space-1);min-height:68px;color:var(--ink-muted);text-align:left;padding:10px;display:grid}.cycle-reading-list button.selected{border-color:var(--gold);background:rgb(var(--gold-rgb) / .1)}.cycle-reading-list strong{color:var(--ink);font-size:var(--fs-2);line-height:1.35}.cycle-reading-list :is(span,small){color:var(--ink-muted);font-size:var(--fs-1);line-height:1.4}.cycle-action-review{padding-block:var(--space-5)}.cycle-action-review>ul{gap:var(--space-5);padding:0;list-style:none;display:grid}.cycle-action-review>ul>li{min-width:0;padding-bottom:var(--space-4);border-bottom:1px solid var(--line)}.cycle-action-review button{text-align:left;white-space:normal;overflow-wrap:anywhere;min-height:44px}.cycle-action-review :is(p,li){font-size:var(--fs-5);overflow-wrap:anywhere;line-height:1.6}@media (max-width:1100px){.reading-workbench{grid-template-columns:minmax(350px,42%) minmax(0,1fr)}.cycle-review-panel{order:1}}@media (max-width:720px){.reading-center-hero{min-height:132px;padding:var(--space-6) 18px;background:linear-gradient(rgb(var(--bg-rgb) / .88), rgb(var(--bg-rgb) / .96)), url(/visuals/song/v052/footer-mountains.avif) center / cover no-repeat}.reading-center-hero h1{font-size:36px}.reading-workbench{grid-template-columns:minmax(0,1fr);width:calc(100% - 24px)}.reading-workbench[data-detail-open=true] .reading-list-surface,.reading-workbench[data-detail-open=false] .reading-detail-surface{display:none}.reading-index{border-right:0;border-bottom:1px solid var(--line)}.reading-filters{grid-template-columns:minmax(0,1fr) minmax(112px,.5fr)}.reading-detail{padding:18px 14px}.reading-followups form{grid-template-columns:minmax(0,1fr)}.reading-data-actions{padding-inline:var(--space-3);justify-content:center}.reading-center-page :is(.report-section-nav a,.reading-followups button,.reading-detail-actions button,.reading-data-actions button,.reading-import-action){min-height:44px}.reflection-action-checks{grid-template-columns:minmax(0,1fr)}}.me-entries{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));display:grid}.me-entry{gap:var(--space-1);min-height:44px;text-decoration:none;display:grid}.me-entry strong{color:var(--ink);font-size:var(--fs-7);font-weight:500}.me-entry span{color:var(--ink-soft)}.me-entry:hover strong{color:var(--cinnabar)}.profile-center{gap:var(--space-4);display:grid}.profile-center .field-block{margin:0}.profile-center .settings-submit{width:100%}.profile-section{gap:10px;display:grid}.chart-natal,.chart-wuxing,.timing-sections{gap:var(--gap);grid-template-columns:minmax(0,1fr);display:grid}.timing-sections>section{min-width:0}.natal-table-wrap{overflow-x:auto}.natal-table,.strength-items{border-collapse:collapse;width:100%;font-size:var(--fs-4)}:is(.natal-table,.strength-items) :is(th,td){padding:var(--space-2) 6px;border-bottom:1px solid var(--line);text-align:center;vertical-align:top}.natal-table th[scope=row]{color:var(--ink-soft);text-align:left;white-space:nowrap;font-weight:400}.natal-ganzhi strong{font-size:var(--fs-10);font-weight:500}.natal-unknown{color:var(--ink-soft)}.natal-facts{gap:10px;margin:0 0 10px;display:grid}.natal-facts>div{grid-template-columns:6em minmax(0,1fr);gap:10px;display:grid}.natal-facts dt{color:var(--cinnabar)}.natal-facts dd{margin:0}.natal-facts dd small,.shensha-list small{color:var(--ink-soft);font-size:var(--fs-3);line-height:1.6;display:block}.strength-element-scores,.relation-chips,.shensha-list{gap:var(--space-2);margin:var(--space-2) 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}:is(.strength-element-scores,.relation-chips) li{padding:var(--space-1) 10px;border:1px solid var(--line);flex-wrap:wrap;gap:6px;display:inline-flex}.relation-chips span{color:var(--ink-soft)}.shensha-list{display:grid}.shensha-list li{gap:2px;display:grid}.luck-cycle-list{gap:var(--space-2);margin:0 0 var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr));padding:0;list-style:none;display:grid}.luck-cycle-list button{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);background:var(--paper);font:inherit;text-align:left;cursor:pointer;gap:2px;padding:10px;display:grid}.luck-cycle-list .is-current button{border:2px solid var(--cinnabar)}.luck-cycle-list .is-selected button{background:rgb(var(--jade-rgb) / .08)}.luck-step,.luck-years,.luck-start{color:var(--ink-soft);font-size:var(--fs-2)}.luck-pillar{font-size:var(--fs-9);font-weight:500}.luck-cycle-detail h3{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.timing-annual-head{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.timing-annual-head strong{font-size:var(--fs-10);font-weight:500}.annual-matrix-grid{gap:var(--space-3);grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.annual-matrix-grid li{justify-items:center;gap:var(--space-1);padding:10px var(--space-1);border:1px solid var(--line);text-align:center;display:grid}.annual-matrix-grid li.current-annual{border:2px solid var(--cinnabar)}.annual-year{color:var(--ink-muted);font-size:var(--fs-1)}.annual-ten-god,.annual-pending{color:var(--ink-soft);font-size:var(--fs-2)}.annual-pillar{color:var(--ink);font-size:var(--fs-8);font-weight:500}.solar-wheel-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.solar-wheel-cell{gap:var(--space-1);border:1px solid var(--line);background:rgb(var(--white-rgb) / .5);padding:10px;display:grid;position:relative}.solar-wheel-cell.is-current-month{border:2px solid var(--jade);background:rgb(var(--jade-rgb) / .08)}.solar-month{color:var(--ink-muted);font-size:var(--fs-1)}.solar-name{color:var(--ink);font-size:var(--fs-2)}.solar-month-boundary{color:var(--ink)}.month-indicator{padding:1px var(--space-1);border-radius:var(--radius-1);color:var(--jade);background:rgb(var(--jade-rgb) / .12);font-size:var(--fs-1);position:absolute;top:6px;right:6px}.timing-completion{gap:18px;display:grid}.timing-completion label{gap:var(--space-2);display:grid}.timing-completion select{min-height:44px;padding:var(--space-2) var(--space-3)}.timing-completion fieldset{gap:var(--space-2) var(--space-4);border:1px solid var(--line);flex-wrap:wrap;margin:0 0 10px;display:flex}@media (max-width:720px){.natal-facts>div{grid-template-columns:minmax(0,1fr);gap:2px}}.share-modal-overlay{z-index:9999;padding:var(--space-4);background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.share-modal-container{border:1px solid var(--gold);border-radius:var(--radius-3);background:var(--paper);flex-direction:column;width:100%;max-width:480px;max-height:90vh;animation:.3s modal-fade-in;display:flex;overflow:hidden}@keyframes modal-fade-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.share-modal-header{padding:var(--space-4);border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;display:flex}.share-modal-header h3{color:var(--gold-ink);font-size:var(--fs-5);margin:0;font-weight:700}.share-modal-close-btn{padding:0 var(--space-2);color:var(--ink-muted);font-size:var(--fs-10);cursor:pointer;background:0 0;border:none;line-height:1}.share-modal-close-btn:hover{color:var(--ink)}.share-modal-body{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-5);flex-direction:column;flex:1;display:flex;overflow-y:auto}.share-modal-loading,.share-modal-content{align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.share-modal-content{gap:var(--space-4);width:100%}.share-modal-spinner{border-top:2px solid var(--gold);border-radius:var(--radius-round);width:32px;height:32px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.share-modal-hint{color:var(--ink-muted);font-size:var(--fs-3)}.share-modal-note{color:var(--ink-muted);font-size:var(--fs-1);text-align:center;margin:0;line-height:1.333}.share-modal-error{color:var(--danger)}.share-modal-footer{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4);border-top:1px solid var(--line-soft);display:flex}.share-modal-footer :is(.ghost-action,.primary-action){width:auto;height:auto;padding:6px var(--space-4);text-decoration:none}.share-modal-footer a.primary-action{justify-content:center;align-items:center;display:inline-flex}.share-card-preview{border:1px solid var(--gold);border-radius:var(--radius-3);max-width:290px;box-shadow:var(--shadow-preview);overflow:hidden}.share-card-preview img{width:100%;height:auto;display:block}.share-link-panel{width:100%;padding:var(--space-3);border:1px solid var(--line-soft);border-radius:var(--radius-3);flex-direction:column;gap:10px;display:flex}.share-link-warning,.share-link-status,.share-link-error{font-size:var(--fs-1);margin:0;line-height:1.6}.share-link-warning{color:var(--ink-muted)}.share-modal-content>.share-link-warning{text-align:center}.share-link-status{color:var(--gold-ink)}.share-link-error{color:var(--danger)}.share-option-row,.share-expiry-options label{align-items:center;gap:var(--space-2);color:var(--ink);font-size:var(--fs-2);display:flex}:is(.share-option-row,.share-expiry-options) input{accent-color:var(--gold)}.share-expiry-options{gap:10px var(--space-4);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.share-expiry-options legend{width:100%;margin-bottom:var(--space-1);color:var(--ink-muted);font-size:var(--fs-1)}.share-link-result{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.share-link-result input{min-width:0;font-size:var(--fs-1);padding:7px 9px}.public-share-page{min-height:100vh;padding:40px var(--space-4);color:var(--ink);background:var(--bg)}.public-share-hero,.public-share-section,.public-share-boundary,.public-share-unavailable{box-sizing:border-box;width:min(100%,860px);margin:0 auto var(--space-4);border:1px solid var(--panel-line);border-radius:var(--radius-3);background:rgb(var(--paper-rgb) / .92);box-shadow:var(--shadow-raised);padding:22px}:is(.public-share-hero,.public-share-unavailable) h1{margin:var(--space-2) 0 var(--space-3);color:var(--gold-ink);font-size:var(--fs-display-6);line-height:1.12}.public-share-kicker{color:var(--ink-muted);font-size:var(--fs-2)}.public-share-meta,.public-share-tags{gap:var(--space-2);flex-wrap:wrap;display:flex}:is(.public-share-meta,.public-share-tags) span{border:1px solid var(--panel-line);border-radius:var(--radius-round);color:var(--ink-muted);font-size:var(--fs-1);padding:5px 10px}.public-share-question{padding:var(--space-3) 14px;border-left:3px solid var(--gold);color:var(--ink);background:rgb(var(--white-rgb) / .04);font-family:var(--font-reading);margin:18px 0 0}.public-share-summary{color:var(--ink);font-family:var(--font-reading);margin:18px 0 0;line-height:1.8}:is(.public-share-section,.public-share-method-grid) h2{margin:0 0 var(--space-3);color:var(--gold-ink);font-size:var(--fs-7)}.public-share-tarot-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.public-share-tarot-card{align-items:center;gap:var(--space-3);border:1px solid var(--panel-line);border-radius:var(--radius-3);grid-template-columns:72px minmax(0,1fr);min-width:0;padding:10px;display:grid}.public-share-tarot-card img,.public-share-card-placeholder{border-radius:var(--radius-2);object-fit:cover;width:72px;height:112px}.public-share-card-placeholder{border:1px solid var(--panel-line);color:var(--ink-muted);background:rgb(var(--white-rgb) / .04);font-size:var(--fs-2);justify-content:center;align-items:center;display:flex}.public-share-tarot-card h3{color:var(--ink);font-size:var(--fs-4);margin:0 0 6px}.public-share-tarot-card p,.public-share-method-grid p,.public-share-boundary p,.public-share-unavailable p{color:var(--ink-muted);margin:0;line-height:1.7}.public-share-method-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.public-share-method-grid article{border:1px solid var(--panel-line);border-radius:var(--radius-3);padding:14px}.public-share-page-empty{align-items:center;display:flex}@media (max-width:560px){.share-link-result{grid-template-columns:1fr}.share-modal-footer{flex-direction:column-reverse}.public-share-page{padding:var(--space-6) var(--space-3)}.public-share-hero,.public-share-section,.public-share-boundary,.public-share-unavailable{padding:var(--space-4)}}.settings-modal-overlay{z-index:9999;padding:var(--space-4);background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-modal-container{border:1px solid var(--line);border-radius:var(--radius-3);width:min(100%,440px);max-height:90vh;color:var(--ink);background:var(--paper);animation:.3s modal-fade-in;overflow-y:auto}.settings-modal-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);border-bottom:1px solid var(--line-soft);display:flex}.settings-modal-header h3{color:var(--cinnabar);font-size:var(--fs-5);margin:0}.settings-section-grid{gap:var(--space-2);padding:14px var(--space-4) 0;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));display:grid}.settings-section-grid button{min-height:44px;padding:6px var(--space-2);border:1px solid var(--line-soft);color:var(--ink-soft);background:rgb(var(--gold-rgb) / .07);font-size:var(--fs-1);line-height:1.35}.settings-section-grid button[aria-selected=true]{border-color:var(--gold);color:var(--cinnabar);background:rgb(var(--gold-rgb) / .16)}.settings-password-form,.settings-info-panel{gap:var(--space-3);padding:18px;display:grid}.settings-info-panel{gap:10px}.settings-password-form .field-block{margin:0}.settings-info-panel h4{color:var(--gold-ink);font-size:var(--fs-4);margin:0}.settings-info-panel p{color:var(--ink-muted);font-size:var(--fs-2);margin:0;line-height:1.75}.settings-section-title{color:var(--ink);font-size:var(--fs-4);font-weight:700}.settings-modal-footer{padding-top:var(--space-1);grid-template-columns:minmax(96px,.7fr) minmax(0,1fr);gap:10px;display:grid}.settings-session-actions{padding-top:var(--space-3);border-top:1px solid var(--line-soft);justify-content:flex-end;display:flex}.settings-session-actions .ghost-action{min-width:112px}.settings-volume input{width:100%}@media (max-width:720px){.settings-modal-overlay{align-items:flex-start;overflow-y:auto}.settings-modal-container{max-height:calc(100dvh - 24px)}}.ui-btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-1);font-family:inherit;font-size:var(--fs-3);white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;outline:none;font-weight:500;line-height:1.2;text-decoration:none;transition:all .2s cubic-bezier(.2,.8,.2,1);display:inline-flex}.ui-btn:is(:disabled,[data-disabled=true],[data-loading=true]){cursor:not-allowed;opacity:.55;pointer-events:none}.ui-btn-sm{min-height:28px;font-size:var(--fs-1);padding:5px 10px}.ui-btn-md{min-height:38px;padding:var(--space-2) var(--space-4);font-size:var(--fs-3)}.ui-btn-lg{min-height:46px;padding:var(--space-3) 22px;font-size:var(--fs-5)}.ui-btn-primary{border-color:var(--method-accent,var(--cinnabar));color:var(--on-action);background:var(--method-accent,var(--cinnabar))}.ui-btn-primary:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.ui-btn-secondary{border-color:var(--line);color:var(--ink);background:rgb(var(--line-rgb) / .12)}.ui-btn-secondary:hover:not(:disabled){border-color:var(--ink);background:rgb(var(--line-rgb) / .2)}.ui-btn-ghost{border-color:var(--line);color:var(--ink);background:0 0}.ui-btn-ghost:hover:not(:disabled){border-color:var(--ink);background:rgb(var(--line-rgb) / .08)}.ui-btn-danger{border-color:rgb(var(--cinnabar-rgb) / .35);color:var(--cinnabar);background:0 0}.ui-btn-danger:hover:not(:disabled){border-color:var(--cinnabar);background:rgb(var(--cinnabar-rgb) / .1)}.ui-input-wrapper,.ui-select-wrapper,.ui-date-picker-wrapper{border:1px solid var(--line);border-radius:var(--radius-1);background:rgb(var(--field-rgb) / .8);align-items:center;width:100%;transition:all .2s;display:flex;position:relative}:is(.ui-input-wrapper,.ui-select-wrapper):focus-within{border-color:var(--method-accent,var(--cinnabar));box-shadow:0 0 0 2px rgb(var(--cinnabar-rgb) / .15)}.ui-input-wrapper[data-error=true]{border-color:var(--cinnabar)}.ui-input,.ui-select,.ui-date-picker-input{width:100%;min-height:0;padding:var(--space-2) var(--space-3);color:var(--ink);font-family:inherit;font-size:var(--fs-3);background:0 0;border:none;outline:none}.ui-select{padding-right:var(--space-8);appearance:none;cursor:pointer}.ui-input-prefix,.ui-input-suffix{padding:0 var(--space-2);color:var(--ink-muted);justify-content:center;align-items:center;display:flex}.ui-input-clear-btn{color:var(--ink-muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:0;display:flex}.ui-input-clear-btn:hover{color:var(--ink)}.ui-select-icon{color:var(--ink-muted);pointer-events:none;position:absolute;right:10px}.ui-table-container{border:1px solid var(--line);border-radius:var(--radius-1);background:rgb(var(--white-rgb) / .6);width:100%;overflow-x:auto}.ui-table{border-collapse:collapse;width:100%;font-size:var(--fs-2);text-align:left}.ui-table th{border-bottom:1px solid var(--line-soft);color:var(--ink-muted);background:rgb(var(--line-rgb) / .08);white-space:nowrap;padding:10px 14px;font-weight:600}.ui-table td{border-bottom:1px solid var(--line-soft);color:var(--ink);padding:10px 14px}.ui-table tbody tr:last-child td{border-bottom:none}.ui-table-striped tbody tr:nth-child(2n){background:rgb(var(--line-rgb) / .03)}.ui-table-hover tbody tr:hover{background:rgb(var(--line-rgb) / .06)}.ui-modal-backdrop{z-index:999;padding:var(--space-4);background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;animation:.2s ui-fade-in;display:flex;position:fixed;inset:0}.ui-modal-card{border:1px solid var(--line);width:100%;max-width:540px;max-height:90vh;color:var(--ink);background:var(--paper);box-shadow:var(--shadow-modal);border-radius:4px;flex-direction:column;animation:.25s cubic-bezier(.16,1,.3,1) ui-scale-up;display:flex;position:relative;overflow:hidden}.ui-modal-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex}.ui-modal-title{color:var(--ink);font-size:var(--fs-7);margin:0;font-weight:500}.ui-modal-close-btn{min-width:44px;min-height:44px;padding:var(--space-1);color:var(--ink-soft);font-size:var(--fs-8);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;display:flex}.ui-modal-close-btn:hover{color:var(--ink);background:rgb(var(--line-rgb) / .1)}.ui-modal-body{min-height:0;padding:var(--space-5);color:var(--ink);font-size:var(--fs-3);flex:1;line-height:1.6;overflow-y:auto}.ui-modal-body :is(.primary-action,.ghost-action){min-height:34px;padding:6px var(--space-3);justify-self:start}.ui-modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-3);padding:14px var(--space-5);border-top:1px solid var(--line);background:rgb(var(--line-rgb) / .04);display:flex}.ui-switch-label,.ui-checkbox-label{color:var(--ink);font-size:var(--fs-3);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:inline-flex}.ui-checkbox-label{gap:var(--space-2)}.ui-switch-track{border-radius:var(--radius-round);background:rgb(var(--line-rgb) / .25);width:42px;height:24px;transition:all .24s cubic-bezier(.2,.8,.2,1);position:relative}.ui-switch-thumb{background:rgb(var(--white-rgb));width:20px;height:20px;box-shadow:var(--shadow-thumb);border-radius:50%;transition:transform .24s cubic-bezier(.2,.8,.2,1);position:absolute;top:2px;left:2px}.ui-switch-checked .ui-switch-track{background:var(--method-accent,var(--cinnabar))}.ui-switch-checked .ui-switch-thumb{transform:translate(18px)}.ui-checkbox-box{border:1px solid var(--line);width:18px;height:18px;color:var(--on-action);background:rgb(var(--white-rgb));border-radius:3px;justify-content:center;align-items:center;transition:all .15s;display:flex}.ui-checkbox-checked .ui-checkbox-box{border-color:var(--method-accent,var(--cinnabar));background:var(--method-accent,var(--cinnabar))}.ui-tabs-list{gap:var(--space-2);border-bottom:1px solid var(--line-soft);scrollbar-width:none;display:flex;overflow-x:auto}.ui-tab-item{padding:10px var(--space-4);color:var(--ink-muted);font-family:inherit;font-size:var(--fs-3);white-space:nowrap;cursor:pointer;background:0 0;border:none;font-weight:500;transition:all .2s;position:relative}.ui-tab-item:hover{color:var(--ink)}.ui-tab-item.active{color:var(--method-accent,var(--cinnabar))}.ui-tab-item.active:after{content:"";background:var(--method-accent,var(--cinnabar));height:2px;position:absolute;bottom:-1px;left:0;right:0}.ui-tab-panel{padding-top:var(--space-4)}.ui-toast-container{top:var(--space-6);right:var(--space-6);z-index:10000;pointer-events:none;flex-direction:column;gap:10px;display:flex;position:fixed}.ui-toast-item{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:260px;max-width:400px;padding:var(--space-3) 18px;border:1px solid var(--line-soft);color:var(--ink);background:rgb(var(--white-rgb));font-size:var(--fs-2);pointer-events:auto;box-shadow:var(--shadow-toast);border-radius:4px;animation:.28s cubic-bezier(.16,1,.3,1) ui-toast-slide;display:flex}.ui-toast-message{align-items:center;gap:var(--space-2);display:flex}.ui-toast-success{--toast-accent:var(--jade);border-left:4px solid var(--toast-accent)}.ui-toast-error{--toast-accent:var(--cinnabar);border-left:4px solid var(--toast-accent)}.ui-toast-info,.ui-toast-warning{--toast-accent:var(--wx-water);border-left:4px solid var(--toast-accent)}.ui-toast-icon{color:var(--toast-accent);flex:none}.ui-toast-close{color:var(--ink-muted);cursor:pointer;background:0 0;border:0}.ui-toast-close:hover{color:var(--ink)}.ui-spin{animation:.9s linear infinite ui-rotate;display:inline-block}.ui-skeleton{background:linear-gradient(90deg, rgb(var(--line-rgb) / .08) 25%, rgb(var(--line-rgb) / .18) 37%, rgb(var(--line-rgb) / .08) 63%);background-size:400% 100%;border-radius:3px;animation:1.4s infinite ui-skeleton-pulse}.ui-pagination{margin-top:var(--space-4);justify-content:center;align-items:center;gap:6px;display:flex}.ui-pagination-btn{border:1px solid var(--line);min-width:32px;height:32px;min-height:0;color:var(--ink);background:rgb(var(--white-rgb) / .8);font-size:var(--fs-2);cursor:pointer;border-radius:3px;justify-content:center;align-items:center;padding:0 6px;transition:all .15s;display:flex}.ui-pagination-btn:hover:not(:disabled){border-color:var(--method-accent,var(--cinnabar));color:var(--method-accent,var(--cinnabar))}.ui-pagination-btn.active{border-color:var(--method-accent,var(--cinnabar));color:var(--on-action);background:var(--method-accent,var(--cinnabar))}.ui-pagination-btn:disabled{cursor:not-allowed;opacity:.4}.ui-pagination-ellipsis{padding-inline:var(--space-1);color:var(--ink-muted)}.ui-form-item{margin-bottom:var(--space-4);gap:6px;display:grid}.ui-form-label{color:var(--ink);font-size:var(--fs-2);font-weight:500}.ui-form-label-required:after{color:var(--cinnabar);content:" *"}.ui-form-helper{color:var(--ink-muted);font-size:var(--fs-1)}.ui-form-error{color:var(--danger);font-size:var(--fs-1)}@keyframes ui-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ui-scale-up{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes ui-toast-slide{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes ui-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ui-skeleton-pulse{0%{background-position:100%}to{background-position:0}}}@layer theme{.method-xianxia{--method-accent:var(--jade)}.method-western{--method-accent:var(--gold-ink)}.public-share-theme-song{background:radial-gradient(ellipse at 70% 0%, rgb(var(--jade-rgb) / .12), transparent 28rem), var(--bg)}.public-share-theme-western{background:radial-gradient(circle at 50% 8%, rgb(var(--gold-rgb) / .15), transparent 30rem), var(--bg-deep);font-family:var(--font-western)}}@layer utilities{.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition-duration:.001ms;animation-duration:.001ms;animation-iteration-count:1}.home-pillars .pillar-column,.daily-slip-face.is-revealing,.daily-draw-result.is-revealing,.yijing-coin-stage .coin-item.tumbling,.ritual-deck[data-shuffling=true] .ritual-deck-card,.hexagram-shift .shift-glyph{animation:none}.home-pillars .pillar-column{opacity:1;transform:none}.tarot-flip,.tarot-fan-card:before,.account-caret{transition:none}}}@font-face{font-family:Zhiming Noto Serif SC;src:url(/fonts/noto-serif-sc-ui-400.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Zhiming Noto Serif SC;src:url(/fonts/noto-serif-sc-ui-500.woff2)format("woff2");font-style:normal;font-weight:500;font-display:swap}
