:root{--bg: #F5F7FA;--white: #FFFFFF;--gray50: #F9FAFB;--gray100: #F3F4F6;--gray200: #E5E7EB;--gray300: #D1D5DB;--gray400: #9CA3AF;--gray500: #6B7280;--gray600: #4B5563;--gray800: #1F2937;--gray900: #111827;--indigo50: #EEF2FF;--indigo100: #E0E7FF;--indigo200: #C7D2FE;--indigo300: #A5B4FC;--indigo400: #818CF8;--indigo500: #6366F1;--indigo600: #4F46E5;--red50: #FEF2F2;--red400: #F87171;--red500: #EF4444;--blue50: #EFF6FF;--blue400: #60A5FA;--blue500: #3B82F6;--emerald50: #ECFDF5;--emerald400: #34D399;--emerald500: #10B981;--violet50: #F5F3FF;--violet400: #A78BFA;--violet500: #8B5CF6;--amber50: #FFFBEB;--amber400: #FBBF24;--amber500: #F59E0B;--amber600: #D97706;--pink50: #FDF2F8;--pink400: #F472B6;--deep: #02050C;--deep2: #08122A;--deep3: #0E1A30;--gold: #C9A84C;--gold-bright: #D4AC50;--steel: #6B7FA3;--nat-text: #A0B4CC;--nat-soft: #7C8FB0;--nat-dim: #4A5568;--nat-line: #1A2A4A;--nat-line2: #253550;--fire-c: #EF4444;--earth-c: #10B981;--air-c: #F59E0B;--water-c: #3B82F6;--shadow-card: 0 1px 2px rgba(17, 24, 39, .04);--shadow-pop: 0 12px 32px rgba(17, 24, 39, .16)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{margin:0;height:100%}body{background:#eef1f6;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,sans-serif;color:var(--gray900);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;font-variant-emoji:text}.emoji{font-variant-emoji:emoji}button{font-family:inherit}@media (hover: hover){.rail button:hover{background:var(--gray50);color:var(--gray600)}.primary:not(:disabled):hover{background:var(--indigo600)}}.stage{height:100%;display:flex;align-items:center;justify-content:center}.phone{position:relative;width:100%;max-width:480px;height:100vh;height:100dvh;background:var(--bg);display:flex;flex-direction:column;overflow:hidden}.main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.rail,.topbar{display:none}.screens{flex:1;position:relative;overflow:hidden;min-height:0}.screen{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;overflow-x:hidden;padding-bottom:24px;display:none;background:var(--bg);-webkit-overflow-scrolling:touch}.screen.on{display:block}.tabbar{flex:none;min-height:58px;display:flex;background:#fff;border-top:1px solid var(--gray100);padding:6px 0 calc(env(safe-area-inset-bottom,0px) + 8px)}.tabbar button{flex:1;border:0;background:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--gray400);font-size:11px;font-weight:500;padding:0;min-height:44px}.tabbar button svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.tabbar button.on{color:var(--indigo500)}.page-col{padding:8px 16px 24px}.page-header{padding:4px 0 12px}.page-header h1{font-size:22px;font-weight:700;margin:0;letter-spacing:.3px}.page-header .sub{font-size:12px;color:var(--gray400);margin-top:3px}.page-header .page-date{font-size:13px;font-weight:500;letter-spacing:.2px;color:var(--gray600);margin-top:6px}.card{background:#fff;border:1px solid var(--gray100);border-radius:16px;padding:16px;margin-bottom:12px;box-shadow:var(--shadow-card)}.card h2{margin:0 0 10px;font-size:15px;font-weight:600;color:var(--gray900)}.pf-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.pf-head h2{margin:0}.card.tight{padding:0;overflow:hidden}.muted{color:var(--gray500);font-size:13px}.note{font-size:12px;color:var(--gray600);line-height:1.6;margin-top:8px}.note.warn{color:var(--amber600)}.note.err{color:var(--red500)}.note .qq{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;letter-spacing:.02em;color:var(--gray800)}.link-like{background:none;border:none;padding:0 2px;margin:0;color:var(--indigo500);font:inherit;text-decoration:underline;cursor:pointer}.link-like:hover{color:var(--indigo600)}.row{display:flex;align-items:center;gap:10px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.grid2>*{min-width:0}.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.birth-place{margin-top:6px}.ghost{background:transparent;border:1px dashed var(--gray300);color:var(--gray600);border-radius:10px;padding:9px 12px;font-size:13px;cursor:pointer}.ghost:hover{border-color:var(--indigo400);color:var(--indigo600)}.ghost:disabled{opacity:.5;cursor:default}.bp-combo{position:relative}.bp-search{width:100%}.bp-list{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;max-height:260px;overflow-y:auto;background:var(--white);border:1px solid var(--gray200);border-radius:12px;box-shadow:0 8px 24px #0000001a;padding:4px}.bp-item{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;font-size:13.5px;color:var(--gray800);cursor:pointer}.bp-item:hover{background:var(--gray100, #f1f3f7)}.bp-item.on{color:var(--indigo600);font-weight:600}.bp-tz{font-size:11px;color:var(--gray400);flex:none}.bp-more{padding:8px 10px;font-size:12px;color:var(--gray400)}.bp-custom-btn{width:100%;margin-top:8px}.bp-row{display:flex;gap:8px;margin-bottom:8px}.bp-addr{flex:1}.bp-foot{margin-top:8px}.bp-hits{border:1px solid var(--gray200);border-radius:10px;padding:4px;margin-bottom:8px;background:var(--gray50)}.bp-hits-title{font-size:12px;color:var(--gray500);padding:6px 8px 2px}.link-btn{background:none;border:none;color:var(--indigo600);font-size:12.5px;cursor:pointer;padding:0}.link-btn:hover{text-decoration:underline}@media (max-width: 420px){.grid3{grid-template-columns:1fr;gap:8px}}.chip{display:inline-block;font-size:11px;padding:3px 9px;border-radius:999px;background:var(--gray100);color:var(--gray500)}.pill{display:inline-block;font-size:12px;padding:3px 9px;border-radius:999px;background:var(--indigo50);color:var(--indigo600);margin:2px 4px 2px 0}label{font-size:12px;color:var(--gray500);display:block;margin-bottom:5px}input,select{width:100%;min-width:0;padding:10px 12px;border-radius:10px;border:1px solid var(--gray200);background:var(--gray50);color:var(--gray900);font-size:15px;outline:none;transition:border-color .15s,background .15s}input:focus,select:focus{border-color:var(--indigo400);background:#fff}.tfield{padding:10px 12px;border-radius:10px;border:1px solid var(--gray200);background:var(--gray50);transition:border-color .15s,background .15s}.tfield:focus-within{border-color:var(--indigo400);background:#fff}.tfield input,.tfield input:focus{width:100%;padding:0;border:none;background:transparent;font-size:15px;color:var(--gray900);outline:none;font-family:inherit}.primary{width:100%;padding:12px;border-radius:12px;border:none;background:var(--indigo500);color:#fff;font-weight:600;font-size:15px;cursor:pointer;margin-top:8px;transition:background .15s}.primary:disabled{opacity:.45;cursor:not-allowed}.cancel{width:100%;padding:10px;border-radius:10px;margin-top:12px;border:1px solid var(--gray200);background:transparent;color:var(--gray500);cursor:pointer;font-size:14px}.cancel:active{background:var(--gray50)}.btn-sm{flex:none;border:0;height:30px;padding:0 14px;border-radius:999px;background:var(--indigo500);color:#fff;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.btn-sm:active{background:var(--indigo600)}.setcard{background:#fff;border:1px solid var(--gray100);border-radius:16px;margin-bottom:12px;overflow:hidden;box-shadow:var(--shadow-card)}.sc-title{font-size:10px;font-weight:600;letter-spacing:2px;color:var(--gray400);padding:13px 16px 7px}.srow{display:flex;align-items:center;gap:11px;padding:11px 16px;border-top:1px solid var(--gray50)}.srow .sq{width:32px;height:32px;border-radius:9px;flex:none;display:flex;align-items:center;justify-content:center}.srow .sq svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.srow .sq-app{border-radius:8px;overflow:hidden;background:#8b5cf6}.srow .sq-app img{width:100%;height:100%;display:block;object-fit:cover}.srow .sl{flex:1;font-size:14px;color:var(--gray800)}.srow .st{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--gray500)}.srow .chev{width:16px;height:16px;stroke:var(--gray300);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.srow .inset{font-size:12px;color:var(--gray400);line-height:1.6}.sky-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px}.sky-item{background:var(--gray50);border-radius:12px;padding:10px 6px;text-align:center}.sky-item .sym{font-size:21px;line-height:1.2;color:var(--gray800)}.sky-item .nm{font-size:11px;color:var(--gray400);margin-top:4px}.sky-item .pos{font-size:12px;color:var(--gray600);margin-top:2px}.sky-item .rx{font-size:10px;color:var(--red500);margin-top:1px}.moon-wrap{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,var(--deep2),var(--deep3));border-radius:14px;padding:16px;margin-top:10px}.card.clear .moon-wrap{background:transparent}.moon-wrap .m-label{font-size:20px;font-weight:700;color:#fff}.moon-wrap .m-sub{font-size:12px;color:var(--nat-text);margin-top:3px}.moon-wrap svg{flex:none}.body-list{display:flex;flex-direction:column;gap:4px}.body-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:var(--gray50)}.body-row .sym{font-size:19px;width:26px;text-align:center;color:var(--gray800)}.body-row .nm{width:58px;color:var(--gray500);font-size:13px;flex:none}.body-row .pos{flex:1;font-size:14px;color:var(--gray700, var(--gray600))}.badge{font-size:11px;padding:2px 6px;border-radius:6px;background:var(--gray100);color:var(--gray500)}.badge.r{color:var(--red500);background:var(--red50)}.wheel-stage{background:transparent;border-radius:16px;padding:18px 12px 14px;margin-bottom:12px;display:flex;flex-direction:column;align-items:center}.wheel-wrap{width:100%;display:flex;justify-content:center}.natal-canvas{display:block;touch-action:manipulation;border-radius:50%}.w-hint{font-size:11px;color:var(--nat-dim);margin-top:8px;text-align:center}.body-row.click{cursor:pointer}@media (hover: hover){.body-row.click:hover{background:var(--gray50)}}.body-row.on{background:var(--indigo50);border-radius:10px}.body-row.on .nm{color:var(--indigo700);font-weight:600}.asp-list{display:flex;flex-direction:column;gap:2px}.asp-row{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--gray800);padding:6px 8px;border-radius:8px}.asp-row.click{cursor:pointer}@media (hover: hover){.asp-row.click:hover{background:var(--gray50)}}.asp-row.on{background:var(--indigo50)}.asp-row .dot{width:8px;height:8px;border-radius:50%;flex:none}.asp-row .an{flex:1;min-width:0}.asp-row .orb{font-size:11px;color:var(--gray400);font-variant-numeric:tabular-nums}.asp-none{font-size:12px;color:var(--gray400);padding:4px 0}.tune-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;background:#fff;border:1px solid var(--gray100);border-radius:14px;padding:8px 12px;margin-bottom:10px}.tune-bar .tb-label{font-size:10px;letter-spacing:1.5px;color:var(--gray400);margin-right:2px}.tune-bar .tb-gap{flex:1;min-width:6px}.tune-bar .birth-sum{font-size:12.5px;color:var(--gray600)}.opt{border:1px solid transparent;background:var(--gray100);color:var(--gray500);border-radius:999px;padding:5px 12px;font-size:11.5px;font-weight:500;cursor:pointer;transition:color .15s,background .15s,border-color .15s;white-space:nowrap}.opt.on{background:var(--indigo50);color:var(--indigo600);border-color:var(--indigo200);font-weight:600}.opt.tune-entry{display:inline-flex;align-items:center;gap:5px}.opt.tune-entry.dirty{border-color:var(--gray300);color:var(--gray800);font-weight:600}.opt .gear{font-size:11px;opacity:.7}.seg.mode-seg{margin-bottom:10px}.hbadge{font-size:10.5px;color:var(--gray500);background:var(--gray100);border-radius:6px;padding:2px 6px;flex:none}.refresh-sm{margin-top:8px;border:1px solid var(--nat-line2);background:transparent;color:var(--nat-text);font-size:11.5px;padding:5px 14px;border-radius:999px;cursor:pointer}@media (hover: hover){.refresh-sm:hover{background:#ffffff0f}}.ai-export{display:flex;justify-content:flex-end;margin:12px 2px 0}.wheel-stage .ai-export{max-width:none}.ai-export-btn{border:1px solid var(--nat-line2);background:transparent;color:var(--nat-text);font-size:12px;padding:6px 14px;border-radius:999px;cursor:pointer;opacity:.9}.ai-export-btn:hover{background:#ffffff0f;opacity:1}.ai-export-btn:disabled{opacity:.4;cursor:default}.sheet .sheet-head{display:flex;align-items:center;justify-content:space-between}.sheet .link-sm{border:0;background:none;color:var(--indigo600);font-size:12px;cursor:pointer;padding:4px 0}.orb-row{display:flex;align-items:center;gap:10px;padding:2px 0}.orb-row.head{padding-bottom:8px}.orb-name{display:inline-flex;align-items:center;gap:6px;width:62px;flex:none;font-size:13px;color:var(--gray800)}.orb-name i{width:7px;height:7px;border-radius:50%;display:inline-block}.orb-name.wide{width:auto;font-size:13px;font-weight:500}.orb-note{font-size:11px;color:var(--gray400)}.orb-row input[type=range]{flex:1;padding:0;border:0;background:transparent;height:22px;min-width:0}.orb-val{width:42px;flex:none;text-align:right;font-size:12px;font-weight:600;color:var(--gray800);font-variant-numeric:tabular-nums}.orb-sep{height:1px;background:var(--gray100);margin:14px 0}.orb-foot{font-size:10.5px;color:var(--gray400);line-height:1.65;margin:12px 0 4px}.wheel-stage .w-caption{font-size:11px;color:var(--nat-soft);margin-top:10px;text-align:center;line-height:1.7}.wheel-stage .w-actions{width:100%;max-width:420px;margin-top:12px}.wheel-stage .primary{background:var(--gold);color:#1a1208}.wheel-stage .primary:disabled{background:var(--gold)}@media (hover: hover){.wheel-stage .primary:not(:disabled):hover{background:var(--gold-bright)}}.wheel-stage .ai-text{margin-top:12px;font-size:13px;line-height:1.8;color:#d8e2f0;background:#060c1a8c;border-radius:12px;padding:12px 14px;text-align:left;max-height:62vh;overflow-y:auto;width:100%;align-self:stretch;box-sizing:border-box}.wheel-stage .ai-text h4,.wheel-stage .ai-text h5{margin:14px 0 6px;font-size:14px;font-weight:600;color:#f2f6fc;line-height:1.6}.wheel-stage .ai-text h5{font-size:13px}.wheel-stage .ai-text>:first-child{margin-top:0}.wheel-stage .ai-text>:last-child{margin-bottom:0}.wheel-stage .ai-text p{margin:0 0 9px}.wheel-stage .ai-text ul,.wheel-stage .ai-text ol{margin:6px 0 9px;padding-left:20px}.wheel-stage .ai-text li{margin:2px 0}.wheel-stage .ai-text strong{font-weight:600;color:#fff}.wheel-stage .ai-text hr{margin:12px 0;border:0;border-top:1px solid rgba(255,255,255,.12)}.wheel-stage .ai-text code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;padding:1px 4px;border-radius:4px;background:#ffffff17}.wheel-stage .ai-err{font-size:12px;color:#ffb454;margin-top:10px}.two-wheel{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.two-wheel>*{flex:1;min-width:232px}.stack-wheel{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.stack-wheel>*{width:100%}.pack-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.pack{padding:13px 6px;border-radius:12px;cursor:pointer;text-align:center;border:1px solid var(--gray200);background:var(--gray50);color:var(--gray800);transition:border-color .15s,background .15s}.pack.active{border-color:var(--indigo500);background:var(--indigo50)}.pack .pc{font-size:18px;font-weight:700;color:var(--gray900)}.pack .pp{font-size:12px;color:var(--gray500);margin-top:2px}.chan-row{display:flex;gap:8px}.chan{flex:1;padding:10px 0;border-radius:10px;cursor:pointer;font-size:14px;border:1px solid var(--gray200);background:var(--gray50);color:var(--gray500)}.chan.active{color:var(--indigo600);border-color:var(--indigo400);background:var(--indigo50)}.mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#1118276b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:flex-end;justify-content:center}.sheet{background:#fff;width:100%;max-width:520px;border-radius:20px 20px 0 0;padding:20px 18px calc(env(safe-area-inset-bottom) + 18px);box-shadow:var(--shadow-pop);max-height:calc(100dvh - max(env(safe-area-inset-top),16px) - 16px);overflow-y:auto}.sheet h3{margin:0 0 12px;font-size:16px;font-weight:600}.sheet .sheet-sub{font-size:12px;color:var(--gray400);margin-bottom:12px}.sheet .qr{background:var(--gray50);border:1px solid var(--gray200);border-radius:10px;padding:12px;font-size:11px;word-break:break-all;max-height:150px;overflow:auto;white-space:pre-wrap;color:var(--gray600);font-family:ui-monospace,Menlo,Consolas,monospace}.qr-box{display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--gray200);border-radius:12px;padding:14px;margin:4px 0 10px}.qr-box svg{display:block;width:180px;height:180px}.auth{min-height:100%;display:flex;flex-direction:column;max-width:460px;width:100%;margin:0 auto;padding:max(env(safe-area-inset-top),14px) 18px calc(env(safe-area-inset-bottom) + 24px)}.auth-back{align-self:flex-start;display:flex;align-items:center;gap:4px;background:none;border:none;color:var(--gray500);font-size:14px;padding:6px 2px;cursor:pointer}.auth-brand{text-align:center;margin:22px 0 20px}.auth-logo{width:64px;height:64px;margin:0 auto;border-radius:14px;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#8b5cf6;box-shadow:0 8px 22px #8b5cf659}.auth-logo img{width:100%;height:100%;display:block;object-fit:cover}.auth-title{font-size:22px;font-weight:700;letter-spacing:1px;margin-top:14px}.auth-tag{color:var(--gray400);font-size:12px;margin-top:5px;letter-spacing:2px}.auth-card{background:#fff;border:1px solid var(--gray100);border-radius:18px;padding:18px;box-shadow:var(--shadow-card)}.seg{display:flex;gap:6px;padding:4px;border-radius:12px;background:var(--gray100);margin-bottom:16px}.seg-item{flex:1;padding:9px 0;border:none;border-radius:9px;cursor:pointer;background:transparent;color:var(--gray500);font-size:14px;font-weight:600}.seg-item.active{background:#fff;color:var(--indigo600);box-shadow:0 1px 3px #11182714}.auth-err{margin-top:10px;font-size:12.5px;color:var(--amber600);line-height:1.5;background:var(--amber50);border:1px solid rgba(245,158,11,.28);border-radius:10px;padding:8px 10px}.code-row{display:flex;gap:8px;align-items:stretch}.code-row input{flex:1 1 auto;min-width:0;letter-spacing:3px;font-weight:600}.code-btn{flex:0 0 auto;padding:0 13px;border-radius:10px;cursor:pointer;border:1px solid var(--indigo200);background:var(--indigo50);color:var(--indigo600);font-size:13px;font-weight:600;white-space:nowrap}.code-btn:disabled{color:var(--gray400);background:var(--gray100);border-color:var(--gray200);cursor:default}.auth-ok{margin-top:10px;font-size:12.5px;color:var(--indigo600);line-height:1.5;background:var(--indigo50);border:1px solid var(--indigo200);border-radius:10px;padding:8px 10px}.auth-foot{text-align:center;margin-top:auto;padding-top:22px}.syn-legend{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:center;margin-top:10px;font-size:11.5px;color:var(--gray500)}.syn-legend span{display:inline-flex;align-items:center;gap:5px}.syn-legend i{width:9px;height:9px;border-radius:50%;display:inline-block}.link-list{display:flex;flex-direction:column;gap:8px}.link-row{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--gray800)}.link-row .dot{width:8px;height:8px;border-radius:50%;flex:none}.link-row .lab{flex:1;line-height:1.5}@media (min-width: 560px){.stage{padding:32px 0}.phone{height:min(920px,calc(100vh - 64px));border-radius:22px;border:1px solid #E3E7EE;box-shadow:0 20px 60px #11182724}}@media (min-width: 768px){.stage{padding:0}.phone{max-width:none;height:100vh;height:100dvh;flex-direction:row;border-radius:0;box-shadow:none;border:0}.tabbar{display:none}.rail{display:flex;flex-direction:column;align-items:center;flex:none;width:76px;background:#fff;border-right:1px solid var(--gray100);padding:16px 0 12px}.rail-logo{width:34px;height:34px;border-radius:8px;flex:none;margin-bottom:16px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#8b5cf6}.rail-logo img{width:100%;height:100%;display:block;object-fit:cover}.rail button{width:60px;height:56px;margin-bottom:4px;border:0;background:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:12px;color:var(--gray400);font-size:10px;font-weight:500;transition:background .15s,color .15s}.rail button svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.rail button.on{background:var(--indigo50);color:var(--indigo500)}.rail-fill{flex:1}.topbar{display:flex;flex:none;align-items:center;gap:12px;height:56px;padding:0 24px;background:#fff;border-bottom:1px solid var(--gray100)}.topbar .tb-title{font-size:15px;font-weight:600;color:var(--gray900);line-height:1.15}.topbar .tb-sub{font-size:11px;color:var(--gray400);margin-top:2px}.topbar .tb-fill{flex:1}.topbar .tb-tag{font-size:11px;color:var(--gray400);background:var(--gray50);border-radius:999px;padding:4px 10px;flex:none}.topbar .tb-credit{display:flex;align-items:center;gap:9px;height:34px;padding:0 6px 0 14px;border-radius:999px;background:var(--indigo50);color:var(--indigo600);font-size:12px;font-weight:600;flex:none}.topbar .tb-buy{border:0;height:24px;padding:0 11px;border-radius:999px;background:var(--indigo500);color:#fff;font-size:11px;font-weight:600;cursor:pointer}.screen{padding-bottom:40px}.page-col{max-width:880px;margin:0 auto;padding:24px}.page-header{display:none}.mask{align-items:center}.sheet{border-radius:20px;padding:22px}.sheet .qr{max-height:200px}}@media (min-width: 1000px){.page-col.wide{max-width:1180px}.page-col.wide .split{display:grid;gap:16px;align-items:start;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr)}.page-col.wide .split>.split-main,.page-col.wide .split>.split-side{min-width:0}.page-col.wide .split .card{margin-bottom:12px}}.zg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:4px}@media (max-width: 380px){.zg-grid{gap:6px}}.zg-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px 8px;border-radius:12px;border:1px solid transparent;background:var(--gray50);cursor:pointer;transition:background .15s,border-color .15s;font-family:inherit}.zg-item .sym{font-size:22px;line-height:1.15}.zg-item .nm{font-size:12px;font-weight:600;color:var(--gray700)}.zg-item .dt{font-size:9.5px;color:var(--gray400)}.zg-item:hover{background:var(--gray100)}.zg-item.on{background:var(--indigo50);border-color:var(--indigo200)}.zg-item.on .nm{color:var(--indigo600)}.zg-me{position:absolute;top:4px;right:7px;font-size:9px;font-weight:700;color:var(--indigo500)}.zdetail{margin-top:12px;padding:14px;border-radius:12px;background:var(--gray50)}.zdetail-head{display:flex;align-items:center;gap:10px}.zdetail-head .zsym{font-size:26px}.zdetail-head .zname{font-size:14px;font-weight:700;display:flex;align-items:center;gap:6px}.zdetail-head .zme-tag{font-size:9.5px;font-weight:600;color:var(--indigo600);background:var(--indigo50);border:1px solid var(--indigo200);border-radius:99px;padding:1px 7px}.zdetail-head .zdate{font-size:11px;color:var(--gray400);margin-top:2px}.zscore-head{display:flex;align-items:center;gap:14px;margin-top:12px}.zscore-big{font-size:40px;font-weight:800;line-height:1;color:var(--gray900);font-variant-numeric:tabular-nums}.zscore-rows{display:flex;flex-direction:column;gap:7px;margin-top:14px}.zscore-row{display:flex;align-items:center;gap:8px;font-size:12px}.zscore-row .lb{width:30px;color:var(--gray500);flex:none}.zscore-row .bar{flex:1;height:6px;border-radius:3px;background:var(--gray100);overflow:hidden}.zscore-row .bar i{display:block;height:100%;border-radius:3px}.zscore-row .v{width:24px;text-align:right;color:var(--gray700);font-variant-numeric:tabular-nums}.zwhy{margin-top:12px;padding:10px 12px;border-radius:10px;background:#fff;border:1px solid var(--gray100);font-size:12.5px;color:var(--gray600);line-height:1.6}.zwhy b{color:var(--gray800)}.zheadline{margin-top:14px;padding:10px 12px;border-radius:10px;background:linear-gradient(135deg,var(--indigo50),transparent);border:1px solid var(--indigo200);font-size:13px;font-weight:600;color:var(--indigo600)}.ztexts{display:flex;flex-direction:column;gap:10px;margin-top:12px}.ztext{display:flex;gap:10px;font-size:13px;line-height:1.65}.ztext-dim{flex:none;width:34px;padding-top:1px;font-size:12px;font-weight:700}.ztext-body{color:var(--gray700)}.zlucky{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;padding:10px 12px;border-radius:10px;background:#fff;border:1px solid var(--gray100);font-size:12.5px;color:var(--gray500)}.zlucky b{color:var(--gray900);font-weight:700;margin-left:4px}.ztip{margin-top:12px;padding:10px 12px;border-radius:10px;background:var(--gray50);border:1px solid var(--gray100);font-size:12.5px;color:var(--gray600);line-height:1.6}body{background:#04060f}.cosmos{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;background:radial-gradient(120% 80% at 50% -12%,#182a57,#182a5700 55%),radial-gradient(80% 55% at 88% 18%,#6366f133,#6366f100 60%),radial-gradient(70% 50% at 12% 78%,#a88bfa29,#a88bfa00 60%),linear-gradient(180deg,#0a1430,#04060f)}.cosmos-canvas{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none}.stage,.phone,.screen{background:transparent}.card{background:#ffffffb8;-webkit-backdrop-filter:blur(14px) saturate(1.15);backdrop-filter:blur(14px) saturate(1.15);border-color:#ffffff8c;box-shadow:0 10px 34px #02050c61}.card h2{color:#0c1430}.card.clear,.setcard.clear{background:transparent;border-color:#ffffff4d;box-shadow:inset 0 1px #ffffff14;-webkit-backdrop-filter:none;backdrop-filter:none;color:#eaf0ffe0}.card.clear h2{color:#eaf0ffeb}.card.clear .muted{color:#eaf0ff9e}.card.clear label{color:#eaf0ffad}.card.clear .note{color:#eaf0ff9e}.card.clear .note.err{color:var(--red400)}.card.clear .note.warn{color:var(--amber400)}.card.clear .note .qq{color:#eaf0ff}.card.clear .ghost{border-color:#ffffff4d;color:#eaf0ffc7}.card.clear .ghost:hover{border-color:var(--indigo300);color:var(--indigo300)}.card.clear .link-btn{color:var(--indigo300)}.card.clear .link-row{color:#eaf0ffd6}.tune-bar{background:transparent;border-color:#ffffff4d;box-shadow:inset 0 1px #ffffff14}.tune-bar .tb-label{color:#eaf0ff8c}.tune-bar .birth-sum{color:#eaf0ffd9}.tune-bar .opt{background:#ffffff14;color:#eaf0ffb8}.tune-bar .opt.on{background:#6366f138;color:var(--indigo200);border-color:#a5b4fc8c}.tune-bar .opt.tune-entry.dirty{border-color:#ffffff73;color:#eaf0ff}.seg.mode-seg{background:#ffffff14}.seg.mode-seg .seg-item{color:#eaf0ff9e}.seg.mode-seg .seg-item.active{background:#6366f138;color:var(--indigo200);box-shadow:none}.card.clear .inv-code{background:transparent;border-color:#ffffff4d;color:#eaf0ff}.card.clear .inv-link{color:#eaf0ffb8}.card.clear .body-row{background:transparent}.card.clear .body-row .pos{color:#eaf0ffe0}.card.clear .body-row+.body-row{box-shadow:inset 0 1px #ffffff1a}.card.clear .badge{background:#ffffff1f;color:#eaf0ffcc}.card.clear .body-row .sym{color:#eaf0ffeb}.card.clear .body-row .nm{color:#eaf0ff9e}.card.clear .hbadge{background:#ffffff1f;color:#eaf0ffb8}.card.clear .badge.r{background:#f8717129;color:var(--red400)}.card.clear .badge.warn{background:#fbbf2429;color:var(--amber400)}.card.clear .body-row.click:hover,.card.clear .asp-row.click:hover{background:#ffffff14}.card.clear .body-row.on,.card.clear .asp-row.on{background:#6366f138}.card.clear .body-row.on .nm{color:var(--indigo300)}.card.clear .asp-row{color:#eaf0ffd6}.card.clear .asp-row .orb,.card.clear .asp-none{color:#eaf0ff8c}.card.clear.birth-fix .note{color:#eaf0ffdb}.card.clear .zg-item{background:transparent;border-color:#ffffff24}.card.clear .zg-item:hover{background:#ffffff14}.card.clear .zg-item.on{background:#6366f138;border-color:var(--indigo400)}.card.clear .zg-item .nm{color:#eaf0ffe0}.card.clear .zg-item .dt{color:#eaf0ff73}.card.clear .zg-me{color:var(--indigo300)}.card.clear .zdetail{background:transparent;color:#eaf0ffd9}.card.clear .zdetail-head .zdate{color:#eaf0ff73}.card.clear .zdetail-head .zme-tag{background:#6366f138;border-color:#818cf880;color:var(--indigo300)}.card.clear .zscore-big{color:#eaf0ff}.card.clear .zscore-row .lb{color:#eaf0ff8c}.card.clear .zscore-row .bar{background:#ffffff1f}.card.clear .zscore-row .v{color:#eaf0ffcc}.card.clear .zheadline{background:#6366f124;border-color:#818cf873;color:var(--indigo200)}.card.clear .ztext-body{color:#eaf0ffcc}.card.clear .zlucky,.card.clear .zwhy{background:#ffffff0f;border-color:#ffffff24;color:#eaf0ff9e}.card.clear .zlucky b,.card.clear .zwhy b{color:#eaf0ffeb}.card.clear .ztip{background:#ffffff0f;border-color:#ffffff24;color:#eaf0ffb3}.card.clear .sky-item{background:transparent;border:1px solid rgba(255,255,255,.12)}.card.clear .sky-item .sym{color:#eaf0ffeb}.card.clear .sky-item .nm{color:#eaf0ff80}.card.clear .sky-item .pos{color:#eaf0ffc7}.card.clear .sky-item .rx{color:var(--red400)}.card.clear input,.card.clear select,.card.clear .tfield{background:transparent;border-color:#ffffff4d;color:#eaf0ff;color-scheme:dark}.card.clear input::placeholder{color:#eaf0ff61}.card.clear input:focus,.card.clear select:focus,.card.clear .tfield:focus-within{background:#ffffff14;border-color:var(--indigo400)}.setcard.clear .sc-title{color:#eaf0ff9e}.setcard.clear .srow{border-top-color:#ffffff1a}.setcard.clear .sl{color:#eaf0ffe0}.setcard.clear .sl .muted{color:#eaf0ff9e}.setcard.clear .inset{color:#eaf0ff8c}.setcard.clear .cancel{border-color:#ffffff42;color:#eaf0ffc7}.setcard.clear .cancel:active{background:#ffffff14}.setcard.clear .link-btn{color:var(--indigo300);font-weight:600}.ev-list{margin-top:8px;display:flex;flex-direction:column}.ev-row{display:flex;align-items:center;justify-content:space-between;padding:10px 2px;border-top:1px solid rgba(255,255,255,.08)}.ev-row:first-child{border-top:none}.ev-left{min-width:0}.ev-label{font-size:14px;color:#eaf0ffe0}.ev-time{font-size:12px;color:#eaf0ff73;margin-top:2px}.ev-delta{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.ev-delta.plus{color:#7ee0a8}.ev-delta.minus{color:#eaf0ffb8}.ev-more{margin-top:6px;padding-top:4px;text-align:center}.ev-more .link-btn{font-size:13px;padding:6px 4px;width:100%;color:var(--indigo300)}.ev-more .link-btn:disabled{opacity:.5;cursor:default;text-decoration:none}.wheel-stage .syn-legend,.wheel-stage .note{color:#eaf0ff9e}.wheel-stage .note.err{color:var(--red400)}.wheel-stage .note .link-like{color:var(--indigo300)}.page-header h1{color:#eaf0ff}.page-header .sub{color:#eaf0ff9e}.page-header .page-date{color:#eaf0ffd1}.tabbar{background:#080e1ed1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid rgba(255,255,255,.08)}.tabbar button{color:#eaf0ff80}.tabbar button.on{color:var(--indigo300)}.rail{background:#080e1e80;border-right:1px solid rgba(255,255,255,.07)}.rail button{color:#eaf0ff80}.rail button.on{background:#6366f12e;color:var(--indigo300)}.topbar{background:#080e1e99;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.07)}.topbar .tb-title{color:#eaf0ff}.topbar .tb-sub{color:#eaf0ff99}.topbar .tb-tag{color:#eaf0ffb3;background:#ffffff14}.topbar{position:relative;z-index:20}.topbar .tb-bell{position:relative;width:34px;height:34px;flex:none;border:0;border-radius:50%;cursor:pointer;background:var(--gray100);color:var(--gray500);display:flex;align-items:center;justify-content:center}.topbar .tb-bell svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.topbar .tb-bell.on{background:var(--indigo50);color:var(--indigo600)}.topbar .tb-bell .dot{position:absolute;top:-3px;right:-4px;min-width:15px;height:15px;padding:0 4px;border-radius:999px;background:#e03131;color:#fff;font-size:10px;font-weight:700;line-height:15px;text-align:center;border:2px solid rgba(8,14,30,.75)}.topbar .tb-avatar{width:34px;height:34px;flex:none;border:0;border-radius:50%;cursor:pointer;padding:0;background:var(--indigo500);color:#fff;font-size:14px;font-weight:650;line-height:1;display:flex;align-items:center;justify-content:center}.topbar .tb-avatar.guest{background:var(--gray100);color:var(--gray500)}.topbar .tb-avatar.guest svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.tb-notif{position:absolute;top:calc(100% - 6px);right:24px;z-index:60;width:336px;max-width:calc(100vw - 40px);max-height:min(440px,62vh);overflow:auto;background:#fff;border:1px solid var(--gray100);border-radius:14px;box-shadow:0 18px 44px #080e1e4d;padding:6px}.tb-notif .tn-head{display:flex;align-items:center;justify-content:space-between;padding:8px 10px 6px}.tb-notif .tn-h{font-size:12.5px;font-weight:650;color:var(--gray900)}.tb-notif .tn-readall{border:0;background:none;padding:2px 4px;cursor:pointer;font-size:11.5px;font-weight:600;color:var(--indigo600)}.tb-notif .tn-empty{padding:26px 10px;text-align:center;font-size:12.5px;color:var(--gray400)}.tb-notif .tn-item{display:block;width:100%;text-align:left;cursor:pointer;border:0;background:none;border-radius:10px;padding:9px 10px;font:inherit}.tb-notif .tn-item:hover{background:var(--gray50)}.tb-notif .tn-item.unread{background:var(--indigo50)}.tb-notif .tn-item.unread:hover{background:#e5eaff}.tb-notif .tn-title{font-size:13px;font-weight:600;color:var(--gray900);line-height:1.45}.tb-notif .tn-body{font-size:12.5px;color:var(--gray600);line-height:1.55;margin-top:3px;white-space:pre-wrap}.tb-notif .tn-time{font-size:11px;color:var(--gray400);margin-top:5px}.tune-bar .birth-sum.incomplete{color:var(--amber400)}.badge.warn{color:var(--amber600);background:var(--amber50)}.birth-fix .primary{width:auto;margin-top:10px;padding:10px 18px;font-size:14px}.birth-fix .note{color:var(--gray800)}.inv-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}.inv-row .btn-sm{display:inline-flex;align-items:center;gap:5px}.inv-code{flex:1 1 auto;min-width:0;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:19px;font-weight:600;letter-spacing:4px;color:var(--gray800);background:var(--gray50);border:1px dashed var(--gray300);border-radius:10px;padding:9px 12px;user-select:all;-webkit-user-select:all}.inv-link{flex:1 1 auto;min-width:0;height:30px;padding:0 10px;border:1px solid var(--gray200);border-radius:8px;background:var(--gray50);color:var(--gray500);font-size:12px}.auth-opt{font-size:11px;font-weight:400;color:var(--gray400);border:1px solid var(--gray200);border-radius:999px;padding:1px 7px;margin-left:4px}.auth-tip{margin-top:8px;font-size:12.5px;color:var(--indigo600);line-height:1.5}.agree-row{display:flex;align-items:flex-start;gap:8px;margin-top:16px}.agree-row input[type=checkbox]{flex:0 0 auto;width:16px;height:16px;margin:1px 0 0;accent-color:var(--indigo600);cursor:pointer}.agree-text{font-size:12.5px;line-height:1.6;color:var(--gray600)}.link-inline{background:none;border:none;padding:0;margin:0;color:var(--indigo600);font-size:12.5px;cursor:pointer;text-decoration:none}.link-inline:hover{text-decoration:underline}.soon{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--amber50);color:var(--amber600);border:1px solid var(--amber400);font-size:11px;font-weight:600;vertical-align:1px}.ztip-disclaimer,.ai-disclaimer{margin-top:8px;font-size:11.5px;line-height:1.5;color:#eaf0ff73}.ai-disclaimer{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08)}.legal-page{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;flex-direction:column;background:transparent}.legal-bar{flex:none;display:flex;align-items:center;gap:12px;height:56px;padding:0 16px;background:#080e1e99;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.07)}.legal-back{flex:none;border:0;background:none;cursor:pointer;color:var(--indigo300);font-size:14px;font-weight:600;padding:6px 0}.legal-seg{flex:1;display:flex;justify-content:center;gap:4px;background:#ffffff14;border-radius:999px;padding:3px}.legal-seg button{border:0;background:none;cursor:pointer;font-size:13px;font-weight:600;color:#eaf0ff99;padding:6px 14px;border-radius:999px;transition:background .15s,color .15s}.legal-seg button.on{background:var(--indigo500);color:#fff}.legal-bar-spacer{flex:none;width:44px}.legal-wrap{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;width:100%;max-width:720px;margin:0 auto;padding:16px 16px 48px}.legal-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px}.legal-mark{font-size:22px;color:var(--indigo300);line-height:1}.legal-title{font-size:18px;font-weight:700;color:#eaf0ff}.legal-date{font-size:12px;color:#eaf0ff73;margin-top:4px}.legal-highlight{background:#6366f126;border:1px solid rgba(99,102,241,.3);border-radius:14px;padding:14px;margin-bottom:12px;font-size:13.5px;line-height:1.6;color:#c7d2fe}.legal-sec{background:#fff;border:1px solid var(--gray100);border-radius:16px;padding:16px;margin-bottom:12px;box-shadow:var(--shadow-card)}.legal-sec h3{margin:0 0 8px;font-size:15px;font-weight:700;color:var(--gray900)}.legal-sec p{margin:0 0 8px;font-size:13.5px;line-height:1.7;color:var(--gray500)}.legal-sec p:last-child{margin-bottom:0}.legal-bullet{display:flex;gap:8px;margin-top:6px;font-size:13.5px;line-height:1.7;color:var(--gray500)}.legal-bullet>span:first-child{flex:none;color:var(--indigo400);font-weight:700}.legal-link{margin-top:10px}.legal-link a{color:var(--indigo600);font-size:13px;font-weight:600;text-decoration:none}.legal-link a:hover{text-decoration:underline}.legal-foot{text-align:center;font-size:12px;color:#eaf0ff66;margin-top:8px}.cal-card{padding:14px 14px 10px}.cal-bar{display:flex;align-items:center;gap:10px;margin-bottom:12px}.cal-title{flex:1;text-align:center;font-size:16px;font-weight:600;color:#eaf0ff;letter-spacing:.3px}.cal-nav{width:34px;height:34px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#eaf0ff;font-size:20px;line-height:1;cursor:pointer}.cal-nav:hover{background:#ffffff1a}.cal-today{margin-left:auto;padding:7px 14px;border-radius:10px;border:1px solid rgba(124,92,255,.5);background:#7c5cff29;color:#c7b8ff;font-size:13px;font-weight:600;cursor:pointer}.cal-week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:6px}.cal-wd{text-align:center;font-size:11.5px;color:#eaf0ff73;padding:2px 0}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;aspect-ratio:1 / 1;border:none;background:transparent;border-radius:10px;cursor:pointer;padding:0;color:#eaf0ff;transition:background .15s}.cal-day:hover{background:#ffffff0f}.cal-day.out{opacity:.32}.cal-day .cal-solar{font-size:15px;font-weight:600;line-height:1}.cal-day .cal-lunar{font-size:10.5px;line-height:1;color:#eaf0ff99}.cal-day .cal-lunar.term{color:#fbbf24;font-weight:600}.cal-day.today{box-shadow:0 0 0 2px #7c5cff inset;background:#7c5cff24}.cal-day.sel{background:#7c5cff47}.cal-foot{margin-top:12px;text-align:center;font-size:11px;color:#eaf0ff66;letter-spacing:.2px}.cal-detail-card{margin-top:0}.cal-detail-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.cal-detail-date{font-size:15px;font-weight:600;color:#eaf0ffeb;letter-spacing:.3px}.cal-detail-today{padding:2px 8px;border-radius:999px;background:#7c5cff38;border:1px solid rgba(124,92,255,.55);color:#c7b8ff;font-size:11.5px;font-weight:600}.cal-detail{display:flex;gap:16px;align-items:center}.cal-detail-main{flex:1;min-width:0}.cal-detail-lunar{font-size:24px;font-weight:700;color:#eaf0ff;letter-spacing:1px}.cal-detail-sub{margin-top:6px;font-size:13px;color:#eaf0ffa8}.cal-detail-term{margin-top:8px;display:inline-block;padding:3px 10px;border-radius:999px;background:#fbbf2429;color:#fbbf24;font-size:12.5px;font-weight:600}.cal-moon{display:flex;flex-direction:column;align-items:center;min-width:84px}.cal-moon-glyph{font-size:46px;line-height:1}.cal-moon-name{margin-top:4px;font-size:13px;color:#eaf0ff;font-weight:600}.cal-moon-illum{font-size:11.5px;color:#eaf0ff94;margin-top:2px}.cal-detail-note{margin-top:14px;font-size:11.5px;color:#eaf0ff73}.cal-day .cal-lunar.fest{color:#f9a8d4;font-weight:600}.cal-day.has-fest{background:#f472b614}.cal-detail-fest{margin-top:8px;display:flex;flex-wrap:wrap;gap:6px}.cal-fest-tag{padding:3px 10px;border-radius:999px;background:#f472b629;color:#f9a8d4;font-size:12.5px;font-weight:600}.cal-detail-jqtime{color:#fbbf24d1;font-weight:500;margin-left:2px}.cal-islamic{margin-top:8px;font-size:12.5px;color:#eaf0ff94}.cal-shichen{margin-top:16px}.cal-shichen-title{font-size:12px;color:#eaf0ff85;margin-bottom:8px;letter-spacing:.3px}.cal-shichen-row{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.cal-shichen-chip{display:flex;flex-direction:column;align-items:center;gap:1px;padding:6px 0;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1)}.cal-shichen-chip .cal-shichen-name{font-size:14px;font-weight:600;color:#eaf0ffb8}.cal-shichen-chip .cal-shichen-range{font-size:9.5px;color:#eaf0ff6b}.cal-shichen-chip.on{background:#7c5cff38;border-color:#7c5cff99}.cal-shichen-chip.on .cal-shichen-name{color:#c7b8ff}.cal-shichen-chip.on .cal-shichen-range{color:#c7b8ffbf}
