.qiantu-api { --qt-line:#e5ebf3; display:grid; gap:20px; min-width:0; color:#263d5a; }
.qiantu-api *, .qiantu-api *::before, .qiantu-api *::after { box-sizing:border-box; }
.qiantu-api h3 { margin:0; color:#172b4d; font-size:16px; line-height:1.5; }
.qiantu-api p { margin:0; color:#738298; font-size:13px; line-height:1.7; }
.qiantu-api code, .qiantu-api pre { font-family:Consolas,"SFMono-Regular",monospace; }
#app .qiantu-api :is(.primary-button,.mini-button,.text-button) { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; width:auto; min-height:34px; height:auto; margin:0; padding:7px 12px; border:1px solid #dce4ef; border-radius:6px; background:#fff; color:#526681; font-size:12px; font-weight:500; line-height:1.3; white-space:nowrap; cursor:pointer; box-shadow:none; }
#app .qiantu-api .primary-button { min-height:36px; padding:8px 16px; gap:5px; border-color:#3268df; background:#3268df; color:#fff; }
#app .qiantu-api .text-button:hover:not(:disabled), #app .qiantu-api .mini-button:hover:not(:disabled) { color:#285ed0; border-color:#adc5f2; background:#f5f8ff; }
#app .qiantu-api .primary-button:hover:not(:disabled) { background:#2559c9; }
#app .qiantu-api button:disabled { opacity:.5; cursor:not-allowed; }
.qiantu-api :is(button,a,input,textarea,select,summary):focus-visible { outline:2px solid #5888ee; outline-offset:3px; }
.qt-api-guide { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,1fr); gap:28px; padding:24px; border:1px solid #dfe9f9; border-radius:10px; background:linear-gradient(110deg,#f3f7ff,#fafcff); }
.qt-api-eyebrow { display:block; margin-bottom:7px; color:#6481b2; font-size:11px; font-weight:600; letter-spacing:1px; }
.qt-api-intro h3 { font-size:20px; margin-bottom:7px; }
.qt-api-guide-links { display:flex; align-items:center; flex-wrap:wrap; gap:16px; margin-top:14px; font-size:12px; }
.qt-api-guide-links a { color:#3268cc; text-decoration:none; }
.qt-api-guide-links a:hover { text-decoration:underline; }
.qt-api-permanent { display:inline-flex; align-items:center; gap:5px; color:#4c729c; }
.qt-api-permanent::before { content:""; width:5px; height:5px; border-radius:50%; background:#4e92c8; }
.qt-api-connection { align-self:center; min-width:0; border:1px solid #e0e8f5; border-radius:8px; padding:12px 16px; background:#ffffffd9; }
.qt-api-label-row { display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:30px; color:#6f819c; font-size:11px; }
#app .qiantu-api .qt-api-label-row .text-button { min-height:26px; padding:4px 8px; border-color:transparent; background:transparent; color:#4470b5; }
.qt-api-endpoint { display:block; margin:5px 0 12px; color:#2b4c7c; font-size:12px; line-height:1.7; overflow-wrap:anywhere; }
.qiantu-api details { padding-top:10px; border-top:1px solid #e8eef7; color:#637eab; font-size:12px; }
.qiantu-api summary { cursor:pointer; width:fit-content; }
.qiantu-api pre { white-space:pre-wrap; overflow-wrap:anywhere; background:#f4f7fc; padding:12px; border:1px solid #e4ebf5; border-radius:6px; color:#36527a; line-height:1.7; font-size:11px; }
.qt-api-card { background:#fff; border:1px solid var(--qt-line); border-radius:10px; padding:20px; min-width:0; }
.qt-api-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:18px; }
.qt-api-toolbar p { margin-top:5px; font-size:12px; }
.qt-api-title-row { display:flex; align-items:center; gap:9px; }
.qt-api-count { display:inline-flex; align-items:center; justify-content:center; min-width:23px; height:21px; padding:0 6px; background:#f0f4fa; border-radius:5px; color:#6b7f9e; font-size:11px; }
.qt-api-actions { display:flex; align-items:center; gap:8px; flex-shrink:0; flex-wrap:wrap; }
.qt-api-actions select { width:auto; max-width:200px; min-height:34px; padding:6px 28px 6px 10px; border:1px solid #dce4ef; border-radius:6px; background:#fff; color:#526681; font:inherit; font-size:12px; }
.qt-api-app-list { display:grid; gap:14px; }
.qt-api-app { border:1px solid var(--qt-line); border-radius:8px; min-width:0; overflow:hidden; background:#fff; }
.qt-api-app-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:18px 20px 16px; }
.qt-api-app-identity { display:flex; align-items:center; gap:10px; min-width:0; }
.qt-api-app-icon { display:grid; place-items:center; width:36px; height:36px; flex-shrink:0; border:1px solid #e2eafa; border-radius:9px; background:#f1f6ff; color:#5c7ba7; font-size:15px; }
.qt-api-app-identity>div { min-width:0; }
.qt-api-app h4 { margin:0 0 4px; font-size:14px; font-weight:600; color:#233b5b; overflow-wrap:anywhere; }
.qt-api-created { font-size:11px; color:#94a0b1; }
.qt-api-status { display:inline-flex; gap:5px; align-items:center; flex-shrink:0; padding:4px 8px; border-radius:4px; font-size:11px; color:#8390a3; background:#f3f5f8; }
.qt-api-status.active { color:#34836d; background:#edf8f3; }
.qt-api-status.active::before { content:""; width:5px; height:5px; border-radius:50%; background:#57a78d; }
.qt-api-credentials { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:0 20px; }
.qt-api-credential { min-width:0; padding:9px 12px 13px; background:#f7f9fc; border:1px solid #e9eef5; border-radius:6px; }
.qt-api-credential code { display:block; min-height:36px; padding-top:7px; font-size:12px; line-height:1.7; color:#435b7b; overflow-wrap:anywhere; user-select:all; }
.qt-api-credential .masked { color:#99a8be; font-size:15px; letter-spacing:2px; }
.qt-api-token-actions { display:flex; align-items:center; gap:2px; }
.qt-api-legacy-token { font-size:10px; color:#9aa6b8; }
.qt-api-app-details { display:grid; grid-template-columns:1fr 1fr; gap:16px; padding:16px 20px; }
.qt-api-detail-label { display:block; margin-bottom:7px; color:#91a0b3; font-size:11px; }
.qt-api-tags { display:flex; flex-wrap:wrap; gap:6px; color:#61748f; font-size:12px; }
.qt-api-tag { padding:3px 7px; border-radius:4px; background:#f0f4fa; color:#627b9e; font-size:11px; line-height:1.5; }
.qt-api-shop-tag { line-height:22px; overflow-wrap:anywhere; }
.qt-api-app-footer { display:flex; flex-wrap:wrap; gap:12px 24px; padding:11px 20px; border-top:1px solid #eef2f7; background:#fbfcfe; color:#9aa6b7; font-size:11px; line-height:1.7; }
.qt-api-app-footer strong { margin-left:6px; font-weight:400; color:#75869d; overflow-wrap:anywhere; }
.qt-api-empty { display:grid; justify-items:center; gap:8px; padding:35px 12px; border:1px dashed #e0e7f1; border-radius:8px; text-align:center; color:#8b9cb4; }
.qt-api-empty strong { font-size:14px; font-weight:500; color:#526d93; }
.qt-api-empty-icon { display:grid; place-items:center; width:42px; height:42px; margin-bottom:4px; border-radius:10px; background:#f1f5fc; font-size:24px; color:#94a9cc; }
.qiantu-api .qt-api-error { padding:11px 14px; border:1px solid #f1cdce; border-radius:6px; background:#fff5f5; color:#a12c34; }
.qt-api-notice { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 14px; border:1px solid #d7ede2; border-radius:6px; background:#f3faf6; color:#34836d; font-size:12px; }
.qt-api-notice button { background:none; border:0; color:inherit; padding:2px 5px; font-size:18px; cursor:pointer; }
.qt-api-table-wrap { max-width:100%; overflow:auto; border:1px solid var(--qt-line); border-radius:6px; }
#app .qiantu-api table.qt-api-table { width:100%; min-width:640px; font-size:12px; border-collapse:collapse; }
#app .qiantu-api table.qt-api-table th { padding:11px 12px; font-weight:400; color:#8594aa; background:#f8fafd; border-top:0; }
#app .qiantu-api table.qt-api-table td { padding:13px 12px; overflow-wrap:anywhere; border-bottom:1px solid #eff2f7; color:#697f9c; }
#app .qiantu-api table.qt-api-table tr:last-child td { border-bottom:0; }
.qt-api-table code { font-size:11px; line-height:1.6; color:#6c82a0; }
.qt-api-table small { display:block; color:#b86565; margin-top:5px; font-size:10px; }
.qt-api-method { display:inline-block; margin-right:6px; color:#9aa9bc; font-size:10px; }
.qt-api-log-status { padding:3px 6px; border-radius:4px; background:#eff8f3; color:#438370; font:11px Consolas,monospace; }
.qt-api-log-status.error { color:#b35c5c; background:#fdf0f0; }
#app .qiantu-api .qt-api-more { display:flex; margin:14px auto 0; }
.qt-api-backdrop { z-index:1600; padding:16px; }
.qt-api-modal { width:min(620px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow:auto; padding:26px; box-sizing:border-box; border-radius:12px; }
.qt-api-modal .modal-head { padding:0 0 18px; margin-bottom:4px; border-bottom:1px solid var(--qt-line); align-items:flex-start; }
.qt-api-modal .modal-head p { margin-top:5px; font-size:12px; }
.qt-api-modal .modal-head .icon-button { flex:0 0 28px; width:28px; height:28px; min-height:0; padding:0; border:0; background:#f5f7fb; border-radius:5px; color:#8192aa; font-size:20px; }
.qt-api-field { display:grid; gap:8px; margin:18px 0; color:#526985; font-size:12px; }
.qt-api-field input, .qt-api-field textarea { width:100%; padding:10px 12px; border:1px solid #dce4ef; border-radius:6px; background:#fff; color:#365174; font:inherit; font-size:13px; }
.qt-api-field input[readonly], .qt-api-field textarea[readonly] { background:#f7f9fc; font:12px/1.7 Consolas,monospace; }
.qt-api-modal fieldset { margin:18px 0; padding:10px 12px; border:1px solid #e2e8f0; border-radius:6px; max-height:190px; overflow:auto; }
.qt-api-modal legend { padding:0 6px; color:#526985; font-size:12px; }
.qt-api-check { display:inline-flex; align-items:center; gap:7px; margin:7px 16px 7px 0; color:#5f7491; font-size:12px; cursor:pointer; }
.qt-api-check input { width:14px; height:14px; accent-color:#3268df; }
.qt-api-check:has(input:disabled) { cursor:default; opacity:.55; }
.qt-api-select-all { margin-bottom:7px; padding-bottom:7px; border-bottom:1px solid var(--qt-line); }
.qt-api-select-all p { margin:0 0 5px 21px; font-size:12px; }
.qt-api-modal-footer { justify-content:flex-end; margin-top:22px; padding-top:16px; border-top:1px solid var(--qt-line); }
.qt-api-secret { min-height:84px; resize:none; word-break:break-all; }
.qt-api-client-body { display:grid; gap:18px; padding:0 20px 20px; min-width:0; }
.qt-api-uri { display:block; color:#526985; font-size:12px; line-height:1.8; overflow-wrap:anywhere; }
.qt-api-oauth-connection { display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:0 20px 8px; }
.qt-api-oauth-connection p { flex:1; min-width:180px; }
.qt-api-app-footer a { align-self:center; color:#3268df; }
.qt-api-field>span { color:#7a8ba3; font-size:11px; line-height:1.7; }
.qt-api-revoke-message { margin-top:16px!important; }
.qt-api-global-consent { display:flex; align-items:center; justify-content:center; z-index:2000; }
.qt-api-consent-summary { display:grid; gap:12px; margin:20px 0; padding:15px; border:1px solid var(--qt-line); border-radius:7px; background:#f7f9fd; font-size:13px; }
.qt-api-consent-summary div { display:grid; grid-template-columns:80px minmax(0,1fr); gap:10px; }
.qt-api-consent-summary dt { color:#7a8ba3; }
.qt-api-consent-summary dd { margin:0; color:#304e77; overflow-wrap:anywhere; }
@media(max-width:1100px) {
    .qt-api-guide { grid-template-columns:1fr; gap:18px; }
}
@media(max-width:700px) {
    #app .account-center-page:has(.qiantu-api) .account-center-nav { display:flex; gap:4px; padding:5px; overflow-x:auto; min-width:0; }
    #app .account-center-page:has(.qiantu-api) .account-center-nav button { flex-shrink:0; display:block; padding:9px 10px; white-space:nowrap; }
    #app .account-center-page:has(.qiantu-api) .account-center-nav strong { font-size:12px; }
    #app .account-center-page:has(.qiantu-api) .account-center-nav span { display:none; }
    #app .account-center-page:has(.qiantu-api) .account-center-main { padding:10px; }
    .qiantu-api { gap:14px; }
    .qt-api-guide { padding:14px; gap:14px; }
    .qt-api-intro h3 { font-size:17px; }
    .qt-api-guide p { font-size:12px; }
    .qt-api-connection { padding:9px 12px; }
    .qt-api-card { padding:12px; }
    .qt-api-toolbar { align-items:flex-start; flex-wrap:wrap; gap:12px; }
    .qt-api-actions { flex-wrap:wrap; }
    .qt-api-actions select { min-width:0; max-width:160px; }
    .qt-api-app-head { display:grid; gap:8px; padding:12px; }
    .qt-api-app-icon { width:30px; height:30px; border-radius:7px; }
    .qt-api-app h4 { font-size:13px; }
    .qt-api-created { font-size:10px; }
    .qt-api-status { justify-self:start; font-size:10px; padding:4px 6px; }
    .qt-api-credentials { grid-template-columns:1fr; gap:8px; margin:0 12px; }
    .qt-api-credential { padding:8px 10px 10px; }
    .qt-api-credential .masked { white-space:nowrap; overflow:hidden; }
    .qt-api-app-details { grid-template-columns:1fr; gap:13px; padding:14px 12px; }
    .qt-api-app-footer { flex-direction:column; gap:4px; padding:10px 12px; }
    .qt-api-table-wrap { border:0; overflow:visible; }
    #app .qiantu-api table.qt-api-table { display:block; min-width:0; width:100%; }
    #app .qiantu-api table.qt-api-table thead { display:none; }
    #app .qiantu-api table.qt-api-table tbody { display:grid; gap:10px; }
    #app .qiantu-api table.qt-api-table tr { display:grid; gap:7px; padding:12px; border:1px solid var(--qt-line); border-radius:6px; }
    #app .qiantu-api table.qt-api-table td { display:block; position:static; padding:0; border:0; min-width:0; background:none; font-size:11px; }
    #app .qiantu-api table.qt-api-table td::before { content:attr(data-label); float:left; width:60px; color:#9ba8ba; font-size:10px; line-height:1.7; }
    .qt-api-table code { font-size:10px; }
    .qt-api-modal { padding:20px; }
    .qt-api-modal-footer { gap:8px; }
    .qt-api-modal-footer .primary-button { flex-grow:1!important; }
}
.qt-api-settings-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:16px 20px;color:var(--text-secondary,#64748b);font-size:13px}
.qiantu-api .qt-api-expiry-warning{color:#b45309;font-size:13px;margin:12px 0}
.qt-api-status.warning{color:#b45309;background:#fffbeb}
.qt-api-field select{width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--border-color,#dbe2ea);border-radius:8px;background:var(--surface,#fff);color:inherit;font:inherit}
.qt-api-history-item{padding:16px 0;border-bottom:1px solid var(--border-color,#e2e8f0);font-size:13px;overflow-wrap:anywhere}
.qt-api-history-comparison{display:grid;grid-template-columns:1fr 1fr;gap:16px}.qt-api-history-comparison h4{margin:8px 0}.qt-api-history-comparison p{line-height:1.6}
@media(max-width:600px){.qt-api-history-comparison{grid-template-columns:1fr}.qt-api-settings-actions{align-items:flex-start}}
