:root{color-scheme:light;--bg:#f7f6f2;--panel:#fffefa;--line:#d8ded6;--text:#293e38;--muted:#626e65;--gold:#3c6154;--rose:#ead5d6;--mint:#dce8de;--blue:#dfe6f2;--ink:#244b40;--serif:Georgia,'Songti SC','STSong','Noto Serif CJK SC',serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.7 -apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif}button,input,select{font:inherit}button{cursor:pointer;color:inherit;border:0;transition:background .2s,box-shadow .2s,transform .2s}button:hover{box-shadow:0 5px 16px #234a4010}button:active{transform:translateY(1px)}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #366650;outline-offset:4px}aside{position:fixed;inset:0 auto 0 0;width:224px;background:#eeefe8;border-right:1px solid #d8ded3;padding:37px 20px 25px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:13px;padding:0 13px}.brand-mark{font:italic 56px/.9 Georgia;letter-spacing:-6px;color:#325d4d}.brand-name{font:27px/1.25 var(--serif);letter-spacing:5px}.brand small{display:block;font:8px/2.5 -apple-system,sans-serif;letter-spacing:1px;white-space:nowrap;color:#627266}.nav-short{display:none}nav{display:grid;gap:8px;margin-top:48px}nav button{display:flex;align-items:center;gap:15px;text-align:left;background:none;border-radius:8px;padding:13px 17px;font-size:22px;color:#586a5e}nav button span{font-size:14px;letter-spacing:1px}nav button.active{background:#d9e3d7;color:#254b3b;box-shadow:inset 3px 0 #507660}nav button:hover{background:#e1e7dc}.sidebar-bottom{margin-top:auto;padding:30px 13px 0}.sidebar-bottom img{display:block;width:100%;height:107px;object-fit:cover;object-position:50% 42%;border-radius:70px 70px 3px 3px;filter:saturate(.6)}.sidebar-bottom p{font:14px/1.8 var(--serif);margin:16px 0 3px;white-space:nowrap}.sidebar-bottom small{font-size:9px;letter-spacing:1.8px;color:#5b6c60}main{margin-left:224px;padding:0 45px;max-width:1720px}header{height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.breadcrumb{font-size:13px;color:var(--muted)}.breadcrumb span{margin:0 15px;color:#9aa499}.breadcrumb b{font-weight:400;color:var(--text)}.header-right{display:flex;align-items:center;gap:18px}.demo,.tag{display:inline-block;font-size:12px;line-height:1.5;padding:5px 11px;border:1px solid #a9b9ad;border-radius:20px;color:#4b6255;background:#ffffff35}.avatar{width:37px;height:37px;border-radius:50%;background:#ead6d8;color:#78505b;font-family:var(--serif)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:33px 0 29px}.eyebrow{font-size:11px;letter-spacing:2px;color:#5f7264;font-weight:500}h1,h2,h3,p{overflow-wrap:anywhere}h1{font:38px/1.5 var(--serif);font-weight:400;letter-spacing:1px;margin:8px 0 5px}h2{font:24px/1.5 var(--serif);font-weight:400;margin:9px 0}h3{font-size:18px;font-weight:500;margin:7px 0}p{color:var(--muted);line-height:1.9;margin:8px 0}.page-heading p{font-size:14px}.greeting-mark{display:inline-block;font:32px/1 Georgia;color:#a87780;margin-left:18px;vertical-align:middle}.gold{color:var(--gold)}small{font-size:12px;color:var(--muted)}.outline{background:#fffefa7a;border:1px solid #abb8ac;border-radius:6px;padding:11px 17px;font-size:14px;color:#395342}.outline:hover{background:#edf0e7}.primary{background:#345c4c;border:1px solid #345c4c;color:#fffefa;border-radius:6px;padding:12px 22px;font-size:14px;font-weight:500;letter-spacing:.5px}.primary:hover{background:#244936}.top-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(285px,1fr);gap:22px}.card{border:1px solid var(--line);background:var(--panel);border-radius:10px}.universe{padding:24px 27px 0;position:relative;isolation:isolate;background:#e5eee5;overflow:hidden}.canvas-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;opacity:.48}.sea-art{opacity:.12;object-position:center 60%}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-heading h2{margin-top:5px}.chart-body{display:flex;align-items:center;gap:12px;min-height:280px}.wheel-wrap{width:59%;flex-shrink:0}.wheel-wrap svg{display:block;width:100%}.placements{flex:1;min-width:0}.placements>div{display:flex;align-items:center;gap:11px;margin:0 0 21px}.planet{font-size:28px;color:#426d59}.placements h3{font:20px/1.6 var(--serif);white-space:nowrap;margin:3px 0}.placements small{font-size:12px;color:#506557}.placements em{font-size:11px;font-style:normal;margin-left:7px;color:#596e5e}.text-btn{font-size:14px;padding:0;background:none;color:#325e49;text-decoration:none}.text-btn:hover{text-decoration:underline;box-shadow:none}.universe footer{border-top:1px solid #b9cabb;padding:12px 0;font-size:12px;color:#516457}.insight{padding:26px 28px 25px;position:relative;isolation:isolate;overflow:hidden;background:#e9d6d9;border-color:#d9c6ca;display:flex;flex-direction:column;align-items:flex-start}.insight>.eyebrow{color:#6d525b}.small-star{position:absolute;right:23px;top:51px;font-size:39px;color:#64826a}.insight>.tag{margin:20px 0 12px;background:#f9f5ed88;border-color:#b3989c;color:#70515a;font-size:11px}.insight h2{font:32px/1.65 var(--serif);letter-spacing:1px;color:#573f49;margin:2px 0 9px}.insight p{font-size:14px;color:#654f57}.insight-bottom{margin-top:auto;padding-top:17px;width:100%;border-top:1px solid #bfa6ad}.insight-bottom>span{font-size:12px;color:#674954}.insight-bottom p{margin:5px 0 12px}.insight-bottom button{border-color:#a98e96;background:#f5e9e58c;color:#654652}.quick-launch{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:22px 0 0}.quick-launch button{position:relative;text-align:left;padding:19px 24px;border:1px solid #c8d1e0;border-radius:8px;background:#e4eaf4;color:#3e4c64;font-size:16px}.quick-launch button:nth-child(2){background:#eeeadd;border-color:#dcd6c4;color:#615a42}.quick-launch b{font:30px/1.3 var(--serif);margin-right:12px;font-weight:400}.quick-launch span{display:block;font-size:13px;color:#53627a;margin:4px 0 0}.quick-launch button:nth-child(2) span{color:#6b664f}.section-line{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:28px 0 15px}.section-line h2{font-size:22px;margin:0}.section-line>span{font-size:10px;color:#6a786b;letter-spacing:1.6px}.explore-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.explore{display:flex;text-align:left;padding:24px;gap:21px;background:#fffefa}.explore small{font-size:11px;letter-spacing:1.6px}.explore h3{font:22px/1.5 var(--serif);margin:7px 0}.explore p{font-size:14px;margin:7px 0 13px}.feature-icon{display:grid;place-items:center;height:55px;min-width:55px;border:1px solid #afc2ae;border-radius:50%;font:28px/1 var(--serif);background:#e8eee1;color:#4f6a50}.rose{background:#efe0e2;border-color:#cdb5bb;color:#8b616d}.chat-strip{display:flex;align-items:center;gap:20px;margin:25px 0 30px;padding:22px 24px;background:#eeede5;border-radius:8px}.ai-mark{display:grid;place-items:center;width:52px;height:52px;flex-shrink:0;border-radius:18px 18px 18px 4px;background:#d7e3dd;color:#456957;font:25px/1 var(--serif);border:1px solid #aebfb1}.chat-strip h3{font:21px/1.5 var(--serif);margin:0}.chat-strip p{font-size:13px;margin:3px 0}.chat-strip button{margin-left:auto}.page-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:20px 0 25px;color:#687369;font-size:12px}.page-footer span:first-child{letter-spacing:2px}.tabs{display:flex;gap:6px;margin-bottom:24px;border-bottom:1px solid var(--line)}.tabs button{background:none;padding:12px 24px;color:#627065;font-size:15px;border-bottom:2px solid transparent}.tabs button.active{border-color:#416a50;color:#30553f;background:#e9eee4}.detail{padding:30px;margin-bottom:24px}.detail>p{font-size:16px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:27px;margin-top:28px}.three>div{border-top:1px solid #bacabc;padding:24px 2px 10px}.three span{font-size:13px;color:#4a7154}.three h3{font:21px/1.6 var(--serif);margin:15px 0}.three p{font-size:16px}.footnote{font-size:12px!important;color:#626e66;display:block;line-height:1.9;margin-top:18px}.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:25px 0 30px}.pillars>div{background:#ecede3;border:1px solid #d2d8c7;text-align:center;border-radius:7px;padding:22px 10px}.pillars>div:nth-child(2){background:#e7ebf3;border-color:#cdd6e5}.pillars>div:nth-child(4){background:#efe1e3;border-color:#ddc6cc}.pillars .day{background:#dce8db;border-color:#83a588}.pillars strong{display:block;font:43px/1.7 var(--serif);margin:15px;color:#436448}.pillars span{font-size:14px;color:#576c59}.topic-pills{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}.topic-pills button{border:1px solid #b7c7b8;background:#e6ede4;padding:10px 19px;border-radius:24px;font-size:14px}.pair{display:flex;justify-content:center;align-items:center;gap:32px;margin:10px 0 36px}.person-circle{width:80px;height:80px;display:grid;place-items:center;border:1px solid #a3bda7;border-radius:50%;background:#dfeadd;color:#4c6b50;font:25px/1 var(--serif)}.second{background:#f0dfe2;border-color:#caa9b2;color:#86606b}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:end}.form-grid .primary{grid-column:1/-1;justify-self:center;min-width:200px}label{display:block;font-size:14px;color:#45594a}input,select{display:block;margin-top:8px;width:100%;min-width:0;background:#f9faf5;border:1px solid #b8c5b5;border-radius:6px;color:#304b37;padding:12px;min-height:48px}input:disabled{opacity:.45}input::placeholder{color:#738170}input[type=checkbox]{accent-color:#416d50}.full{grid-column:1/-1}.strategy-layout{display:grid;grid-template-columns:275px 1fr;gap:24px}.module-list{display:grid;gap:8px;align-content:start}.module-list button{display:flex;text-align:left;gap:14px;padding:17px 15px;border:1px solid #d2dccf;border-radius:6px;background:#eef1e9;font-size:14px}.module-list small{font:18px/1.5 var(--serif);color:#5b775b}.module-list button.active{background:#dce7d9;border-color:#779777}.module-item{border-top:1px solid var(--line);margin-top:23px;padding-top:15px}.module-item h3{font:21px/1.6 var(--serif)}.module-item p{font-size:16px}.table-scroll{overflow-x:auto;margin-top:28px}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;white-space:nowrap;padding:14px 12px;border-bottom:1px solid var(--line)}th{background:#e9eee5;font-weight:500;color:#486746}.daily-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.daily-grid .detail{margin:0;background:#edf1e7;border-color:#d2dac9}.daily-grid .detail:nth-child(4n+2){background:#e9edf5;border-color:#cfd8e6}.daily-grid .detail:nth-child(4n+3){background:#f2e4e7;border-color:#e0cdd3}.daily-grid .detail:nth-child(4n){background:#f1eddf;border-color:#ddd7c6}.daily-grid+.detail{margin-top:24px}.daily-actions{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-top:20px}.log-entry{border-top:1px solid var(--line);padding-top:14px}.chatbox{padding:30px;min-height:500px;background:#fbfcf7;border-color:#d1dccd}#messages{min-height:260px;max-height:470px;overflow-y:auto}.message{display:flex;gap:14px;margin:15px 0 25px}.message>span{color:#4e785a;font-size:27px}.message>div{max-width:85%;padding:18px 22px;border-radius:3px 16px 16px;background:#e5eddf;line-height:1.9;font-size:16px;color:#37523c;white-space:pre-wrap}.message.user{justify-content:flex-end}.message.user>div{border-radius:16px 3px 16px 16px;background:#e5eaf5;color:#435775}.suggestions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.suggestions button{background:#f7f8f0;border:1px solid #b9cbb3;border-radius:20px;padding:8px 15px;color:#4e6648;font-size:14px}#chatForm{display:flex;gap:12px}#chatForm input{margin:0}#chatForm button{white-space:nowrap}dialog{width:calc(100% - 36px);max-width:480px;max-height:90dvh;overflow:auto;background:#fcfcf6;border:1px solid #c2cdbb;border-radius:12px;padding:28px;color:var(--text);box-shadow:0 20px 100px #243f4026}dialog::backdrop{background:#233c3655;backdrop-filter:blur(7px)}dialog label{margin-top:15px}dialog p{font-size:14px}dialog .primary{width:100%;margin-top:18px}.close{font-size:28px;background:none;padding:0 7px}.check{display:flex;align-items:center;gap:10px}.check input{width:auto;min-height:0;margin:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#toast{position:fixed;bottom:35px;left:50%;transform:translateX(-50%);background:#345c4c;color:white;border-radius:8px;padding:14px 22px;z-index:20;box-shadow:0 5px 30px #233d3320;font-size:14px;max-width:90%;width:max-content}[hidden]{display:none!important}
@media(min-width:1500px){main{padding:0 65px}.chart-body{min-height:330px}.insight h2{font-size:37px}.insight{padding:30px 35px}}
@media(max-width:1170px){aside{width:190px;padding-left:12px;padding-right:12px}main{margin-left:190px;padding:0 26px}.brand{gap:10px;padding:0 8px}.brand small{font-size:7px}.brand-name{font-size:25px}nav button{padding:12px;gap:12px}.sidebar-bottom{padding-left:10px;padding-right:10px}.sidebar-bottom p{font-size:12px}.top-grid{grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr)}.universe{padding:22px 20px 0}.chart-body{flex-direction:column;gap:0}.wheel-wrap{width:80%;max-width:270px}.placements{display:flex;flex-wrap:wrap;justify-content:space-between;width:100%}.placements>div{gap:6px;margin-bottom:13px}.placements h3{font-size:16px}.placements small{font-size:11px}.placements em{display:none}.planet{font-size:23px}.placements .text-btn{width:100%;text-align:left;margin:3px 0 13px}.insight{padding:25px}.insight h2{font-size:29px}.explore{padding:21px;gap:14px}.explore h3{font-size:20px}.section-line>span{display:none}.strategy-layout{grid-template-columns:1fr}.module-list{grid-template-columns:repeat(2,1fr)}.three{gap:20px}.page-heading h1{font-size:34px}}
@media(max-width:760px){body{font-size:16px}aside{inset:auto 0 0;width:100%;height:auto;min-height:78px;padding:0 8px env(safe-area-inset-bottom);background:#f5f7f0f5;backdrop-filter:blur(14px);border:0;border-top:1px solid #bfcdbc;z-index:10}.brand,.sidebar-bottom{display:none}nav{display:flex;justify-content:space-around;gap:0;margin:0}nav button{flex:1;min-width:0;flex-direction:column;gap:0;padding:9px 1px 8px;font-size:23px;border-radius:0;line-height:1.5}nav .nav-full{display:none}nav .nav-short{display:block;font-size:12px;letter-spacing:0;white-space:nowrap}nav button.active{box-shadow:inset 0 2px #52795b;background:#e3ecdd;color:#315339}nav button:hover{background:#e6ede0}main{margin:0;padding:0 20px calc(94px + env(safe-area-inset-bottom))}header{height:65px}.breadcrumb{font-size:12px}.breadcrumb span{margin:0 10px}.header-right{gap:12px}.demo{font-size:11px}.avatar{width:32px;height:32px}.page-heading{padding:26px 0 23px;gap:12px;flex-wrap:wrap;align-items:flex-start}.eyebrow{font-size:10px;letter-spacing:1.6px}.page-heading h1{font-size:32px;margin:7px 0}.page-heading p{font-size:14px}.greeting-mark{font-size:25px;margin-left:11px}.page-heading .outline{font-size:13px;padding:8px 13px}.top-grid{grid-template-columns:1fr;gap:18px}.universe{padding:21px 20px 0}.card-heading h2{font-size:23px}.card-heading .tag{font-size:11px}.chart-body{flex-direction:row;gap:9px;min-height:230px}.wheel-wrap{width:57%;max-width:none}.placements{display:block}.placements>div{gap:8px;margin-bottom:18px}.placements small{font-size:11px}.placements h3{font-size:18px}.placements .text-btn{font-size:12px;margin:0 0 12px}.planet{font-size:23px}.universe footer{font-size:11px}.insight{min-height:300px;padding:23px 25px}.insight>.tag{margin:16px 0 10px}.insight h2{font-size:31px;line-height:1.55;margin-bottom:7px}.insight>p{margin:3px 0 18px}.insight-bottom{padding-top:16px;margin-top:5px}.small-star{top:48px;right:27px;font-size:40px}.insight .canvas-art{object-position:center 35%;opacity:.45}.quick-launch{gap:12px;margin-top:18px}.quick-launch button{padding:18px 16px;font-size:14px}.quick-launch b{display:block;font-size:29px;margin:0 0 2px}.quick-launch span{font-size:12px;line-height:1.8}.section-line{margin-top:27px}.section-line h2{font-size:22px}.explore-grid{grid-template-columns:1fr;gap:13px}.explore{padding:22px;gap:20px}.explore h3{font-size:23px}.explore small{font-size:10px}.explore p{font-size:14px}.chat-strip{padding:21px 19px;gap:14px;flex-wrap:wrap;margin:22px 0}.chat-strip h3{font-size:20px}.chat-strip p{font-size:12px}.chat-strip button{margin:2px 0 0 auto;padding:10px 17px}.ai-mark{width:45px;height:45px;font-size:23px}.page-footer{gap:15px;font-size:11px;align-items:center}.page-footer span:first-child{white-space:nowrap}.detail{padding:23px;margin-bottom:20px}.detail>p,.three p,.module-item p{font-size:16px}.three{grid-template-columns:1fr;gap:15px;margin-top:24px}.three>div{padding-top:18px}.pillars{gap:8px}.pillars>div{padding:16px 3px}.pillars strong{font-size:34px;margin:12px 0}.pillars small{font-size:11px}.pillars span{font-size:12px}.pair{gap:21px}.person-circle{width:68px;height:68px;font-size:22px}.form-grid{grid-template-columns:1fr;gap:17px}.full{grid-column:auto}.form-grid .primary{width:100%}.tabs button{padding:11px 20px}.module-list{gap:8px}.module-list button{padding:14px 11px;gap:9px;font-size:13px}.module-list small{font-size:17px}.strategy-layout{gap:17px}.daily-grid{grid-template-columns:1fr;gap:15px}.daily-actions{flex-wrap:wrap}.daily-actions label{width:100%}.daily-actions .primary{width:100%}.chatbox{padding:18px;min-height:520px}.message{gap:9px}.message>div{max-width:92%;padding:14px 16px;font-size:15px}.message>span{font-size:23px}.suggestions{gap:8px}.suggestions button{font-size:13px;padding:7px 12px}#chatForm{gap:8px}#chatForm input{font-size:15px}#chatForm button{padding:10px 14px}.footnote{font-size:12px!important}.page-heading>.tag{font-size:11px}#toast{bottom:100px}.sidebar-bottom{display:none}}
@media(max-width:370px){main{padding-left:15px;padding-right:15px}.universe{padding-left:14px;padding-right:14px}.placements small{font-size:10px}.placements h3{font-size:16px}.planet{font-size:20px}.chart-body{gap:5px}.placements>div{gap:5px}.module-list{grid-template-columns:1fr}.card-heading{flex-wrap:wrap}.chat-strip{gap:10px}.chat-strip h3{font-size:18px}}
@media(prefers-reduced-motion:no-preference){.view{animation:appear .28s ease}@keyframes appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}}
@media(min-width:761px) and (max-height:780px){.sidebar-bottom img{height:70px}.sidebar-bottom{padding-top:15px}nav{margin-top:30px;gap:5px}}

/* —— 润嘟嘟真实对话 UI —— */
#chatModeTag[data-mode="live"]{background:#dce8f7;color:#2f5f9a;border-color:#9db6d6}
#chatModeTag[data-mode="mock"]{background:#f3e9d8;color:#8a6230;border-color:#e0c59a}
#chatModeTag[data-mode="offline"]{background:#f6e0e0;color:#8b3a3a;border-color:#e0a8a8}
.chat-toolbar{display:flex;justify-content:flex-end;gap:10px;margin:0 0 12px}
.chat-toolbar .text-btn{font-size:13px}
#messages{max-height:420px;overflow:auto;padding-right:4px;display:flex;flex-direction:column;gap:14px;margin-bottom:16px}
.message.is-streaming .msg-text:after{content:'▍';animation:dida-blink 1s step-end infinite}
@keyframes dida-blink{50%{opacity:0}}
.typing-indicator .typing-dots{display:flex;align-items:center;gap:5px;min-width:52px;padding:12px 16px;background:#fff;border-radius:12px;box-shadow:0 4px 16px #38578306}
.typing-dots i{width:7px;height:7px;border-radius:50%;background:#7a8eb0;opacity:.35;animation:dida-bounce 1.2s infinite ease-in-out}
.typing-dots i:nth-child(2){animation-delay:.15s}
.typing-dots i:nth-child(3){animation-delay:.3s}
@keyframes dida-bounce{0%,80%,100%{transform:translateY(0);opacity:.35}40%{transform:translateY(-4px);opacity:1}}
.chat-error{background:#f8e8e8;color:#8a3030;border:1px solid #e5b4b4;border-radius:8px;padding:10px 14px;margin:0 0 12px;font-size:13px}
#chatForm.is-busy{opacity:.72}
#chatForm.is-busy button{pointer-events:none}
.message>div{white-space:pre-wrap;word-break:break-word}

/* Brand logo */
.brand-logo{width:40px;height:40px;border-radius:10px;object-fit:cover;flex-shrink:0;box-shadow:0 2px 8px #24437622}
.member-badge{font-size:11px;padding:4px 10px;border-radius:20px;background:#dce8f7;color:#2f5f9a;border:1px solid #9db6d6}
.member-badge[data-tier="member"]{background:#e7f3e4;color:#2f6b3a;border-color:#9cc59a}
.member-badge[data-tier="free"]{background:#f3e9d8;color:#8a6230;border-color:#e0c59a}

/* Membership */
.member-tiers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.member-tiers .tier{margin:0}
.member-tiers .price{font-size:22px;color:#2f5f9a;margin:8px 0}
.member-tiers .price b{font-size:34px;font-family:var(--serif)}
.member-tiers .strike{font-size:14px;color:#8a9bb0;text-decoration:line-through;margin-left:6px}
.member-tiers .highlight{border-color:#c4a46a;background:#fbf6ee}
.member-actions{margin:16px 0}
.buy-link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border-radius:10px;text-decoration:none}
.redeem-form label{display:block;margin:12px 0}
.redeem-form input{width:100%;min-height:44px;font-size:16px;padding:10px 14px;border-radius:10px;border:1px solid #c7d5e7}
.refund-notice{margin:10px 0 6px;padding:12px 14px;border-radius:10px;background:#fbf3e6;border:1px solid #e0c59a;color:#6b4a1f;font-size:15px;line-height:1.6}
.refund-notice strong{color:#a0461f}
.redeem-form label.consent-check{display:flex;flex-direction:row;gap:10px;align-items:flex-start;font-size:14px;line-height:1.6;margin:12px 0}
.redeem-form label.consent-check input[type="checkbox"]{display:inline-block;width:20px;height:20px;min-height:0;padding:0;margin:3px 0 0;flex:0 0 20px;border-radius:4px}
.redeem-form label.consent-check span{flex:1;min-width:0}
.consent-check a{color:#2f5f9a;text-decoration:underline}
.redeem-form button[disabled]{opacity:.45;cursor:not-allowed}
.weekly-left{margin:6px 0;color:#2f5f9a}
.weekly-left b{font-size:20px}
.quota-dialog{border:0;border-radius:16px;padding:0;max-width:420px;width:calc(100% - 32px);box-shadow:0 12px 40px #1d335433}
.quota-dialog::backdrop{background:#1d335466}
.quota-body{padding:22px 20px}
.quota-body h2{margin:0 0 10px;font-size:22px;color:#2f5f9a}
.quota-body p{line-height:1.7;color:#45594a}
.quota-packs{display:flex;flex-direction:column;gap:10px;margin:14px 0 6px}
.quota-pack{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:10px;text-decoration:none}
.quota-pack.disabled{background:#eef2f7;color:#8a9bb0}
.quota-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.quota-actions button{min-height:44px;flex:1}
.buy-note{font-size:13px;color:#5d6f86;margin:8px 0}
.member-disclaimer{font-size:12px;line-height:1.7;color:#6b7a8f;margin:20px 4px 8px;padding-top:12px;border-top:1px solid #dbe3ee}
.member-account-actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}
.outline.danger{color:#8a3030;border-color:#e0a8a8}
.auth-tabs{display:flex;gap:8px;margin:12px 0 8px}
.auth-tab{flex:1;min-height:44px;border-radius:10px;background:#e8eef7;border:1px solid #c7d5e7}
.auth-tab.active{background:#365e96;color:#fff;border-color:#365e96}
#authDialog label{display:block;margin-top:12px}
#authDialog input{width:100%;min-height:44px;font-size:16px;padding:10px 12px;border-radius:10px;border:1px solid #c7d5e7}
#authError{color:#8a3030;background:#f8e8e8;padding:10px 12px;border-radius:8px}

@media(max-width:760px){
  .member-tiers{grid-template-columns:1fr}
  .brand-logo{width:32px;height:32px;border-radius:8px}
  aside nav button .nav-short{font-size:9px !important}
}
.member-tiers .tier-flag{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;background:#eef1f4;color:#626e65;font-size:12px;font-weight:400;vertical-align:middle}
.member-tiers .early-left{color:#8a5a1a}.member-tiers .early-left b{font-size:1.1em}

/* AI 回答气泡里的“AI 生成”标识：常驻、属于气泡本身（截图可见） */
.message>div.has-ai-badge{display:flex;flex-direction:column}
.message .msg-text{white-space:pre-wrap;word-break:break-word}
.ai-foot{display:flex;align-items:center;gap:10px;margin-top:10px;user-select:none;-webkit-user-select:none}
.ai-copy{border:0;background:none;padding:2px 4px;font-size:12px;color:#4b6a95;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.ai-badge{align-self:flex-start;margin-top:0;-webkit-user-select:none;padding:1px 8px;border:1px solid #9fb3cf;border-radius:10px;font-size:11px;line-height:1.7;letter-spacing:.5px;color:#4b6a95;background:#ffffffb3;white-space:nowrap;user-select:none}

/* 扫码购买 */
.member-tiers .buy-btn{margin-top:12px;width:100%}
.member-tiers .buy-btn[disabled]{opacity:.55;cursor:not-allowed;font-size:13px}
.buy-dialog{border:0;border-radius:16px;padding:0;max-width:420px;width:calc(100% - 28px);box-shadow:0 12px 40px #1d335433}
.buy-dialog::backdrop{background:#1d335466}
.buy-body{padding:20px 18px}
.buy-body h2{margin:0 0 8px;font-size:21px;color:#2f5f9a}
.buy-body p{line-height:1.7;font-size:14px;margin:8px 0}
.buy-amount b{font-size:24px;color:#244f8e}
.buy-early{background:#eef3fa;border-radius:8px;padding:8px 10px;color:#2f5f9a}
.buy-orderno{display:flex;align-items:center;gap:10px;background:#fff7e6;border:1px dashed #d9a640;border-radius:10px;padding:10px 12px;margin:10px 0}
.buy-orderno span{font-size:13px;color:#7a5a1a}
.buy-orderno b{font:700 28px/1.2 ui-monospace,Menlo,monospace;letter-spacing:3px;color:#8a5a00}
.buy-orderno .text-btn{margin-left:auto}
.qr-tabs{display:flex;gap:8px;margin:10px 0 6px}
.qr-tab{flex:1;border:1px solid #b9c9dd;background:#f6f9fc;border-radius:8px;padding:8px}
.qr-tab.active{background:#244f8e;color:#fff;border-color:#244f8e}
.qr-box{margin:6px auto;text-align:center}
.qr-box img{width:200px;height:200px;max-width:70vw;max-height:70vw;border-radius:8px;border:1px solid #d5deea;background:#fff}
.qr-box figcaption{font-size:12px;color:#6a7f9d}
.buy-tip,.buy-eta,.buy-fine{font-size:12px!important;color:#6a7f9d}
.buy-consent{display:flex;gap:8px;align-items:flex-start;margin:12px 0 4px}
.buy-consent input{width:auto;min-height:0;margin:4px 0 0}
.buy-msg{color:#b0413e;min-height:1em}
.buy-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;align-items:center}
.buy-actions .primary{flex:1 1 100%;margin:0}
.buy-dialog .primary[disabled]{opacity:.45;cursor:not-allowed}
.my-orders h3{margin-top:0}
.order-row{border-top:1px solid #d8e1ec;padding:12px 0}
.order-row:first-of-type{border-top:0}
.order-main{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.order-status{margin-left:auto;font-size:12px;padding:2px 8px;border-radius:10px;background:#e6edf6;color:#2f5f9a}
.order-status.st-confirmed{background:#e3f1e6;color:#2d6a3e}
.order-status.st-rejected,.order-status.st-refund_needed{background:#f8e5e4;color:#a03c37}
.order-sub{font-size:12px;color:#6a7f9d;margin-top:4px}
.order-sub code,.mono{font-family:ui-monospace,Menlo,monospace;letter-spacing:1px}
.order-desc{font-size:13px;color:#45594a;margin:6px 0}
.order-resume{margin-top:6px}
.member-account-actions a.outline{display:inline-flex;align-items:center;text-decoration:none}
/* 隐私：两项单独同意弹窗 + 会员页隐私设置 */
.consent-dialog h2:focus{outline:none}
.consent-actions button{min-height:46px;flex:1;font-size:15px}
.member-privacy .privacy-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:12px;margin-top:12px}
.member-privacy .privacy-row>div:first-child{flex:1 1 200px}
.member-privacy .privacy-row .footnote{margin-top:4px}
.seg{display:inline-flex;border:1px solid #9fb3cf;border-radius:22px;overflow:hidden}
.seg button{background:#fff;padding:9px 14px;font-size:13px;color:#4b6a95;border-radius:0}
.seg button+button{border-left:1px solid #9fb3cf}
.seg button.on{background:#365e96;color:#fff}
