.profile-page{background:#fff;min-height:100dvh}.my-page{padding-top:21px}.my-brand{margin:0 0 23px}.my-page h1{margin:0 0 22px;font-size:27px}.profile-summary{align-items:center;gap:18px;margin-bottom:13px;display:flex}.profile-avatar{color:#9ba1aa;background:#e3e6ea;border-radius:50%;flex-shrink:0;place-items:center;width:82px;height:82px;display:grid}.profile-summary h2{margin:0 0 8px;font-size:20px;font-weight:600}.profile-summary p{margin:0;font-size:14px}.profile-counts{margin:20px 0 18px;display:flex}.profile-counts button{background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:50%;min-height:66px;font-size:14px;display:flex}.profile-counts button+button{border-left:1px solid var(--border)}.profile-counts strong{font-size:25px;font-weight:500;line-height:1.1}.profile-count-loading{text-align:center;color:var(--muted);margin-top:-8px;font-size:12px}.profile-menu{margin-top:19px;margin-bottom:18px}.profile-menu .setting-row{min-height:56px;padding:12px 14px;font-size:15px}.profile-menu .setting-row>svg:last-child{color:var(--muted)}.profile-footnote{color:var(--muted);justify-content:center;align-items:center;gap:7px;padding-top:14px;font-size:11px;display:flex}.guest-profile{background:var(--surface);border-radius:6px;margin:22px 0;padding:16px}.guest-profile p{color:var(--muted);margin:0 0 14px;font-size:13px}.profile-settings>.setting-section:first-child,.account-settings .setting-section:first-child{margin-top:0}.profile-page .section-heading{padding:12px;font-size:16px}.profile-page .setting-row{min-height:53px}.font-setting .segmented{flex:0 0 68%;max-width:236px}.profile-page .segmented button{min-height:44px}.profile-page .toggle{background:0 0;height:44px;position:relative}.profile-page .toggle:before{content:"";background:#d4d9df;border-radius:20px;width:44px;height:27px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.profile-page .toggle.on:before{background:var(--primary)}.profile-page .toggle span{z-index:1;position:relative}.display-preview{border:1px solid var(--border);background:#f7f8fa;border-radius:6px;margin:16px 0;padding:14px 12px}.display-preview h2{color:var(--muted);margin:0 0 13px;font-size:13px;font-weight:400}.preview-stars{background:#fff;border-radius:5px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px;display:flex}.preview-stars strong{font-size:18px;line-height:1.6}.preview-large strong{font-size:21px}.preview-extra strong{font-size:24px}.preview-stars small{color:var(--muted);margin-left:4px;font-size:11px;font-weight:400}.preview-minor{color:#bf4b43;font-size:13px}.preview-adjective{color:var(--muted);font-size:11px}.mutagen-legend{gap:8px;margin-top:12px;display:flex}.mutagen{color:#fff;border-radius:4px;place-items:center;width:30px;height:30px;font-size:16px;display:inline-grid}.mutagen.lu{background:var(--green)}.mutagen.quan{background:var(--blue)}.mutagen.ke{background:var(--purple)}.mutagen.ji{background:var(--red)}.connections-preview{color:var(--muted);align-items:center;gap:8px;margin-top:11px;font-size:11px;display:flex}.connections-preview span{background:#b8c6d9;width:28px;height:1px;display:block}.display-preview>p{color:var(--muted);text-align:center;margin:15px 0 0;font-size:11px}.profile-actions{margin:19px 0 12px}.profile-success{text-align:center;color:var(--green);margin:14px 0;font-size:13px}.account-form-section{padding:14px 12px 0}.account-form-section .field{margin-bottom:16px}.account-form-section .field-label{font-size:14px}.readonly-account{background:var(--surface);color:var(--muted)}.password-fields{border:0;min-width:0;margin:0;padding:0}.account-save-hint{color:var(--muted);text-align:center;margin:12px 0 27px;font-size:12px}.account-settings>.button-secondary{margin-top:5px}.profile-page .page{padding-bottom:calc(30px + env(safe-area-inset-bottom))}@media (max-width:360px){.profile-avatar{width:70px;height:70px}.profile-summary{gap:15px}.profile-summary h2{font-size:18px}.font-setting .segmented{flex-basis:70%}.profile-menu .setting-row{font-size:14px}}.mutagen-reference{color:#536276;white-space:nowrap;align-items:center;gap:0;margin-top:12px;font-size:13px;display:flex}.mutagen-reference b{font-weight:700}.mutagen-reference .lu{color:#2d8a65}.mutagen-reference .quan{color:#8652b9}.mutagen-reference .ke{color:#2874be}.mutagen-reference .ji{color:#bd3f39}.my-page{min-height:100dvh;padding:20px 18px calc(94px + env(safe-area-inset-bottom));color:#302a28;background:#f8f6f1}.my-page-inner{max-width:620px;margin:0 auto}.my-page-header{text-align:center;margin:0 2px 18px}.my-page .my-page-header h1{color:#8e1f2d;margin:0;font:600 16px/1.4 Noto Serif SC,Songti SC,STSong,serif}.my-account-card{background:#fff;border:1px solid #ede4dc;border-radius:13px;padding:18px;box-shadow:0 7px 22px #432b230f}.my-account-identity{align-items:center;gap:13px;min-width:0;display:flex}.my-account-mark{color:#8e1f2d;background:#f8eeec;border:1px solid #ead4d1;border-radius:11px;flex:none;place-items:center;width:42px;height:42px;display:grid}.my-account-copy{min-width:0}.my-account-copy h2{text-overflow:ellipsis;white-space:nowrap;margin:0 0 3px;font-size:18px;font-weight:650;line-height:1.35;overflow:hidden}.my-account-copy p{color:#807570;margin:0;font-size:12px;line-height:1.45}.my-account-card .my-login-button{background:#8e1f2d;border-radius:7px;min-height:44px;margin-top:18px;font-size:14px;font-weight:600}.my-account-card .my-login-button svg{margin-left:2px}.my-account-counts{border-top:1px solid #f0eae5;grid-template-columns:1fr 1fr;margin-top:17px;padding-top:10px;display:grid}.my-account-counts button{color:#776a64;background:0 0;border:0;justify-content:center;align-items:baseline;gap:8px;min-height:42px;font-size:12px;display:flex}.my-account-counts button+button{border-left:1px solid #f0eae5}.my-account-counts strong{color:#8e1f2d;font-size:20px;font-weight:650;line-height:1}.my-count-loading{text-align:center;color:#8a807a;margin:3px 0 0;font-size:11px}.my-account-card .error-notice{margin:9px 0 0;font-size:12px}.my-account-card .error-notice .button{min-height:36px;font-size:12px}.my-menu-group{margin-top:22px}.my-menu-group h2{color:#80736c;margin:0 2px 9px;font-size:12px;font-weight:600;line-height:1.4}.my-menu{background:#fff;border:1px solid #eee5de;border-radius:12px;overflow:hidden;box-shadow:0 4px 14px #432b2309}.my-page .my-menu .setting-row{color:#342d2a;text-align:left;background:#fff;gap:12px;min-height:55px;padding:9px 13px;font-size:14px}.my-page .my-menu .setting-row+.setting-row{border-top:1px solid #f0eae5}.my-page .my-menu .setting-row>svg:last-child{color:#a69a93;width:17px;height:17px}.my-row-icon{color:#8e1f2d;background:#faf1ef;border-radius:8px;flex:none;place-items:center;width:33px;height:33px;display:grid}.my-page .my-menu .row-value{display:none}.my-page .my-menu .my-soul-rule-row .row-value{white-space:nowrap;color:#73655e;flex:none;font-size:12px;display:block}.account-page{color:#302a28;background:#f8f6f1}.account-page .page-header{background:#f8f6f1;border-bottom:1px solid #eee5de}.account-settings{max-width:620px;margin:0 auto;padding-top:18px}.account-menu{background:#fff;border:1px solid #eee5de;border-radius:12px;overflow:hidden;box-shadow:0 4px 14px #432b2309}.account-menu-item{color:#342d2a;text-align:left;background:#fff;border:0;align-items:center;gap:13px;width:100%;min-height:62px;padding:10px 15px;font-size:15px;font-weight:500;display:flex}.account-menu-item+.account-menu-item{border-top:1px solid #f0eae5}.account-menu-item>span:nth-child(2){flex:1}.account-menu-value{color:#8e817b;white-space:nowrap;font-size:13px;font-weight:400}.account-menu-item>svg:last-child{color:#a69a93}.account-menu-icon{color:#8e1f2d;background:#faf1ef;border-radius:9px;flex:none;place-items:center;width:36px;height:36px;display:grid}.account-menu-item:active{background:#fbf8f5}.account-menu-logout{color:#8e1f2d}.account-modal-form>.field,.account-modal-form .password-fields>.field{margin-bottom:16px}.account-modal-form>.muted{margin:0 0 18px;font-size:13px;line-height:1.65}.account-modal-form .field-label{margin-bottom:7px;font-size:13px}.account-modal-form .modal-actions{margin-top:21px}.account-page .modal-actions .button{flex:1;min-width:0}.account-page .modal-panel .recovery-code-panel{margin:12px 0;padding:16px}.account-page .modal-panel .recovery-code-panel code{margin-bottom:13px;font-size:16px}.account-version-line{justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 12px;font-size:15px;display:flex}.account-version-line strong{color:#8e1f2d;font-size:17px}@media (min-width:600px){.my-page{padding:35px 40px calc(126px + env(safe-area-inset-bottom))}.my-page-header{margin-bottom:22px}.my-page .my-page-header h1{font-size:18px}.my-account-card{padding:23px 25px}.my-menu-group{margin-top:27px}.my-page .my-menu .setting-row{min-height:59px;padding:10px 18px}}@media (max-width:360px){.my-page{padding-left:14px;padding-right:14px}.my-page-header>span{font-size:12px}.my-account-card{padding:15px}.my-account-copy p{font-size:11px}.my-page .my-menu .setting-row{min-height:52px}.account-menu-item{min-height:58px;padding:9px 12px}}.app-shell.has-profile-brand:has(>.my-page){max-width:430px;padding-top:env(safe-area-inset-top);background:#fffdfb}.app-shell.has-profile-brand>.my-page.page.with-nav{min-height:calc(100dvh - env(safe-area-inset-top));padding:46px 17px calc(110px + env(safe-area-inset-bottom));color:#101d31;background:radial-gradient(circle at 48% 39%,#fff 0%,#fffdfb 53%,#f9f8f6 100%)}.app-shell.has-profile-brand .my-page-inner{max-width:396px;margin:0 auto}.my-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}.my-page{--my-serif:"Songti SC", "STSong", "Noto Serif SC", serif;--my-blue:#15439b;-webkit-font-smoothing:antialiased}.my-page button:focus-visible{outline-offset:3px;outline:2px solid #367ded}.my-identity{align-items:center;gap:14px;min-height:91px;margin:0 3px 19px;display:flex}.my-identity-avatar{background:#e9f0fc;border:1px solid #ddcdbd;border-radius:50%;flex:none;width:88px;height:88px;padding:0;display:block;overflow:hidden;box-shadow:0 4px 16px #9fb6d91c}.my-identity-avatar img{object-fit:cover;width:100%;height:100%;display:block}.my-identity-name{color:#101d31;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:9px;min-width:0;min-height:56px;padding:0;display:inline-flex}.my-identity-name>span{flex-direction:column;gap:4px;min-width:0;display:flex}.my-identity-name strong{text-overflow:ellipsis;white-space:nowrap;font:500 28px/1.15 var(--my-serif);letter-spacing:.03em;overflow:hidden}.my-identity-name small{color:#7b8ba2;white-space:nowrap;font-size:10px;line-height:1.35}.my-identity-name>svg{color:#445163;stroke-width:1.6px;width:13px;height:17px}.my-identity-settings{color:#172338;background:#fff;border:1px solid #e2e6ea;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;padding:0;display:grid;box-shadow:0 7px 16px #172b4310}.my-identity-settings svg{stroke:currentColor;stroke-width:1.7px;stroke-linejoin:round;width:25px;height:25px}.my-guest-login{color:#24558b;background:#eef5fc;border:1px solid #d7e4f3;border-radius:22px;justify-content:center;align-items:center;gap:8px;width:calc(100% - 6px);min-height:44px;margin:-3px 3px 15px;padding:0 12px;font-size:13px;display:flex}.my-primary-grid{grid-template-columns:1.38fr 1fr;gap:10px;height:181px;display:grid}.my-primary-card{color:#101e33;text-align:left;isolation:isolate;background-color:#e8f1fb;background-position:50%;background-size:cover;border:1px solid #ffffffd9;border-radius:18px;flex-direction:column;align-items:flex-start;min-width:0;height:100%;padding:20px 16px 14px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 30px #21344d13}.my-primary-card:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#ffffff2b,#fff0 67%);position:absolute;inset:0}.my-primary-cases{background-image:url(/assets/my-case-card-art-BK-b-0kM.jpg);background-position:50% 45%}.my-primary-notes{background-color:#f5ede6;background-image:url(/assets/my-notes-card-art-Bdbgnw-K.jpg);background-position:59% 49%}.my-primary-card strong{font:600 22px/1.15 var(--my-serif);letter-spacing:.03em}.my-card-description{color:#667992;letter-spacing:.04em;margin-top:10px;font-size:12px;line-height:1.55;display:block}.my-primary-notes .my-card-description{color:#728092}.my-card-arrow{width:32px;height:32px;color:var(--my-blue);background:#ffffffd9;border:1px solid #d6e1ef;border-radius:50%;place-items:center;margin-top:auto;display:grid;box-shadow:0 5px 13px #31558b20}.my-card-arrow svg{stroke-width:1.7px;width:19px;height:19px}.my-primary-card:active{transform:scale(.985)}.my-preferences{margin-top:30px}.my-preferences-heading{justify-content:space-between;align-items:baseline;gap:10px;margin:0 6px 7px;display:flex}.my-preferences-heading h2{color:#0f1b2e;font:600 20px/1.25 var(--my-serif);letter-spacing:.015em;white-space:nowrap;margin:0}.my-preferences-heading p{color:#7889a2;font:10px/1.4 var(--my-serif);letter-spacing:.15em;white-space:nowrap;align-items:center;gap:9px;margin:0;display:flex}.my-preferences-heading p:before{content:"";background:#dfe3e9;width:32px;height:1px}.my-settings-grid{background:#ffffff9c;border-radius:20px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px;display:grid;box-shadow:0 10px 33px #1629430a}.my-setting-card{color:#101d31;text-align:left;background:#fff;border:1px solid #e8ebef;border-radius:16px;grid-template-columns:40px minmax(0,1fr) 9px;align-items:center;gap:7px;min-width:0;min-height:82px;padding:9px;display:grid;box-shadow:0 5px 16px #1d334609}.my-setting-card:active{background:#f7faff;transform:scale(.99)}.my-setting-icon{border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.my-setting-icon.blue{color:#1754a8;background:#e9f2ff}.my-setting-icon.warm{color:#26364d;background:#f6eee9}.my-setting-icon.lavender{color:#253fa3;background:#e9edff}.my-setting-icon.mint{color:#193448;background:#dff5f3}.my-setting-icon svg{stroke-width:1.55px;width:27px;height:27px}.my-setting-copy{flex-direction:column;gap:5px;min-width:0;display:flex}.my-setting-copy strong{font:600 13.5px/1.2 var(--my-serif);white-space:nowrap}.my-setting-copy small{color:#7586a0;letter-spacing:.01em;font-size:10.5px;line-height:1.45}.my-setting-copy small b{color:#21334f;font-weight:600}.my-setting-chevron{color:#60728a;stroke-width:1.6px;width:10px;height:15px}.my-support{grid-template-columns:1fr 1fr;gap:10px;margin:12px 3px 0;display:grid}.my-support button{color:#122137;text-align:left;background:#fff;border:1px solid #e5e8ec;border-radius:25px;align-items:center;gap:9px;min-height:45px;padding:0 15px;display:flex;box-shadow:0 9px 24px #2032490e}.my-support button>svg:first-child{stroke-width:1.55px;width:21px;height:21px}.my-support button span{font:600 13px/1.2 var(--my-serif);white-space:nowrap;flex:1}.my-support-chevron{color:#40546e;stroke-width:1.6px;width:10px;height:14px}.my-support button:active{background:#f7faff}.app-shell.has-profile-brand>.bottom-nav{width:min(100%,430px);height:calc(88px + env(safe-area-inset-bottom));padding:9px 18px calc(16px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff7;border:1px solid #e8ebef;border-bottom:0;border-radius:34px 34px 0 0;gap:2px;box-shadow:0 -13px 36px #1a222c0e}.app-shell.has-profile-brand>.bottom-nav button{color:#667690;letter-spacing:.14em;gap:3px;font-size:11px;font-weight:500}.app-shell.has-profile-brand>.bottom-nav button.active{color:#10213a;font-weight:650}.app-shell.has-profile-brand>.bottom-nav button.active:before{display:none}.app-shell.has-profile-brand>.bottom-nav button svg,.app-shell.has-profile-brand>.bottom-nav button.active svg{color:currentColor;width:23px;height:23px}@media (max-width:350px){.app-shell.has-profile-brand>.my-page.page.with-nav{padding:30px 15px calc(105px + env(safe-area-inset-bottom))}.my-identity{gap:10px;margin-bottom:15px}.my-identity-avatar{width:74px;height:74px}.my-identity-name strong{font-size:24px}.my-identity-name small{font-size:9px}.my-primary-grid{gap:7px;height:166px}.my-primary-card{border-radius:16px;padding:16px 11px 12px}.my-primary-card strong{font-size:19px}.my-card-description{font-size:10px}.my-preferences{margin-top:25px}.my-preferences-heading{margin-inline:2px}.my-preferences-heading p{letter-spacing:.04em;font-size:9px}.my-preferences-heading p:before{width:12px}.my-settings-grid{grid-template-columns:1fr}.my-setting-card{grid-template-columns:38px minmax(0,1fr) 10px;min-height:68px}.my-setting-icon{width:38px;height:38px}.my-setting-icon svg{width:24px;height:24px}.my-setting-copy small br{display:none}.my-support button{gap:5px;padding-inline:9px}.my-support button span{font-size:11px}}@media (max-height:700px){.app-shell.has-profile-brand>.my-page.page.with-nav{padding-top:23px}.my-preferences{margin-top:23px}.my-support{margin-top:10px}}.account-recovery-section{margin:0 0 20px}.account-recovery-section .account-form-section{padding-bottom:16px}.account-recovery-section .muted{font-size:13px;line-height:1.7}.account-recovery-section .button{margin-top:2px}.profile-page .modal-panel .recovery-code-panel{margin:12px 0;padding:16px}.profile-page .modal-panel .recovery-code-panel code{margin-bottom:13px;font-size:16px}.birth-page{--border:#e5ddd5;--surface:#f5f1ec;--muted:#81776f;color:#302d29;background:#f7f4ef;min-height:100dvh}.birth-page>.brand-header{justify-content:center;max-width:520px;height:40px;margin:0 auto;padding:12px 18px 0}.birth-page>.brand-header .brand{color:#81776f;font-size:14px;font-weight:500}.birth-page>.page-header{background:#f7f4ef}.birth-page .birth-main{max-width:520px;padding:4px 16px calc(180px + env(safe-area-inset-bottom));margin:0 auto}.birth-page .birth-main.with-nav{padding-bottom:calc(180px + env(safe-area-inset-bottom))}.birth-page .birth-title{text-align:left;overflow-wrap:anywhere;letter-spacing:.03em;margin:7px 2px 20px;font-size:27px;font-weight:650;line-height:1.3}.birth-page .birth-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}.birth-page .birth-section{background:#fff;border:1px solid #ece5dd;border-radius:12px;margin:0 0 14px;padding:16px}.birth-page .birth-section-heading{margin:0 0 14px;font-size:15px;font-weight:650;line-height:1.4}.birth-page .birth-basic-fields{grid-template-columns:minmax(0,1fr) 98px;gap:14px;display:grid}.birth-page .birth-name-field,.birth-page .birth-gender-field{min-width:0}.birth-page .field-label{color:#71675f;margin-bottom:8px;font-size:13px;font-weight:500}.birth-page input,.birth-page select,.birth-page textarea{border-radius:8px;min-width:0;font-size:16px}.birth-page .birth-name-field input{height:48px;padding:10px 12px}.birth-page .segmented{background:#f5f1ec;border-radius:8px;min-height:48px;padding:2px}.birth-page .segmented button{border-radius:6px;min-height:44px;font-size:14px}.birth-page .segmented button.selected{color:#984337;background:#f4e2dc;font-weight:600;box-shadow:inset 0 0 0 1px #dfbab0}.birth-page .birth-date-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.birth-page .birth-date-toolbar .field-label{margin:0}.birth-page .birth-date-toolbar .segmented{flex:0 0 124px}.birth-page .birth-choice{text-align:left;background:#fff;border:0;border-bottom:1px solid #eee8e1;border-radius:0;align-items:center;gap:9px;width:100%;min-height:56px;padding:12px 0;font-size:14px;line-height:1.5;display:flex}.birth-page .birth-choice-label{color:#71675f;flex-shrink:0;font-size:13px}.birth-page .birth-choice-value{overflow-wrap:anywhere;text-align:right;flex:1;min-width:0}.birth-page .birth-date-choice{border:1px solid var(--border);border-radius:8px;min-height:48px;margin-top:8px;padding:10px 12px}.birth-page .birth-date-choice .birth-choice-value{text-align:left}.birth-page .birth-solar-row{justify-content:space-between;align-items:center;gap:14px;min-height:64px;padding:12px 0 0;display:flex}.birth-page .birth-solar-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.birth-page .birth-solar-copy .field-label{margin:0}.birth-page .birth-solar-copy .muted{font-size:12px}.birth-page .toggle{background:0 0;width:46px;height:44px;padding:0 3px;position:relative}.birth-page .toggle:before{content:"";background:#d8d3cd;border-radius:20px;height:26px;position:absolute;top:9px;left:1px;right:1px}.birth-page .toggle.on{background:0 0}.birth-page .toggle.on:before{background:var(--primary)}.birth-page .toggle span{width:20px;height:20px;position:relative}.birth-page .birth-row{grid-template-columns:48px minmax(0,1fr);gap:10px;margin:0}.birth-page .birth-row .field-label{margin:0}.birth-page .birth-row input,.birth-page .birth-row select{min-height:48px}.birth-page .birth-remark-row{align-items:start;margin-top:16px}.birth-page .birth-remark-row>.field-label{padding-top:12px}.birth-page .birth-rules-entry{padding:0 16px}.birth-page .birth-rules-entry .birth-choice{border:0}.birth-page .birth-edit-hint{color:var(--muted);align-items:center;gap:7px;margin:16px 2px;font-size:12px;line-height:1.6;display:flex}.birth-page .birth-reset{color:#81776f;font-size:13px}.birth-page .button.birth-delete{color:var(--red);margin:8px 0;font-size:14px}.birth-page .birth-actions{left:50%;bottom:calc(62px + env(safe-area-inset-bottom));z-index:29;background:#f7f4ef;border-top:1px solid #ebe2d8;width:min(100%,480px);padding:12px 16px;position:fixed;transform:translate(-50%)}.birth-page .birth-actions .button{border-radius:9px;min-height:50px;font-size:16px;font-weight:600}.birth-page-editing .birth-actions{padding-bottom:calc(12px + env(safe-area-inset-bottom));bottom:0}.birth-page:has(input:focus,textarea:focus) .birth-actions{background:0 0;border:0;width:100%;margin-top:14px;padding:12px 0;position:static;transform:none}.birth-page .sheet-wrapper .modal-panel{max-width:520px}.birth-soul-intro{margin:0;padding:4px 12px 12px;font-size:13px;line-height:1.6}.birth-rules .birth-rule-choice .segmented button,.birth-page .birth-city-grid button{min-height:44px}.birth-page .birth-rule-choice .segmented{min-height:48px}.birth-page .birth-rule-choice .segmented button{min-height:44px}.birth-page .birth-date-selects{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr)}.birth-page .birth-date-selects label,.birth-page .birth-time-selects label{min-width:0}@media (min-width:600px){.birth-page .birth-actions{width:min(100%,520px)}.birth-page:not(.birth-page-editing) .birth-actions{bottom:calc(68px + env(safe-area-inset-bottom))}}@media (max-width:360px){.birth-page .birth-main{padding-left:12px;padding-right:12px}.birth-page .birth-section{padding:14px 12px}.birth-page .birth-basic-fields{grid-template-columns:minmax(0,1fr) 94px;gap:10px}.birth-page .birth-choice{gap:7px;font-size:13px}.birth-page .birth-rules-entry{padding:0 12px}.birth-page .birth-actions{padding-left:12px;padding-right:12px}}.birth-sheet-label{margin:21px 0 10px;font-size:15px;font-weight:500}.birth-date-selects{grid-template-columns:1.25fr 1fr 1fr;gap:10px;display:grid}.birth-date-selects label>span,.birth-time-selects label>span{color:var(--muted);margin:0 0 7px;font-size:12px;display:block}.birth-date-selects select{padding-left:10px;padding-right:4px}.birth-checkbox{align-items:center;gap:9px;min-height:46px;font-size:14px;display:flex}.birth-checkbox input{margin:0}.birth-time-caption{background:var(--surface);color:var(--muted);border-radius:6px;justify-content:center;gap:13px;margin-top:14px;padding:11px;font-size:13px;display:flex}.birth-time-caption strong{color:var(--text);font-weight:500}.birth-branch-grid button{border:1px solid var(--border);background:#fff;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:55px;padding:8px 4px;font-size:14px;display:flex}.birth-branch-grid button.selected{border-color:var(--primary);color:var(--primary);background:#f9ece9}.birth-branch-grid button.selected small{color:var(--primary)}.birth-city-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;display:grid}.birth-city-grid button{background:var(--surface);border:1px solid #0000;border-radius:5px;min-height:39px;padding:7px 3px;font-size:13px}.birth-city-grid button.selected{border-color:var(--primary);color:var(--primary);background:#f9ece9}.birth-zone-details{border:1px solid var(--border);border-radius:6px;margin:15px 0 20px;font-size:13px;overflow:hidden}.birth-zone-details>summary{cursor:pointer;background:var(--surface);min-height:47px;padding:14px 12px;line-height:1.5}.birth-zone-content>.muted:first-child{margin-bottom:15px;font-size:12px}.birth-zone-content .field-label{margin-bottom:8px;font-size:13px}.birth-zone-content .birth-input-help:last-child{margin-bottom:0}.birth-rules .setting-section:first-child{margin-top:0}.birth-rules .section-heading{padding:10px 12px;font-size:14px;font-weight:600}.birth-rule-choice{border-top:1px solid #eef0f3;padding:12px}.birth-rule-label{flex-direction:column;gap:4px;min-width:0;font-size:14px;line-height:1.5;display:flex}.birth-rule-label small{color:var(--muted);font-size:11px;font-weight:400;line-height:1.6}.birth-rule-choice .segmented{min-height:38px;margin-top:9px}.birth-rule-choice .segmented button{min-height:36px;font-size:13px}.birth-rule-switch{border-top:1px solid #eef0f3;justify-content:space-between;align-items:center;gap:16px;padding:12px;display:flex}.birth-place-sheet>.birth-rule-switch{padding:12px 0}.birth-sheet-actions{margin-top:20px}.birth-table-back{gap:5px;margin-top:-10px;padding-left:0;display:inline-flex}.birth-table-view>.muted{font-size:12px}.birth-table-scroll{border:1px solid var(--border);border-radius:6px;max-width:100%;overflow-x:auto}.birth-rule-table{border-collapse:collapse;text-align:center;white-space:nowrap;width:100%;font-size:13px}.birth-rule-table caption{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.birth-rule-table th,.birth-rule-table td{border-bottom:1px solid #edf0f3;padding:11px 6px}.birth-rule-table thead th{background:var(--surface);font-weight:500}.birth-rule-table tbody th{color:var(--primary);font-weight:500}.birth-rule-table tbody tr:last-child>*{border-bottom:0}.birth-brightness-table{min-width:600px;font-size:12px}.birth-brightness-table th,.birth-brightness-table td{min-width:43px;padding:10px 7px}.birth-brightness-table th:first-child{border-right:1px solid var(--border);z-index:1;background:#fff;min-width:67px;position:sticky;left:0}.birth-brightness-table thead th:first-child{background:var(--surface)}.birth-table-hint{color:var(--primary);margin-bottom:10px;font-size:12px}.birth-table-source{margin:14px 0 0}.birth-date-sheet>.button,.birth-place-sheet>.button{margin-top:9px}@media (max-width:360px){.birth-row{grid-template-columns:74px minmax(0,1fr);gap:8px}.birth-choice{padding:9px;font-size:13px}.birth-rule-summary{gap:6px 8px;font-size:11px}.birth-city-grid{gap:5px}.birth-date-selects{gap:7px}.birth-branch-grid{gap:6px}}.birth-page{--birth-ink:#17212e;--birth-muted:#7c8591;--birth-line:#d5d9df;--birth-blue:#367ded;--birth-serif:"Bodoni 72","Didot","Songti SC","STSong",serif;--birth-sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Helvetica Neue",sans-serif;min-height:100dvh;color:var(--birth-ink);font-family:var(--birth-sans);background:radial-gradient(circle at 51% 42%,#fff 0%,#fbfaf8 56%,#f8f7f5 100%)}.birth-page>.page-header{color:var(--birth-ink);background:#fbfaf8;border:0}.birth-page .birth-main,.birth-page .birth-main.with-nav{max-width:430px;padding:4px 22px calc(92px + env(safe-area-inset-bottom))}.birth-page-editing .birth-main{padding-bottom:calc(35px + env(safe-area-inset-bottom))}.birth-identity{grid-template-columns:minmax(0,1fr) 75px 91px;gap:14px;margin-top:4px;display:grid}.birth-identity-field{text-align:left;min-width:0;height:56px;color:var(--birth-ink);background:0 0;border:0;border-bottom:1px solid #cdd3da;border-radius:0;flex-direction:column;justify-content:space-between;align-items:stretch;padding:4px 0 7px;display:flex}.birth-identity-field:focus-within,.birth-identity-field:focus-visible{border-bottom-color:var(--birth-blue);outline:none}.birth-identity-label{color:#737f8a;letter-spacing:.12em;font-size:11px}.birth-page .birth-identity-field input{width:100%;height:auto;min-height:0;box-shadow:none;color:var(--birth-ink);font:17px/1.2 var(--birth-serif);background:0 0;border:0;border-radius:0;outline:none;padding:0}.birth-page .birth-identity-field input::placeholder{color:#a3acb5;opacity:1}.birth-identity-value{font:17px/1.2 var(--birth-serif);white-space:nowrap;justify-content:space-between;align-items:center;gap:3px;display:flex}.birth-identity-value svg{color:#8693a0}.birth-category-value{min-width:0;font-size:15px}.birth-category-value svg{flex:none}.birth-date-block{margin-top:17px}.birth-date-heading{justify-content:space-between;align-items:center;min-height:31px;display:flex}.birth-date-heading>span:first-child{color:#737f8a;letter-spacing:.12em;font-size:11px}.birth-calendar-badge{min-width:52px;height:29px;color:var(--birth-ink);background:#f0f0f0;border-radius:20px;justify-content:center;align-items:center;padding:0 10px;font-size:12px;display:flex}.birth-date-trigger{text-align:left;width:100%;height:54px;color:var(--birth-ink);background:0 0;border:0;border-bottom:1px solid #cdd3da;border-radius:0;justify-content:space-between;align-items:center;gap:7px;padding:0;display:flex}.birth-date-trigger:focus-visible{border-bottom-color:var(--birth-blue);outline:none}.birth-date-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:400 clamp(31px,9.8vw,42px)/1.2 var(--birth-serif);letter-spacing:-.055em;display:block;overflow:hidden}.birth-date-trigger.lunar>span:first-child{font-size:clamp(29px,8vw,35px)}.birth-date-cue{color:#2f6fcc;white-space:nowrap;background:#edf4ff;border-radius:17px;flex:none;align-items:center;gap:4px;height:32px;padding:0 9px;font-size:11px;display:flex}.birth-dial-hint{color:#9ca4ac;letter-spacing:.07em;align-items:center;height:24px;margin:0;font-size:10px;display:flex}.birth-time-dial-block{position:relative}.birth-time-dial{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;width:min(100% + 44px,370px);height:auto;margin:-2px auto 0;display:block;overflow:visible}.birth-time-dial:active{cursor:grabbing}.birth-time-dial text{pointer-events:none}.birth-dial-branch{cursor:pointer;outline:none}.birth-dial-branch:focus-visible .birth-branch-hit{stroke:var(--birth-blue);stroke-width:2px}.birth-branch-name{font:500 17px/1 var(--birth-serif);fill:var(--birth-ink);text-anchor:middle}.birth-branch-slot{font:10px/1 var(--birth-sans);fill:#7d8795;text-anchor:middle}.birth-dial-branch.selected .birth-branch-name{fill:#2c72da;font-size:19px}.birth-dial-branch.selected .birth-branch-slot{fill:var(--birth-blue)}.birth-branch-hit{fill:#0000}.birth-ring-halo{fill:none;stroke:#4789d421;stroke-width:17px;filter:blur(9px)}.birth-ring-track{fill:none;stroke:#8191a8;stroke-width:1px;opacity:.85}.birth-active-arc{fill:none;stroke:url(#birth-arc);stroke-width:7px;stroke-linecap:round;filter:drop-shadow(0 0 5px #388eec59)}.birth-dial-label{fill:#536879;font:12px var(--birth-serif);letter-spacing:.23em;text-anchor:middle}.birth-time-number{fill:#14243a;font:400 57px/1 var(--birth-serif);letter-spacing:-.055em;text-anchor:middle;font-variant-numeric:tabular-nums}.birth-branch-readout{fill:#1b3344;font:500 17px/1 var(--birth-serif);text-anchor:middle;letter-spacing:.1em}.birth-range-readout{fill:#506777;font:11px/1 var(--birth-sans);text-anchor:middle;letter-spacing:.07em}.birth-precision-entry{color:#315b8f;background:0 0;border:0;justify-content:center;align-items:center;gap:7px;width:100%;min-height:26px;margin:-9px 0 4px;padding:0;font-size:11px;display:flex}.birth-precision-entry span{color:#87939f}.birth-tools{gap:9px;height:55px;margin-top:1px;display:flex}.birth-city-chip,.birth-solar-chip{background:#fffc;border:1px solid #e1e3e5;border-radius:27px;box-shadow:0 5px 18px #232b350b}.birth-city-chip{text-align:left;min-width:0;color:var(--birth-ink);flex:auto;align-items:center;gap:7px;padding:0 9px 0 11px;display:flex}.birth-city-chip>svg:first-child{color:#203042;flex:none}.birth-city-chip>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:14px/1 var(--birth-serif);flex:1;overflow:hidden}.birth-city-chip>svg:last-child{color:#a27b63}.birth-solar-chip{flex:0 0 137px;justify-content:center;align-items:center;gap:4px;padding:0 7px;display:flex}.birth-solar-chip>span{white-space:nowrap;font:14px/1 var(--birth-serif)}.birth-solar-help{color:#a2abb5;background:0 0;border:0;place-items:center;width:20px;height:28px;padding:0;display:grid}.birth-page .birth-solar-chip .toggle{background:#c7cbd0;border:0;border-radius:13px;flex:none;width:35px;height:22px;min-height:22px;margin-left:auto;padding:2px}.birth-page .birth-solar-chip .toggle:before{content:none}.birth-page .birth-solar-chip .toggle.on{background:linear-gradient(105deg,#97745e,#c38f6f)}.birth-page .birth-solar-chip .toggle span{width:18px;height:18px}.birth-page .birth-edit-hint{margin:12px 2px 0}.birth-page .birth-error{scroll-margin-bottom:100px}:is(.birth-page .birth-actions,.birth-page-editing .birth-actions,.birth-page:has(input:focus,textarea:focus) .birth-actions){z-index:auto;background:0 0;border:0;width:100%;margin:18px 0 0;padding:0;position:static;bottom:auto;left:auto;transform:none}.birth-continue{color:#fff;width:100%;height:61px;font:500 22px/1 var(--birth-serif);letter-spacing:.18em;background:radial-gradient(circle at 50% -90%,#425264 0%,#1d2631 76%);border:0;border-radius:35px;display:block;position:relative;overflow:hidden;box-shadow:0 13px 28px #16212e2b}.birth-continue:before{content:"";border:1px solid #c69269bf;border-radius:50%;width:110px;height:110px;position:absolute;bottom:-29px;left:-15px}.birth-continue:after{content:"";background:#fff;border-radius:50%;width:5px;height:5px;position:absolute;top:15px;left:39px;box-shadow:0 0 0 2px #ffffff26}.birth-continue>span{z-index:1;margin-left:24px;position:relative}.birth-continue b{font:30px/.6 var(--birth-sans);margin-left:6px;position:relative;top:3px}.birth-continue i{color:#be8f6e;width:37px;height:37px;font:27px/1 var(--birth-sans);letter-spacing:0;border:1px solid #be8f6e;border-radius:50%;place-items:center;font-style:normal;display:grid;position:absolute;top:12px;right:21px}.birth-secondary{margin-top:20px;padding-bottom:10px}.birth-page .birth-choice{text-align:left;width:100%;min-height:47px;color:var(--birth-ink);background:0 0;border:0;border-top:1px solid #e6e7e9;border-radius:0;align-items:center;gap:9px;padding:8px 0;font-size:13px;display:flex}.birth-page .birth-choice-label{color:#63707d;flex:1;font-size:13px}.birth-page .birth-choice-value{text-align:right;color:#7b8793;flex:0 auto;font-size:12px}.birth-page .birth-choice svg{color:#8693a0}.birth-page .birth-reset,.birth-page .birth-delete{color:#87919a;width:auto;min-height:38px;margin:8px auto 0;padding:0 12px;font-size:12px;display:block}.birth-page .birth-remark-row{margin-top:14px}.birth-page .birth-remark-row textarea{border-radius:12px}.birth-page .birth-char-count{text-align:right;color:#87919a;margin-top:4px;font-size:12px;display:block}.birth-centered-modal .modal-backdrop{background:#101b2775;align-items:center;padding:14px}.birth-centered-modal .modal-panel{width:min(100%,386px);max-width:386px;max-height:calc(100dvh - 28px);color:var(--birth-ink);background:#fdfcfb;border:1px solid #ffffffb3;border-radius:26px;padding:18px 19px 19px;overflow-y:auto;box-shadow:0 25px 85px #0c1d2e45}.birth-centered-modal .modal-header{margin-bottom:13px}.birth-centered-modal .modal-header h2{font:25px/1.2 var(--birth-serif)}.birth-centered-modal .modal-header .icon-button{color:#4d5b69;background:#f0f1f2;border-radius:50%;width:28px;height:28px}.birth-centered-modal .modal-header .icon-button svg{width:17px;height:17px}.birth-modal-note{color:#74808e;margin:0 0 17px;font-size:12px;line-height:1.5}.birth-calendar-modes{background:#f0f2f4;border-radius:13px;grid-template-columns:1fr 1fr;gap:7px;margin:0 0 13px;padding:3px;display:grid}.birth-calendar-modes button{color:#697482;background:0 0;border:0;border-radius:10px;height:37px;font-size:13px}.birth-calendar-modes button.active{color:#153961;background:#fff;font-weight:600;box-shadow:0 2px 8px #172d4214}.birth-year-jump{color:#607080;justify-content:space-between;align-items:center;gap:10px;margin-bottom:17px;font-size:13px;display:flex}.birth-page .birth-year-jump input{width:104px;height:42px;min-height:42px;color:var(--birth-ink);font:21px/1 var(--birth-serif);text-align:center;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #dbe0e5;border-radius:11px;padding:0 11px}.birth-wheel-head,.birth-wheel-stage{text-align:center;grid-template-columns:1.35fr 1fr 1fr;gap:8px;display:grid}.birth-wheel-head{color:#8b96a1;margin-bottom:3px;font-size:12px}.birth-wheel-stage{height:198px;margin-bottom:18px;position:relative}.birth-wheel-stage:before{content:"";z-index:0;pointer-events:none;background:#edf4ff;border-top:1px solid #d8e8fb;border-bottom:1px solid #d8e8fb;border-radius:10px;height:44px;position:absolute;top:77px;left:0;right:0}.birth-date-wheel{z-index:1;scroll-snap-type:y mandatory;overscroll-behavior:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;height:198px;position:relative;overflow-y:auto}.birth-date-wheel::-webkit-scrollbar{display:none}.birth-date-wheel:before,.birth-date-wheel:after{content:"";height:77px;display:block}.birth-date-wheel button{color:#8d9aa6;width:100%;height:44px;font:17px/44px var(--birth-serif);font-variant-numeric:tabular-nums;scroll-snap-align:center;text-align:center;background:0 0;border:0;padding:0;display:block}.birth-date-wheel button.selected{color:#183d6e;font-weight:600}.birth-modal-actions{background:#fdfcfb;grid-template-columns:1fr 1.45fr;gap:10px;margin:0 0 -19px;padding:10px 0 19px;display:grid;position:sticky;bottom:-19px}.birth-modal-actions button{height:49px;font:18px/1 var(--birth-serif);border-radius:25px}.birth-modal-actions button:first-child{color:#53616d;background:#fff;border:1px solid #dce1e5}.birth-modal-actions button:last-child{color:#fff;background:#202a36;border:0}.birth-choice-grid,.birth-category-grid{grid-template-columns:repeat(2,1fr);gap:9px;display:grid}.birth-choice-grid button,.birth-category-grid button{color:#263545;background:#fff;border:1px solid #e4e7eb;border-radius:13px;min-height:48px;padding:0 10px;font-size:15px}.birth-choice-grid button.selected,.birth-category-grid button.selected{color:#226ed4;background:#eef6ff;border-color:#4088eb}.birth-zi-grid button{flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.birth-zi-grid button small{color:#66788a;font-size:11px}.birth-category-new{color:#315b8f;background:#fff;border:1px solid #dfe4e8;border-radius:12px;width:100%;min-height:43px;margin-top:15px;font-size:13px}.birth-page .birth-date-sheet .segmented{background:#f0f2f4;border-radius:13px;min-height:42px}.birth-page .birth-date-sheet .segmented button{border-radius:10px;min-height:38px}.birth-page .birth-date-sheet .segmented button.selected{color:#153961;background:#fff;border:0;box-shadow:0 2px 8px #172d4214}.birth-time-selects{grid-template-columns:1fr 18px 1fr;align-items:end;gap:10px;margin-top:18px;display:grid}.birth-time-selects label>span{color:#7c8591;margin-bottom:7px;font-size:12px;display:block}.birth-time-selects select{text-align:center;font-size:18px}.birth-time-colon{text-align:center;color:#7c8591;padding-bottom:14px}.birth-time-caption{color:#607080;background:#edf4ff;border-radius:9px;justify-content:center;gap:13px;margin-top:14px;padding:11px;font-size:13px;display:flex}.birth-time-caption strong{color:#153961}.birth-branch-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.birth-branch-grid button{background:#fff;border:1px solid #e4e7eb;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:55px;padding:7px 3px;font-size:14px;display:flex}.birth-branch-grid button.selected{color:#226ed4;background:#eef6ff;border-color:#4088eb}.birth-branch-grid small{color:#7c8591;font-size:10px}.birth-date-sheet>.muted{margin-top:10px;font-size:12px}.birth-date-sheet>.button,.birth-place-sheet>.button{background:#202a36;border-radius:25px;margin-top:10px}.birth-place-sheet>.muted:first-child{margin:0 0 13px;font-size:12px}.birth-city-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-height:210px;display:grid;overflow-y:auto}.birth-city-grid button{color:#273647;background:#fff;border:1px solid #e4e7eb;border-radius:13px;min-height:46px;font-size:14px}.birth-city-grid button.selected{color:#226ed4;background:#eef6ff;border-color:#4088eb}.birth-place-sheet .field-label{color:#607080;margin:15px 0 8px;font-size:13px}.birth-place-sheet input,.birth-category-sheet input{border-radius:11px}.birth-input-unit{position:relative}.birth-input-unit input{padding-right:32px}.birth-input-unit>span{color:#7c8591;position:absolute;top:14px;right:14px}.birth-input-help{margin:6px 0 10px;font-size:12px}.birth-place-sheet>.birth-rule-switch{border-top:1px solid #e4e7eb;margin-top:10px;padding:12px 0}.birth-zone-details{border:1px solid #e4e7eb;border-radius:12px;margin:14px 0;overflow:hidden}.birth-zone-details>summary{background:#f6f7f8;min-height:46px;padding:13px;font-size:13px}.birth-zone-content{padding:13px}.birth-zone-content .field-label{margin:10px 0 7px}.birth-centered-modal .birth-category-sheet{flex-direction:column;gap:10px;display:flex}.birth-centered-modal .birth-category-sheet .button{background:#202a36;border-radius:25px}@media (max-width:360px){.birth-page .birth-main,.birth-page .birth-main.with-nav{padding-left:17px;padding-right:17px}.birth-identity{grid-template-columns:minmax(0,1fr) 62px 80px;gap:10px}.birth-date-block{margin-top:12px}.birth-date-trigger>span:first-child{font-size:32px}.birth-date-trigger.lunar>span:first-child{font-size:27px}.birth-date-cue{justify-content:center;width:32px;padding:0;font-size:0}.birth-time-dial{width:calc(100% + 34px);margin-left:-17px;margin-right:-17px}.birth-solar-chip{flex-basis:129px}.birth-solar-chip>span{font-size:13px}.birth-centered-modal .modal-backdrop{padding:10px}.birth-centered-modal .modal-panel{padding:17px 15px}.birth-branch-grid{gap:6px}}@media (max-height:760px){.birth-date-block{margin-top:12px}.birth-actions{margin-top:10px}}.birth-page .birth-city-search{height:45px;min-height:45px;color:var(--birth-ink);background:#f6f7f8;border:1px solid #e1e4e8;border-radius:12px;margin:0 0 13px;padding:0 14px;font-size:14px}.birth-page .birth-city-search:focus{background:#fff;border-color:#6e9ee3}.birth-time-dial{margin-left:0;margin-right:0;position:relative;left:50%;transform:translate(-50%)}@media (max-width:360px){.birth-time-dial{margin-left:0;margin-right:0}}.birth-city-empty{color:#7c8591;text-align:center;grid-column:1/-1;margin:8px 0;font-size:12px}.birth-category-notice{color:#785b37;background:#fff9ef;border:1px solid #e9d2b2;border-radius:10px;margin:8px 0 0;padding:8px 10px;font-size:11px;line-height:1.55}.birth-category-notice button{color:#315b8f;background:0 0;border:0;min-height:28px;margin-left:4px;padding:0 4px;font-size:11px;text-decoration:underline}.birth-time-dial{touch-action:pan-y}.birth-ring-hit,.birth-dial-knob{touch-action:none}.birth-active-arc{pointer-events:none}.birth-page .birth-city-grid button.selected,.birth-page .birth-branch-grid button.selected{color:#226ed4;background:#eef6ff;border-color:#4088eb}.birth-page .birth-branch-grid button.selected small{color:#226ed4}.birth-page .birth-branch-grid small{font-size:11px}.birth-category-control{align-items:center;gap:8px;min-width:0;display:flex}.birth-category-control select{flex:1;min-width:0;height:48px}.birth-category-add{min-width:56px;height:48px;color:var(--primary);font:inherit;background:#fff8f5;border:1px solid #dfbab0;border-radius:8px;flex:none;padding:0 10px;font-size:13px;font-weight:600}.birth-category-add:disabled{opacity:.55}.birth-category-error{margin:8px 0 0 58px;line-height:1.6}.birth-category-error button{min-width:44px;min-height:44px;color:var(--primary);font:inherit;background:0 0;border:0;text-decoration:underline}.birth-category-sheet{flex-direction:column;gap:10px;display:flex}.birth-category-sheet .field-label{font-size:14px}.birth-category-sheet input{box-sizing:border-box;width:100%;min-height:44px}.birth-category-sheet .muted{margin:0;font-size:12px;line-height:1.6}.birth-category-sheet .button{margin-top:10px}@media (max-width:360px){.birth-category-control{gap:6px}.birth-category-add{min-width:50px;padding:0 8px}}.birth-dst-alert{color:#725120;text-align:left;background:#fff8eb;border:1px solid #e3c393;border-radius:6px;width:100%;margin:8px 0 13px;padding:10px 12px;font-size:12px;line-height:1.6;display:block}.birth-dst-action{cursor:pointer}.birth-dst-action:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.ziwei-chart-view,.ziwei-scope-selector,.ziwei-palace-details{--zv-accent:var(--primary,#a1463c);--zv-line:var(--border,#dce1e6);--zv-muted:var(--muted,#77818d);color:var(--text,#242b34);font-family:inherit}.ziwei-chart-view{width:100%;min-height:100%;padding-bottom:env(safe-area-inset-bottom);background:#fff}.zv-chart-header{justify-content:space-between;align-items:center;gap:6px;min-height:52px;padding:0 9px;display:flex}.zv-chart-header .brand-small{gap:5px;font-size:15px}.zv-header-button{color:#30435c;white-space:nowrap;background:0 0;border:0;justify-content:center;align-items:center;gap:1px;min-height:44px;padding:0 3px;font-size:12px;display:inline-flex}.zv-header-spacer{flex:none;width:70px}.zv-header-actions{align-items:center;gap:3px;display:flex}.zv-menu-button{width:26px}.zv-chart-body{padding:0 12px 24px}.zv-mode-tabs,.zv-four-tabs,.zv-detail-tabs{background:#f3f5f7;border-radius:5px;align-items:stretch;margin-bottom:10px;padding:2px;display:flex}.zv-mode-tabs button,.zv-four-tabs button,.zv-detail-tabs button{color:#334760;background:0 0;border:0;border-radius:4px;flex:1;justify-content:center;align-items:center;gap:4px;min-width:0;min-height:37px;padding:5px 3px;font-size:13px;line-height:1.5;display:flex}.zv-four-tabs button.is-active,.zv-detail-tabs button.is-active{color:var(--zv-accent);font-weight:600;position:relative}.zv-four-tabs button.is-active:after,.zv-detail-tabs button.is-active:after{content:"";background:var(--zv-accent);border-radius:3px;width:40%;height:3px;position:absolute;bottom:0}.zv-board-surround{margin:0 -5px;padding:12px 9px;position:relative}.zv-compass-mark{z-index:4;pointer-events:none;color:#77818b;white-space:nowrap;font-size:8px;font-weight:500;line-height:1;display:block;position:absolute}.zv-compass-mark.is-top{top:0;transform:translate(-50%)}.zv-compass-mark.is-bottom{bottom:0;transform:translate(-50%)}.zv-compass-mark.is-left,.zv-compass-mark.is-right{writing-mode:vertical-rl;text-orientation:upright;transform:translateY(-50%)}.zv-compass-mark.is-left{left:0}.zv-compass-mark.is-right{right:0}.zv-board{border-top:1px solid #a9b9cb;border-left:1px solid #a9b9cb;grid-template-rows:repeat(4,minmax(136px,1fr));grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:relative}.zv-palace{text-align:left;color:#2870ac;outline-offset:-2px;background:#fff;border:1px solid #a9b9cb;border-top:0;border-left:0;flex-direction:column;min-width:0;min-height:136px;padding:7px 5px 4px;display:flex;position:relative}.zv-palace.is-selected{z-index:1;background:snow;box-shadow:inset 0 0 0 1px #bd3f39}.zv-palace.is-related{background:#f6faff;box-shadow:inset 0 0 0 1px #b3cee7}.zv-palace:disabled{opacity:1;cursor:wait}.zv-cell-stars{flex-direction:column;flex:1;gap:1px;min-width:0;min-height:0;display:flex}.zv-star-columns{flex-wrap:wrap;place-content:flex-start;align-items:flex-start;gap:3px 2px;width:100%;min-width:0;display:flex}.zv-star{flex-direction:column;flex:none;align-items:center;gap:2px;width:14px;min-width:0;line-height:1.12;display:flex}.zv-star-name{writing-mode:vertical-rl;text-orientation:upright;white-space:nowrap;letter-spacing:0}.zv-major-star{width:18px;font-size:16px;font-weight:650}.zv-palace.is-soul .zv-major-star{color:#bd3f39}.zv-brightness{color:#8190a4;font-size:10px;font-weight:400;line-height:1}.zv-mutagen{color:#fff;vertical-align:middle;border-radius:3px;flex:none;justify-content:center;align-items:center;min-width:14px;height:16px;padding:2px 3px;font-size:10px;font-weight:500;line-height:1;display:inline-flex}.zv-mutagen[data-mutagen=禄]{--zv-mutagen-aura:#287e5d80;background:#287e5d}.zv-mutagen[data-mutagen=权]{--zv-mutagen-aura:#8652b980;background:#8652b9}.zv-mutagen[data-mutagen=科]{--zv-mutagen-aura:#2874be80;background:#2874be}.zv-mutagen[data-mutagen=忌]{--zv-mutagen-aura:#bd3f3980;background:#bd3f39}.zv-star .zv-mutagen{width:13px;min-width:0;height:13px;padding:0;font-size:9px;line-height:1}.zv-minor-star{color:#7187a6;font-size:12px;font-weight:400}.zv-adjective-star{color:#8a98aa;width:12px;font-size:11px}.zv-layer-star{color:#237bbb;width:14px;font-size:12px}.zv-cell-footer{color:#172135;justify-content:space-between;align-items:center;gap:2px;margin-top:7px;font-size:10px;line-height:1.5;display:flex}.zv-cell-footer>span:first-child{align-items:center;gap:3px;min-width:0;display:flex}.zv-cell-footer strong{white-space:nowrap;font-weight:600}.zv-cell-branch{color:#627892;white-space:nowrap;font-size:9px}.zv-cell-body{color:#ac4941;writing-mode:vertical-rl;text-orientation:upright;border:1px solid #bc6c65;border-radius:2px;padding:1px 0;font-size:8px;line-height:1}.zv-cell-age,.zv-cell-scope{color:#8b97a7;margin-top:2px;font-size:8px;line-height:1.4;display:block}.zv-cell-scope{color:#2d78b4}.zv-cell-scope>span{overflow-wrap:anywhere;display:block}.zv-center{color:#2e4666;text-align:center;z-index:1;border-bottom:1px solid #a9b9cb;border-right:1px solid #a9b9cb;flex-direction:column;grid-area:2/2/4/4;justify-content:center;align-items:center;min-width:0;padding:8px 6px;display:flex}.zv-center h2{overflow-wrap:anywhere;width:100%;margin:0 0 9px;font-size:14px;line-height:1.6}.zv-center p{overflow-wrap:anywhere;width:100%;margin:0 0 5px;font-size:10px;line-height:1.65}.zv-center .zv-center-key{color:#50678c;font-size:9px}.zv-center .zv-center-basis{color:#8a95a7;font-size:8px}.zv-board.is-flying .zv-center{justify-content:flex-start;padding-top:22px}.zv-center .zv-flying-origin{color:#697d9a;font-size:10px}.zv-center .zv-flying-hint{color:#a0aabb;margin-top:auto;margin-bottom:18px;font-size:9px}.zv-flying-lines{pointer-events:none;z-index:2;opacity:.75;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.zv-sanhe-lines{pointer-events:none;z-index:2;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.zv-sanhe-mutation-markers{pointer-events:none;z-index:5;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.zv-sanhe-link{opacity:0;animation:.34s ease-out forwards zv-sanhe-appear}.zv-sanhe-guide,.zv-sanhe-flow{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke}.zv-sanhe-guide{stroke:#6b9cc4;stroke-width:1.2px;stroke-opacity:.3}.zv-sanhe-flow{stroke:#3977a9;stroke-width:1.3px;stroke-opacity:.62;stroke-dasharray:5 7;animation:1.15s linear infinite zv-sanhe-flow}.zv-sanhe-target{fill:#fff;stroke:#3977a9;stroke-width:1.5px;vector-effect:non-scaling-stroke;animation:1.6s ease-in-out infinite zv-sanhe-pulse}.zv-sanhe-trine-edge{fill:none;stroke:#3977a9;stroke-width:1.1px;stroke-opacity:.55;stroke-dasharray:5 7;vector-effect:non-scaling-stroke}@keyframes zv-sanhe-appear{to{opacity:1}}@keyframes zv-sanhe-flow{to{stroke-dashoffset:-24px}}@keyframes zv-sanhe-pulse{50%{stroke-width:2.6px;stroke-opacity:.48}}@media (prefers-reduced-motion:reduce){.zv-sanhe-link{opacity:1;animation:none}.zv-sanhe-flow,.zv-sanhe-target{animation:none}}.zv-self-mutation-key{white-space:nowrap;justify-content:center;align-items:center;margin-top:5px;font-size:clamp(8px,2.5vw,11px);line-height:1.3;display:flex}.zv-self-mutation-key>span:first-child{color:#536276}.zv-self-mutation-key [data-mutagen]{font-weight:700}.zv-self-mutation-key [data-mutagen=禄]{color:#2d8a65}.zv-self-mutation-key [data-mutagen=权]{color:#8652b9}.zv-self-mutation-key [data-mutagen=科]{color:#2874be}.zv-self-mutation-key [data-mutagen=忌]{color:#bd3f39}.zv-quick-title{color:#213044;justify-content:space-between;align-items:center;gap:8px;margin:1px 0 6px;font-size:12px;line-height:1.7;display:flex}.zv-quick-title button{color:#78879a;background:0 0;border:0;min-height:24px;padding:0;font-size:11px}.zv-quick-options{scrollbar-width:none;gap:6px;margin-bottom:9px;padding-bottom:1px;display:flex;overflow:auto}.zv-quick-options button{color:#385371;background:#fff;border:1px solid #d7e0eb;border-radius:4px;flex:none;min-width:64px;min-height:33px;padding:5px 8px;font-size:11px}.zv-quick-options button.is-active{background:var(--zv-accent);border-color:var(--zv-accent);color:#fff}.zv-mode-tabs{margin:9px 0}.zv-mode-tabs button.is-active{color:#fff;background:var(--zv-accent)}.zv-bottom-actions{gap:9px;display:flex}.zv-bottom-actions .button{color:#324b6b;border-color:#c9d5e3;flex:1;min-width:0;min-height:42px;padding:7px;font-size:13px}.zv-bottom-actions .button+.button{margin-top:0}.zv-calculating{text-align:center;color:var(--zv-muted);margin:9px 0 0;font-size:12px}.zv-flying-filter{color:#768397;align-items:center;gap:7px;min-height:32px;margin:0 0 8px;font-size:10px;display:flex}.zv-flying-filter button{color:#61718a;background:#eef1f6;border:0;border-radius:4px;flex:1;min-height:26px;font-size:11px}.zv-flying-filter button.is-active{color:#fff}.zv-flying-filter button.is-active[data-mutagen=禄]{background:#2d8a65}.zv-flying-filter button.is-active[data-mutagen=权]{background:#8652b9}.zv-flying-filter button.is-active[data-mutagen=科]{background:#2874be}.zv-flying-filter button.is-active[data-mutagen=忌]{background:#bd3f39}.zv-flying-list,.zv-four-table{border:1px solid var(--zv-line);border-radius:5px;margin:0 0 10px;overflow:hidden}.zv-table-caption{color:#385472;background:#f4f6f8;padding:8px 10px;font-size:11px;line-height:1.7}.zv-transformation-row{text-align:left;color:#425872;background:#fff;border:0;align-items:center;gap:8px;width:100%;min-height:35px;padding:7px 11px;font-size:11px;line-height:1.5;display:flex}.zv-transformation-row+.zv-transformation-row{border-top:1px solid #eef0f3}.zv-transformation-row strong{font-weight:500}.zv-transformation-row>svg{margin-left:auto}.zv-four-table-head,.zv-four-table-row{text-align:center;grid-template-columns:46px 1fr 1fr;align-items:center;gap:5px;padding:5px 8px;display:grid}.zv-four-table-head{color:#536c8a;background:#fafbfc;min-height:26px;font-size:10px}.zv-four-table-row{color:#314965;background:#fff;border:0;border-top:1px solid #eef0f3;width:100%;min-height:31px;font-size:11px}.zv-four-table .zv-selector-help,.zv-flying-list .zv-selector-help{margin:0;padding:10px}.zv-menu-actions{flex-direction:column;gap:10px;display:flex}.zv-menu-actions .button+.button{margin:0}.zv-scope-types{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:14px;display:grid}.zv-scope-types button{color:#405673;background:#fff;border:1px solid #e0e5ed;border-radius:5px;min-height:41px;font-size:14px}.zv-scope-types button.is-active{border-color:var(--zv-accent);background:var(--zv-accent);color:#fff}.zv-scope-summary{color:#415976;background:#f2f5f8;border-radius:5px;margin-bottom:17px;padding:10px;font-size:12px;line-height:1.6}.zv-scope-block{margin-bottom:17px}.zv-scope-block h3{margin:0 0 9px;font-size:14px}.zv-limit-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.zv-limit-options button{color:#354e6e;background:#fff;border:1px solid #d9e1eb;border-radius:5px;flex-direction:column;align-items:center;gap:4px;min-height:54px;padding:8px 5px;display:flex}.zv-limit-options button strong{font-size:13px;font-weight:500}.zv-limit-options button span{color:#8a97a9;font-size:10px}.zv-limit-options button.is-active{border-color:var(--zv-accent);background:var(--zv-accent);color:#fff}.zv-limit-options button.is-active span{color:#f4dedb}.ziwei-scope-selector .field{margin-bottom:13px}.ziwei-scope-selector .field-label{margin-bottom:7px;font-size:13px}.ziwei-scope-selector input,.ziwei-scope-selector select{min-height:44px;padding:9px 11px;font-size:14px}.zv-scope-date-selects{grid-template-columns:1.25fr 1fr 1fr;gap:7px;display:grid}.zv-scope-date-selects select{min-width:0;padding-left:8px;padding-right:5px}.zv-selector-help{color:#8390a1;margin:8px 0 13px;font-size:12px;line-height:1.75}.zv-selector-actions{gap:9px;margin-top:16px;display:flex}.zv-selector-actions .button{flex:1;min-width:0;font-size:14px}.zv-selector-actions .button+.button{margin:0}.zv-lunar-reference{color:#62758e;background:#f5f7fa;border-radius:5px;padding:10px;font-size:11px;line-height:1.75}.zv-lunar-reference p{margin:0 0 5px}.zv-lunar-reference details>div{flex-wrap:wrap;gap:5px;display:flex}.zv-lunar-reference details span{background:#fff;border:1px solid #e2e7ef;border-radius:3px;padding:2px 6px}.zv-detail-case{overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:10px;margin-bottom:11px;font-size:14px;font-weight:600;line-height:1.6;display:flex}.zv-detail-case>span{color:#597495;white-space:nowrap;background:#eef3fa;border-radius:4px;padding:3px 7px;font-size:11px}.zv-palace-summary{border:1px solid var(--zv-line);border-radius:6px;margin-bottom:14px;padding:14px}.zv-palace-summary h2{align-items:center;gap:8px;margin:0 0 12px;font-size:18px;display:flex}.zv-body-tag{color:#ac4b42;border:1px solid #bb766f;border-radius:3px;padding:2px 4px;font-size:10px;font-weight:400}.zv-detail-majors{color:#af3e37;flex-wrap:wrap;gap:13px;margin-bottom:10px;font-size:23px;font-weight:600;line-height:1.5;display:flex}.zv-detail-majors>span{flex-direction:column;display:flex}.zv-detail-majors small{color:#7688a0;font-size:12px;font-weight:400;line-height:1.7}.zv-palace-summary p{color:#7c8a9d;margin:4px 0 0;font-size:12px;line-height:1.7}.zv-detail-tabs{margin-bottom:14px}.zv-detail-table{border:1px solid var(--zv-line);border-radius:5px;margin-bottom:17px;padding:0 12px}.zv-detail-star-row{border-bottom:1px solid #edf0f4;grid-template-columns:38px 1fr;gap:12px;padding:12px 0;display:grid}.zv-detail-star-row h3{margin:0;font-size:13px;line-height:1.8}.zv-detail-star-row>div{flex-wrap:wrap;gap:9px 13px;font-size:13px;line-height:1.8;display:flex}.zv-detail-star{align-items:center;gap:4px;display:inline-flex}.zv-detail-star strong{font-weight:500}.zv-detail-star small{color:#8c99aa;font-size:10px}.zv-detail-facts{grid-template-columns:1fr 1fr;gap:9px;padding:13px 0;font-size:12px;display:grid}.zv-detail-facts>span{color:#7d8c9f}.zv-detail-facts>strong{color:#506581;text-align:right;font-weight:400}.zv-relation-row{border:1px solid var(--zv-line);color:#405773;text-align:left;background:#fff;border-radius:5px;justify-content:space-between;align-items:center;gap:10px;width:100%;margin-bottom:8px;padding:13px 12px;display:flex}.zv-relation-row>span{flex-direction:column;gap:6px;display:flex}.zv-relation-row strong{font-size:14px;font-weight:600}.zv-relation-row small{color:#8390a2;font-size:12px}.zv-detail-transformations h3{color:#50627c;margin:10px 0 8px;font-size:13px;line-height:1.7}.zv-detail-transformations .zv-transformation-row{min-height:43px;padding:9px 4px;font-size:13px}.zv-self-note{color:#93736c;margin:10px 0 16px;font-size:12px;line-height:1.7}.zv-detail-note-actions{flex-direction:column;gap:10px;margin-top:18px;display:flex}.zv-detail-note-actions .button{font-size:14px}.zv-detail-note-actions .button+.button{margin:0}.zv-muted{color:#929cab}.ziwei-chart-view.font-large .zv-major-star{width:19px;font-size:17px}.ziwei-chart-view.font-large .zv-minor-star{width:15px;font-size:13px}.ziwei-chart-view.font-large .zv-palace{min-height:0;height:var(--zv-row-height)}.ziwei-chart-view.font-extra .zv-major-star{width:21px;font-size:19px}.ziwei-chart-view.font-extra .zv-minor-star{width:17px;font-size:15px}.ziwei-chart-view.font-extra .zv-palace{min-height:0;height:var(--zv-row-height)}.ziwei-palace-details.font-large .zv-detail-star,.ziwei-palace-details.font-large .zv-transformation-row{font-size:15px}.ziwei-palace-details.font-extra .zv-detail-star,.ziwei-palace-details.font-extra .zv-transformation-row{font-size:17px}@media (max-width:350px){.zv-chart-body{padding-left:7px;padding-right:7px}.zv-chart-header{gap:2px;padding-left:4px;padding-right:4px}.zv-chart-header .brand-small{gap:4px;font-size:13px}.zv-header-button{padding:0 1px;font-size:11px}.zv-palace{padding-left:4px;padding-right:3px}.zv-star-columns{gap:1px}.zv-major-star{width:16px;font-size:14px}.zv-cell-branch{font-size:8px}.zv-cell-footer{font-size:9px}.zv-center h2{font-size:12px}.zv-center p{font-size:9px}.zv-cell-scope{font-size:7px}.zv-minor-star,.zv-layer-star{width:12px;font-size:11px}.zv-adjective-star{width:11px;font-size:10px}.zv-detail-majors{font-size:21px}.ziwei-chart-view.font-large .zv-major-star{width:17px;font-size:15px}.ziwei-chart-view.font-extra .zv-major-star{width:18px;font-size:16px}.ziwei-chart-view.font-extra .zv-minor-star{width:14px;font-size:13px}}.ziwei-chart-view{--zv-grid:#a9abad;--zv-row-height:clamp(180px,40cqw,240px);--zv-source-base:8px;--zv-chart-text:clamp(9px,2.65cqw,14px);container-type:inline-size}.ziwei-chart-view .zv-chart-body{padding:0 4px calc(var(--app-nav-height,82px) + 56px + env(safe-area-inset-bottom))}.ziwei-chart-view .zv-board-surround{margin:0}.ziwei-chart-view .zv-board{grid-template-rows:repeat(4,var(--zv-row-height));border-color:var(--zv-grid)}.ziwei-chart-view .zv-palace{--zv-source-size:min(var(--zv-source-base),var(--zv-star-size));min-height:0;height:var(--zv-row-height);border-color:var(--zv-grid);gap:1px;padding:3px}.ziwei-chart-view .zv-palace.is-selected{background:#fff;box-shadow:inset 0 0 0 1px #925149}.ziwei-chart-view .zv-palace.is-related{box-shadow:none;background:#fff}.ziwei-chart-view .zv-cell-starfield{height:0;position:absolute;inset:3px 3px auto}.ziwei-chart-view .zv-cell-stars{height:0;min-height:0;margin:0;position:absolute;inset:0 0 auto}.ziwei-chart-view .zv-cell-stars .zv-star{position:absolute}.ziwei-chart-view .zv-star-columns{gap:3px 0;height:0;position:relative}.ziwei-chart-view .zv-star,.ziwei-chart-view .zv-star.zv-major-star,.ziwei-chart-view .zv-star.zv-minor-star,.ziwei-chart-view .zv-star.zv-adjective-star{width:var(--zv-star-size);flex:0 0 var(--zv-star-size);font-size:var(--zv-star-size);gap:1px;line-height:1}.ziwei-chart-view .zv-star.zv-major-star{font-weight:650}.ziwei-chart-view .zv-star.zv-minor-star,.ziwei-chart-view .zv-star.zv-adjective-star{font-weight:500}.ziwei-chart-view .zv-star-heading{flex-direction:column;align-items:center;gap:1px;display:flex}.ziwei-chart-view .zv-star.has-sources .zv-star-heading{min-height:calc(var(--zv-star-size) * 2 + 11px)}.ziwei-chart-view .zv-brightness{font-size:min(clamp(7px,2.1cqw,10px),var(--zv-star-size));font-weight:400;line-height:1}.ziwei-chart-view .zv-star-mutagens{width:var(--zv-source-size);flex-direction:column;align-items:center;gap:0;margin:0;display:flex}.ziwei-chart-view .zv-source-mutagen{--zv-source-color:#67717c;--zv-source-aura:#67717c80;flex:0 0 var(--zv-source-size);height:var(--zv-source-size);width:var(--zv-source-size);justify-content:center;align-items:center;line-height:1;display:flex}.ziwei-chart-view .zv-source-mark{width:var(--zv-source-size);height:var(--zv-source-size);background:var(--zv-source-color);color:#fff;font-size:calc(var(--zv-source-size) - 1px);text-shadow:0 1px 1px #14253666;box-shadow:0 0 0 .5px var(--zv-source-aura),0 0 calc(var(--zv-source-size) * .22) var(--zv-source-aura);border-radius:1px;justify-content:center;align-items:center;font-weight:600;line-height:1;animation:2.8s ease-in-out infinite zv-source-mutagen-glow;display:flex}.ziwei-chart-view .zv-source-mutagen[data-mutagen=禄]{--zv-source-color:#287e5d;--zv-source-aura:#287e5d80}.ziwei-chart-view .zv-source-mutagen[data-mutagen=权]{--zv-source-color:#8652b9;--zv-source-aura:#8652b980}.ziwei-chart-view .zv-source-mutagen[data-mutagen=科]{--zv-source-color:#2874be;--zv-source-aura:#2874be80}.ziwei-chart-view .zv-source-mutagen[data-mutagen=忌]{--zv-source-color:#bd3f39;--zv-source-aura:#bd3f3980}.ziwei-chart-view .zv-source-mark[data-mutagen=权]{animation-delay:-.7s}.ziwei-chart-view .zv-source-mark[data-mutagen=科]{animation-delay:-1.4s}.ziwei-chart-view .zv-source-mark[data-mutagen=忌]{animation-delay:-2.1s}@keyframes zv-source-mutagen-glow{50%{box-shadow:0 0 0 .5px var(--zv-source-aura),0 0 calc(var(--zv-source-size) * .35) var(--zv-source-aura)}}@media (prefers-reduced-motion:reduce){.ziwei-chart-view .zv-source-mark{animation:none}}.ziwei-chart-view .zv-period-stars{min-width:0;max-width:none;height:0;margin:0;display:block;position:absolute;inset:0 0 auto}.ziwei-chart-view .zv-period-stars>.zv-star{position:absolute}.ziwei-chart-view .zv-period-stars .zv-star.zv-layer-star{flex:0 0 clamp(7px,1.95cqw,11px);width:clamp(7px,1.95cqw,11px);font-size:clamp(7px,1.95cqw,11px);font-weight:500}.ziwei-chart-view .zv-period-stars .zv-star-name{color:inherit!important}.ziwei-chart-view .zv-layer-star.is-decadal-layer{color:#2e9252}.ziwei-chart-view .zv-layer-star.is-age-layer{color:#4a95b8}.ziwei-chart-view .zv-layer-star.is-yearly-layer{color:#2687d0}.ziwei-chart-view .zv-layer-star.is-monthly-layer{color:#c97924}.ziwei-chart-view .zv-layer-star.is-daily-layer{color:#9051bb}.ziwei-chart-view .zv-layer-star.is-hourly-layer{color:#258a89}.ziwei-chart-view .zv-cell-cycles{left:3px;right:3px;bottom:calc(25% + var(--zv-title-clearance));color:#707070;white-space:nowrap;flex-direction:column;font-size:clamp(6px,1.9cqw,10px);line-height:1.35;display:flex;position:absolute}.ziwei-chart-view .zv-cycle-age{white-space:nowrap;display:inline-block}.ziwei-chart-view .zv-scope-timeline{text-align:right;color:#c97924;white-space:nowrap;flex:none;margin-top:0;padding-right:0;font-size:clamp(7px,2.15cqw,11px);line-height:1.1;display:block}.ziwei-chart-view .zv-scope-timeline.is-years{color:#555;white-space:nowrap}.ziwei-chart-view .zv-scope-timeline.is-adjacent-year{color:#767676}.ziwei-chart-view .zv-palace{--zv-title-clearance:clamp(12px,3.1cqw,18px)}.ziwei-chart-view .zv-cell-ground{grid-template-columns:minmax(0,1fr) clamp(12px,3.5cqw,20px);align-items:end;gap:2px;margin-top:0;padding:0;display:grid;position:absolute;bottom:3px;left:3px;right:3px}.ziwei-chart-view .zv-cell-cycles+.zv-cell-ground,.ziwei-chart-view .zv-scope-timeline+.zv-cell-ground{margin-top:0}.ziwei-chart-view .zv-cell-omens{white-space:nowrap;color:#565656;flex-direction:column;align-self:end;gap:0;font-size:clamp(7px,2.1cqw,11px);font-weight:400;line-height:1.2;display:flex}.ziwei-chart-view .zv-cell-omens>span:first-child{color:#32978d}.ziwei-chart-view .zv-cell-period{bottom:calc(25% + var(--zv-title-clearance));color:#bc423d;white-space:nowrap;flex-direction:column;justify-content:flex-end;align-items:flex-end;gap:1px;min-width:0;max-width:4.4em;font-size:clamp(8px,2.55cqw,14px);font-weight:600;line-height:1.08;display:flex;position:absolute;right:calc(clamp(12px,3.5cqw,20px) + 5px)}.ziwei-chart-view .zv-cell-period>strong{color:#bc423d;font-size:inherit;margin:0;font-weight:650;line-height:1.08;transform:none}.ziwei-chart-view .zv-cell-period>span{transform:none}.ziwei-chart-view .zv-palace-title{color:#bc423d;text-align:center;white-space:nowrap;pointer-events:none;flex-direction:column;align-items:center;gap:1px;font-size:clamp(10px,3.05cqw,17px);line-height:1.08;display:flex;position:absolute;top:75%;left:50%;transform:translate(-50%,-50%)}.ziwei-chart-view .zv-palace-title>strong{font-size:inherit;font-weight:650;line-height:inherit}.ziwei-chart-view .zv-palace-title .is-natal-range{color:#000;font-size:clamp(7px,2cqw,11px);font-weight:400;line-height:1.08;position:absolute;top:calc(100% + 1px);left:50%;transform:translate(-50%)}.ziwei-chart-view .zv-palace-title .is-natal-range.is-current-decadal{--zv-source-color:#bd3f39;--zv-source-aura:#bd3f3980;background:var(--zv-source-color);color:#fff;box-shadow:0 0 0 .5px var(--zv-source-aura),0 0 calc(var(--zv-source-size) * .22) var(--zv-source-aura);text-shadow:0 1px 1px #14253666;border-radius:1px;padding:1px 4px;font-weight:600;animation:2.8s ease-in-out -2.1s infinite zv-source-mutagen-glow}@media (prefers-reduced-motion:reduce){.ziwei-chart-view .zv-palace-title .is-natal-range.is-current-decadal{animation:none}}.ziwei-chart-view .zv-period-year-row,.ziwei-chart-view .zv-fine-periods{gap:2px;font-size:clamp(7px,2.1cqw,11px);display:flex}.ziwei-chart-view .zv-fine-periods{flex-wrap:wrap;justify-content:flex-end;max-width:4.4em}.ziwei-chart-view .zv-fine-periods:empty{display:none}.ziwei-chart-view .zv-cell-period .is-age{color:#4a95b8}.ziwei-chart-view .zv-cell-period .is-yearly{color:#2687d0}.ziwei-chart-view .zv-cell-period .is-decadal{color:#2e9252}.ziwei-chart-view .zv-cell-period .is-monthly{color:#c97924}.ziwei-chart-view .zv-cell-period .is-daily{color:#9051bb}.ziwei-chart-view .zv-cell-period .is-hourly{color:#258a89}.ziwei-chart-view .zv-cell-period .is-natal-range{color:#555;font-size:clamp(7px,2cqw,11px);font-weight:400}.ziwei-chart-view .zv-cell-identity{white-space:nowrap;flex-direction:column;justify-content:flex-end;align-self:end;align-items:center;gap:1px;display:flex}.ziwei-chart-view .zv-cell-identity i{color:#555;writing-mode:vertical-rl;text-orientation:upright;font-size:clamp(7px,2.1cqw,11px);font-style:normal;line-height:1}.ziwei-chart-view .zv-cell-identity b{color:#222;writing-mode:vertical-rl;text-orientation:upright;font-size:clamp(12px,3.2cqw,20px);line-height:1}.ziwei-chart-view .zv-cell-body{color:#bc423d;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;font-size:clamp(7px,1.9cqw,10px);line-height:1;animation:none}.ziwei-chart-view .zv-center,.ziwei-chart-view .zv-board.has-sanhe-markers .zv-center{text-align:left;border-color:var(--zv-grid);color:#555;z-index:3;flex-direction:column;justify-content:center;align-items:stretch;gap:1px;min-height:0;padding:6px 8px;display:flex}.ziwei-chart-view .zv-center-heading{text-align:center;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:1px 6px;display:flex}.ziwei-chart-view .zv-center h2{color:#444;white-space:normal;overflow-wrap:anywhere;flex:0 auto;width:auto;min-width:0;max-width:100%;margin:0;font-size:clamp(11px,3cqw,16px);font-weight:650;line-height:1.4}.ziwei-chart-view .zv-center-meta{color:#555;font-size:var(--zv-chart-text);white-space:nowrap;flex:none;line-height:1.4}.ziwei-chart-view .zv-center-line{font-size:var(--zv-chart-text);text-align:center;justify-content:center;align-items:baseline;gap:3px;min-width:0;line-height:1.35;display:flex}.ziwei-chart-view .zv-center-line>span{color:#666;flex:none}.ziwei-chart-view .zv-center-line>strong{min-width:0;font-size:inherit;font-weight:400;line-height:inherit;color:#444;overflow-wrap:anywhere}.ziwei-chart-view .zv-center-masters{flex-wrap:wrap;gap:1px 2px;font-size:clamp(8px,2.35cqw,13px)}.ziwei-chart-view .zv-center-pillars{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:1px 0 0;padding:1px 0;display:grid}.ziwei-chart-view .zv-pillar-caption{color:#777;text-align:center;font-size:clamp(7px,2cqw,11px);line-height:1.3;display:block}.ziwei-chart-view .zv-pillar-columns{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid}.ziwei-chart-view .zv-pillar-columns strong{flex-direction:column;align-items:center;font-size:clamp(11px,3cqw,16px);font-weight:650;line-height:1.05;display:flex}.ziwei-chart-view .zv-bazi-periods{scrollbar-width:none;overscroll-behavior-inline:contain;border:0;border-top:1px solid #e2e2e2;width:calc(100% + 2px);min-width:0;min-height:46px;margin:2px -2px 0 0;padding:3px 0 2px;display:flex;overflow:auto hidden}.ziwei-chart-view .zv-bazi-periods::-webkit-scrollbar{display:none}.ziwei-chart-view .zv-bazi-period{color:#707070;flex-direction:column;flex:0 0 calc(12.5% - .25px);justify-content:center;align-items:center;gap:0;min-width:0;max-width:calc(12.5% - .25px);padding:0;line-height:1;display:flex}.ziwei-chart-view .zv-bazi-period .zv-bazi-pillar{flex-direction:column;align-items:center;width:1em;font-size:clamp(11px,3cqw,16px);line-height:1;display:flex;position:relative}.ziwei-chart-view .zv-bazi-stem,.ziwei-chart-view .zv-bazi-branch{text-align:center;width:1em;display:block}.ziwei-chart-view .zv-bazi-period>small{white-space:nowrap;text-align:center;width:100%;height:9px;font-size:7px;line-height:1.1;display:block}.ziwei-chart-view .zv-bazi-period>small.is-three-digit-age{font-size:6px}.ziwei-chart-view .zv-bazi-period .zv-bazi-ten-god{color:#745284;writing-mode:vertical-rl;text-orientation:upright;font-size:clamp(5.5px,1.7cqw,7px);font-weight:400;position:absolute;top:0;left:100%}.ziwei-chart-view .zv-center-quick-controls{border:1px solid #c4c4c4;grid-template-columns:repeat(5,minmax(0,1fr));margin:1px 0 0;display:grid}.ziwei-chart-view .zv-center-quick-controls button{color:#444;white-space:nowrap;background:#f7f7f7;border:0;border-right:1px solid #c4c4c4;border-radius:0;min-width:0;min-height:22px;padding:0;font-size:clamp(8px,2.25cqw,12px);line-height:1.2}.ziwei-chart-view .zv-center-quick-controls button:last-child{border-right:0}.ziwei-chart-view .zv-self-mutation-key{justify-content:center;margin:2px 0 0;font-size:clamp(8px,2.5cqw,13px);line-height:1.3}.ziwei-chart-view .zv-adjacent-year-key{text-align:center;color:#767676;font-size:clamp(7px,1.95cqw,10px);line-height:1.3}.ziwei-chart-view .zv-center-scope{color:#555;font-size:var(--zv-chart-text);margin-top:2px;line-height:1.4}.ziwei-chart-view .zv-center-scope strong{font-weight:500}.ziwei-chart-view .zv-source-order-key{color:#777;flex-wrap:wrap;gap:1px 4px;font-size:clamp(7px,1.95cqw,10px);line-height:1.3;display:flex}.ziwei-chart-view .zv-source-order-key>div{flex-wrap:wrap;gap:0 3px;display:flex}.ziwei-chart-view .zv-source-order-key>div>span{white-space:nowrap}.ziwei-chart-view .zv-compass-mark{color:#777;font-size:clamp(7px,2cqw,10px)}.ziwei-chart-view .zv-sanhe-guide{stroke:#929292;stroke-opacity:.2;stroke-width:1px}.ziwei-chart-view .zv-sanhe-flow,.ziwei-chart-view .zv-sanhe-trine-edge{stroke:#868686;stroke-opacity:.4;stroke-width:1px;stroke-dasharray:3 3}.ziwei-chart-view .zv-sanhe-target{fill:#fff;stroke:#888;stroke-width:1px;animation:none}.ziwei-chart-view .zv-matrix-scroll{scrollbar-width:none;overscroll-behavior-inline:contain;min-width:0;display:flex;overflow-x:auto}.ziwei-chart-view .zv-matrix-scroll::-webkit-scrollbar{display:none}.ziwei-chart-view .zv-scope-matrix{border-top:0;margin:0 0 8px}.ziwei-chart-view .zv-matrix-row{background:#f1f1f1;border:1px solid #c2c2c2;border-bottom:0;grid-template-columns:36px minmax(0,1fr) 15px;min-height:30px;display:grid}.ziwei-chart-view .zv-matrix-label{color:#333;border-right:1px solid #c2c2c2;justify-content:center;align-items:center;padding:1px;font-size:10px;font-weight:500;line-height:1.1;display:flex}.ziwei-chart-view .zv-matrix-cell{color:#333;white-space:nowrap;background:0 0;border:0;border-right:1px solid #c2c2c2;border-radius:0;flex-direction:column;flex:0 0 38px;justify-content:center;align-items:center;gap:1px;min-width:max-content;min-height:29px;padding:1px;font-size:9px;line-height:1.1;display:flex}.ziwei-chart-view .zv-matrix-cell small{color:#666;font-size:7px}.ziwei-chart-view .zv-matrix-cell.is-active,.ziwei-chart-view .zv-matrix-year-pair.is-active .zv-matrix-cell{color:#194777;background:#a9c9ef}.ziwei-chart-view .zv-matrix-cell.is-active small,.ziwei-chart-view .zv-matrix-year-pair.is-active .zv-matrix-cell small{color:#194777}.ziwei-chart-view .zv-matrix-row.is-year-pair{min-height:37px}.ziwei-chart-view .zv-matrix-row.is-year-pair .zv-matrix-label{flex-direction:column;justify-content:center;gap:1px;display:flex}.ziwei-chart-view .zv-matrix-row.is-year-pair .zv-matrix-label span+span{border:0}.ziwei-chart-view .zv-matrix-year-pair{border-right:1px solid #c2c2c2;flex:0 0 38px;min-width:0;min-height:36px;display:flex}.ziwei-chart-view .zv-matrix-row.is-year-pair .zv-matrix-year-pair .zv-matrix-cell{border-right:0;flex:1;min-height:36px;font-size:9px;line-height:1.1}.ziwei-chart-view .zv-matrix-row.is-single-line{min-height:30px}.ziwei-chart-view .zv-matrix-row.is-single-line .zv-matrix-cell{min-height:29px}.ziwei-chart-view .zv-matrix-row:last-child{border-bottom:1px solid #c2c2c2}.ziwei-chart-view .zv-matrix-more{color:#777;background:#f1f1f1;border:0;border-left:1px solid #c2c2c2;padding:0;font-size:16px}.ziwei-chart-view .zv-matrix-row.is-locked{background:#f6f6f6}.ziwei-chart-view .zv-matrix-row.is-locked .zv-matrix-cell,.ziwei-chart-view .zv-matrix-row.is-locked .zv-matrix-label,.ziwei-chart-view .zv-matrix-row.is-locked .zv-matrix-more{color:#aaa;opacity:1}.ziwei-chart-view .zv-matrix-row.is-locked .zv-matrix-more{background:#f6f6f6}.ziwei-chart-view .zv-chart-toolbar{bottom:calc(var(--app-nav-height,82px) + env(safe-area-inset-bottom));z-index:20;width:min(100%,480px);box-shadow:none;background:#f1f1f1;border-top:1px solid #ddd;grid-template-columns:60px minmax(0,1fr) 60px;gap:6px;padding:5px 8px;display:grid;position:fixed;left:50%;transform:translate(-50%)}.ziwei-chart-view .zv-toolbar-action{color:#4c5a6c;background:#fff;border:1px solid #ddd;border-radius:3px;flex-direction:row;justify-content:center;align-items:center;gap:3px;min-height:38px;padding:2px;font-size:11px;line-height:1.2;display:flex}.ziwei-chart-view .zv-toolbar-action svg{width:15px;height:15px}.ziwei-chart-view .zv-chart-toolbar .zv-mode-tabs{background:#e1e1e1;border-radius:3px;min-width:0;margin:0;padding:2px}.ziwei-chart-view .zv-chart-toolbar .zv-mode-tabs button{border-radius:2px;min-height:34px;padding:2px;font-size:13px}@media (max-width:350px){.ziwei-chart-view{--zv-source-base:8px}.ziwei-chart-view .zv-chart-body,.ziwei-chart-view .zv-palace{padding-left:2px;padding-right:2px}.ziwei-chart-view .zv-cell-starfield{left:2px;right:2px}.ziwei-chart-view .zv-cell-ground{gap:1px}.ziwei-chart-view .zv-fine-periods{max-width:3em}.ziwei-chart-view .zv-period-year-row{flex-direction:column;align-items:flex-end}.ziwei-chart-view .zv-center,.ziwei-chart-view .zv-board.has-sanhe-markers .zv-center{gap:2px;padding:6px 4px}.ziwei-chart-view .zv-center-line{gap:2px}.ziwei-chart-view .zv-bazi-period>small:last-child{font-size:6px;font-weight:500}.ziwei-chart-view .zv-matrix-row{grid-template-columns:32px minmax(0,1fr) 14px}.ziwei-chart-view .zv-matrix-cell,.ziwei-chart-view .zv-matrix-year-pair{flex-basis:36px}}@media (min-width:600px){.ziwei-chart-view{--zv-source-base:11px}.ziwei-chart-view .zv-chart-body{padding-left:8px;padding-right:8px;padding-bottom:calc(var(--app-nav-height,82px) + 65px + env(safe-area-inset-bottom))}.ziwei-chart-view .zv-palace{gap:5px;padding:6px 5px 5px}.ziwei-chart-view .zv-cell-starfield{top:6px;left:5px;right:5px}.ziwei-chart-view .zv-center,.ziwei-chart-view .zv-board.has-sanhe-markers .zv-center{gap:5px;padding:16px 12px}.ziwei-chart-view .zv-bazi-periods{min-height:66px}.ziwei-chart-view .zv-center-quick-controls button{min-height:30px}.ziwei-chart-view .zv-matrix-row{grid-template-columns:50px minmax(0,1fr) 20px;min-height:43px}.ziwei-chart-view .zv-matrix-label{font-size:13px}.ziwei-chart-view .zv-matrix-cell{flex-basis:66px;min-height:42px;font-size:12px}.ziwei-chart-view .zv-matrix-cell small{font-size:11px}.ziwei-chart-view .zv-matrix-row.is-year-pair{min-height:51px}.ziwei-chart-view .zv-matrix-year-pair{flex-basis:66px;min-height:50px}.ziwei-chart-view .zv-matrix-row.is-year-pair .zv-matrix-year-pair .zv-matrix-cell{min-height:50px;font-size:12px}.ziwei-chart-view .zv-matrix-row.is-single-line{min-height:43px}.ziwei-chart-view .zv-matrix-row.is-single-line .zv-matrix-cell{min-height:42px}.ziwei-chart-view .zv-chart-toolbar{grid-template-columns:85px minmax(0,1fr) 85px;width:min(100%,768px);padding:6px 12px}.ziwei-chart-view .zv-toolbar-action{min-height:44px;font-size:13px}.ziwei-chart-view .zv-chart-toolbar .zv-mode-tabs button{min-height:40px;font-size:15px}}.ziwei-chart-view .zv-palace[data-layout-overflow=true] .zv-cell-starfield{height:var(--zv-fallback-height);overscroll-behavior:contain;scrollbar-width:thin;overflow-y:auto}.ziwei-chart-view .zv-palace[data-layout-overflow=true] .zv-cell-stars,.ziwei-chart-view .zv-palace[data-layout-overflow=true] .zv-period-stars{height:auto;position:relative;inset:auto}.ziwei-chart-view .zv-palace[data-layout-overflow=true] .zv-star-columns{height:auto}.ziwei-chart-view .zv-palace[data-layout-overflow=true] .zv-cell-stars .zv-star,.ziwei-chart-view .zv-palace[data-layout-overflow=true] .zv-period-stars>.zv-star{position:static}.ziwei-chart-view .zv-palace[data-layout-overflow=true] .zv-period-stars{flex-wrap:wrap;justify-content:flex-end;gap:2px 0;margin-top:2px;display:flex}.export-page>.segmented{margin-bottom:14px}.export-preview-wrap{border:1px solid var(--border);border-radius:6px;margin-bottom:14px;padding:7px}.export-preview{border:1px solid var(--border);background:#fff;padding:14px 10px;font-size:12px}.export-preview>.brand{font-size:13px}.export-preview h2{text-align:center;margin:13px 0;font-size:16px}.export-chart{border-top:1px solid #b8c4d0;border-left:1px solid #b8c4d0;grid-template-rows:repeat(4,90px);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.export-palace{border-bottom:1px solid #b8c4d0;border-right:1px solid #b8c4d0;flex-direction:column;justify-content:space-between;min-width:0;padding:5px 4px;display:flex}.export-stars{color:#375f83;flex-wrap:wrap;gap:3px;font-size:11px;font-weight:500;display:flex}.export-star{align-items:flex-start;gap:2px;display:inline-flex}.mutation{color:#fff;border-radius:2px;padding:1px 2px;font-size:9px;font-weight:500}.mutation.lu{background:var(--green)}.mutation.ji{background:var(--red)}.export-palace-footer{justify-content:space-between;font-size:10px;display:flex}.export-palace-footer b{font-weight:500}.export-palace-footer small{color:var(--blue);margin-top:1px;font-size:8px;display:block}.export-center{text-align:center;border-bottom:1px solid #b8c4d0;border-right:1px solid #b8c4d0;flex-direction:column;grid-area:2/2/span 2/span 2;justify-content:center;gap:6px;padding:5px;font-size:9px;display:flex;overflow:hidden}.export-center b{font-size:13px}.export-center span{overflow-wrap:anywhere;line-height:1.4}.export-caption{text-align:center;color:#677788;margin:10px 0 7px;font-size:9px}.export-rules{text-align:center;color:#77818d;margin:0;font-size:8px;line-height:1.7}.export-note{border-top:1px solid var(--border);overflow-wrap:anywhere;margin-top:12px;padding:12px 2px;font-size:11px}.export-note p{white-space:pre-wrap;margin:6px 0}.export-note small{color:var(--muted);font-size:9px}.export-options{margin-bottom:15px}.export-options .setting-row{padding:8px 0}.export-options .segmented{width:210px}.export-notice{text-align:center;color:var(--muted);margin-top:12px;font-size:12px}@media (max-width:360px){.export-options .segmented{width:180px}.export-chart{grid-template-rows:repeat(4,84px)}}.export-preview .brand{font-size:13px}.export-birth-basis{text-align:center;color:#526273;overflow-wrap:anywhere;margin:8px 0 0;font-size:9px;line-height:1.5}.export-privacy-hint{margin:0 0 14px;font-size:12px}.export-details-title{margin:14px 0 8px;font-size:11px;font-weight:600}.export-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.export-detail{border:1px solid var(--border);overflow-wrap:anywhere;min-width:0;padding:6px}.export-detail h4{margin:0 0 4px;font-size:10px}.export-detail p{color:#43546a;margin:3px 0;font-size:9px;line-height:1.5}.export-detail .export-star{margin-right:4px}.export-detail .export-star small{color:#77818d;font-size:8px}.export-detail>small{color:var(--muted);font-size:8px}.export-pdf-pages{z-index:-1;background:#fff;width:350px;position:absolute;top:0;left:-10000px}.export-pdf-note-piece{overflow-wrap:anywhere;background:#fff;padding:12px;font-size:12px;line-height:1.6}.export-pdf-note-piece h3{margin:0 0 7px;font-size:14px}.export-pdf-note-piece p{white-space:pre-wrap;margin:0}.export-pdf-note-piece small{color:var(--muted);margin-top:8px;display:block}@media (max-width:360px){.export-details{grid-template-columns:1fr}}.mutation.quan{background:var(--purple)}.mutation.ke{background:var(--blue)}@media (max-width:350px){.cases-feature .cf-body{padding-left:12px;padding-right:12px}.cases-feature .cf-case-open{gap:8px;padding-left:9px}.cases-feature .cf-avatar{flex-basis:40px;width:40px;height:40px}.cases-feature .cf-case-title strong{font-size:14px}.cases-feature .cf-tag{max-width:100px}}@media (max-width:350px){.cases-feature.cf-cases-page .cf-body{padding-left:16px;padding-right:16px}.cf-cases-page .cf-case-meta{font-size:10px}}.help-feature{color:#26384b;background:#fff;min-height:100dvh}.help-page{padding:16px 18px calc(100px + env(safe-area-inset-bottom))}.help-intro{border-bottom:1px solid #e3e8ed;padding:8px 0 19px}.help-intro h2{color:#202b38;margin:0 0 9px;font-size:19px;font-weight:650;line-height:1.35}.help-intro p{color:#66778b;margin:0;font-size:13px;line-height:1.7}.help-section{border-bottom:1px solid #e9edf1;padding:20px 0 18px}.help-section:last-child{border-bottom:0}.help-section-heading{align-items:center;gap:11px;margin-bottom:11px;display:flex}.help-section-heading>span{color:#a1463c;letter-spacing:.02em;background:#f6e9e7;border-radius:5px;flex:0 0 27px;place-items:center;width:27px;height:27px;font-size:11px;font-weight:700;display:grid}.help-section-heading h3{color:#27394b;margin:0;font-size:16px;font-weight:650;line-height:1.4}.help-section p{color:#4d6075;margin:0 0 9px;padding-left:38px;font-size:13px;line-height:1.8}.help-section p:last-child{margin-bottom:0}@media (max-width:350px){.help-page{padding-left:14px;padding-right:14px}.help-section p{padding-left:0}}.chart-analysis{--ca-ink:#302725;--ca-muted:#81736d;--ca-red:#8e1f2d;--ca-line:#e9ded7;overscroll-behavior-y:contain;width:100%;min-height:0;color:var(--ca-ink);scrollbar-width:thin;background:#f8f6f1;flex:1;overflow:hidden auto}.ca-inner{width:100%;max-width:760px;margin:0 auto;padding:19px 16px 36px}.ca-intro{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:18px;display:flex}.ca-intro>div{min-width:0}.ca-eyebrow{color:var(--ca-red);letter-spacing:.1em;margin-bottom:7px;font-size:11px;font-weight:700;display:block}.ca-intro h1{letter-spacing:.02em;margin:0;font:700 27px/1.25 Songti SC,STSong,serif}.ca-intro p{color:var(--ca-muted);margin:7px 0 0;font-size:12px;line-height:1.55}.ca-open-chart{min-height:44px;color:var(--ca-red);white-space:nowrap;background:0 0;border:0;flex:none;justify-content:center;align-items:center;gap:3px;padding:8px 9px;font-size:12px;font-weight:650;display:inline-flex}.ca-cover{background:linear-gradient(134deg,#fbf4e8 0%,#fffdfa 58%,#f8ece9 100%);border:1px solid #e2d2c5;border-radius:16px;padding:17px 18px 18px;position:relative;overflow:hidden;box-shadow:0 8px 24px #6b3b2d0b}.ca-cover:before{content:"";pointer-events:none;border:1px solid #a7534229;border-radius:50%;width:172px;height:172px;position:absolute;top:-66px;right:-45px}.ca-cover:after{content:"";pointer-events:none;border:1px solid #a7534220;border-radius:50%;width:125px;height:125px;position:absolute;top:-40px;right:-20px}.ca-cover-top{color:#8e7468;justify-content:space-between;gap:12px;font-size:11px;font-weight:600;display:flex;position:relative}.ca-cover-top span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:52%;overflow:hidden}.ca-cover-main{justify-content:space-between;align-items:center;gap:12px;margin:18px 0 13px;display:flex;position:relative}.ca-cover-main small{color:#805b50;margin-bottom:5px;font-size:12px;display:block}.ca-cover-main strong{color:#772d32;overflow-wrap:anywhere;font:700 25px/1.25 Songti SC,STSong,serif;display:block}.ca-cover-seal{color:#914047;border:1px solid #a55a59;border-radius:50%;flex:none;place-items:center;width:45px;height:45px;font:700 18px/1 Songti SC,STSong,serif;display:grid}.ca-cover p{color:#62504a;overflow-wrap:anywhere;max-width:660px;margin:0;font-size:13px;line-height:1.72;position:relative}.ca-tabs{z-index:4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);scrollbar-width:none;background:#f8f6f1f2;border-bottom:1px solid #e6dbd4;gap:5px;margin:18px -16px 0;padding:8px 16px;display:flex;position:sticky;top:0;overflow-x:auto}.ca-tabs::-webkit-scrollbar{display:none}.ca-tabs button{color:#776b66;white-space:nowrap;background:0 0;border:0;border-radius:8px;flex:1 0 auto;min-height:40px;padding:8px 9px;font-size:12px;font-weight:600}.ca-tabs button.is-active{color:var(--ca-red);background:#f1e0dc}.ca-panel{padding-top:20px}.ca-section-heading{margin-bottom:14px}.ca-section-heading>span{color:#a16c63;letter-spacing:.1em;margin-bottom:5px;font-size:10px;font-weight:750;display:block}.ca-section-heading h2{color:#352823;margin:0;font:700 21px/1.35 Songti SC,STSong,serif}.ca-section-heading p{color:var(--ca-muted);margin:5px 0 0;font-size:12px;line-height:1.6}.ca-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.ca-fact-grid>div{border:1px solid var(--ca-line);background:#fff;border-radius:11px;min-width:0;min-height:74px;padding:13px 13px 12px}.ca-fact-grid small{color:#93847c;margin-bottom:6px;font-size:11px;display:block}.ca-fact-grid strong{color:#4b3731;overflow-wrap:anywhere;font-size:14px;font-weight:650;line-height:1.45;display:block}.ca-card{border:1px solid var(--ca-line);background:#fff;border-radius:12px;margin-top:12px;padding:16px}.ca-card+.ca-card{margin-top:12px}.ca-card-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:13px;display:flex}.ca-card-head h3{margin:0;font-size:15px;font-weight:700}.ca-card-head span{color:#97877f;white-space:nowrap;font-size:11px}.ca-star-list{flex-wrap:wrap;gap:7px;display:flex}.ca-star-tag{background:#fbf4f2;border:1px solid #e9d8d4;border-radius:7px;align-items:center;gap:4px;min-height:33px;padding:5px 9px;display:inline-flex}.ca-star-tag strong{color:#762d34;font-size:15px;font-weight:700}.ca-star-tag small{color:#8e726e;font-size:10px}.ca-no-star{color:#745f56;align-items:center;font-size:13px;display:inline-flex}.ca-supporting{color:#73655e;margin:12px 0 0;font-size:12px;line-height:1.6}.ca-reading{color:#62544d;border-top:1px solid #f0e9e4;margin:14px 0 0;padding-top:12px;font-size:12px;line-height:1.7}.ca-method{color:#8f817a;margin:13px 1px 0;font-size:11px;line-height:1.65}.ca-relation-list{border:1px solid var(--ca-line);background:#fff;border-radius:12px;overflow:hidden}.ca-relation-row{align-items:center;gap:12px;min-height:76px;padding:11px 14px;display:flex}.ca-relation-row+.ca-relation-row{border-top:1px solid #f1eae6}.ca-relation-mark{color:#9b7368;background:#f4eeea;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;font:700 16px/1 Songti SC,STSong,serif;display:grid}.ca-relation-mark.is-life{color:var(--ca-red);background:#f1e1de}.ca-relation-row>div{flex:1;gap:2px;min-width:0;display:grid}.ca-relation-row small{color:#978980;font-size:10px}.ca-relation-row strong{color:#3b2f2a;font-size:14px;font-weight:650}.ca-relation-row div>span{color:#8a7770;overflow-wrap:anywhere;font-size:12px}.ca-relation-row>svg{color:#c4b5ab}.ca-insight{background:#f5eae6;border-left:3px solid #a65b61;border-radius:0 10px 10px 0;margin-top:12px;padding:15px 16px}.ca-insight strong{color:#823b41;font-size:13px}.ca-insight p{color:#67524d;margin:6px 0 0;font-size:12px;line-height:1.7}.ca-insight button{min-height:44px;color:var(--ca-red);background:0 0;border:0;align-items:center;gap:4px;margin:5px 0 -7px;padding:5px 0;font-size:12px;font-weight:650;display:inline-flex}.ca-transform-list{border:1px solid #efe8e3;border-radius:9px;overflow:hidden}.ca-transform-row{grid-template-columns:29px minmax(54px,.8fr) minmax(0,1.2fr);align-items:center;gap:8px;min-height:46px;padding:7px 10px;display:grid}.ca-transform-row+.ca-transform-row{border-top:1px solid #f1ebe7}.ca-mutagen{color:#ab4b43;white-space:nowrap;background:#f4e9e8;border-radius:3px;place-items:center;padding:1px 4px;font-size:10px;font-weight:700;display:inline-grid}.ca-mutagen[data-mutagen=禄]{color:#337b55;background:#e6f1e9}.ca-mutagen[data-mutagen=权]{color:#625e9a;background:#e9eaf6}.ca-mutagen[data-mutagen=科]{color:#477a9d;background:#e7f0f7}.ca-mutagen[data-mutagen=忌]{color:#ad4c43;background:#f8e9e8}.ca-mutagen-large{width:27px;height:27px;padding:0;font-size:13px}.ca-transform-star{color:#493832;font-size:13px;font-weight:650}.ca-transform-destination{color:#7e6c64;text-align:right;overflow-wrap:anywhere;min-width:0;font-size:12px}.ca-transform-destination:before{content:"→ ";color:#baa9a1}.ca-empty-line{color:#8e7f76;margin:0;font-size:12px;line-height:1.6}.ca-period-focus{background:#faf5f0;border-radius:9px;padding:13px}.ca-period-focus strong{color:#772d34;font:700 20px/1.2 Songti SC,STSong,serif}.ca-period-focus p{color:#6d5c54;margin:5px 0 0;font-size:12px;line-height:1.55}.ca-active-period h4{color:#55443c;margin:17px 0 10px;font-size:12px;font-weight:700}.ca-decade-list{border-top:1px solid #f0e8e3;overflow:hidden}.ca-decade-row{align-items:center;gap:11px;min-height:58px;padding:9px 2px;display:flex}.ca-decade-row+.ca-decade-row{border-top:1px solid #f0e8e3}.ca-decade-row.is-current{background:#fbf0ed;border-radius:7px;padding-inline:8px}.ca-decade-age{color:#8d5a50;flex:none;min-width:73px;font-size:12px;font-weight:700}.ca-decade-row>span:nth-child(2){flex:1;gap:3px;min-width:0;display:grid}.ca-decade-row strong{color:#463630;font-size:13px;font-weight:650}.ca-decade-row small{color:#93847a;overflow-wrap:anywhere;font-size:11px;line-height:1.45}.ca-decade-row em{color:var(--ca-red);flex:none;font-size:10px;font-style:normal;font-weight:700}@media (max-width:360px){.ca-inner{padding-inline:12px}.ca-intro h1{font-size:24px}.ca-intro p{font-size:11px}.ca-cover{padding-inline:14px}.ca-cover-main strong{font-size:22px}.ca-tabs{margin-inline:-12px;padding-inline:12px}.ca-tabs button{padding-inline:7px;font-size:11px}.ca-fact-grid>div{padding-inline:10px}.ca-fact-grid strong{font-size:12px}}@media (min-width:600px){.ca-inner{padding:26px 28px 44px}.ca-intro{margin-bottom:23px}.ca-intro h1{font-size:31px}.ca-intro p{font-size:14px}.ca-cover{padding:22px 26px 24px}.ca-cover-main strong{font-size:30px}.ca-cover p{font-size:14px}.ca-tabs{margin-inline:-28px;padding-inline:28px}.ca-tabs button{font-size:14px}.ca-panel{padding-top:24px}.ca-section-heading h2{font-size:24px}.ca-section-heading p{font-size:13px}.ca-fact-grid{gap:12px}.ca-fact-grid>div{min-height:82px;padding:16px}.ca-fact-grid strong{font-size:16px}.ca-card{padding:20px}.ca-relation-row{min-height:82px}}.ai-chart-picker .modal-backdrop{z-index:45;background:#22191599}.ai-chart-picker .modal-panel{color:#342925;background:#fbf9f6;border-radius:20px 20px 0 0;flex-direction:column;max-height:min(84dvh,760px);display:flex;overflow:hidden;box-shadow:0 -14px 42px #281b1929}.ai-chart-picker .modal-panel:before{background:#cbbdb5;flex:none}.ai-chart-picker .modal-header{flex:none;margin-bottom:4px}.ai-chart-picker .modal-header h2{color:#302520;font-size:19px}.ai-chart-picker .modal-header .icon-button{color:#665a53;width:44px;height:44px}.ai-chart-picker-body{flex-direction:column;flex:1;min-height:0;display:flex}.ai-chart-picker-intro{color:#8b7d74;flex:none;margin:0 0 16px;font-size:13px;line-height:1.5}.ai-chart-picker-search{color:#8b7d74;background:#fff;border:1px solid #e2d7d0;border-radius:11px;flex:none;align-items:center;gap:8px;min-height:46px;padding:0 10px 0 13px;display:flex}.ai-chart-picker-search input{color:#342925;background:0 0;border:0;border-radius:0;outline:0;flex:1;min-width:0;height:44px;min-height:44px;padding:0;font-size:14px}.ai-chart-picker-search input:focus-visible{outline:0}.ai-chart-picker-search input::-webkit-search-cancel-button{display:none}.ai-chart-picker-search button{color:#8b7d74;background:0 0;border:0;flex:none;place-items:center;width:44px;height:44px;padding:0;display:grid}.ai-chart-picker-caption{color:#93877e;flex:none;margin:11px 1px 6px;font-size:12px;line-height:1.4}.ai-chart-picker-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;min-height:0;overflow-y:auto}.ai-chart-picker-list{flex-direction:column;gap:8px;padding-bottom:9px;display:flex}.ai-chart-picker-record{text-align:left;background:#fff;border:1px solid #e8ddd6;border-radius:12px;align-items:center;gap:10px;width:100%;min-height:70px;padding:11px 12px;display:flex}.ai-chart-picker-record-copy{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.ai-chart-picker-record-heading{align-items:center;gap:7px;min-width:0;display:flex}.ai-chart-picker-record-heading strong{text-overflow:ellipsis;white-space:nowrap;color:#342925;font-size:15px;font-weight:650;line-height:1.35;overflow:hidden}.ai-chart-picker-group{text-overflow:ellipsis;white-space:nowrap;color:#8e1f2d;background:#f7e9e7;border-radius:6px;flex:none;max-width:38%;padding:2px 7px;font-size:11px;line-height:1.4;overflow:hidden}.ai-chart-picker-record-meta{text-overflow:ellipsis;white-space:nowrap;color:#887b72;font-size:12px;line-height:1.4;overflow:hidden}.ai-chart-picker-state{text-align:center;color:#8b7d74;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:160px;padding:18px;font-size:13px;line-height:1.5;display:flex}.ai-chart-picker-state p{color:#4b3c36;margin:0;font-size:15px;font-weight:600}.ai-chart-picker-state button{color:#8e1f2d;background:#fff;border:1px solid #ceb0ad;border-radius:9px;min-height:44px;margin-top:7px;padding:8px 16px;font-size:13px;font-weight:600}.ai-chart-picker-create{color:#8e1f2d;text-align:left;background:#f7eae8;border:1px solid #dfc8c4;border-radius:11px;flex:none;align-items:center;gap:9px;width:100%;min-height:52px;margin-top:10px;padding:10px 13px;font-size:14px;font-weight:650;display:flex}.ai-chart-picker-create span{flex:1}@media (min-width:600px){.ai-chart-picker .modal-panel{max-width:680px}.ai-chart-picker-record{min-height:76px}}.ai-chart-picker .sheet-wrapper .modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#14273b80;align-items:center;padding:18px}.ai-chart-picker .sheet-wrapper .modal-panel{color:#243445;background:#fbfcfd;border:1px solid #dce6ee;border-radius:24px;width:100%;max-width:390px;max-height:min(78dvh,680px);padding:20px 18px 18px;box-shadow:0 22px 62px #10253b3d}.ai-chart-picker .sheet-wrapper .modal-panel:before{content:none}.ai-chart-picker .modal-header{margin:0 0 8px}.ai-chart-picker .modal-header h2{color:#172842;font:400 23px/1.25 Songti SC,STSong,serif}.ai-chart-picker .modal-header .icon-button{color:#5d6d7d;background:#f0f4f8;border-radius:50%}.ai-chart-picker-intro{color:#798a9a;margin-bottom:14px;font-size:12px}.ai-chart-picker-search{color:#758597;border-color:#dce3e9;border-radius:23px}.ai-chart-picker-search:focus-within{border-color:#91b5e8;box-shadow:0 0 0 3px #367ded14}.ai-chart-picker-search input{color:#233241}.ai-chart-picker-search input::placeholder{color:#9ca8b2}.ai-chart-picker-caption{color:#82909e}.ai-chart-picker-list{gap:0}.ai-chart-picker-record{background:0 0;border:0;border-bottom:1px solid #e9edef;border-radius:0;min-height:62px;padding:9px 4px}.ai-chart-picker-record:active{background:#f0f6fd}.ai-chart-picker-record-heading strong{color:#293848;font-size:14px}.ai-chart-picker-group{color:#3768a2;background:#ebf2fb}.ai-chart-picker-record-meta{color:#82909e;font-size:11px}.ai-chart-picker-record>svg{color:#9ca9b5}.ai-chart-picker-state{color:#7b8a99}.ai-chart-picker-state p{color:#34475b}.ai-chart-picker-state span{color:#82909e}.ai-chart-picker-state button{color:#2d537d;border-color:#bed4ea;border-radius:12px}.ai-chart-picker-create{color:#2d537d;background:#f2f6fa;border-color:#dfe7ee;border-radius:14px;min-height:46px;margin-top:15px;font-size:14px;font-weight:500}@media (max-width:360px){.ai-chart-picker .sheet-wrapper .modal-backdrop{padding:12px}.ai-chart-picker .sheet-wrapper .modal-panel{padding:18px 14px 14px}}.ai-chart-picker-more{color:#2d537d;background:#f2f6fa;border:1px solid #dfe7ee;border-radius:14px;width:100%;min-height:44px;margin-top:8px;font-size:13px;display:block}.ai-voice-controls{flex:none;align-items:center;display:inline-flex;position:relative}.ai-voice-mic{color:#8e1f2d;touch-action:manipulation;background:#fbf4ef;border:1px solid #dec9c2;border-radius:50%;flex:none;place-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;display:grid}.ai-voice-mic:active{background:#f3e3dd}.ai-voice-mic.is-active{color:#fff;background:#8e1f2d;border-color:#8e1f2d;box-shadow:0 0 0 3px #8e1f2d22}.ai-voice-status{z-index:4;color:#66554d;text-align:left;background:#fff;border:1px solid #e1d6d0;border-radius:9px;width:max-content;max-width:min(280px,80vw);padding:8px 10px;font-size:12px;line-height:1.5;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 6px 17px #3723191c}.ai-voice-mic{color:#273747;background:#f3f5f7;border:0}.ai-voice-mic:active{background:#e6eef8;transform:scale(.92)}.ai-voice-mic.is-active{color:#2364bc;background:#e9f2ff;border:0;box-shadow:0 0 0 4px #367ded1c}.ai-voice-status{color:#34475b;border-color:#d9e5f0;border-radius:12px;box-shadow:0 8px 24px #203c5a1c}.ai-page{height:calc(100dvh - 62px - env(safe-area-inset-top) - env(safe-area-inset-bottom));color:#302824;background:#f8f6f1;flex-direction:column;min-height:480px;display:flex;overflow:hidden}.ai-topbar{color:#8e1f2d;border-bottom:1px solid #e9e0d9;flex:none;justify-content:space-between;align-items:center;gap:9px;height:53px;padding:0 18px;font-size:16px;font-weight:650;display:flex}.ai-topbar-title{align-items:center;gap:9px;display:flex}.ai-topbar span{color:#312924}.ai-analysis-switch{color:#8e1f2d;background:#fff;border:1px solid #decac4;border-radius:9px;min-height:34px;padding:6px 10px;font-size:12px;font-weight:650}.ai-analysis-scroll{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.ai-analysis-scroll .chart-analysis{overflow:visible}.ai-stage{flex-direction:column;flex:1;justify-content:center;gap:22px;width:100%;max-width:760px;min-height:0;margin:0 auto;padding:20px 18px 25px;display:flex}.ai-hero{text-align:center;flex-direction:column;flex:none;align-items:center;display:flex}.ai-hero-symbol{color:#8e1f2d;background:#f5e9e6;border:1px solid #ead9d4;border-radius:15px;place-items:center;width:45px;height:45px;margin-bottom:17px;display:grid}.ai-hero h1{color:#29231f;margin:0;font:700 25px/1.3 Songti SC,STSong,serif}.ai-hero p{color:#80766f;margin:9px 0 0;font-size:12px;line-height:1.55}.ai-input-module{flex:none;width:100%;max-width:680px;margin:0 auto}.ai-composer{background:#fff;border:1px solid #dfd2cc;border-radius:18px;padding:13px 14px 12px;box-shadow:0 9px 24px #4f312610}.ai-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}.ai-composer textarea{resize:none;color:#332a26;outline-offset:0;background:0 0;border:0;border-radius:0;width:100%;min-height:94px;max-height:180px;padding:6px 3px;font-size:15px;line-height:1.55;display:block}.ai-composer textarea:focus-visible{outline:0}.ai-composer-controls{justify-content:space-between;align-items:center;gap:8px;min-height:37px;display:flex}.ai-composer-actions{flex:none;justify-content:flex-end;align-items:center;gap:5px;display:flex}.ai-composer-context{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.ai-add-chart{color:#8e1f2d;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;display:grid}.ai-add-chart:active{background:#f2e6e2}.ai-chart-action{color:#5d5048;text-overflow:ellipsis;white-space:nowrap;background:#faf8f5;border:1px solid #e9dfd9;border-radius:7px;align-items:center;gap:4px;min-width:0;max-width:148px;min-height:32px;padding:4px 6px;font-size:11px;font-weight:600;display:inline-flex;overflow:hidden}.ai-chart-action svg{margin-left:auto}.ai-chart-dot{background:#8e1f2d;border-radius:50%;flex:none;width:7px;height:7px}.ai-composer-submit{color:#fff;touch-action:manipulation;background:#8e1f2d;border:0;border-radius:50%;flex:none;place-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;display:grid}.ai-composer-submit:disabled{color:#9baab9;opacity:1;background:#e3e5e6}.ai-composer-submit:not(:disabled):active{background:#741724}.ai-composer-submit:focus-visible{outline-offset:3px;outline:2px solid #8e1f2d}.ai-topic-strip{align-items:center;gap:10px;min-height:44px;margin-top:11px;display:flex;overflow:hidden}.ai-topic-strip>span{color:#8b7f76;white-space:nowrap;flex:none;font-size:10px}.ai-topic-strip>div{scrollbar-width:none;align-items:center;gap:7px;min-width:0;display:flex;overflow-x:auto}.ai-topic-strip>div::-webkit-scrollbar{display:none}.ai-topic-strip button{color:#766c65;white-space:nowrap;background:#fff;border:1px solid #e7ddd5;border-radius:20px;flex:none;min-height:30px;padding:6px 11px;font-size:11px}.ai-topic-strip button.is-selected{color:#8e1f2d;background:#f7ecea;border-color:#bd9496;font-weight:650}.ai-stage.has-questions{justify-content:flex-start;gap:0;padding-top:17px;padding-bottom:15px}.ai-dialog-heading{flex:none;justify-content:space-between;align-items:baseline;gap:8px;padding-bottom:12px;display:flex}.ai-dialog-heading h1{text-overflow:ellipsis;white-space:nowrap;color:#352b27;margin:0;font-size:16px;font-weight:650;overflow:hidden}.ai-dialog-heading>span{color:#9a8d83;flex:none;font-size:10px}.ai-dialog-history{flex-direction:column;flex:1;gap:14px;min-height:0;padding:12px 2px 22px;display:flex;overflow-y:auto}.ai-question-bubble{flex-direction:column;align-self:flex-end;align-items:flex-end;max-width:86%;display:flex}.ai-question-bubble small{color:#988982;margin-bottom:5px;font-size:10px}.ai-question-bubble p{color:#fff;overflow-wrap:anywhere;background:#8e1f2d;border-radius:12px 12px 3px;margin:0;padding:11px 13px;font-size:13px;line-height:1.55}@media (max-width:360px){.ai-stage{padding-inline:13px}.ai-composer{padding-inline:11px}.ai-chart-action{max-width:112px}.ai-topic-strip{gap:7px}}@media (min-width:600px){.ai-page{height:calc(100dvh - 68px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.ai-topbar{height:61px;padding:0 max(27px,50% - 360px);font-size:18px}.ai-stage{gap:30px;padding:28px 28px 35px}.ai-hero-symbol{width:54px;height:54px;margin-bottom:22px}.ai-hero h1{font-size:32px}.ai-hero p{font-size:14px}.ai-composer{border-radius:20px;padding:18px 19px 15px}.ai-composer textarea{min-height:122px;font-size:17px}.ai-chart-action{max-width:230px;font-size:13px}.ai-composer-submit{width:46px;min-width:46px;height:46px;min-height:46px}.ai-topic-strip{margin-top:14px}.ai-topic-strip>span{font-size:12px}.ai-topic-strip button{min-height:34px;padding-inline:14px;font-size:12px}.ai-stage.has-questions{padding-top:26px;padding-bottom:25px}.ai-dialog-heading h1{font-size:19px}.ai-question-bubble p{font-size:14px}}.ai-page{height:calc(100dvh - 62px - env(safe-area-inset-top) - env(safe-area-inset-bottom));color:#172b43;background:linear-gradient(165deg,#f8fbff,#fffefd 38%,#fbfaf8);min-height:0}.ai-topbar{background:0 0;border:0;height:72px;padding:13px 20px 7px}.ai-topbar-title>svg{display:none}.ai-topbar-title span{color:#172842;font:400 26px/1.2 Songti SC,STSong,serif}.ai-analysis-switch{color:#2d527e;background:#fffc;border:1px solid #d7e4f1;border-radius:23px;min-height:43px;padding:0 13px;font-size:13px;font-weight:500;box-shadow:0 5px 16px #3a658812}.ai-stage{overscroll-behavior:contain;justify-content:flex-start;gap:18px;max-width:430px;padding:16px 20px 32px;overflow-y:auto}.ai-hero{text-align:left;background:linear-gradient(120deg,#f2f7ff,#fdfcfa 75%);border:1px solid #deebf7;border-radius:24px;justify-content:center;align-items:flex-start;min-height:134px;padding:17px 19px;position:relative;overflow:hidden}.ai-hero:after{content:"";pointer-events:none;border:1px solid #d8e9f8;border-radius:50%;width:130px;height:130px;position:absolute;bottom:-91px;right:-24px;box-shadow:0 0 0 24px #f6faff75,0 0 0 25px #e7f2fb}.ai-hero-symbol{z-index:1;color:#73a6dd;filter:drop-shadow(0 0 10px #80b4f0);background:0 0;border:0;border-radius:0;width:auto;height:auto;margin:0;display:block;position:absolute;top:18px;right:28px}.ai-hero h1{z-index:1;color:#172842;max-width:80%;font:400 clamp(22px,6vw,27px)/1.25 Songti SC,STSong,serif;position:relative}.ai-hero p{z-index:1;color:#667b91;margin-top:12px;font-size:13px;position:relative}.ai-input-module{max-width:none}.ai-composer{background:#fffffff2;border:1px solid #cddff2;border-radius:25px;flex-direction:column;min-height:219px;padding:17px 16px 12px;display:flex;box-shadow:0 14px 34px #23466913}.ai-composer:focus-within{border-color:#91b5e8;box-shadow:0 0 0 3px #367ded12,0 14px 34px #23466913}.ai-composer textarea{resize:vertical;color:#23303e;flex:1;min-height:145px;max-height:220px;padding:1px 0}.ai-composer textarea::placeholder{color:#9aa7b3}.ai-add-chart{color:#273747;background:#f3f5f7;border:0;border-radius:50%}.ai-add-chart:active{background:#e6eef8;transform:scale(.92)}.ai-chart-action{color:#26384b;background:#f1f5f8;border:0;border-radius:20px;gap:5px;max-width:148px;min-height:37px;padding:3px 11px;font-size:13px;font-weight:500}.ai-chart-dot{background:#4c82bb}.ai-composer-submit{color:#fff;background:#1d416f;box-shadow:0 5px 12px #25344924}.ai-composer-submit:disabled{color:#fff;box-shadow:none;opacity:.72;background:#b5c0cc}.ai-composer-submit:not(:disabled):active{transform:scale(.92)}.ai-topic-strip{min-height:0;margin-top:24px;display:block;overflow:visible}.ai-topic-strip>span{color:#1b2735;margin:0 0 14px;font:400 20px/1.25 Songti SC,STSong,serif;display:block}.ai-topic-strip>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid;overflow:visible}.ai-topic-strip button{color:#334c68;background:#fff;border:1px solid #dbe5ee;border-radius:25px;min-width:0;min-height:48px;padding:7px 3px;font-size:11px}.ai-topic-strip button.is-selected{color:#1f4e8d;background:linear-gradient(155deg,#edf5ff,#f4f9ff);border-color:#bcd5f6}.ai-stage.has-questions{gap:0;padding-top:9px}.ai-dialog-heading h1{color:#34475b;font:400 20px/1.3 Songti SC,STSong,serif}.ai-question-bubble small{color:#8290a0;font-size:11px}.ai-question-bubble p{color:#263d55;background:#edf5ff;border:1px solid #c9def8;border-radius:18px 18px 5px}@media (max-width:360px){.ai-topbar{padding-inline:17px}.ai-topbar-title span{font-size:23px}.ai-stage{padding-inline:17px}.ai-hero{min-height:124px}.ai-hero h1{font-size:22px}.ai-composer{padding-inline:12px}.ai-chart-action{max-width:100px;padding-inline:9px}.ai-topic-strip>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.ai-topic-strip button{font-size:12px}}@media (min-width:600px){.ai-page{height:calc(100dvh - 68px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.ai-topbar{width:100%;max-width:760px;margin:0 auto;padding-inline:28px}.ai-stage{max-width:720px;padding-inline:28px}.ai-hero{min-height:150px}.ai-composer{min-height:240px}.ai-composer textarea{min-height:165px}.ai-topic-strip button{font-size:13px}}.ai-topbar-title h1{color:#17212e;letter-spacing:.025em;white-space:nowrap;margin:0;font:400 26px/1.2 Songti SC,STSong,serif}.ai-analysis-switch{white-space:nowrap;justify-content:center;align-items:center;gap:5px;display:inline-flex}.ai-analysis-switch svg{stroke-width:1.6px}.ai-hero-symbol{font-size:0}.ai-composer-controls{gap:5px}.ai-composer-context,.ai-composer-actions{gap:6px}.ai-chart-action{white-space:nowrap;justify-content:center;max-width:125px}.ai-chart-action svg{flex:none;margin:0}.ai-chart-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ai-topic-strip>span{align-items:center;gap:9px;display:flex}.ai-topic-strip>span:before{content:"";background:#2d5691;border-radius:3px;flex:none;width:3px;height:18px}.ai-topic-strip button{white-space:nowrap;justify-content:center;align-items:center;gap:5px;display:flex;box-shadow:0 6px 16px #26374b06}.ai-topic-strip button svg{stroke-width:1.65px;flex:none;width:16px;height:16px}.ai-topic-strip button span{text-overflow:ellipsis;min-width:0;overflow:hidden}.ai-topic-strip button:active:not(:disabled){transform:scale(.96)}.ai-topic-strip button:disabled{opacity:.68}@media (max-width:360px){.ai-topbar-title h1{font-size:23px}.ai-analysis-switch{padding-inline:10px;font-size:12px}.ai-topic-strip button{gap:7px}}.app-shell:has(>.ai-page)>.bottom-nav{width:min(100%,430px);height:calc(78px + env(safe-area-inset-bottom));padding:10px 18px max(9px,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;border:1px solid #edf0f1;border-bottom:0;border-radius:30px 30px 0 0;gap:2px;box-shadow:0 -13px 36px #1a222c0e}.app-shell:has(>.ai-page)>.bottom-nav button{color:#697480;letter-spacing:.08em;gap:3px;font-size:11px;font-weight:500}.app-shell:has(>.ai-page)>.bottom-nav button.active{color:#1c2733;font-weight:600}.app-shell:has(>.ai-page)>.bottom-nav button.active:before{content:none}.app-shell:has(>.ai-page)>.bottom-nav button.active svg{color:#fff;background:#202a36;border-radius:50%;width:36px;height:36px;padding:8px}.auth-page{--auth-ink:#252120;--auth-muted:#7b716c;--auth-accent:#8e1f2d;--auth-serif:"Noto Serif SC","Songti SC",STSong,serif;min-height:100dvh;color:var(--auth-ink);background:#f8f6f1;flex-direction:column;display:flex}.auth-header{background:#f8f6f1;align-items:center;gap:16px;height:72px;min-height:72px;padding:0 20px;display:flex}.auth-header-brand{align-items:center;gap:16px;min-width:0;display:flex}.auth-brand-mark{background:var(--auth-accent);color:#fff;border-radius:8px;flex:none;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 5px 14px #8e1f2d1f}.auth-brand-mark svg{width:22px;height:22px}.auth-header-brand .brand{color:var(--auth-accent);font:700 18px/28px var(--auth-serif);white-space:nowrap;margin:0}.auth-header-back{color:var(--auth-accent);white-space:nowrap;background:0 0;border:0;margin-left:auto;padding:10px 0 10px 8px;font-size:12px}.auth-main{flex:1;padding:80px 20px 72px}.auth-card{background:#fff;border:1px solid #f0ece7;border-radius:12px;max-width:420px;margin:0 auto;padding:32px;box-shadow:0 24px 54px -18px #4e382a24}.auth-card h1{color:#211c1b;font:900 30px/1.2 var(--auth-serif);white-space:nowrap;margin:0 0 36px}.auth-card .field{margin:0 0 25px}.auth-card .field-label{color:#776d68;margin-bottom:8px;font-size:12px;font-weight:600;display:block}.auth-card .field input:not([type=checkbox]){color:#211c1b;background:#fff;border:0;border-bottom:2px solid #e8e3df;border-radius:0;outline:0;width:100%;height:48px;min-height:48px;padding:0 16px;font-size:15px}.auth-card .field input::placeholder{color:#aaa3a0;opacity:1}.auth-card .field input:focus{border-bottom-color:var(--auth-accent)}.auth-card .input-password input{padding-right:48px}.auth-card .input-password .icon-button{color:#aaa3a0;width:40px;height:40px;top:4px;right:9px}.auth-card .input-password svg{width:16px;height:16px}.auth-options{justify-content:space-between;align-items:center;gap:6px;min-height:22px;margin:1px 0 26px;font-size:11px;display:flex}.auth-remember{color:#776e69;white-space:nowrap;align-items:center;gap:7px;display:flex}.auth-remember input{accent-color:#8ab2e7;width:16px;height:16px;min-height:16px;margin:0}.auth-option-link{color:#776e69;white-space:nowrap;background:0 0;border:0;padding:4px 0;font-size:11px}.auth-card .auth-submit{background:var(--auth-accent);color:#fff;width:100%;height:60px;min-height:60px;font:700 18px var(--auth-serif);border:0;border-radius:8px;justify-content:center;align-items:center;gap:9px;display:flex;box-shadow:0 9px 18px #8e1f2d24}.auth-card .auth-submit svg{width:17px;height:17px}.auth-card-foot{text-align:center;border-top:1px solid #f0ece7;margin-top:39px;padding-top:29px}.auth-card-foot p{color:#817873;margin:0 0 26px;font-size:12px}.auth-card-foot button{color:var(--auth-accent);background:0 0;border:0;padding:0 8px 5px;font-size:15px}.auth-policy-footer{padding:0 0 calc(17px + env(safe-area-inset-bottom));color:#867b75;justify-content:center;gap:12px;font-size:11px;display:flex}.auth-policy-footer button{color:inherit;background:0 0;border:0;padding:0}.auth-policy-footer span{color:#b8ada7}.auth-mode-note{color:var(--auth-muted);margin:-16px 0 25px;font-size:12px;line-height:1.6}.auth-card .auth-agreement{color:#776e69;margin:3px 0 24px;font-size:11px}.auth-card .auth-agreement input{width:16px;height:16px;min-height:16px;accent-color:var(--auth-accent)}.auth-card .auth-agreement button{color:var(--auth-accent);font-size:11px}.agreement{align-items:center;gap:8px;margin:24px 0;font-size:13px;line-height:1.6;display:flex}.agreement input{flex-shrink:0}.agreement button{color:var(--primary);background:0 0;border:0;padding:0;font-size:13px;line-height:1.8}@media (max-height:760px){.auth-main{padding-top:32px}.auth-card{padding-top:26px;padding-bottom:26px}.auth-policy-footer{padding-bottom:18px}}@media (max-width:360px){.auth-header{gap:8px;padding:0 14px}.auth-header-brand{gap:9px}.auth-header-brand .brand{font-size:16px}.auth-main{padding-left:14px;padding-right:14px}.auth-card{padding:27px}.auth-card h1{font-size:27px}}@media (min-width:600px){.app-shell:has(>.auth-page){background:#f8f6f1;max-width:none}.auth-header{padding:0 40px}.auth-main{justify-content:center;align-items:center;padding:32px 28px 50px;display:flex}.auth-card{width:min(100%,440px);max-width:440px;margin:0;padding:36px 40px}.auth-card h1{font-size:32px}.auth-policy-footer{padding-bottom:28px}}.recovery-page{flex-direction:column;min-height:100dvh;padding:35px 24px;display:flex}.recovery-page h1{margin:45px 0 12px;font-size:27px}.recovery-code-panel{background:var(--surface);text-align:center;border-radius:6px;margin:20px 0;padding:22px 18px}.recovery-code-panel p{color:var(--muted);font-size:13px}.recovery-code-panel code{letter-spacing:.5px;word-break:break-all;-webkit-user-select:all;user-select:all;margin-bottom:25px;font-family:ui-monospace,SFMono-Regular,monospace;font-size:18px;display:block}.recovery-instruction{text-align:center;margin:12px 0 20px;font-size:14px}.recovery-bottom{padding-top:50px;padding-bottom:env(safe-area-inset-bottom);margin-top:auto}.recovery-bottom .agreement{margin-top:0}.policy-copy{max-height:60dvh;font-size:14px;line-height:1.7;overflow:auto}.policy-copy h3{margin:18px 0 8px}.policy-copy p{color:#596371}.cases-feature{--cf-accent:var(--primary,#a1463c);--cf-text:var(--text,#242b34);--cf-muted:var(--muted,#788397);--cf-line:var(--border,#dce2eb);--cf-soft:#f3f5f8;width:100%;min-height:100%;color:var(--cf-text);background:#fff}.cases-feature .cf-body{padding:14px 16px 28px}.cases-feature.cf-cases-page .cf-body{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.cases-feature .page-header .button{white-space:nowrap;gap:4px;width:auto;min-height:40px;padding:6px;font-size:14px}.cases-feature .cf-heading-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px;display:flex}.cases-feature .cf-heading-row h2{letter-spacing:.01em;margin:0 0 3px;font-size:25px;font-weight:700;line-height:1.35}.cases-feature .cf-heading-row p,.cases-feature .cf-intro{color:var(--cf-muted);margin:0;font-size:13px;line-height:1.7}.cases-feature .cf-intro{margin-bottom:18px}.cases-feature .cf-heading-row>button{flex:none;justify-content:center;align-items:center;gap:5px;width:auto;min-width:82px;min-height:42px;font-size:14px;display:inline-flex}.cases-feature .cf-search{border:1px solid var(--cf-line);color:#748199;border-radius:6px;align-items:center;gap:9px;height:46px;padding:0 12px;display:flex}.cases-feature .cf-search:focus-within{border-color:var(--cf-accent);box-shadow:0 0 0 2px #b83f3612}.cases-feature .cf-search input{min-width:0;height:100%;color:var(--cf-text);font:inherit;background:0 0;border:0;outline:0;flex:1;padding:0;font-size:14px}.cases-feature input::placeholder,.cases-feature textarea::placeholder{color:#929bad;opacity:1}.cases-feature .cf-chips{scrollbar-width:none;align-items:center;gap:8px;padding:16px 0 12px;display:flex;overflow-x:auto}.cases-feature .cf-chips::-webkit-scrollbar{display:none}.cases-feature .cf-chips button{white-space:nowrap;min-height:38px;font:inherit;color:#59667a;background:var(--cf-soft);border:0;border-radius:20px;padding:7px 15px;font-size:13px;line-height:1.5}.cases-feature .cf-chips button.is-active{color:#fff;background:var(--cf-accent)}.cases-feature .cf-list-caption,.cases-feature .cf-section-caption{color:var(--cf-muted);margin:3px 0 12px;font-size:12px;line-height:1.6}.cases-feature .cf-case-list{flex-direction:column;gap:10px;display:flex}.cases-feature .cf-case-card{border:1px solid var(--cf-line);background:#fff;border-radius:6px;align-items:center;min-height:104px;padding-right:21px;display:flex;position:relative}.cases-feature .cf-case-open{text-align:left;width:100%;min-width:0;color:inherit;font:inherit;background:0 0;border:0;align-items:center;gap:11px;padding:14px 7px 14px 12px;display:flex}.cases-feature .cf-avatar{color:#9aa3b1;background:linear-gradient(135deg,#f0f1f4,#dce0e6);border-radius:50%;flex:0 0 49px;place-items:center;width:49px;height:49px;display:grid}.cases-feature .cf-case-copy{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.cases-feature .cf-case-title{flex-wrap:wrap;align-items:flex-start;gap:4px 7px;display:flex}.cases-feature .cf-case-title strong{overflow-wrap:anywhere;font-size:15px;line-height:1.45}.cases-feature .cf-tag{text-overflow:ellipsis;white-space:nowrap;max-width:130px;color:var(--cf-accent);background:#fbede9;border-radius:3px;flex:none;padding:2px 6px;font-size:11px;line-height:1.5;display:inline-block;overflow:hidden}.cases-feature .cf-tag.is-muted{color:#65738b;background:#eef2f6}.cases-feature .cf-case-meta{color:var(--cf-muted);overflow-wrap:anywhere;font-size:11px;line-height:1.5}.cases-feature .cf-case-notes{color:#7c899c;align-items:center;gap:4px;font-size:11px;display:flex}.cases-feature .cf-icon-button{color:#65728a;cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;justify-content:center;align-items:center;width:36px;height:40px;padding:0;display:inline-flex}.cases-feature .cf-icon-button:hover{background:#f1f4f8}.cases-feature .cf-icon-button:focus-visible,.cases-feature .cf-chips button:focus-visible,.cases-feature .cf-case-open:focus-visible,.cases-feature .cf-note-open:focus-visible,.cases-feature .cf-segment button:focus-visible{outline:2px solid var(--cf-accent);outline-offset:2px}.cases-feature .cf-case-menu{width:30px;margin-right:0}.cases-feature .cf-case-chevron{color:#8591a3;pointer-events:none;position:absolute;top:calc(50% - 8px);right:7px}.cases-feature .cf-empty-wrap{text-align:center;padding:26px 12px 30px}.cases-feature .cf-empty-wrap>.empty{padding:16px 0}.cases-feature .cf-empty-wrap>p{color:var(--cf-muted);max-width:285px;margin:8px auto 16px;font-size:13px;line-height:1.8}.cases-feature .cf-empty-wrap>button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.cases-feature .cf-error-panel{text-align:center;color:var(--cf-accent);padding:32px 16px;font-size:14px;line-height:1.8}.cases-feature .cf-notice{color:#916757;background:#f7f2ee;border-radius:5px;margin:0 0 13px;padding:10px 12px;font-size:12px;line-height:1.7}.cases-feature .cf-notice button{color:var(--cf-accent);font:inherit;background:0 0;border:0;margin-left:4px;padding:3px 5px;text-decoration:underline}.cases-feature .cf-inline-error{color:var(--cf-accent);font-size:13px;line-height:1.7}.cases-feature .cf-inline-link{color:var(--cf-accent);font:inherit;background:0 0;border:0;padding:0 2px;text-decoration:underline}.cases-feature .cf-modal-description{color:#526077;overflow-wrap:anywhere;margin:0 0 21px;font-size:14px;line-height:1.85}.cases-feature .cf-modal-actions{align-items:center;gap:10px;margin-top:17px;display:flex}.cases-feature .cf-modal-actions>button{flex:1;justify-content:center;align-items:center;gap:7px;min-width:0;display:inline-flex}.cases-feature .cf-modal-actions>.button+.button{margin-top:0}.cases-feature .cf-modal-actions-stack{flex-direction:column}.cases-feature .cf-modal-actions-stack>button{width:100%}.cases-feature .cf-group-row{border-bottom:1px solid var(--cf-line);align-items:center;gap:10px;min-height:78px;padding:11px 12px;display:flex}.cases-feature .cf-group-row:last-child{border-bottom:0}.cases-feature .cf-group-unassigned{border:1px solid var(--cf-line);border-radius:6px;margin-bottom:22px}.cases-feature .cf-folder-icon{color:#9b5048;background:#f8efeb;border-radius:6px;flex:0 0 36px;place-items:center;width:36px;height:36px;display:grid}.cases-feature .cf-group-copy{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.cases-feature .cf-group-copy strong{overflow-wrap:anywhere;font-size:15px;line-height:1.5}.cases-feature .cf-group-copy span,.cases-feature .cf-readonly-label{color:var(--cf-muted);font-size:12px;line-height:1.5}.cases-feature .cf-group-list{border:1px solid var(--cf-line);border-radius:6px;margin-bottom:20px;overflow:hidden}.cases-feature .cf-danger-icon{color:#b16c65}.cases-feature .cf-wide-button{justify-content:center;align-items:center;gap:8px;width:100%;display:inline-flex}.cases-feature .cf-help{color:var(--cf-muted);margin:10px 0;font-size:12px;line-height:1.75}.cases-feature .cf-editor-form{flex-direction:column;gap:12px;display:flex}.cases-feature .cf-editor-form .field{margin:0}.cases-feature .cf-editor-form .field-label{margin-bottom:7px;font-size:13px}.cases-feature .cf-editor-form input,.cases-feature .cf-editor-form select,.cases-feature .cf-editor-form textarea{box-sizing:border-box;border:1px solid var(--cf-line);width:100%;min-width:0;color:var(--cf-text);background:#fff;border-radius:5px;padding:10px 11px;font-family:inherit;font-size:14px;line-height:1.6}.cases-feature .cf-editor-form input,.cases-feature .cf-editor-form select{min-height:43px}.cases-feature .cf-editor-form textarea{resize:vertical;min-height:166px}.cases-feature .cf-editor-form input:focus,.cases-feature .cf-editor-form select:focus,.cases-feature .cf-editor-form textarea:focus{border-color:var(--cf-accent);outline:2px solid #b83f3620}.cases-feature .cf-character-count{text-align:right;color:#8b95a7;margin-top:-8px;font-size:11px;line-height:1.4}.cases-feature .cf-note-context{background:var(--cf-soft);border-radius:6px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;padding:13px 14px;display:flex}.cases-feature .cf-note-context>div{flex-direction:column;gap:5px;min-width:0;display:flex}.cases-feature .cf-note-context strong{overflow-wrap:anywhere;font-size:15px;line-height:1.6}.cases-feature .cf-note-context span{color:var(--cf-muted);font-size:12px;line-height:1.6}.cases-feature .cf-note-context .cf-context-tag{white-space:nowrap;color:#426792;background:#e4eefb;border-radius:4px;padding:3px 8px;display:inline-block}.cases-feature .cf-segment{background:var(--cf-soft);border:1px solid #edf0f4;border-radius:6px;align-items:stretch;margin-bottom:17px;padding:2px;display:flex}.cases-feature .cf-segment button{color:#54627a;min-height:40px;font:inherit;background:0 0;border:0;border-radius:4px;flex:1;font-size:14px}.cases-feature .cf-segment button.is-active{background:var(--cf-accent);color:#fff}.cases-feature .cf-segment button:disabled{color:#9da6b5;cursor:default}.cases-feature .cf-note-list{border-top:1px solid var(--cf-line)}.cases-feature .cf-note-card{border-bottom:1px solid var(--cf-line);align-items:flex-start;gap:7px;padding:15px 0;display:flex;position:relative}.cases-feature .cf-note-open{text-align:left;min-width:0;color:inherit;font:inherit;background:0 0;border:0;flex-direction:column;flex:1;gap:5px;padding:0;display:flex}.cases-feature .cf-note-open strong{overflow-wrap:anywhere;font-size:16px;line-height:1.55}.cases-feature .cf-note-excerpt{color:#7a8699;-webkit-line-clamp:2;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:13px;line-height:1.7;display:-webkit-box;overflow:hidden}.cases-feature .cf-note-binding{color:#8a6c67;overflow-wrap:anywhere;margin-top:2px;font-size:11px;line-height:1.6}.cases-feature .cf-note-open time{color:#8b96a9;font-size:11px;line-height:1.6}.cases-feature .cf-note-tools{flex-direction:column;flex:0 0 33px;margin-top:-4px;display:flex}.cases-feature .cf-note-tools .cf-icon-button{width:33px;height:35px}.cases-feature .cf-draft-context{color:#4d607c;background:var(--cf-soft);border-radius:5px;padding:10px 12px;font-size:14px;font-weight:600}.cases-feature .cf-scope-binding{border:1px solid var(--cf-line);border-radius:5px;justify-content:space-between;align-items:flex-start;gap:12px;padding:11px 12px;font-size:12px;line-height:1.6;display:flex}.cases-feature .cf-scope-binding>span{color:var(--cf-muted);white-space:nowrap}.cases-feature .cf-scope-binding strong{text-align:right;font-weight:500}@media (max-width:350px){.cases-feature .cf-body{padding-left:12px;padding-right:12px}.cases-feature .cf-case-open{gap:8px;padding-left:9px}.cases-feature .cf-avatar{flex-basis:40px;width:40px;height:40px}.cases-feature .cf-case-title strong{font-size:14px}.cases-feature .cf-tag{max-width:100px}}.cf-cases-page{--cf-accent:#243343;--cf-text:#17212e;--cf-muted:#7c8591;--cf-line:#e5e7e8;--cf-soft:#f4f5f5;background:radial-gradient(circle at 51% 38%,#fff 0%,#fbfaf8 58%,#f8f7f5 100%)}.cases-feature.cf-cases-page .cf-body{padding:28px 20px calc(98px + env(safe-area-inset-bottom))}.cf-cases-page .cf-search{background:#ffffffe0;border-radius:27px;height:52px;padding:0 15px;box-shadow:0 5px 18px #232b350b}.cf-cases-page .cf-search:focus-within{border-color:#87aeea;box-shadow:0 0 0 3px #367ded1f}.cf-cases-page .cf-chips{gap:7px;padding:18px 0 15px}.cf-cases-page .cf-chips button{background:#ffffffc2;border:1px solid #e6e8e9;border-radius:19px;min-height:36px;padding:6px 15px}.cf-cases-page .cf-chips button.is-active{background:#202a36;border-color:#202a36}.cf-cases-page .cf-list-caption{letter-spacing:.03em;align-items:center;gap:11px;margin:7px 0 5px;font-size:11px;display:flex}.cf-cases-page .cf-list-caption:after{content:"";background:#e4e7e8;flex:1;height:1px}.cf-cases-page .cf-case-list{gap:0}.cf-cases-page .cf-case-card{background:0 0;border:0;border-bottom:1px solid #e9ebeb;border-radius:0;min-height:91px;padding-right:6px}.cf-cases-page .cf-case-open{gap:13px;min-height:90px;padding:13px 0}.cf-cases-page .cf-avatar{color:#334d60;background:linear-gradient(150deg,#e5f2f9 0%,#f5f5f0 67%,#e8eeed 100%);border-radius:16px;flex-basis:50px;width:50px;height:50px;font-family:Songti SC,STSong,serif;font-size:23px;font-weight:500;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #879fad45,0 4px 13px #23313f0b}.cf-cases-page .cf-avatar:before{content:"";opacity:.75;background:#9cbad4;border-radius:50%;width:5px;height:5px;position:absolute;top:6px;right:7px}.cf-cases-page .cf-avatar.is-warm{color:#6e594b;background:linear-gradient(150deg,#f1e8df 0%,#fbf8f2 67%,#eee9df 100%)}.cf-cases-page .cf-avatar.is-warm:before{background:#c4a689}.cf-cases-page .cf-avatar.is-sage{color:#3d5c5d;background:linear-gradient(150deg,#e1eeeb 0%,#f7f7f0 67%,#e8efeb 100%)}.cf-cases-page .cf-avatar.is-sage:before{background:#8bb9b3}.cf-cases-page .cf-case-copy{gap:4px}.cf-cases-page .cf-case-title{flex-wrap:nowrap;align-items:center;gap:8px;min-width:0}.cf-cases-page .cf-case-title strong{text-overflow:ellipsis;white-space:nowrap;font-family:Songti SC,STSong,serif;font-size:18px;font-weight:500;line-height:1.3;overflow:hidden}.cf-cases-page .cf-tag{color:#386fab;background:#edf4ff;border-radius:9px;max-width:90px;padding:3px 7px;font-size:10px;line-height:1.2}.cf-cases-page .cf-tag.is-muted{color:#7d8790;background:#eff1f2}.cf-cases-page .cf-case-meta{color:#687684;font-size:11px;line-height:1.45}.cf-cases-page .cf-case-notes{color:#8c98a3;font-size:11px}.cf-cases-page .cf-case-menu{color:#8794a0;border-radius:13px;width:38px;height:44px}.cf-cases-page .cf-case-chevron{display:none}@media (max-width:350px){.cases-feature.cf-cases-page .cf-body{padding-left:16px;padding-right:16px}.cf-cases-page .cf-case-meta{font-size:10px}}.cases-feature.cf-cases-page .modal-panel{background:#fffdfb;border-radius:25px;width:min(100%,386px);padding:20px;box-shadow:0 25px 85px #0c1d2e3d}.cases-feature.cf-cases-page .modal-header h2{color:#17212e;font:500 23px/1.2 Songti SC,STSong,serif}.cases-feature.cf-cases-page .cf-modal-description{color:#667382}.cases-feature.cf-cases-page .cf-modal-actions .button{border-radius:14px;min-height:47px;font-size:14px}.cases-feature.cf-cases-page .cf-modal-actions .button-secondary{color:#243343;background:#fff;border-color:#dce1e5}.cases-feature.cf-cases-page .cf-modal-actions .button-danger{color:#a54c43;background:#fff6f3;border-color:#f1dcd7}.cf-cases-page .cf-load-more{justify-content:center;padding-top:18px;display:flex}.cf-cases-page .cf-load-more .button{border-radius:16px;min-height:44px}html,body{touch-action:pan-x pan-y;-webkit-text-size-adjust:100%}:root:has(.auth-page){background:#f8f6f1}body:has(.auth-page){background:#f8f6f1}.app-shell:has(.auth-page){background:#f8f6f1}.page-frame.with-nav{padding-bottom:82px}.about-page>.brand{margin:20px 0}.about-page h1{margin:20px 0 8px;font-size:26px}.about-page>.muted{margin-top:20px}:root{color:#242b34;font-synthesis:none;--primary:#a1463c;--text:#242b34;--muted:#77818d;--surface:#f4f5f7;--border:#dce1e6;--green:#2d8a65;--blue:#2874be;--purple:#8652b9;--red:#bd3f39;-webkit-tap-highlight-color:transparent;background:#f4f5f7;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.48}button,input,select,textarea,a{outline-offset:3px}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--primary)}a{color:var(--primary)}button{color:inherit}input,textarea,select{border:1px solid var(--border);width:100%;min-height:48px;color:var(--text);background:#fff;border-radius:6px;padding:12px;font-size:15px}input::placeholder,textarea::placeholder{color:#a0a8b3}input[type=checkbox]{width:20px;min-height:20px;accent-color:var(--primary)}input[type=date],input[type=time]{appearance:none}textarea{resize:vertical;line-height:1.55}h1,h2,h3,p{margin-top:0}h1{font-size:24px;line-height:1.35}h2{font-size:19px}h3{font-size:16px}p{line-height:1.6}svg{flex-shrink:0}button svg{stroke-width:1.8px}.app-shell{max-width:480px;min-height:100dvh;padding-top:env(safe-area-inset-top);background:#fff;margin:0 auto;position:relative}.page{padding:16px 16px 28px}.page.with-nav{padding-bottom:100px}.brand{white-space:nowrap;align-items:center;gap:9px;font-family:Songti SC,STSong,serif;font-size:21px;font-weight:600;display:inline-flex}.brand-small{gap:6px;font-size:16px}.brand-header{justify-content:space-between;align-items:center;height:54px;padding:0 16px;display:flex}.page-header{z-index:5;background:#fff;grid-template-columns:64px 1fr 64px;align-items:center;height:52px;padding:0 6px;display:grid;position:sticky;top:0}.page-header h1{text-align:center;margin:0;font-size:18px}.header-side{align-items:center;display:flex}.header-right{justify-content:flex-end;gap:2px}.icon-button{background:0 0;border:0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:inline-flex}.link-button{min-height:44px;color:var(--primary);background:0 0;border:0;justify-content:center;align-items:center;padding:0 7px;font-size:14px;display:inline-flex}.button{background:var(--primary);color:#fff;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:48px;padding:10px 16px;font-size:16px;font-weight:500;line-height:1.4;display:inline-flex}.button-secondary{color:var(--primary);border-color:var(--primary);background:#fff}.button-ghost{color:var(--primary);background:0 0}.button-danger{color:#bd3f39;background:#fff;border-color:#bd3f39}.button.compact{width:auto;min-height:40px;padding:8px 12px;font-size:14px}.button+.button{margin-top:10px}.field{margin-bottom:20px}.field-label{margin-bottom:10px;font-size:15px;font-weight:500;display:block}.field-error{color:var(--red);margin-top:6px;font-size:12px;display:block}.input-password{position:relative}.input-password input{padding-right:50px}.input-password button{color:var(--muted);position:absolute;top:2px;right:3px}.muted{color:var(--muted);font-size:13px;line-height:1.6}.error-notice{color:var(--red);background:#fff4f2;border:1px solid #f0d4d0;border-radius:6px;margin:12px 0;padding:12px;font-size:14px}.error-notice p{margin-bottom:0}.error-notice button{margin-top:10px}.loading{min-height:160px;color:var(--muted);justify-content:center;align-items:center;gap:10px;font-size:14px;display:flex}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:14px;padding:70px 16px;display:flex}.empty h2{color:var(--text);margin:8px 0 0;font-size:18px}.empty .button{max-width:170px;margin-top:10px}.segmented{background:var(--surface);border-radius:6px;min-height:42px;padding:2px;display:flex}.segmented button{min-height:40px;color:var(--text);white-space:nowrap;background:0 0;border:0;border-radius:5px;flex:1;padding:6px;font-size:14px}.segmented button.selected{color:#fff;background:var(--primary)}.form-row{grid-template-columns:76px 1fr;align-items:center;gap:10px;margin-bottom:13px;display:grid}.form-row .field-label{margin:0}.form-divider{background:var(--border);height:1px;margin:16px 0}.setting-section{border:1px solid var(--border);border-radius:6px;margin:16px 0;overflow:hidden}.section-heading{background:var(--surface);margin:0;padding:12px;font-size:16px}.setting-row{text-align:left;background:#fff;border:0;align-items:center;gap:10px;width:100%;min-height:53px;padding:10px 12px;font-size:14px;display:flex}.setting-row+.setting-row{border-top:1px solid #eef0f3}.row-label{flex:1}.row-value{color:var(--muted);text-align:right;font-size:13px}.toggle{background:#d4d9df;border:0;border-radius:20px;flex-shrink:0;align-items:center;width:44px;height:27px;padding:3px;display:flex}.toggle span{background:#fff;border-radius:50%;width:21px;height:21px;box-shadow:0 1px 2px #0002}.toggle.on{background:var(--primary);justify-content:flex-end}.bottom-nav{width:min(100%,480px);height:calc(62px + env(safe-area-inset-bottom));z-index:30;padding:4px 8px calc(5px + env(safe-area-inset-bottom));background:#f8f6f1;border-top:1px solid #e4dcd5;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -2px 10px #2d24200b}.bottom-nav button{color:#776f6a;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:0;padding:0;font-size:11px;font-weight:500;line-height:1.15;display:flex;position:relative}.bottom-nav button.active{color:#8e1f2d;font-weight:650}.bottom-nav button.active:before{content:"";background:#8e1f2d;border-radius:2px;width:38px;height:2px;position:absolute;top:-4px}.bottom-nav button svg,.bottom-nav button.active svg{color:currentColor;stroke-width:1.8px;background:0 0;border-radius:0;width:22px;height:22px;padding:0}.modal-backdrop{z-index:40;background:#1119;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-panel{background:#fff;border-radius:10px;outline:none;width:100%;max-width:410px;max-height:90dvh;padding:20px;overflow:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-header h2{margin:0;font-size:19px}.modal-actions{gap:12px;margin-top:20px;display:flex}.modal-actions .button+.button{margin-top:0}.sheet-wrapper .modal-backdrop{align-items:flex-end;padding:0}.sheet-wrapper .modal-panel{max-width:480px;padding:20px 16px calc(24px + env(safe-area-inset-bottom));border-radius:12px 12px 0 0;max-height:88dvh}.sheet-wrapper .modal-header{margin-top:4px}.sheet-wrapper .modal-panel:before{content:"";background:#c7cdd5;border-radius:2px;width:36px;height:4px;margin:-9px auto 15px;display:block}.toast{color:#fff;z-index:60;background:#242b34ee;border-radius:7px;width:max-content;max-width:calc(100% - 40px);padding:12px 18px;font-size:14px;line-height:1.5;position:fixed;bottom:100px;left:50%;transform:translate(-50%)}.button-row{gap:12px;display:flex}.button-row .button+.button{margin:0}.info-line{background:var(--surface);color:var(--muted);border-radius:6px;gap:8px;padding:12px;font-size:12px;line-height:1.6;display:flex}.top-title-row{justify-content:space-between;align-items:center;margin:15px 0;display:flex}.top-title-row h1{margin:0}.count-label{color:var(--muted);margin:15px 0;font-size:13px}.pill{color:var(--primary);background:#fae9e6;border-radius:5px;padding:3px 7px;font-size:11px;display:inline-block}.avatar{color:#9ba2ad;background:#e7e9ed;border-radius:50%;flex-shrink:0;place-items:center;width:46px;height:46px;display:grid}.chip-list{scrollbar-width:none;gap:8px;display:flex;overflow-x:auto}.chip{white-space:nowrap;background:var(--surface);min-height:35px;color:var(--muted);border:1px solid #0000;border-radius:20px;padding:6px 13px;font-size:13px}.chip.active{color:#fff;background:var(--primary)}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}@media (max-width:360px){.brand{font-size:19px}.brand-small{font-size:14px}.page{padding-left:12px;padding-right:12px}.form-row{grid-template-columns:70px 1fr;gap:8px}}@media (min-width:600px){.app-shell{max-width:768px}.bottom-nav{width:min(100%,768px);height:calc(68px + env(safe-area-inset-bottom));padding:6px 20px calc(7px + env(safe-area-inset-bottom))}.bottom-nav button{gap:4px;font-size:13px}.bottom-nav button svg,.bottom-nav button.active svg{width:24px;height:24px}.page.with-nav{padding-bottom:110px}.sheet-wrapper .modal-panel{max-width:768px}}:is(.app-shell:has(.ziwei-chart-view),.app-shell:has(.birth-page)){padding-top:0}.app-shell .ziwei-chart-view>.zv-chart-header,.app-shell .birth-page>.brand-header,.app-shell .birth-page>.page-header{z-index:25;padding-top:env(safe-area-inset-top);position:sticky;top:0}.app-shell .ziwei-chart-view>.zv-chart-header{height:calc(52px + env(safe-area-inset-top));min-height:calc(52px + env(safe-area-inset-top));background:#f8f6f1;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.app-shell .ziwei-chart-view>.zv-chart-header>:first-child{justify-self:start}.app-shell .ziwei-chart-view>.zv-chart-header>.zv-header-actions{justify-self:end}.app-shell .birth-page>.brand-header{height:calc(52px + env(safe-area-inset-top));max-width:none;padding-top:env(safe-area-inset-top);background:#f8f6f1}.app-shell .birth-page>.page-header{height:calc(52px + env(safe-area-inset-top))}:is(html:has(.ziwei-chart-view),html:has(.birth-page)){scroll-padding-top:calc(60px + env(safe-area-inset-top))}.app-shell{--main-brand-bar-height:calc(52px + env(safe-area-inset-top))}.app-shell.has-main-brand{padding-top:0}.main-brand-header{z-index:25;height:var(--main-brand-bar-height);padding:env(safe-area-inset-top) 16px 0;color:#8e1f2d;background:#f8f6f1;justify-content:center;align-items:center;display:flex;position:sticky;top:0}.app-shell.has-main-brand .page-header{top:var(--main-brand-bar-height)}.app-shell.has-main-brand .ai-page{height:calc(100dvh - var(--main-brand-bar-height) - var(--app-nav-height,82px) - env(safe-area-inset-bottom))}.app-shell.has-main-brand .birth-page,.app-shell.has-main-brand .my-page{min-height:calc(100dvh - var(--main-brand-bar-height))}.app-shell.has-main-brand:has(>.ai-page){--app-nav-height:78px}.app-shell.has-main-brand.has-profile-brand:has(>.my-page){padding-top:0}.app-shell.has-main-brand.has-profile-brand>.my-page.page.with-nav{min-height:calc(100dvh - var(--main-brand-bar-height));padding-top:20px}.app-shell.has-profile-brand{padding-top:var(--main-brand-bar-height)}.app-shell.has-profile-brand .my-page-header{z-index:25;width:min(100%,480px);height:var(--main-brand-bar-height);padding:env(safe-area-inset-top) 16px 0;background:#f8f6f1;justify-content:center;align-items:center;margin:0;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.app-shell .ziwei-chart-view>.zv-chart-header>.brand,.app-shell .birth-page>.brand-header>.brand,.app-shell>.main-brand-header>.brand,.app-shell.has-profile-brand .my-page-header>h1{letter-spacing:0;color:#8e1f2d;text-align:center;white-space:nowrap;margin:0;font:600 16px/1.5 Songti SC,STSong,Noto Serif SC,serif}.app-shell{--app-nav-height:82px}.app-shell>.bottom-nav{width:min(100%,430px);height:calc(var(--app-nav-height) + env(safe-area-inset-bottom));padding:8px 17px calc(13px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff7;border:1px solid #e8ebef;border-bottom:0;border-radius:32px 32px 0 0;gap:2px;box-shadow:0 -13px 36px #1a222c0e}.app-shell>.bottom-nav button{color:#667690;letter-spacing:.1em;gap:3px;font-size:11px}.app-shell>.bottom-nav button.active{color:#10213a;font-weight:650}.app-shell>.bottom-nav button.active:before{display:none}.app-shell>.bottom-nav button svg,.app-shell>.bottom-nav button.active svg{color:currentColor;width:23px;height:23px}:is(html:has(.has-main-brand),html:has(.has-profile-brand)){scroll-padding-top:calc(104px + env(safe-area-inset-top))}@media (min-width:600px){.app-shell.has-profile-brand .my-page-header{width:min(100%,768px)}.app-shell.has-main-brand .ai-page{height:calc(100dvh - var(--main-brand-bar-height) - var(--app-nav-height,82px) - env(safe-area-inset-bottom))}}
