.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}.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}}.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 svg{color:#a1958a}.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-char-count{text-align:right;color:var(--muted);margin-top:4px;font-size:12px;display:block}.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-error{scroll-margin-bottom:180px}.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-main{padding-bottom:calc(110px + env(safe-area-inset-bottom))}.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-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-branch-grid small{font-size:12px}.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-date-sheet>.muted{margin-top:8px;font-size:12px}.birth-time-selects{grid-template-columns:1fr 18px 1fr;align-items:end;gap:10px;margin-top:18px;display:grid}.birth-time-colon{text-align:center;color:var(--muted);padding-bottom:14px}.birth-time-selects select{text-align:center;font-size:18px}.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{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.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 small{color:var(--muted);font-size:10px}.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-input-unit{position:relative}.birth-input-unit input{padding-right:33px}.birth-input-unit>span{color:var(--muted);position:absolute;top:14px;right:14px}.birth-input-help{margin:6px 0 18px;font-size:12px}.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{padding:13px}.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-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-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-chart-body{padding-left:6px;padding-right:6px}.ziwei-chart-view .zv-board{grid-template-rows:repeat(4,minmax(122px,auto))}.ziwei-chart-view .zv-palace{min-height:122px;padding:3px 2px 8px}.ziwei-chart-view .zv-cell-stars{flex:none;min-height:40px;max-height:none;margin-bottom:8px}.ziwei-chart-view .zv-star-columns{gap:3px 0}.ziwei-chart-view .zv-star{gap:1px;width:9px;line-height:1.05}.ziwei-chart-view .zv-major-star{color:#b43f3c;width:10px;font-size:10px;font-weight:700}.ziwei-chart-view .zv-minor-star{color:#2871a8;width:9px;font-size:9px}.ziwei-chart-view .zv-adjective-star{color:#806293;width:8px;font-size:8px}.ziwei-chart-view .zv-layer-star{color:#2b8a8f;width:9px;font-size:9px}.ziwei-chart-view .zv-brightness{color:#67717c;font-size:7px;line-height:1.05}.ziwei-chart-view .zv-palace .zv-mutagen{color:#fff;text-shadow:0 1px 1px #14253666;width:15px;min-width:15px;height:16px;box-shadow:0 0 0 1px var(--zv-mutagen-aura),0 0 5px 1px var(--zv-mutagen-aura);border:1px solid #fff;border-radius:4px;padding:0;font-size:11px;font-weight:800;animation:2.8s ease-in-out infinite zv-palace-mutagen-glow}.ziwei-chart-view .zv-palace .zv-mutagen[data-mutagen=权]{animation-delay:-.7s}.ziwei-chart-view .zv-palace .zv-mutagen[data-mutagen=科]{animation-delay:-1.4s}.ziwei-chart-view .zv-palace .zv-mutagen[data-mutagen=忌]{animation-delay:-2.1s}.ziwei-chart-view .zv-scope-mutagens{flex-wrap:wrap;align-content:flex-start;align-items:center;gap:2px 3px;min-width:0;max-width:100%;margin-top:3px;display:flex}.ziwei-chart-view .zv-palace .zv-scope-mutagen{white-space:nowrap;width:max-content;min-width:24px;height:17px;text-shadow:none;box-shadow:0 0 0 1px var(--zv-mutagen-aura),0 0 3px 1px var(--zv-mutagen-aura);border-radius:3px;flex:none;padding:0 2px;font-size:10px;font-weight:700;line-height:1;animation-name:zv-scope-mutagen-glow}@keyframes zv-palace-mutagen-glow{50%{box-shadow:0 0 0 1px var(--zv-mutagen-aura),0 0 8px 3px var(--zv-mutagen-aura)}}@keyframes zv-scope-mutagen-glow{50%{box-shadow:0 0 0 1px var(--zv-mutagen-aura),0 0 5px 1px var(--zv-mutagen-aura)}}@media (prefers-reduced-motion:reduce){.ziwei-chart-view .zv-palace .zv-mutagen{animation:none}}.ziwei-chart-view .zv-cell-cycles{color:#4d5968;white-space:nowrap;flex-direction:column;gap:0;min-height:23px;font-size:7px;line-height:1.5;display:flex;overflow:hidden}.ziwei-chart-view .zv-cell-cycles>span{text-overflow:clip;display:block;overflow:hidden}.ziwei-chart-view .zv-scope-timeline{text-align:right;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:1px 3px;max-width:100%;min-height:13px;margin-top:auto;font-size:8px;line-height:1.2;display:flex}.ziwei-chart-view .zv-scope-timeline span{white-space:nowrap}.ziwei-chart-view .zv-scope-timeline.is-years{color:#67717b}.ziwei-chart-view .zv-scope-timeline.is-months{color:#c66b26}.ziwei-chart-view .zv-scope-timeline+.zv-cell-ground{margin-top:0;padding-top:5px}.ziwei-chart-view .zv-cell-ground{flex:none;grid-template-columns:minmax(0,1fr) 28px 25px;align-items:end;gap:0;min-height:0;margin-top:auto;padding-top:16px;display:grid}.ziwei-chart-view .zv-cell-omens{color:#657078;white-space:nowrap;flex-direction:column;align-self:end;gap:0;font-size:8px;font-weight:400;line-height:1.08;display:flex;overflow:hidden}.ziwei-chart-view .zv-cell-omens i{color:#258e88;font-style:normal;font-weight:650}.ziwei-chart-view .zv-cell-period{color:#26384b;white-space:nowrap;flex-direction:column;justify-content:end;align-self:end;align-items:center;font-size:10px;line-height:1.12;display:flex}.ziwei-chart-view .zv-cell-identity{white-space:nowrap;flex-direction:column;justify-content:end;align-self:end;align-items:flex-end;gap:1px;display:flex;position:relative}.ziwei-chart-view .zv-cell-period strong{color:#bb423e;margin-bottom:4px;font-size:13px;font-weight:700;line-height:1.05;transform:translateY(-12px)}.ziwei-chart-view .zv-cell-period>span{transform:translateY(-5px)}.ziwei-chart-view .zv-cell-period>.zv-layer-palace-names{white-space:nowrap;flex-direction:column;align-items:center;gap:1px;margin-top:-4px;line-height:1;display:flex;transform:none}.ziwei-chart-view .zv-layer-palace-names .is-decadal{color:#279a55;font-size:9px;font-weight:700}.ziwei-chart-view .zv-layer-palace-names .is-yearly{color:#247abd;font-size:9px;font-weight:700}.ziwei-chart-view .zv-layer-palace-names+strong{margin-bottom:1px;transform:none}.ziwei-chart-view .zv-layer-palace-names+strong+span{transform:none}.ziwei-chart-view .zv-cell-identity b{writing-mode:vertical-rl;text-orientation:upright;color:#18232e;font-size:13px;font-weight:700;line-height:1}.ziwei-chart-view .zv-cell-body{--zv-mutagen-aura:#9b2e3d80;color:#fff;text-shadow:0 1px 1px #14253666;min-width:13px;box-shadow:0 0 0 1px var(--zv-mutagen-aura),0 0 5px 1px var(--zv-mutagen-aura);background:#9b2e3d;border:1px solid #fff;border-radius:3px;padding:2px 1px;font-size:9px;font-weight:800;animation:2.8s ease-in-out -1.1s infinite zv-palace-mutagen-glow;position:static}@media (prefers-reduced-motion:reduce){.ziwei-chart-view .zv-cell-body{animation:none}}.ziwei-chart-view.font-large .zv-palace{min-height:140px}.ziwei-chart-view.font-large .zv-board{grid-template-rows:repeat(4,minmax(140px,auto))}.ziwei-chart-view.font-large .zv-cell-stars{flex-basis:auto;min-height:48px;max-height:none}.ziwei-chart-view.font-large .zv-major-star{width:12px;font-size:12px}.ziwei-chart-view.font-large .zv-minor-star{width:10px;font-size:10px}.ziwei-chart-view.font-large .zv-adjective-star{width:9px;font-size:9px}.ziwei-chart-view.font-extra .zv-palace{min-height:151px}.ziwei-chart-view.font-extra .zv-board{grid-template-rows:repeat(4,minmax(151px,auto))}.ziwei-chart-view.font-extra .zv-cell-stars{flex-basis:auto;min-height:55px;max-height:none}.ziwei-chart-view.font-extra .zv-major-star{width:14px;font-size:14px}.ziwei-chart-view.font-extra .zv-minor-star{width:12px;font-size:12px}.ziwei-chart-view.font-extra .zv-adjective-star{width:10px;font-size:10px}.ziwei-chart-view .zv-center{text-align:center;z-index:3;flex-direction:column;justify-content:center;align-items:stretch;gap:1px;min-height:max-content;padding:4px 6px;display:flex;overflow:hidden}.ziwei-chart-view .zv-board.has-sanhe-markers .zv-center{padding:14px 13px}.ziwei-chart-view .zv-center-heading{flex-wrap:wrap;justify-content:center;align-items:baseline;column-gap:4px;min-width:0;display:flex}.ziwei-chart-view .zv-center h2{overflow-wrap:anywhere;color:#52657a;white-space:normal;flex:0 auto;width:auto;min-width:0;max-width:100%;margin:0;font-size:10px;font-weight:600;line-height:1.3}.ziwei-chart-view .zv-center h2:after{content:" ·";white-space:nowrap}.ziwei-chart-view .zv-center-meta{color:#52657a;white-space:nowrap;flex:none;max-width:100%;font-size:10px;line-height:1.3}.ziwei-chart-view .zv-center-scope{color:#a1463c;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:2px 5px;min-width:0;font-size:10px;line-height:1.3;display:flex}.ziwei-chart-view .zv-center-scope strong{font-weight:700}.ziwei-chart-view .zv-center-scope small{color:#697d95;font-size:9px}.ziwei-chart-view .zv-self-mutation-key+.zv-center-scope{margin-top:4px}.ziwei-chart-view .zv-center-line{white-space:nowrap;justify-content:center;align-items:baseline;gap:4px;font-size:10px;line-height:1.45;display:flex}.ziwei-chart-view .zv-center-line span{color:#7a8697}.ziwei-chart-view .zv-center-line strong{color:#314c69;font-size:10px;font-weight:500}.ziwei-chart-view .zv-center-pillars{border-top:1px solid #e0e6ec;border-bottom:1px solid #e0e6ec;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;margin:1px 0 0;padding:2px 1px;display:grid}.ziwei-chart-view .zv-pillar-set{min-width:0}.ziwei-chart-view .zv-pillar-caption{color:#8290a0;white-space:nowrap;font-size:7px;line-height:1.1;display:block}.ziwei-chart-view .zv-pillar-columns{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.ziwei-chart-view .zv-pillar-columns strong{color:#b3453d;white-space:nowrap;flex-direction:column;align-items:center;font-size:12px;line-height:1.05;display:flex}.ziwei-chart-view .zv-bazi-periods{scrollbar-width:thin;scrollbar-color:#becad4 transparent;overscroll-behavior-inline:contain;border-top:1px solid #e0e6ec;border-bottom:1px solid #e0e6ec;width:100%;min-width:0;min-height:54px;display:flex;overflow:auto hidden}.ziwei-chart-view .zv-bazi-period{color:#67798a;white-space:nowrap;border-right:1px solid #edf0f3;flex-direction:column;flex:0 0 27px;justify-content:center;align-items:center;gap:0;min-width:0;font-size:7px;line-height:1.12;display:flex}.ziwei-chart-view .zv-bazi-period strong{flex-direction:column;font-size:13px;line-height:1.05;display:flex}.ziwei-chart-view .zv-bazi-period small{max-width:100%;font-size:7px;line-height:1.15;display:block;overflow:hidden}.ziwei-chart-view .zv-bazi-period .zv-bazi-ten-god{color:#704f83;font-weight:600}.ziwei-chart-view .zv-center-basis{color:#718093;font-size:9px;line-height:1.3}.ziwei-chart-view .zv-center-quick-controls{border:1px solid #afb8c1;grid-template-columns:repeat(5,minmax(0,1fr));width:100%;margin-top:2px;display:grid}.ziwei-chart-view .zv-center-quick-controls button{color:#263747;white-space:nowrap;background:#f0f2f4;border:0;border-right:1px solid #afb8c1;border-radius:0;min-width:0;height:21px;padding:0;font-size:9px;font-weight:600}.ziwei-chart-view .zv-self-mutation-key{margin-top:2px}.ziwei-chart-view .zv-center-quick-controls button:last-child{border-right:0}.ziwei-chart-view .zv-center-quick-controls button:active{background:#dce7f2}.ziwei-chart-view .zv-flying-origin{color:#a3453e;font-size:9px;line-height:1.3}.ziwei-chart-view .zv-board.is-flying .zv-center{justify-content:center;padding-top:5px}.zv-scope-matrix{border-top:1px solid #d9e0e7;margin:2px 0 11px}.zv-matrix-row{background:#f9fafb;border:1px solid #d5dbe2;border-bottom:0;grid-template-columns:49px minmax(0,1fr) 16px;align-items:stretch;min-height:32px;display:grid}.zv-matrix-row.is-single-line{min-height:26px}.zv-matrix-row:last-child{border-bottom:1px solid #d5dbe2}.zv-matrix-label{color:#27394a;text-align:center;border-right:1px solid #d5dbe2;justify-content:center;align-items:center;padding:2px;font-size:9px;font-weight:650;line-height:1.3;display:flex}.zv-matrix-scroll{scrollbar-width:none;overscroll-behavior-inline:contain;min-width:0;display:flex;overflow-x:auto}.zv-matrix-scroll::-webkit-scrollbar{display:none}.zv-matrix-cell{color:#33485b;white-space:nowrap;background:0 0;border:0;border-right:1px solid #d5dbe2;border-radius:0;flex-direction:column;flex:0 0 51px;justify-content:center;align-items:center;gap:1px;min-height:31px;padding:1px;font-size:9px;line-height:1.25;display:flex}.zv-matrix-row.is-single-line .zv-matrix-cell{min-height:25px}.zv-matrix-cell small{color:#667a8e;font-size:8px}.zv-matrix-cell.is-active{color:#fff;background:#a1463c}.zv-matrix-cell.is-active small{color:#fff0ee}.zv-matrix-cell:disabled{opacity:.45}.zv-matrix-row.is-locked{background:#f1f3f5}.zv-matrix-row.is-locked .zv-matrix-label{color:#98a3ae}.zv-matrix-row.is-locked .zv-matrix-cell{color:#83909b}.zv-matrix-row.is-locked .zv-matrix-cell small{color:#a9b4be}.zv-matrix-row.is-locked .zv-matrix-more{color:#aab4be;background:#edf0f3}.zv-matrix-row.is-locked .zv-matrix-cell:disabled,.zv-matrix-row.is-locked .zv-matrix-more:disabled{opacity:1}.zv-matrix-row.is-year-pair{min-height:64px}.zv-matrix-row.is-year-pair .zv-matrix-label{grid-template-rows:1fr 1fr;padding:0;display:grid}.zv-matrix-row.is-year-pair .zv-matrix-label span{justify-content:center;align-items:center;display:flex}.zv-matrix-row.is-year-pair .zv-matrix-label span+span{border-top:1px solid #d5dbe2}.zv-matrix-year-pair{border-right:1px solid #d5dbe2;flex:0 0 51px;grid-template-rows:1fr 1fr;min-height:63px;display:grid}.zv-matrix-row.is-year-pair .zv-matrix-year-pair .zv-matrix-cell{border-right:0;flex:none;width:100%;min-height:0;padding:1px;font-size:10px}.zv-matrix-row.is-year-pair .zv-matrix-year{line-height:1.05}.zv-matrix-row.is-year-pair .zv-matrix-age{border-top:1px solid #d5dbe2}.zv-matrix-year-pair.is-active .zv-matrix-cell{color:#fff;background:#a1463c}.zv-matrix-year-pair.is-active .zv-matrix-cell small{color:#fff0ee}.zv-matrix-year-pair.is-active .zv-matrix-age{border-top-color:#fff5}.zv-matrix-more{color:#8090a0;background:#f1f4f7;border:0;border-left:1px solid #d5dbe2;padding:0;font-size:19px}.ziwei-chart-view .zv-chart-body{padding-bottom:calc(116px + env(safe-area-inset-bottom))}.zv-chart-toolbar{bottom:calc(62px + env(safe-area-inset-bottom));z-index:20;background:#fff;border-top:1px solid #d8dee5;grid-template-columns:60px minmax(0,1fr) 60px;align-items:stretch;gap:5px;width:min(100%,480px);padding:4px 6px;display:grid;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 -3px 12px #24304412}.zv-toolbar-action{color:#325276;background:#fff;border:1px solid #d9e0e7;border-radius:5px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-height:40px;padding:2px;font-size:9px;line-height:1.2;display:flex}.zv-chart-toolbar .zv-mode-tabs{min-width:0;margin:0;padding:2px}.zv-chart-toolbar .zv-mode-tabs button{min-height:40px;padding:3px 1px;font-size:10px}@media (max-width:350px){.ziwei-chart-view .zv-chart-body{padding-left:3px;padding-right:3px}.ziwei-chart-view .zv-board-surround{margin-left:-2px;margin-right:-2px}.ziwei-chart-view .zv-palace{padding-left:1px;padding-right:1px}.ziwei-chart-view .zv-cell-stars{flex-basis:auto;min-height:37px;max-height:none}.ziwei-chart-view .zv-star-columns{row-gap:2px}.ziwei-chart-view .zv-cell-cycles{font-size:6px}.ziwei-chart-view .zv-cell-ground{grid-template-columns:minmax(0,1fr) 25px 20px}.ziwei-chart-view .zv-cell-omens{font-size:7px}.ziwei-chart-view .zv-cell-period{font-size:8px}.ziwei-chart-view .zv-cell-period strong{margin-bottom:3px;font-size:12px;transform:translateY(-11px)}.ziwei-chart-view .zv-cell-identity b{font-size:11px}.ziwei-chart-view .zv-center{padding:4px 2px}.ziwei-chart-view .zv-center h2,.ziwei-chart-view .zv-center-line,.ziwei-chart-view .zv-center-line strong,.ziwei-chart-view .zv-center-meta,.ziwei-chart-view .zv-center-basis,.ziwei-chart-view .zv-center-scope{font-size:8px}.ziwei-chart-view .zv-center-scope small{font-size:7px}.ziwei-chart-view .zv-pillar-columns strong{font-size:10px}.ziwei-chart-view .zv-bazi-period{flex-basis:25px}.ziwei-chart-view .zv-center-quick-controls button{font-size:8px}.zv-matrix-row{grid-template-columns:43px minmax(0,1fr) 15px}.zv-matrix-cell,.zv-matrix-year-pair{flex-basis:45px}}@media (min-width:600px){.ziwei-chart-view .zv-chart-header{min-height:60px;padding:0 18px}.ziwei-chart-view .zv-chart-header .brand-small{font-size:18px}.ziwei-chart-view .zv-header-button{font-size:14px}.ziwei-chart-view .zv-chart-body{padding:0 12px calc(140px + env(safe-area-inset-bottom))}.ziwei-chart-view .zv-board{grid-template-rows:repeat(4,minmax(clamp(150px,24vw,184px),auto))}.ziwei-chart-view .zv-palace{min-height:clamp(150px,24vw,184px);padding:7px 6px 11px}.ziwei-chart-view .zv-cell-stars{min-height:56px}.ziwei-chart-view .zv-star-columns{gap:4px 1px}.ziwei-chart-view .zv-star{gap:2px;width:clamp(12px,2vw,16px)}.ziwei-chart-view .zv-major-star{width:clamp(13px,2.2vw,17px);font-size:clamp(13px,2.1vw,16px)}.ziwei-chart-view .zv-minor-star{width:clamp(11px,1.8vw,14px);font-size:clamp(11px,1.7vw,13px)}.ziwei-chart-view .zv-adjective-star{width:clamp(10px,1.6vw,12px);font-size:clamp(10px,1.5vw,12px)}.ziwei-chart-view .zv-layer-star{width:clamp(11px,1.8vw,14px);font-size:clamp(11px,1.7vw,13px)}.ziwei-chart-view .zv-brightness{font-size:10px}.ziwei-chart-view .zv-star.has-mutagen{width:20px}.ziwei-chart-view .zv-palace .zv-mutagen{width:20px;min-width:20px;height:21px;font-size:15px}.ziwei-chart-view .zv-palace .zv-scope-mutagen{width:max-content;min-width:24px;height:17px;padding:0 2px;font-size:10px}.ziwei-chart-view .zv-cell-cycles{min-height:31px;font-size:10px}.ziwei-chart-view .zv-scope-timeline{min-height:18px;font-size:11px}.ziwei-chart-view .zv-layer-palace-names .is-decadal,.ziwei-chart-view .zv-layer-palace-names .is-yearly{font-size:13px}.ziwei-chart-view .zv-cell-ground{grid-template-columns:minmax(0,1fr) 45px 37px}.ziwei-chart-view .zv-cell-omens{grid-area:1/1;font-size:11px}.ziwei-chart-view .zv-cell-period{grid-area:1/1/auto/-1;justify-self:center;font-size:13px}.ziwei-chart-view .zv-cell-period strong{margin-bottom:5px;font-size:17px;transform:translateY(-16px)}.ziwei-chart-view .zv-cell-period .zv-layer-palace-names+strong{margin-bottom:0;transform:none}.ziwei-chart-view .zv-cell-identity{grid-area:1/3}.ziwei-chart-view .zv-cell-identity b{font-size:19px}.ziwei-chart-view .zv-cell-body{min-width:18px;padding:3px 2px;font-size:12px}.ziwei-chart-view .zv-center{gap:3px;padding:12px 14px}.ziwei-chart-view .zv-center h2{font-size:clamp(13px,2vw,16px)}.ziwei-chart-view .zv-center-meta,.ziwei-chart-view .zv-center-line,.ziwei-chart-view .zv-center-line strong,.ziwei-chart-view .zv-center-scope{font-size:clamp(11px,1.8vw,14px)}.ziwei-chart-view .zv-center-scope small{font-size:clamp(10px,1.5vw,12px)}.ziwei-chart-view .zv-center-basis{font-size:11px}.ziwei-chart-view .zv-pillar-caption{font-size:10px}.ziwei-chart-view .zv-pillar-columns strong{font-size:clamp(14px,2.1vw,17px)}.ziwei-chart-view .zv-bazi-periods{min-height:64px}.ziwei-chart-view .zv-bazi-period{flex-basis:clamp(30px,4.2vw,36px);font-size:9px}.ziwei-chart-view .zv-bazi-period strong{font-size:16px}.ziwei-chart-view .zv-bazi-period small{font-size:9px}.ziwei-chart-view .zv-center-quick-controls button{height:29px;font-size:12px}.ziwei-chart-view .zv-self-mutation-key{font-size:13px}.ziwei-chart-view .zv-flying-origin{font-size:12px}.ziwei-chart-view .zv-compass-mark{font-size:10px}.ziwei-chart-view .zv-matrix-row{grid-template-columns:68px minmax(0,1fr) 22px;min-height:40px}.ziwei-chart-view .zv-matrix-row.is-single-line{min-height:33px}.ziwei-chart-view .zv-matrix-label{font-size:11px}.ziwei-chart-view .zv-matrix-cell{flex-basis:64px;min-height:39px;font-size:11px}.ziwei-chart-view .zv-matrix-row.is-single-line .zv-matrix-cell{min-height:32px}.ziwei-chart-view .zv-matrix-row.is-year-pair{min-height:80px}.ziwei-chart-view .zv-matrix-year-pair{flex-basis:64px;min-height:79px}.ziwei-chart-view .zv-matrix-row.is-year-pair .zv-matrix-cell{font-size:11px}.ziwei-chart-view .zv-matrix-cell small{font-size:9px}.ziwei-chart-view .zv-chart-toolbar{bottom:calc(68px + env(safe-area-inset-bottom));grid-template-columns:94px minmax(0,1fr) 94px;gap:10px;width:min(100%,768px);padding:6px 12px}.ziwei-chart-view .zv-toolbar-action{min-height:48px;font-size:12px}.ziwei-chart-view .zv-chart-toolbar .zv-mode-tabs button{min-height:48px;font-size:14px}.ziwei-chart-view.font-large .zv-board{grid-template-rows:repeat(4,minmax(clamp(165px,26vw,200px),auto))}.ziwei-chart-view.font-large .zv-palace{min-height:clamp(165px,26vw,200px)}.ziwei-chart-view.font-large .zv-cell-stars{min-height:66px}.ziwei-chart-view.font-large .zv-major-star{width:18px;font-size:17px}.ziwei-chart-view.font-large .zv-minor-star{width:15px;font-size:14px}.ziwei-chart-view.font-large .zv-adjective-star{width:13px;font-size:12px}.ziwei-chart-view.font-extra .zv-board{grid-template-rows:repeat(4,minmax(clamp(175px,28vw,215px),auto))}.ziwei-chart-view.font-extra .zv-palace{min-height:clamp(175px,28vw,215px)}.ziwei-chart-view.font-extra .zv-cell-stars{min-height:76px}.ziwei-chart-view.font-extra .zv-major-star{width:20px;font-size:19px}.ziwei-chart-view.font-extra .zv-minor-star{width:17px;font-size:16px}.ziwei-chart-view.font-extra .zv-adjective-star{width:14px;font-size:13px}}.ziwei-chart-view .zv-cell-ground{grid-template-columns:minmax(0,1fr) auto 15px}.ziwei-chart-view .zv-cell-period{flex-direction:row;justify-content:flex-end;align-items:flex-end;gap:0;font-size:8px;line-height:1;display:flex}.ziwei-chart-view .zv-period-column{white-space:nowrap;flex-direction:column;flex:0 0 8px;justify-content:flex-end;align-items:center;min-width:0;font-size:8px;font-weight:700;line-height:1;display:flex}.ziwei-chart-view .zv-period-column:not(.is-year-pair):not(.is-base-pair),.ziwei-chart-view .zv-period-column>span,.ziwei-chart-view .zv-period-column>strong{writing-mode:vertical-rl;text-orientation:upright}.ziwei-chart-view .zv-period-column>span,.ziwei-chart-view .zv-period-column>strong{font-size:inherit;margin:0;line-height:1;transform:none}.ziwei-chart-view .zv-period-column.is-base-pair{flex-basis:10px;font-size:9px}.ziwei-chart-view .zv-period-column.is-base-pair strong{color:#bb423e;font-weight:800}.ziwei-chart-view .zv-period-column.is-base-pair .is-decadal{color:#279a55}.ziwei-chart-view .zv-period-column.is-year-pair .is-age{color:#53a9d0}.ziwei-chart-view .zv-period-column.is-year-pair .is-yearly{color:#247abd}.ziwei-chart-view .zv-period-column.is-monthly{color:#db8326}.ziwei-chart-view .zv-period-column.is-daily{color:#9150ba}.ziwei-chart-view .zv-period-column.is-hourly{color:#268f91}.ziwei-chart-view .zv-cell-period.is-natal-only{flex-direction:column;align-items:center}.ziwei-chart-view .zv-cell-period.is-natal-only .zv-period-column{flex-basis:auto;width:auto}.ziwei-chart-view .zv-cell-period.is-natal-only .zv-period-column strong,.ziwei-chart-view .zv-cell-period.is-natal-only .zv-period-column .is-natal-range{writing-mode:horizontal-tb}.ziwei-chart-view .zv-cell-period.is-natal-only .is-natal-range{color:#26384b;font-size:8px;font-weight:500}.ziwei-chart-view .zv-board.depth-4 .zv-cell-omens,.ziwei-chart-view .zv-board.depth-5 .zv-cell-omens{font-size:7px}.ziwei-chart-view .zv-palace .zv-scope-mutagen{width:16px;min-width:16px;padding:0;font-size:10px}.ziwei-chart-view .zv-palace .zv-scope-mutagen[data-layer=decadal]{--zv-mutagen-aura:#2e925280;background:#2e9252}.ziwei-chart-view .zv-palace .zv-scope-mutagen[data-layer=age]{--zv-mutagen-aura:#56b5d380;background:#56b5d3}.ziwei-chart-view .zv-palace .zv-scope-mutagen[data-layer=yearly]{--zv-mutagen-aura:#2687d080;background:#2687d0}.ziwei-chart-view .zv-palace .zv-scope-mutagen[data-layer=monthly]{--zv-mutagen-aura:#e68b2580;background:#e68b25}.ziwei-chart-view .zv-palace .zv-scope-mutagen[data-layer=daily]{--zv-mutagen-aura:#9051bb80;background:#9051bb}.ziwei-chart-view .zv-palace .zv-scope-mutagen[data-layer=hourly]{--zv-mutagen-aura:#2a9b9a80;background:#2a9b9a}.ziwei-chart-view .zv-layer-star.is-decadal-layer{color:#2e9252}.ziwei-chart-view .zv-layer-star.is-age-layer{color:#56b5d3}.ziwei-chart-view .zv-layer-star.is-yearly-layer{color:#2687d0}.ziwei-chart-view .zv-layer-star.is-monthly-layer{color:#db8326}.ziwei-chart-view .zv-layer-star.is-daily-layer{color:#9051bb}.ziwei-chart-view .zv-layer-star.is-hourly-layer{color:#2a9b9a}.ziwei-chart-view .zv-cell-cycles{flex:0 0 23px;height:23px;margin-top:auto}.ziwei-chart-view .zv-cell-cycles+.zv-cell-ground{min-height:68px;margin-top:0}.ziwei-chart-view .zv-cell-period>.zv-period-column{transform:none}.ziwei-chart-view .zv-star.has-mutagen{width:14px}.ziwei-chart-view .zv-palace .zv-mutagen{width:14px;min-width:14px;height:15px;box-shadow:0 0 0 1px var(--zv-mutagen-aura);font-size:10px;animation:none}.ziwei-chart-view .zv-palace .zv-scope-mutagen{width:14px;min-width:14px;height:15px;font-size:9px}@media (min-width:600px){.ziwei-chart-view .zv-cell-cycles{flex-basis:31px;height:31px}.ziwei-chart-view .zv-cell-cycles+.zv-cell-ground{min-height:90px}.ziwei-chart-view .zv-star.has-mutagen{width:16px}.ziwei-chart-view .zv-palace .zv-mutagen{width:16px;min-width:16px;height:17px;font-size:12px}.ziwei-chart-view .zv-palace .zv-scope-mutagen{width:14px;min-width:14px;height:15px;font-size:9px}}.ziwei-chart-view .zv-period-layer-key{color:#586575;border:1px solid #bec7d0;grid-template-columns:repeat(6,minmax(0,1fr));width:min(100%,210px);margin:2px auto 0;font-size:9px;font-weight:700;line-height:1.6;display:grid}.ziwei-chart-view .zv-period-layer-key span{background:#f3f5f6;border-right:1px solid #bec7d0}.ziwei-chart-view .zv-period-layer-key span:last-child{border-right:0}.ziwei-chart-view .zv-period-layer-key .is-visible{color:#fff}.ziwei-chart-view .zv-period-layer-key .is-visible[data-layer=decadal]{background:#2e9252}.ziwei-chart-view .zv-period-layer-key .is-visible[data-layer=yearly]{background:#2687d0}.ziwei-chart-view .zv-period-layer-key .is-visible[data-layer=monthly]{background:#e68b25}.ziwei-chart-view .zv-period-layer-key .is-visible[data-layer=daily]{background:#9051bb}.ziwei-chart-view .zv-period-layer-key .is-visible[data-layer=hourly]{background:#2a9b9a}.ziwei-chart-view .zv-matrix-row.is-year-pair{min-height:38px}.ziwei-chart-view .zv-matrix-row.is-year-pair .zv-matrix-label{flex-direction:column;justify-content:center;align-items:center;line-height:1.1;display:flex}.ziwei-chart-view .zv-matrix-row.is-year-pair .zv-matrix-label span+span{border-top:0}.ziwei-chart-view .zv-matrix-year-pair{min-height:37px;display:flex}.ziwei-chart-view .zv-matrix-row.is-year-pair .zv-matrix-year-pair .zv-matrix-cell{flex:1;min-height:37px;font-size:9px;line-height:1.1}.ziwei-chart-view .zv-matrix-row.is-year-pair .zv-matrix-year-pair .zv-matrix-cell small{font-size:8px}.ziwei-chart-view .zv-matrix-row.is-single-line{min-height:34px}.ziwei-chart-view .zv-matrix-row.is-single-line .zv-matrix-cell{min-height:33px}@media (max-width:350px){.ziwei-chart-view .zv-cell-ground{grid-template-columns:minmax(0,1fr) auto 12px}.ziwei-chart-view .zv-period-column{flex-basis:7px;font-size:7px}.ziwei-chart-view .zv-period-column.is-base-pair{flex-basis:8px;font-size:8px}}@media (min-width:600px){.ziwei-chart-view .zv-cell-ground{grid-template-columns:minmax(0,1fr) auto 27px}.ziwei-chart-view .zv-cell-period{grid-area:1/2}.ziwei-chart-view .zv-period-column{flex-basis:13px;font-size:12px}.ziwei-chart-view .zv-period-column.is-base-pair{flex-basis:15px;font-size:13px}.ziwei-chart-view .zv-board.depth-4 .zv-cell-omens,.ziwei-chart-view .zv-board.depth-5 .zv-cell-omens{font-size:10px}.ziwei-chart-view .zv-cell-identity{grid-area:1/3}.ziwei-chart-view .zv-matrix-row.is-year-pair{min-height:44px}.ziwei-chart-view .zv-matrix-year-pair{min-height:43px}.ziwei-chart-view .zv-matrix-row.is-year-pair .zv-matrix-year-pair .zv-matrix-cell{min-height:43px;font-size:11px}.ziwei-chart-view .zv-matrix-row.is-year-pair .zv-matrix-year-pair .zv-matrix-cell small{font-size:9px}}.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}}.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:focus-within{border-color:#a96469;box-shadow:0 0 0 2px #8e1f2d19}.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::placeholder{color:#a49992}.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:active{background:#f8efed}.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-record>svg{color:#aa9b91}.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 span{color:#968a81}.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-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-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:focus-within{border-color:#aa7477;box-shadow:0 0 0 2px #8e1f2d16,0 9px 24px #4f312610}.ai-composer textarea::placeholder{color:#a39a94}.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-topic-strip button:disabled{opacity:.7}.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}}.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}}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) - 62px - env(safe-area-inset-bottom))}.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}: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) - 68px - env(safe-area-inset-bottom))}}
