:root { --bg:#090a0b; --surface:#121314; --surface-2:#191a1b; --line:#303133; --line-soft:#28292a; --text:#f2f1ee; --muted:#aaabae; --red:#ff4048; --green:#00ce70; --amber:#ffc52c; --blue:#b8c4cf; color-scheme:dark; }
* { box-sizing:border-box; }
[hidden] { display:none !important; }
html,body { margin:0; min-height:100%; min-width:1000px; background:var(--bg); color:var(--text); font:15px/1.5 "Noto Sans SC","Microsoft YaHei UI","Microsoft YaHei",sans-serif; }
button,input,select,textarea { font:inherit; } button,a { -webkit-tap-highlight-color:transparent; } button { cursor:pointer; }
button:disabled { opacity:.45; cursor:not-allowed; } :focus-visible { outline:2px solid var(--amber); outline-offset:4px; }
.topbar { height: 68px; display: flex; align-items: center; gap: 12px; padding: 0 22px; border-bottom: 1px solid var(--line); background: #0b121b; }
.brand { min-width: 210px; display: flex; align-items: center; gap: 11px; color: var(--text); text-decoration: none; }
.brand-mark { width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid #8f343b; border-radius: 6px; background: #29171d; color: var(--red); font-size: 22px; font-weight: 900; }
.brand strong { display: block; font-size: 21px; line-height: 1.15; }
.brand small { display: block; margin-top: 3px; color: var(--muted); font-size: 12px; }
.topnav { height: 100%; display: flex; align-items: center; gap: 4px; }
.topnav a { height: 40px; display: inline-flex; align-items: center; padding: 0 9px; border: 1px solid transparent; border-radius: 5px; color: #9fb0c2; font-weight: 700; text-decoration: none; white-space: nowrap; }
.topnav a:hover { color: #fff; }
.topnav a.active { border-color: #8f343b; background: #3a2027; color: #fff; }
.topbar-note { display: none; }


.qmt-page { width:100%; padding:24px 2.85vw 40px; background:#090a0b; }
.page-head { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:0 10px 16px; }
.eyebrow { color:#bdbdbb; font-size:15px; letter-spacing:.03em; }
.page-head h1 { font-size:clamp(32px,3.3vw,50px); letter-spacing:-.035em; line-height:1.25; margin:2px 0; }
.page-head p { margin:2px 0 0; color:#c2c2c1; font-size:16px; }
.primary-btn,.secondary-btn,.danger-btn { min-height:42px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:8px 22px; border-radius:6px; text-decoration:none; font-weight:650; white-space:nowrap; }
.primary-btn { border:1px solid #eeb82c; background:var(--amber); color:#171300; }
.primary-btn:hover { background:#ffd363; }
.secondary-btn { border:1px solid #686868; color:#e3e3e2; background:transparent; }
.secondary-btn:hover { background:#242525; border-color:#bcbcbc; }
.danger-btn { background:#351c1e; color:#ff9297; border:1px solid #985057; }
.text-btn { border:0; background:transparent; color:inherit; padding:8px 4px; text-decoration:none; cursor:pointer; }
.text-btn:hover { text-decoration:underline; text-underline-offset:4px; }
.access-panel { padding:60px 24px; text-align:center; border:1px solid var(--line); border-radius:8px; }
.device-panel { display:grid; grid-template-columns:35.5% minmax(0,1fr); gap:10px; margin:0 0 14px; }
.device-identity { display:flex; flex-direction:column; min-height:230px; padding:24px 32px 14px; border-radius:8px; background:#e9e3d8; color:#131414; }
.device-identity > small { font-size:18px; }
.device-identity h2 { display:flex; align-items:center; gap:16px; font-size:clamp(26px,2.75vw,40px); margin:14px 0 6px; letter-spacing:-.03em; line-height:1.3; }
.device-identity > strong { font-size:22px; font-weight:500; }
.status-dot { display:inline-grid; place-items:center; flex:none; width:36px; height:36px; border-radius:50%; background:#88794e; color:white; font-size:23px; }
.status-dot::before { content:"!"; } .status-dot.online { background:#008b43; } .status-dot.online::before { content:"✓"; }
.identity-footer { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:auto; padding-top:18px; font-size:16px; }
.device-state { font-size:15px; } .device-state.pending { color:#75590c; }
.device-detail { padding:12px 20px 8px; border:1px solid var(--line); border-radius:8px; background:linear-gradient(110deg,#141515,#101112); min-width:0; }
.device-facts { margin:0; } .device-facts > div { display:grid; grid-template-columns:32% 1fr; align-items:center; min-height:68px; border-bottom:1px solid var(--line); }
.device-facts dt { display:flex; align-items:center; gap:30px; font-size:18px; }
.device-facts dt svg { width:43px; height:43px; fill:none; stroke:#cecece; stroke-width:1.5; flex:none; }
.device-facts dd { margin:0; } .device-facts dd strong { display:block; font-size:26px; line-height:1.3; color:var(--muted); } .device-facts dd strong[data-tone="online"] { color:var(--green); } .device-facts dd strong[data-tone="offline"] { color:var(--red); }
.device-facts dd small { display:block; color:#b5b5b5; font-size:14px; margin-top:2px; }
.connection-tools { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:10px; }
.connection-tools p { margin:0; max-width:440px; color:#c2c2c1; font-size:13px; }
.device-actions { display:flex; align-items:center; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.device-actions .secondary-btn { font-size:13px; min-height:36px; padding:7px 12px; } .device-actions .text-btn { font-size:13px; color:#b8b8b5; }
.update-line { display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; margin-top:14px; padding:12px 14px; border:1px solid var(--line); border-radius:6px; font-size:17px; font-weight:600; line-height:1.6; color:var(--text); }
.update-line[data-tone="outdated"] { border-color:#8c363c; background:#281417; color:#ff747a; }
.update-line[data-tone="outdated"] .update-badge { color:#ff9ba0; border-color:#8c363c; background:#38181c; }
.auto-refresh-status { margin:8px 0 2px; font-size:13px; color:var(--muted); }
.update-badge,.latest-tag { display:inline-block; border:1px solid #6f531c; background:#332810; padding:1px 7px; color:var(--amber); border-radius:3px; font-size:12px; white-space:nowrap; }
.content-card,.setup-card { border:1px solid var(--line); background:linear-gradient(120deg,#141516,#101112); border-radius:8px; margin:14px 0; overflow:hidden; }
.section-head { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:9px 24px; }
.section-head > div:first-child { display:flex; align-items:center; gap:24px; }
.section-head h2 { margin:0; font-size:28px; line-height:1.35; }
.section-head span,.section-note { font-size:14px; color:#b7b7b7; }
.table-wrap { margin:0 10px; overflow-x:auto; border:1px solid var(--line-soft); border-radius:6px; }
table { width:100%; border-collapse:collapse; table-layout:fixed; }
th { text-align:left; font-weight:400; background:#18191a; color:#b0b0b2; font-size:14px; padding:10px 20px; }
td { border-top:1px solid var(--line-soft); padding:6px 20px; vertical-align:middle; font-size:16px; overflow-wrap:anywhere; }
tbody tr:hover { background:#1a1b1c; }
.strategy-table { min-width:1100px; }
.strategy-table th:nth-child(1) { width:27%; } .strategy-table th:nth-child(2) { width:9%; } .strategy-table th:nth-child(3) { width:10%; } .strategy-table th:nth-child(4) { width:11%; } .strategy-table th:nth-child(5) { width:19%; } .strategy-table th:nth-child(6) { width:24%; }
.strategy-id-heading,.strategy-id-cell { white-space:nowrap; }
.strategy-id-cell { font-variant-numeric:tabular-nums; }
.strategy-name { display:flex; align-items:center; gap:24px; } .strategy-name strong { display:block; font-size:20px; line-height:1.2; }
.strategy-name small { display:block; font-size:13px; color:#afafb2; margin-top:4px; }
.strategy-number { display:grid; place-items:center; width:44px; height:44px; flex:none; border:1px solid #6a6a6a; border-radius:5px; color:#dfdfdf; font-size:20px; font-variant-numeric:tabular-nums; }
.row-actions { display:flex; gap:6px; } .row-actions button { min-height:38px; padding:5px clamp(5px,.75vw,14px); font-size:clamp(12px,.98vw,15px); position:relative; }
.attention-dot { position:absolute; right:7px; top:7px; width:8px; height:8px; background:var(--amber); border-radius:50%; }
.switch { display:inline-flex; align-items:center; gap:12px; cursor:pointer; color:#bababa; font-size:15px; position:relative; white-space:nowrap; }
.switch input { position:absolute; z-index:1; left:0; top:0; margin:0; opacity:0; width:48px; height:30px; cursor:pointer; }
.switch i { width:48px; height:30px; border-radius:30px; background:#454545; border:1px solid #888; position:relative; pointer-events:none; }
.switch i::after { content:""; width:22px; height:22px; position:absolute; top:3px; left:3px; border-radius:50%; background:#f5f5f5; }
.switch input:checked+i { background:var(--green); border-color:var(--green); } .switch input:checked+i::after { left:21px; } .switch input:checked~span { color:var(--green); }
.switch input:focus-visible+i { outline:2px solid var(--amber); outline-offset:4px; }
.last-run { display:block; font-size:15px; } .last-run small { display:block; color:#bababa; font-size:12px; margin-top:4px; }
.last-run.failure { color:var(--amber); } .table-footnote { margin:8px 24px 10px; color:#b0b0b0; font-size:14px; }
.row-save-status { display:block; font-size:12px; margin-top:4px; color:#b8b8b8; } .row-save-status.error { color:var(--amber); }
.log-controls { display:flex; gap:8px; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
.log-scope,.log-filters,.detail-tabs { display:flex; border:1px solid var(--line); border-radius:5px; overflow:hidden; }
.log-scope button,.log-filters button,.detail-tabs button { border:1px solid transparent; color:#c0c0c0; background:transparent; padding:7px 17px; }
.log-scope button.active,.log-filters button.active,.detail-tabs button.active { border-color:#ad852b; color:#fff; border-radius:4px; }
.log-scope button { font-size:12px; padding:7px 8px; }
.history-device-select { max-width:190px; background:#181919; color:var(--text); border:1px solid #666; border-radius:4px; padding:6px; }
.log-table { min-width:1180px; }
.log-table th:nth-child(1) { width:17%; } .log-table th:nth-child(2) { width:14%; } .log-table th:nth-child(3) { width:9%; } .log-table th:nth-child(4) { width:13%; } .log-table th:nth-child(5) { width:12%; } .log-table th:nth-child(6) { width:13%; } .log-table th:nth-child(7) { width:12%; } .log-table th:nth-child(8) { width:10%; }
.log-table .trade-amount { font-variant-numeric:tabular-nums; white-space:nowrap; }
.log-table td { padding:10px 20px; font-size:16px; height:46px; } .log-card .table-wrap { margin-bottom:10px; }
.log-table tr.latest { background:#242014; } .log-table tr.latest td:first-child { box-shadow:inset 4px 0 var(--amber); }
.latest-tag { margin-left:12px; } .action-badge { font-size:18px; } .action-badge.buy { color:var(--red); } .action-badge.sell { color:#00d478; }
.result-badge.success { color:var(--green); } .result-badge.failure,.failure-copy { color:var(--amber); } .muted-copy { color:var(--muted); }
.empty-state { text-align:center; padding:42px 24px; } .empty-state strong { font-size:20px; } .empty-state p { color:var(--muted); } .empty-state.compact { padding:30px; }
.setup-head { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:18px 28px 8px; } .setup-head h2 { margin:0; font-size:27px; } .setup-head p { color:var(--muted); margin:5px 0; font-size:14px; }
.setup-head-actions { display:flex; align-items:center; gap:14px; } .setup-progress { color:var(--amber); font-size:13px; }
.setup-stepnav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding:0 20px; gap:16px; }
.setup-stepnav button { display:flex; align-items:center; gap:18px; border:0; border-bottom:3px solid transparent; background:transparent; color:#b0b0b0; text-align:left; padding:16px; }
.setup-stepnav button b { display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:#363737; border:1px solid #7e7e7e; font-size:22px; flex:none; }
.setup-stepnav button small { display:block; font-size:13px; margin-top:2px; } .setup-stepnav button[aria-current="step"] { border-color:var(--amber); color:var(--amber); }
.setup-stepnav button[aria-current="step"] b { background:var(--amber); border-color:var(--amber); color:#121212; }
.setup-steps { list-style:none; padding:0; margin:0 14px 12px; } .setup-steps li { display:none; padding:18px 20px; border:1px solid var(--line); border-radius:7px; } .setup-steps li.is-selected { display:block; }
.step-title { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:18px; } .step-title h3 { margin:3px 0; font-size:25px; } .step-title p { margin:3px 0; color:var(--muted); font-size:14px; }
.step-state,.step-live { display:inline-block; color:var(--amber); font-size:12px; border:1px solid #6f5725; padding:2px 8px; border-radius:3px; } .step-live { margin-left:8px; } .step-live[data-online="true"] { color:var(--green); }
.setup-card { --guide-gap:clamp(16px,1.7vw,28px); background:#111315; }
.setup-card .setup-head { padding:24px 28px 8px; }
.setup-card .setup-head h2 { font-size:30px; }
.setup-card .setup-stepnav { margin:8px 0 14px; }
.setup-stepnav .step-verified b { background:var(--amber); color:#111; border-color:var(--amber); }
.setup-card[data-selected-step="1"] #setupCodeStep { border:0; padding:0 14px; }
.setup-card[data-selected-step="1"] #setupCodeState { display:none; }
.setup-card:not([data-selected-step="4"]) .setup-diagnostic[data-tone="waiting"],.setup-card:not([data-selected-step="4"]) .setup-diagnostic[data-tone="warning"] { display:none; }
.account-guide-layout { display:grid; grid-template-columns:minmax(0,39fr) minmax(0,61fr); gap:var(--guide-gap); min-height:37vw; }
.account-entry,.account-reference { border:1px solid var(--line); border-radius:7px; background:#141618; padding:clamp(20px,2vw,32px); min-width:0; }
.account-guide-layout h3 { font-size:24px; margin:0 0 12px; }
.account-guide-layout p { color:var(--muted); margin:0 0 22px; }
#inlineAccountForm { margin-top:44px; }
#inlineAccountForm label { display:block; font-weight:650; margin-bottom:12px; }
#inlineAccountForm input { width:100%; height:50px; border:1px solid #44474b; background:#111315; border-radius:6px; padding:0 16px; color:var(--text); }
#inlineGenerateButton { margin-top:36px; min-height:46px; padding:10px 28px; }
.account-entry .account-privacy { font-size:13px; margin-top:38px; padding-top:26px; border-top:1px solid var(--line); }
.account-entry .account-next { font-size:14px; margin-top:26px; }
.reference-heading { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.reference-heading > span { color:var(--muted); font-size:13px; white-space:nowrap; }
.screenshot-button { display:block; width:100%; border:1px solid #34383d; background:#e9f0f5; padding:0; border-radius:5px; overflow:hidden; cursor:zoom-in; }
.screenshot-button img { display:block; width:100%; height:auto; }
.account-toolbar { width:76%; margin:0 0 18px; }
.image-caption { display:flex; align-items:center; justify-content:space-between; gap:10px; color:var(--muted); font-size:13px; padding-top:12px; }
.image-caption .text-btn { padding:0; color:var(--muted); white-space:nowrap; }
.inline-status { font-size:14px; margin:14px 0 0 !important; }
.inline-status[data-tone="error"] { color:#ff8588; }
.inline-status[data-tone="success"] { color:var(--green); }
.inline-code-panel { padding:16px 18px; border:1px solid var(--line); border-radius:6px; background:#17191b; margin:16px 0; }
.inline-code-heading { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.inline-code-heading small { color:var(--muted); font-size:13px; font-weight:400; margin-left:12px; }
#inlineBootstrapCode { width:100%; height:88px; display:block; resize:vertical; color:#ddd; background:transparent; border:0; margin:8px 0 0; padding:0; font:13px/1.65 Consolas,monospace; }
.inline-code-hint { color:var(--muted); font-size:12px; margin:4px 0 0; }
.qmt-tutorial-layout { display:grid; grid-template-columns:minmax(0,25fr) minmax(0,75fr); gap:var(--guide-gap); }
.tutorial-nav { border:1px solid var(--line); border-radius:6px; overflow:hidden; align-self:start; }
.tutorial-nav button { width:100%; display:flex; text-align:left; align-items:center; gap:16px; padding:24px 18px; color:var(--text); background:transparent; border:0; border-left:3px solid transparent; border-bottom:1px solid var(--line); }
.tutorial-nav button:last-child { border-bottom:0; }
.tutorial-nav b { display:grid; place-items:center; flex:none; width:40px; height:40px; border-radius:50%; border:1px solid #666; background:#303233; font-size:22px; }
.tutorial-nav strong { font-size:16px; }
.tutorial-nav small { display:block; color:var(--muted); font-size:13px; margin-top:5px; }
.tutorial-nav button[aria-current="step"] { border-left-color:var(--amber); background:#292416; }
.tutorial-nav button[aria-current="step"] b { background:var(--amber); color:#111; border-color:var(--amber); }
.tutorial-image-panel { min-width:0; }
.tutorial-image-panel .screenshot-button { aspect-ratio:2.45; background:#eff5fa; }
.tutorial-image-panel img { height:100%; object-fit:cover; object-position:top; }
.tutorial-note { color:var(--muted); font-size:13px; margin:8px 0 0; }
.tutorial-arrows { display:flex; gap:8px; }
.tutorial-arrows button { padding:0 15px; font-size:26px; line-height:28px; }
.guide-actions { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:22px; }
.guide-actions > div { display:flex; align-items:center; gap:18px; }
.guide-actions span { font-size:13px; color:var(--muted); }
.download-guide-action { display:flex; flex-direction:column; align-items:flex-end; gap:6px; }
.download-guide-action small { color:var(--muted); font-size:12px; }
.install-guide-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:18px; }
.install-guide { border:1px solid var(--line); border-radius:6px; padding:18px 14px; min-width:0; }
.install-guide h4 { display:flex; align-items:center; gap:10px; margin:0; font-size:18px; }
.install-guide h4 b { display:grid; place-items:center; background:var(--amber); color:#111; width:32px; height:32px; border-radius:50%; flex:none; }
.install-guide > p { font-size:13px; color:var(--muted); min-height:42px; margin:10px 0 16px; }
.install-guide > small { display:block; color:var(--muted); margin-bottom:5px; }
.install-guide .screenshot-button { aspect-ratio:1.22; background:#fff; }
.install-guide .screenshot-button img { height:100%; object-fit:contain; object-position:top left; }
.install-guide .image-caption { font-size:12px; align-items:flex-start; }
.install-notice { border:1px solid #44391b; background:#241f12; color:var(--amber); border-radius:6px; padding:10px 16px; margin:12px 0; }
.install-help { font-size:13px; color:var(--muted); margin:10px 0; }
.install-help summary { cursor:pointer; }
.install-help p { margin:6px 0; }
.guide-lightbox { width:94vw; max-width:1500px; max-height:94vh; background:#151719; color:var(--text); border:1px solid #50545a; border-radius:8px; padding:20px; }
.guide-lightbox::backdrop { background:rgba(0,0,0,.85); }
.guide-lightbox header { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:16px; }
.guide-lightbox h2 { font-size:20px; margin:0; }
.guide-lightbox-content { max-height:73vh; overflow:auto; background:#eaf2fa; }
.guide-lightbox img { display:block; width:100%; height:auto; }
.guide-lightbox p { color:var(--muted); font-size:14px; margin:12px 0 0; }
.guide-note { color:var(--amber); font-size:13px; } .detection-pair { display:grid; grid-template-columns:1fr 1fr; gap:20px; padding:16px; }
.detection-pair > div { padding:24px; background:#1b1c1d; border-radius:6px; } .detection-pair strong { display:block; font-size:28px; margin:8px 0; } .detection-pair p { color:var(--muted); }
.setup-diagnostic { display:flex; align-items:center; gap:14px; padding:12px 26px; border-top:1px solid var(--line); color:var(--amber); }
.diagnostic-icon { border:1px solid currentColor; border-radius:50%; width:23px; height:23px; text-align:center; flex:none; } .diagnostic-copy { flex:1; } .diagnostic-copy strong { font-size:14px; } .diagnostic-copy p { font-size:12px; color:var(--muted); margin:2px 0; } .auto-detect { font-size:11px; color:var(--muted); }
.setup-diagnostic[data-tone="success"] { color:var(--green); }
.toast { position:fixed; right:24px; bottom:24px; z-index:999; max-width:480px; padding:14px 20px; border:1px solid #666; background:#242526; color:white; border-radius:6px; opacity:0; pointer-events:none; }
.toast.show { opacity:1; } .toast.error { border-color:var(--amber); }
.setup-dialog { width: min(820px, calc(100vw - 70px)); max-width: none; padding: 0; border: 1px solid #3a4e61; border-radius: 8px; background: #0f1823; color: var(--text); box-shadow: 0 24px 70px rgba(0,0,0,.58); }
.setup-dialog::backdrop { background: rgba(2,6,10,.76); backdrop-filter: blur(2px); }
.dialog-head { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 13px 18px; border-bottom: 1px solid var(--line); background: #101b27; }
.dialog-head h2 { margin: 4px 0 0; font-size: 22px; }
.dialog-close { width: 34px; height: 34px; border: 1px solid #405468; border-radius: 5px; background: #152130; color: #aebdcc; font-size: 23px; line-height: 1; }
.dialog-close:hover { color: #fff; border-color: #6b8298; }
.dialog-body { max-height: calc(100vh - 120px); overflow-y: auto; padding: 20px; }
.dialog-status { margin-bottom: 15px; padding: 10px 12px; border: 1px solid #3b5369; border-radius: 5px; background: #142333; color: #c7d9e8; }
.dialog-status[data-tone="success"] { border-color: #347d68; background: #14352e; color: #8ee8c7; }
.dialog-status[data-tone="warning"] { border-color: #806238; background: #342814; color: #f0cb8f; }
.dialog-status[data-tone="error"] { border-color: #8c3f47; background: #35191d; color: #ffadb2; }
.dialog-intro { margin: 0 0 18px; color: #9eb0c2; line-height: 1.65; }
.reinstall-choice { margin-bottom: 12px; padding: 15px; border: 1px solid #3b6f63; border-radius: 6px; background: #102a27; }
.choice-label { display: inline-flex; min-height: 22px; align-items: center; margin-bottom: 8px; padding: 0 8px; border: 1px solid #367563; border-radius: 999px; background: #15392f; color: #8de3c4; font-size: 10px; font-weight: 900; }
.reinstall-choice strong { color: #b8f1dc; }
.reinstall-choice p { margin: 6px 0 10px; color: #9fc5b8; font-size: 13px; line-height: 1.6; }
.recover-choice { margin-bottom: 12px; padding: 14px; border: 1px solid #39566f; border-radius: 6px; background: #102130; }
.recover-choice strong { color: #d7e9f8; }
.recover-choice > p { margin: 6px 0 10px; color: #96aec2; font-size: 13px; line-height: 1.6; }
.recovery-panel { margin-top: 12px; padding: 13px; border: 1px solid #456681; border-radius: 5px; background: #0a1722; }
.recovery-panel .dialog-field { margin-bottom: 10px; }
.dialog-field { display: grid; gap: 7px; margin-bottom: 15px; color: #dce6ef; font-weight: 800; }
.dialog-field input, .bootstrap-code { width: 100%; border: 1px solid #34495c; border-radius: 5px; outline: none; background: #09121b; color: #edf4fa; }
.dialog-field input { height: 42px; padding: 0 11px; }
.dialog-field input:focus, .bootstrap-code:focus { border-color: #6988a5; box-shadow: 0 0 0 2px rgba(112,168,232,.1); }
.replace-warning { padding: 10px 12px; border-left: 3px solid #b77c33; background: #2b2115; color: #e7c38f; line-height: 1.6; }
.danger-zone { margin-top: 12px; border: 1px solid #683c43; border-radius: 6px; background: #201419; }
.danger-zone > summary { padding: 13px 14px; color: #e79ba1; font-weight: 800; cursor: pointer; user-select: none; }
.danger-zone > summary::marker { color: #d36b74; }
.danger-zone[open] > summary { border-bottom: 1px solid #5f353d; }
.danger-zone-body { padding: 14px; }
.danger-zone.first-device { margin-top: 0; border-color: transparent; background: transparent; }
.danger-zone.first-device > summary { display: none; }
.danger-zone.first-device .danger-zone-body { padding: 0; }
.dialog-wide { width: 100%; margin-top: 4px; }
.result-steps { display: grid; gap: 10px; margin: 0 0 16px; padding-left: 24px; color: #899caf; }
.result-steps strong { display: block; color: #e9f1f8; }
.result-steps span { display: block; margin-top: 3px; font-size: 13px; line-height: 1.55; }
.pair-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.pair-grid > div { padding: 12px; border: 1px solid #33495e; border-radius: 6px; background: #0a141e; }
.pair-grid span { display: block; color: #8196aa; font-size: 12px; }
.pair-grid code { display: block; margin-top: 5px; color: #eff7ff; word-break: break-all; }
.pair-expiry { color: #d8aa68; font-size: 12px; }
.bootstrap-code { min-height: 170px; padding: 11px; resize: vertical; font: 12px/1.5 Consolas, monospace; }
.dialog-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.dialog-footnote { margin: 13px 0 0; color: #d4aa6f; font-size: 12px; }


.setup-dialog { background:#151617; border-color:#555; } .dialog-head { background:#1a1b1c; } .dialog-close { background:#222; border-color:#666; }
.dialog-field input,.dialog-field select,.bootstrap-code { background:#0c0d0e; color:var(--text); border:1px solid #696969; } .dialog-field select { width:100%; height:44px; border-radius:5px; padding:0 10px; }
.reinstall-choice,.recover-choice,.recovery-panel { background:#1c1e1f; border-color:#454749; } .reinstall-choice strong,.recover-choice strong { color:var(--text); } .reinstall-choice p,.recover-choice p { color:var(--muted); }
.choice-label { display:none; } .dialog-wide { min-height:44px; } .dialog-status { background:#202325; color:#e6e6e6; border-color:#686868; }
.wide-dialog { width:min(1000px,calc(100vw - 80px)); } .detail-tabs { margin-bottom:20px; width:max-content; }
.detail-record { padding:18px 0; border-bottom:1px solid var(--line); } .detail-record header { display:flex; align-items:center; justify-content:space-between; gap:20px; } .detail-record h3 { margin:0 0 7px; font-size:17px; } .detail-record p { color:var(--muted); margin:6px 0; }
.log-card .table-wrap { max-height:360px; overflow:auto; } .log-table thead { position:sticky; top:0; z-index:1; }
.execution-timeline { list-style:none; padding-left:18px; border-left:2px solid #65512c; } .execution-timeline li { margin:12px 0; } .execution-timeline time { color:#b5b5b5; margin-right:20px; } .execution-timeline p { margin:3px 0; }
.restart-entry { padding:16px; margin-top:20px; border:1px solid #70434b; border-radius:6px; } .restart-entry p { font-size:13px; color:var(--muted); }
.confirm-check { display:flex; gap:12px; align-items:flex-start; margin:20px 0; } .confirm-check input { margin-top:6px; } .settings-note { color:var(--muted); font-size:13px; }
@media (min-width:768px) and (max-width:1250px) { .topbar { padding:0 12px; } .brand { min-width:185px; } .brand strong { font-size:18px; } .topnav a { padding:0 7px; font-size:12px; } .device-identity { padding:20px; } .device-facts dt { gap:12px; } .device-actions { gap:5px; } .connection-tools { flex-wrap:wrap; } .guide-grid { gap:16px; } .section-head > div:first-child { gap:14px; } .section-head h2 { font-size:23px; } td,th { padding-left:12px; padding-right:12px; } .strategy-name { gap:12px; } .strategy-name strong { font-size:17px; } .row-actions { gap:6px; } .row-actions button { padding:6px 10px; } .log-head { flex-wrap:wrap; } }
@media (max-width:767px) { html,body { min-width:0; } body::before { content:"我的QMT目前仅支持电脑端，请在电脑浏览器中使用。"; display:grid; place-items:center; min-height:100vh; padding:28px; text-align:center; color:var(--muted); } .topbar,.qmt-page,.toast,dialog { display:none !important; } }
@media (min-width:768px) and (max-width:1360px) { .topbar { gap:8px; } .brand { min-width:185px; } .brand strong { font-size:18px; } .topnav a { padding:0 7px; font-size:12px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto !important; transition:none !important; animation:none !important; } }
