
:root{--ink:#292435;--muted:#858091;--purple:#7955cd;--purple-dark:#6841be;--line:#ebe7f1;--soft:#f3eefb;--paper:#fff;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);font:14px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;background:#f8f7fb;background-image:radial-gradient(ellipse 650px 360px at 25% 0,#e5ddfa 0,transparent 80%),radial-gradient(ellipse 500px 340px at 85% 120px,#f9e4ef 0,transparent 80%)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed}button,input{font-family:inherit}img{max-width:100%;height:auto}svg{width:20px;height:20px;flex-shrink:0}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #a285e7;outline-offset:4px}button[hidden],[hidden]{display:none!important}.shell{width:min(760px,calc(100% - 40px));margin:auto}.skip{position:fixed;left:16px;top:-70px;padding:10px 16px;background:white;z-index:100}.skip:focus{top:10px}.header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:37px 0 24px}.brand{display:flex;align-items:center;gap:14px}.brand img{width:58px;height:58px;border-radius:17px;box-shadow:0 5px 18px #68508624}.brand b{display:block;font-size:24px;font-weight:750;letter-spacing:1px}.brand small{display:block;font-size:9px;letter-spacing:2.5px;color:#908198;margin-top:1px}.header-link{display:flex;align-items:center;gap:6px;color:#736b80;font-size:12px}.header-link svg{width:15px;height:15px}.hero{padding:27px 0 25px}.kicker{font-size:10px;letter-spacing:2.4px;color:var(--purple);display:flex;align-items:center;gap:7px;margin-bottom:11px}.kicker i{width:5px;height:5px;border-radius:50%;background:#a687dc}.hero h1{font-size:36px;font-weight:780;line-height:1.3;letter-spacing:-.7px}.hero h1 span{color:var(--purple)}.hero>p{font-size:13px;color:#82798e;margin-top:12px}.notice{display:flex;align-items:flex-start;gap:12px;padding:18px 20px;background:#fffdfa;border:1px solid #eee2d3;border-radius:14px;color:#80715e;font-size:12px;line-height:1.85;box-shadow:0 3px 14px #745a4e03}.notice>svg{color:#b48d53;margin-top:3px;width:19px;height:19px}.notice strong{display:block;color:#775a3e;font-size:13px;font-weight:650;margin-bottom:3px}.notice a{white-space:nowrap;color:var(--purple);font-weight:600;text-decoration:underline;text-underline-offset:3px}.wechat{margin-top:12px;padding:13px 16px;border-radius:12px;background:#f0ebf9;color:#685281;font-size:12px}.section{margin-top:34px;scroll-margin-top:25px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:15px}.section-heading h2{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;line-height:1.5}.section-number{font-size:10px;color:var(--purple);letter-spacing:1px;background:#ede6f8;padding:3px 6px;border-radius:5px;font-weight:600}.section-heading>span,.section-heading>a{font-size:11px;color:#9a91a5;white-space:nowrap}.section-heading>a{color:var(--purple)}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 4px 17px #45316103}.app-card{padding:24px;display:flex;align-items:center;gap:17px;margin-bottom:13px}.app-icon{width:52px;height:52px;display:grid;place-items:center;background:#eee8fa;border-radius:14px;color:var(--purple);flex-shrink:0}.app-icon svg{width:28px;height:28px}.app-icon.ios{background:#f0eff2;color:#8b8597}.app-info{flex:1;min-width:0}.app-info h3{font-size:17px;display:flex;align-items:center;gap:9px}.badge{font-size:9px;letter-spacing:.4px;font-weight:500;padding:2px 7px;border-radius:4px;color:#6d9b70;background:#eef7ee;white-space:nowrap}.badge.pending{color:#99919f;background:#f3f1f5}.app-info p{font-size:12px;color:#918897;margin-top:3px}.app-actions{display:flex;flex-direction:column;gap:7px;align-items:stretch;min-width:129px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;border:1px solid transparent;border-radius:10px;padding:10px 17px;background:var(--purple);color:#fff;font-size:13px;font-weight:600;line-height:1.4;transition:background .16s,transform .16s;text-align:center}.btn:hover{background:var(--purple-dark);transform:translateY(-1px)}.btn svg{width:16px;height:16px}.btn-sub{background:#f3eefb;color:var(--purple)}.btn-sub:hover{background:#eae0f8}.btn:disabled{color:#aaa1b4;background:#f3f1f6;border-color:#ede9f1;transform:none;font-weight:500}.backup{border:0;background:none;color:#a296b0;font-size:10px;padding:2px 0;line-height:1.5;text-align:center}.backup:disabled{color:#aaa2b2}.backup:not(:disabled):hover{color:var(--purple)}.resource-list{overflow:hidden}.resource{display:flex;align-items:center;width:100%;padding:20px 23px;gap:14px;text-align:left;border:0;border-bottom:1px solid #f0ecf4;background:white;color:inherit}.resource:last-child{border-bottom:0}.resource:hover{background:#fcfaff}.resource-icon{height:41px;width:41px;border-radius:11px;display:grid;place-items:center;background:#f1ebfc;color:#946dde;flex-shrink:0}.resource-icon.coral{color:#c88675;background:#fcf0eb}.resource-icon.blue{color:#6b93af;background:#eef4f9}.resource-icon.gold{color:#ae955e;background:#f8f3e9}.resource-icon svg{width:20px;height:20px}.resource-info{flex:1;min-width:0}.resource-info b{display:block;font-weight:600;font-size:13px}.resource-info small{display:block;color:#aaa0b3;font-size:11px;margin-top:3px}.resource-action{display:flex;align-items:center;gap:5px;color:#9c8ab0;font-size:10px;white-space:nowrap}.resource-action svg{width:15px;height:15px}.resource-note{margin:11px 3px 0;font-size:10px;color:#9c94a6;line-height:1.85}.resource-note a{color:#8c73af;text-decoration:underline;text-underline-offset:3px}.guide-card{padding:22px}.tablist{display:flex;flex-wrap:wrap;gap:7px;padding-bottom:20px;border-bottom:1px solid var(--line)}.tab{border:1px solid #eae4f0;background:#fff;color:#8d829a;border-radius:8px;padding:8px 12px;font-size:11px;line-height:1.3;white-space:nowrap}.tab:hover{color:var(--purple);border-color:#beaadf}.tab[aria-selected=true]{color:#fff;background:var(--purple);border-color:var(--purple)}.guide-panel{padding-top:22px}.guide-panel h3{font-size:17px;font-weight:650;line-height:1.5}.panel-intro{margin-top:6px;font-size:11px;color:#99909f}.steps{list-style:none;padding:0;margin:23px 0 20px;counter-reset:step}.steps li{counter-increment:step;position:relative;padding:0 0 21px 40px}.steps li:before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:1px;width:26px;height:26px;border-radius:8px;background:#f2ecfb;color:#9473c5;font-size:10px;display:grid;place-items:center;font-weight:600}.steps li:after{content:"";position:absolute;left:12px;top:34px;bottom:8px;width:1px;background:#ece5f5}.steps li:last-child{padding-bottom:0}.steps li:last-child:after{display:none}.steps strong{display:block;font-size:13px;font-weight:600;margin-bottom:5px}.steps p{font-size:14px;color:#786b84;line-height:1.9}.panel-note{padding:12px 15px;background:#faf8fc;border-radius:9px;color:#a094ad;font-size:11px;line-height:1.85}.source-link{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--purple);margin-top:15px}.source-link svg{width:13px;height:13px}.guide-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding-top:17px;border-top:1px solid var(--line);font-size:11px;color:#a196ab}.guide-footer a{color:var(--purple);white-space:nowrap}.faq{padding:5px 22px}details{border-bottom:1px solid #efebf3}details:last-child{border-bottom:none}summary{list-style:none;position:relative;padding:17px 26px 17px 0;font-size:13px;cursor:pointer;font-weight:500}summary::-webkit-details-marker{display:none}summary:after{content:"+";position:absolute;right:0;top:16px;color:#aa98c0;font-size:19px;font-weight:300}details[open] summary:after{content:"−"}.answer{padding:0 12px 19px 0;color:#81728d;font-size:14px;line-height:1.9}.answer a{color:var(--purple);text-decoration:underline;text-underline-offset:3px}.answer p+p{margin-top:8px}.footer{text-align:center;padding:36px 0 34px;font-size:10px;color:#aaa1b4;line-height:2}.footer-brand{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:7px;font-size:13px;color:#81758e;font-weight:600}.footer-brand img{width:25px;height:25px;border-radius:7px}.footer a{color:#a08ab5}.mobile-dock{display:none}.toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);max-width:calc(100% - 40px);background:#332844;color:#fff;padding:11px 20px;border-radius:11px;box-shadow:0 10px 35px #33284422;z-index:90;font-size:12px;text-align:center;pointer-events:none}.dialog{border:1px solid #e4dcee;border-radius:21px;box-shadow:0 20px 90px #26103830;padding:0;color:var(--ink);width:min(530px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;background:#fff}.dialog::backdrop{background:#30233877;backdrop-filter:blur(5px)}.dialog-head{position:sticky;top:0;z-index:2;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:21px 24px 17px;border-bottom:1px solid var(--line)}.dialog-head h2{font-size:17px;font-weight:650}.close{display:grid;place-items:center;width:31px;height:31px;background:#f4f0f9;color:#95839f;border:0;border-radius:50%;flex-shrink:0}.close svg{width:15px;height:15px}.dialog-body{padding:22px 24px 24px}.dialog-lead{font-size:12px;color:#94849f;line-height:1.9}.dialog-actions{display:flex;gap:10px;margin-top:22px}.dialog-actions>*{flex:1}.dialog-help{display:block;text-align:center;font-size:11px;color:var(--purple);margin-top:18px}.download-steps{margin-top:18px}.download-steps li{padding-left:38px;padding-bottom:16px}.download-steps li strong{font-size:12px}.media-dialog{width:min(650px,calc(100% - 28px))}.media-box{display:flex;align-items:center;justify-content:center;min-height:180px;background:#17121f;border-radius:12px;overflow:hidden}.media-box video{display:block;width:100%;max-height:62dvh;background:#17121f}.media-box img{display:block;width:auto;max-width:100%;height:auto}.media-status{margin:12px 0 0;font-size:11px;color:#a08cae}.media-source{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px;color:#9f90a9;font-size:10px}.media-source a{color:var(--purple);text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.shell{width:calc(100% - 32px)}.header{padding:24px 0 16px;gap:10px}.brand{gap:11px}.brand img{width:47px;height:47px;border-radius:14px}.brand b{font-size:20px}.brand small{font-size:7px;letter-spacing:1.9px}.header-link{font-size:11px;gap:4px}.hero{padding:22px 0 22px}.hero h1{font-size:29px;letter-spacing:-.6px}.hero>p{font-size:12px;margin-top:10px}.kicker{font-size:9px;letter-spacing:2px;margin-bottom:10px}.notice{padding:15px 15px;gap:9px;font-size:12px;line-height:1.8;border-radius:13px}.notice strong{font-size:12px}.notice>svg{width:17px;height:17px}.section{margin-top:28px}.section-heading{margin-bottom:12px;gap:8px}.section-heading h2{font-size:16px;gap:8px}.section-number{font-size:9px;padding:3px 5px}.section-heading>span,.section-heading>a{font-size:10px}.app-card{padding:19px 17px;gap:12px;border-radius:15px;margin-bottom:11px}.app-icon{width:42px;height:42px;border-radius:12px}.app-icon svg{width:24px;height:24px}.app-info h3{font-size:15px;gap:5px}.badge{font-size:8px;padding:1px 5px}.app-info p{font-size:10px;margin-top:5px}.app-actions{min-width:100px;gap:6px}.btn{font-size:12px;min-height:39px;padding:9px 13px;border-radius:9px;gap:5px}.btn svg{width:14px;height:14px}.backup{font-size:9px}.resource{padding:17px 16px;gap:10px}.resource-icon{width:36px;height:36px;border-radius:10px}.resource-icon svg{width:18px;height:18px}.resource-info b{font-size:13px;line-height:1.55}.resource-info small{font-size:10px;line-height:1.65}.resource-action{font-size:9px;gap:2px}.resource-action svg{width:13px;height:13px}.resource-note{font-size:9px;margin-top:9px}.guide-card{padding:17px}.tablist{gap:6px;padding-bottom:17px}.tab{font-size:10px;padding:8px 10px;border-radius:7px}.guide-panel{padding-top:19px}.guide-panel h3{font-size:15px}.panel-intro{font-size:10px;line-height:1.8}.steps{margin:21px 0 18px}.steps li{padding-left:35px;padding-bottom:19px}.steps li:before{width:24px;height:24px;font-size:9px}.steps li:after{left:11px;top:31px;bottom:7px}.steps strong{font-size:13px}.steps p{font-size:13px;line-height:1.85}.panel-note{font-size:10px;padding:11px 12px}.guide-footer{font-size:10px;margin-top:17px;padding-top:15px}.source-link{font-size:10px}.faq{padding:2px 17px}summary{font-size:13px;padding-top:16px;padding-bottom:16px}.answer{font-size:13px;line-height:1.85}.footer{padding-bottom:111px;font-size:9px}.mobile-dock{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:10;align-items:center;justify-content:space-between;gap:10px;padding:10px 17px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #e9e2f0;background:#fffefa;box-shadow:0 -4px 18px #49396305}.dock-brand{display:flex;align-items:center;gap:9px}.dock-brand img{width:35px;height:35px;border-radius:10px}.dock-brand b{display:block;font-size:12px;font-weight:650}.dock-brand small{display:block;font-size:9px;color:#a291af;margin-top:1px}.dock-buttons{display:flex;align-items:center;gap:12px}.dock-buttons>a:not(.btn){font-size:10px;color:var(--purple);white-space:nowrap}.dock-buttons .btn{min-height:37px;font-size:11px;padding:9px 14px}.toast{bottom:84px}.dialog-head{padding:17px 18px 14px}.dialog-head h2{font-size:15px}.dialog-body{padding:18px}.dialog-lead{font-size:11px}.dialog-actions{gap:9px}.dialog-actions .btn{font-size:11px}.media-source{font-size:9px}.media-status{font-size:10px}}
@media(max-width:360px){.header-link{font-size:10px}.brand b{font-size:19px}.hero h1{font-size:26px}.app-card{padding:17px 13px;gap:10px}.app-icon{width:36px;height:36px}.app-icon svg{width:22px;height:22px}.app-info h3{font-size:14px;display:block}.badge{display:inline-block;margin-top:3px}.app-info p{font-size:9px;margin-top:4px}.app-actions{min-width:91px}.btn{padding:9px 10px;font-size:11px}.resource-action span{display:none}.resource{gap:10px}.resource-info b{font-size:12px}.resource-info small{font-size:9px}.tab{font-size:9px;padding:8px 9px}.dock-buttons{gap:9px}.dock-buttons .btn{padding:9px 12px}.dock-brand{gap:7px}.dock-brand img{width:31px;height:31px}.section-heading>span{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* 下载弹窗：文字和链接来自文件开头的配置 */
.dialog-pending{padding:13px 15px;margin-bottom:16px;border:1px solid #e8ddf4;background:#f7f2fd;border-radius:10px;color:#87649f;font-size:12px;line-height:1.8;white-space:pre-line}
.dialog-note{padding:12px 14px;border-radius:9px;background:#faf8fc;color:#8d7d9a;font-size:12px;line-height:1.8;white-space:pre-line}
.dialog-lead,.download-steps strong{white-space:pre-line;overflow-wrap:anywhere}.download-steps strong{line-height:1.9;font-weight:500}.download-steps li:after{bottom:5px}.dialog-actions .btn{overflow-wrap:anywhere}.dialog-actions .btn:only-child{width:100%}
a[aria-disabled="true"]{color:#aaa1b4;cursor:not-allowed}
.dialog-fallback{display:block;position:fixed;inset:50% auto auto 50%;margin:0;transform:translate(-50%,-50%);z-index:80;box-shadow:0 0 0 100vmax #30233899;max-height:85vh;overflow:auto}
@media(max-width:600px){.dialog-pending,.dialog-note{font-size:11px}.download-steps strong{font-size:12px}}

.app-icon.ipa{font-size:14px;font-weight:750;letter-spacing:1px;color:#957445;background:#f8f1e6}.app-info h3{flex-wrap:wrap}#ipa-version{scroll-margin-top:24px}
.channel-card{background:linear-gradient(115deg,#f4effb,#faf8fd)}.channel-icon{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:12px;background:#fff;color:#528dbf}.channel-icon svg{width:23px;height:23px}.channel-info{flex:1;min-width:0}.channel-info b{display:block;font-size:14px;font-weight:650;color:#436583}.channel-info small{display:block;font-size:11px;color:#8191a3;margin-top:2px}
@media(max-width:600px){.channel-icon{width:36px;height:36px;border-radius:10px}.channel-icon svg{width:21px;height:21px}.channel-info b{font-size:13px}.channel-info small{font-size:10px;line-height:1.65}}

/* IPA 两条线路未开放时，将线路名称和状态分行显示，窄屏也保持同宽对齐。 */
#download-dialog[data-platform="ipa"] .dialog-actions .btn:disabled{white-space:pre-line;line-height:1.6}

/* Extend the existing Cat theme; keep download and editing surfaces compact. */
.config-loading [data-download],.config-error [data-download]{pointer-events:none;opacity:.45}
.official-domain{display:block;overflow-wrap:anywhere}
#config-status{margin:20px auto;padding:12px 16px;font-size:14px}
#config-retry{border:1px solid var(--line);border-radius:7px;padding:6px 10px;background:white;color:var(--purple);margin-left:10px}
.notice p,.dialog-lead,.dialog-note,.panel-note,.answer,.resource-note{white-space:pre-line;overflow-wrap:anywhere}
.app-info h3{flex-wrap:wrap}.app-info p,.channel-info small{overflow-wrap:anywhere}
.tutorial-button{margin-top:18px;min-height:44px}.guide-video{margin-top:16px;display:inline-flex;min-height:44px}
.image-step-nav{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-top:16px;font-size:14px}
.image-step-nav button{min-height:44px}.image-step-nav span{white-space:nowrap}.media-box{background:#f5f3fa;min-height:0}
.media-box img{display:block;width:auto;max-width:100%;height:auto;max-height:none;object-fit:contain;margin:auto}
.media-status:empty{display:none}.close{min-width:44px;min-height:44px}
.dialog-lead,.dialog-note{font-size:14px;line-height:1.85}.dialog-actions{flex-wrap:wrap}.dialog-actions>*{min-width:120px;min-height:44px}
.mobile-dock{display:flex;position:fixed;left:0;right:0;bottom:0;padding:12px max(20px,calc((100vw - 760px)/2)) calc(12px + env(safe-area-inset-bottom));gap:18px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);background:rgba(255,255,255,.97);box-shadow:0 -5px 25px #45316105;z-index:40}
.dock-brand{display:flex;align-items:center;gap:10px;min-width:0}.dock-brand img{width:35px;height:35px;border-radius:10px}.dock-brand b{font-size:14px}.dock-brand small{font-size:12px;display:block;color:#82758f;white-space:normal;max-width:380px;line-height:1.5}
.dock-buttons{display:flex;gap:14px;align-items:center;flex-shrink:0}.dock-buttons>a{font-size:13px;color:var(--purple)}.dock-buttons .btn{min-height:44px;font-size:13px;max-width:230px}
body.has-dock{padding-bottom:calc(110px + env(safe-area-inset-bottom))}.toast{bottom:110px}.btn.is-unavailable{background:#efedf3;color:#82758f;border-color:#e5dfea}
.guide-panel:focus-visible{outline:3px solid #a285e7;outline-offset:4px}.tab{min-height:40px}.choice-button{width:100%;justify-content:space-between;margin-top:10px}
@media(max-width:600px){.mobile-dock{padding:10px 16px calc(10px + env(safe-area-inset-bottom));gap:10px}.dock-brand small{max-width:170px;font-size:11px}.dock-buttons{gap:8px}.dock-buttons>a{display:none}.dock-buttons .btn{max-width:160px;font-size:12px;padding:10px}.app-actions{min-width:100px}.image-step-nav{gap:8px;font-size:12px}.image-step-nav .btn{padding:10px;font-size:12px}.dialog-head{padding:15px 18px}.guide-video{font-size:13px}}
@media(max-width:350px){.dock-brand img{display:none}.dock-buttons .btn{max-width:140px}.app-card{flex-wrap:wrap}.app-actions{margin-left:auto}.app-info{min-width:125px}}
