:root{--paper:#fffcf5;--ink:#302f29;--muted:#66685f;--green:#31594d;--line:#dcd9cc;--soft:#edf1e9;--warm:#f7ecdb;--bad:#9b3d33;--bad-bg:#faf0ec;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:#edece4;font-size:17px;line-height:1.75}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;padding:30px 24px 60px}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{min-height:48px;border:1px solid #a7b2a5;background:transparent;color:var(--green);padding:10px 21px;border-radius:7px;cursor:pointer;font-weight:600;line-height:1.5}button:hover:not(:disabled){background:#e8eee6}button:disabled{cursor:not-allowed;background:#e5e7df;color:#676d62;border-color:#d6dbd0}button.primary{background:var(--green);border-color:var(--green);color:#fff}button.primary:hover:not(:disabled){background:#25483e}button.primary:disabled{background:#dce2d8;border-color:#c8d0c3;color:#626b5e}a{color:var(--green);text-underline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #9a6b33;outline-offset:4px}.sheet{max-width:960px;margin:auto;background:var(--paper);padding:0 54px 34px;box-shadow:0 3px 20px #3335220a;border:1px solid #dfded1;border-radius:3px}.masthead{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:22px 0 17px;color:var(--muted);font-size:14px;letter-spacing:1px}.masthead span:first-child{color:var(--green);font-weight:600}.hero{display:grid;grid-template-columns:1fr 45%;align-items:center;gap:10px;padding:28px 0 26px}.eyebrow{color:var(--green);font-size:14px;letter-spacing:2px;margin:0 0 8px}h1,h2,h3,.mac,.closing{font-family:Georgia,"Songti SC","Noto Serif CJK SC","Source Han Serif SC","STSong","SimSun",serif}h1{font-size:40px;font-weight:500;line-height:1.35;letter-spacing:1px;margin:0 0 15px}.lead{font-size:17px;color:#55594f;line-height:1.85;margin:0}.independent{font-size:13px;color:var(--muted);margin:13px 0 0}.hero-art{width:100%;height:auto;mix-blend-mode:multiply}.warn{background:var(--warm);border-left:3px solid #a17640;padding:17px 23px 18px;margin-bottom:8px;border-radius:0 6px 6px 0}.warn h2{font:600 17px/1.6 inherit;margin:0 0 8px}.warn ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.warn li{padding-left:18px;position:relative;line-height:1.6}.warn li:before{content:"";width:5px;height:5px;border-radius:50%;background:#9c713d;position:absolute;left:0;top:10px}.warn strong{display:block;font-size:16px;color:#583f24}.warn li span{display:block;font-size:14px;color:#6d5a41;margin-top:2px}.step{padding:30px 0;border-bottom:1px solid var(--line);scroll-margin-top:20px}.step h2{display:flex;align-items:center;gap:12px;margin:0 0 16px;font-size:25px;font-weight:500;line-height:1.4}.num{display:inline-flex;align-items:center;justify-content:center;flex:none;width:32px;height:32px;background:var(--soft);border:1px solid #bcc8b7;border-radius:50%;color:var(--green);font:16px/1.2 Georgia,serif}.step p{margin:12px 0}.connect-line{display:flex;align-items:center;gap:20px;margin-top:18px}#connect{min-width:190px;display:flex;align-items:center;justify-content:space-between;gap:20px}.aside-note,.access-note,.muted{color:var(--muted);font-size:14px}.access-note{margin-bottom:0!important}.status{padding:12px 16px;background:var(--soft);border-radius:6px;color:var(--green)}.notice{padding:20px 22px;margin-top:22px;border:1px solid #c7cec0;border-radius:6px;background:#f2f4ed}.notice h2{font-size:23px;font-weight:500;line-height:1.4;margin:0 0 8px}.notice p{margin:8px 0}.state-label{font-size:13px;color:var(--green);letter-spacing:1px;margin:0 0 10px!important}.reassure{background:var(--soft);border-left:3px solid #7d9a83;padding:16px 20px;margin:18px 0}.reassure p{margin:0!important}.mac{display:block;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:30px;letter-spacing:1px;line-height:1.5;color:var(--green);padding:12px 0;overflow-wrap:anywhere;user-select:all}.board-label{font-size:14px;color:var(--muted);margin-bottom:0!important}.copy-line{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.copy-feedback{color:var(--green);font-size:14px}.facts{margin:18px 0 22px;border-top:1px solid var(--line)}.facts>div{display:grid;grid-template-columns:125px minmax(0,1fr);gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}.facts dt{color:var(--muted);font-size:15px}.facts dd{margin:0;overflow-wrap:anywhere}.confirm{display:flex;align-items:flex-start;gap:12px;background:var(--warm);border:1px solid #dfceb1;border-radius:6px;padding:16px 18px;cursor:pointer;line-height:1.6}.confirm input{width:21px;height:21px;flex:none;margin:3px 0 0;accent-color:var(--green)}.confirm span{font-size:16px}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.bad{color:var(--bad);font-weight:600;overflow-wrap:anywhere}.step:has(.bad)>.bad{background:var(--bad-bg);padding:13px 16px;border-left:3px solid #b5695c}.tips{padding-left:24px;line-height:1.85}.tips li{padding-left:4px;margin:8px 0}.tips li::marker{color:var(--green);font-family:Georgia,serif}.phase-list{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:0;list-style:none;margin:25px 0 18px;gap:8px;font-size:14px;color:var(--muted)}.phase-list li{border-top:2px solid var(--line);padding-top:8px}.phase-list li.active{border-color:var(--green);color:var(--green);font-weight:700}.phase-list li.done{border-color:#8ca18d}.bar{height:10px;border-radius:8px;background:#e1e6dc;overflow:hidden;margin:18px 0 12px}.bar-fill{height:100%;width:0;background:var(--green);border-radius:8px}.progress-detail{display:flex;justify-content:space-between;gap:15px;font-size:14px;color:var(--muted)}.waiting-note{margin-top:23px!important;padding:15px 18px;border:1px dashed #bfc9b8;border-radius:5px;color:#58634f;font-size:15px}.success .num{background:var(--green);color:white;border-color:var(--green)}.closing{color:var(--green);font-size:23px;line-height:1.6;border-top:1px solid var(--line);padding-top:18px;margin-top:22px!important}.log{padding:20px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:14px}.log summary{cursor:pointer;width:fit-content}.log pre{font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;max-height:300px;overflow-y:auto;background:#eeeee6;padding:14px;border-radius:4px;color:#4d5148}footer{padding-top:24px;color:#65685e;font-size:13px;line-height:1.8}footer p{margin:8px 0}.footer-title{color:var(--green);font-size:15px;font-weight:600}.skip{position:absolute;left:24px;top:-100px;background:#fff;padding:10px;z-index:5}.skip:focus{top:10px}
@media(max-width:600px){body{padding:0 0 24px;background:var(--paper)}.sheet{padding:0 22px 25px;border:0;box-shadow:none}.masthead{padding-top:20px;font-size:12px;letter-spacing:0}.hero{grid-template-columns:1fr 120px;gap:4px;padding:24px 0}.hero-art{width:150px;max-width:100%;align-self:center}.eyebrow{font-size:12px;letter-spacing:1px}h1{font-size:28px;letter-spacing:0;margin-bottom:10px}.lead{font-size:14px;line-height:1.7}.independent{font-size:11px;margin-top:10px}.warn{padding:15px 14px}.warn h2{font-size:16px}.warn strong{font-size:15px}.warn li span{font-size:13px}.step{padding:25px 0}.step h2{font-size:23px;gap:10px}.step p{font-size:16px}.num{width:30px;height:30px}.connect-line{align-items:flex-start;flex-direction:column;gap:9px}#connect{width:100%;min-width:0}.aside-note,.step .access-note{font-size:13px}.mac{font-size:24px;letter-spacing:0}.copy-line{gap:8px}.copy-line button{min-height:44px}.facts>div{grid-template-columns:1fr;gap:3px;padding:11px 0}.facts dt{font-size:13px}.confirm{padding:14px 12px}.confirm span{font-size:15px}.buttons .primary{width:100%}.notice{padding:16px}.notice h2{font-size:22px}.notice p{font-size:15px}.reassure{padding:14px}.phase-list{font-size:12px;gap:6px}.step .waiting-note{font-size:14px}.step .closing{font-size:21px}.tips{font-size:16px}footer{font-size:12px}.progress-detail{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.warn h2{font-family:inherit;font-size:17px;font-weight:600;line-height:1.6}

/* 密钥、备份、恢复：按这版的配色补上的画面，等阿吉润色。 */
.status.problem{background:var(--bad-bg);color:var(--bad)}
.status.good{background:var(--soft);color:var(--green)}
.key-form{margin:20px 0 14px}
.key-form label{display:block;font-weight:600;margin-bottom:8px}
.key-line{display:flex;flex-wrap:wrap;gap:12px}
input.key{flex:1 1 280px;min-width:0;max-width:420px;min-height:48px;padding:8px 14px;border:1px solid #a7b2a5;border-radius:7px;background:#fff;color:var(--ink);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:20px;letter-spacing:1px}
input.key::placeholder{color:#8b8e82;font-size:16px;letter-spacing:0}
.backup{margin:0 0 20px;padding:18px 20px 20px;background:var(--soft);border-radius:6px}
.backup h3{margin:0 0 6px;font-size:20px;font-weight:500;line-height:1.5}
.backup p{margin:6px 0 14px;font-size:15px;color:#55594f}
.backup .bar{background:#d6dfd2;margin:14px 0 0}
.backup .status{margin:12px 0 0;background:#fffcf5;color:var(--ink)}
.backup .status.problem{background:var(--bad-bg);color:var(--bad)}
.backup .status.good{background:#fffcf5;color:var(--green);font-weight:600}
.restore{padding:20px 0;border-bottom:1px solid var(--line)}
.restore summary{cursor:pointer;width:fit-content;font-weight:600;color:var(--green)}
.restore p{margin:12px 0}
.restore-pick label{display:block;font-weight:600;margin-bottom:6px}
.restore-pick input{display:block;max-width:100%;font-size:15px}
input.key:focus-visible{outline-width:2px;outline-offset:2px}
.step p.muted{font-size:14px}
@media(max-width:600px){input.key{flex-basis:100%;max-width:none}.key-line .primary{width:100%}.backup{padding:15px 14px 16px}.backup button{width:100%}.restore button{width:100%}}
