:root{--bg:#f5f7fb;--card:#fff;--text:#1f2937;--muted:#64748b;--border:#e5e7eb;--primary:#2563eb;--danger:#dc2626;--shadow:0 10px 30px rgba(15,23,42,.08)}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}input,textarea,select,button{font:inherit}input,textarea,select{border:1px solid var(--border);background:#fff;border-radius:8px;width:100%;padding:10px 12px}textarea{resize:vertical}.topbar{z-index:50;backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:rgba(255,255,255,.92);justify-content:space-between;align-items:center;gap:16px;padding:14px 24px;display:flex;position:sticky;top:0}.brand{color:var(--primary);font-weight:800}.nav{flex-wrap:wrap;gap:12px;display:flex}.nav a{color:var(--muted)}.nav a:hover{color:var(--primary)}.container{max-width:1200px;margin:0 auto;padding:24px 16px}.panel,.auth-card,.novel-card,.stat-card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px}.panel{margin:18px 0;padding:20px}.auth-card{max-width:420px;margin:80px auto;padding:28px}.form-stack{gap:14px;display:grid}.grid-form{grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:12px;display:grid}.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.btn{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;min-height:38px;padding:8px 14px;display:inline-flex}.btn.primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn.danger{background:var(--danger);color:#fff;border-color:var(--danger)}.checkbox{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.checkbox input{width:auto}.badge{color:#1d4ed8;background:#eff6ff;border-radius:99px;align-items:center;margin:2px 4px 2px 0;padding:3px 8px;font-size:12px;display:inline-flex}.empty{color:var(--muted)}.stat-grid{grid-template-columns:repeat(5,1fr);gap:16px;display:grid}.stat-card{padding:20px}.stat-card strong{font-size:32px;display:block}.stat-card span{color:var(--muted)}.page-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.search-form{gap:10px;margin:16px 0;display:flex}.novel-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;display:grid}.novel-card{overflow:hidden}.novel-card img,.cover-placeholder{aspect-ratio:3/4;object-fit:cover;width:100%;color:var(--muted);background:#e2e8f0;place-items:center;display:grid}.novel-card h2{padding:0 12px;font-size:18px}.novel-card p{color:var(--muted);padding:0 12px}.meta{font-size:13px}.table-list{gap:10px;display:grid}.table-row{border:1px solid var(--border);background:#fff;border-radius:10px;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:10px;padding:12px;display:grid}.edit-row{grid-template-columns:1fr 1.3fr .6fr .5fr .4fr .4fr}.detail-head{grid-template-columns:1fr 220px;gap:22px;display:grid}.detail-cover{object-fit:cover;border-radius:12px;width:220px}.tag-box{border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;gap:12px;padding:12px;display:flex}.chapter-list{gap:8px;display:grid}.chapter-list a{border:1px solid var(--border);background:#fff;border-radius:10px;justify-content:space-between;padding:12px;display:flex}.token-box{white-space:pre-wrap;word-break:break-all;color:#f9fafb;background:#111827;border-radius:8px;padding:12px}.warning{border-color:#f59e0b}.toast{color:#fff;text-align:center;z-index:9999;opacity:0;pointer-events:none;background:rgba(0,0,0,.82);border-radius:8px;min-width:160px;max-width:80vw;padding:10px 16px;font-size:14px;transition:opacity .2s;position:fixed;bottom:32px;left:50%;transform:translate(-50%)}.toast.show{opacity:1}@media (max-width:1023px){.container{padding:18px 14px}.stat-grid,.novel-grid{grid-template-columns:repeat(3,1fr)}.grid-form{grid-template-columns:repeat(2,1fr)}.table-row,.edit-row{grid-template-columns:1fr 1fr}.detail-head{grid-template-columns:1fr}}@media (max-width:767px){.topbar{flex-direction:column;align-items:flex-start;padding:12px}.container{padding:14px 12px}.stat-grid,.novel-grid{grid-template-columns:repeat(2,1fr)}.grid-form,.table-row,.edit-row{grid-template-columns:1fr}.search-form{flex-direction:column}.page-head{flex-direction:column;align-items:stretch}}@media (max-width:480px){.stat-grid,.novel-grid{grid-template-columns:1fr}.auth-card{margin:30px auto}}.page-desc{color:var(--muted);margin:4px 0 0;line-height:1.6}.section-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.compact-panel{padding:18px}.clean-list{gap:12px}.row-main{gap:4px;min-width:0;display:grid}.row-main strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.row-main span,.muted{color:var(--muted)}.row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.category-row{grid-template-columns:1.4fr .45fr .35fr .75fr}.tag-row{grid-template-columns:1.5fr .45fr .75fr}.token-row{grid-template-columns:1.25fr .65fr .45fr .7fr .35fr}.import-guide{margin-top:18px}.guide-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.guide-grid>div{border:1px solid var(--border);background:#fff;border-radius:12px;padding:14px}.guide-grid p{color:var(--muted);margin-bottom:0;line-height:1.6}.modal-form label{color:var(--text);gap:7px;font-weight:600;display:grid}.modal-form .checkbox{font-weight:400;display:inline-flex}body.modal-sheet-locked{overflow:hidden}@media (max-width:1023px){.category-row,.tag-row,.token-row{grid-template-columns:1fr 1fr}.guide-grid{grid-template-columns:1fr}}@media (max-width:767px){.section-head{flex-direction:column;align-items:stretch}.category-row,.tag-row,.token-row{grid-template-columns:1fr}.row-actions{justify-content:flex-start}}.import-file-row{grid-template-columns:1.3fr .55fr .35fr .8fr .75fr}.row-error{color:var(--danger);margin:6px 0 0;font-size:12px;line-height:1.45}.badge.danger-lite{color:#b91c1c;background:#fef2f2}.notice{border:1px solid var(--border);border-radius:10px;margin-bottom:14px;padding:12px 14px;line-height:1.6}.success-notice{color:#047857;background:#f0fdf4;border-color:#bbf7d0}.preview-panel{width:min(980px,98vw)}.preview-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.chapter-select-toolbar{z-index:2;border:1px solid var(--border);backdrop-filter:blur(8px);background:rgba(255,255,255,.96);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;padding:12px;display:flex;position:sticky;top:-22px}.chapter-preview-list{gap:8px;max-height:52vh;padding-right:4px;display:grid;overflow:auto}.chapter-preview-item{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:10px;grid-template-columns:auto 1fr;align-items:flex-start;gap:10px;padding:12px;display:grid}.chapter-preview-item input{width:auto;margin-top:3px}.chapter-preview-main{gap:4px;min-width:0;display:grid}.chapter-preview-main strong{line-height:1.45}.chapter-preview-main small{color:var(--muted)}.chapter-preview-main em{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-style:normal;line-height:1.55;display:-webkit-box;overflow:hidden}@media (max-width:1023px){.import-file-row{grid-template-columns:1fr 1fr}.preview-meta-grid{grid-template-columns:1fr}}@media (max-width:767px){.import-file-row{grid-template-columns:1fr}.chapter-select-toolbar{align-items:stretch;top:0}.chapter-select-toolbar .btn{flex:1}.chapter-preview-list{max-height:46vh}.preview-panel{width:100%}}.steps{margin:0;padding-left:22px;line-height:1.8}.notice{color:#4b5563;background:#f5f7fb;border:1px solid #e5e7eb;border-radius:10px;margin-top:14px;padding:12px 14px}.alert{border-radius:10px;margin:12px 0;padding:10px 12px}.alert.success{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.alert.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.split-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.btn.small{padding:6px 10px;font-size:13px}.copy-input{box-sizing:border-box;width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.code-block{white-space:pre-wrap;word-break:break-word;color:#e5e7eb;background:#0f172a;border-radius:12px;max-height:560px;padding:14px;font-size:13px;line-height:1.55;overflow:auto}.legado-login-card{max-width:560px}.full{width:100%}.small-text{font-size:13px}@media (max-width:767px){.split-title{flex-direction:column;align-items:flex-start}.code-block{max-height:420px;font-size:12px}}.card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;margin:18px 0;padding:20px}.novel-cover-link{background:#e2e8f0;display:block}.novel-card{flex-direction:column;display:flex}.novel-card-body{gap:6px;min-width:0;padding:12px;display:grid}.novel-card h2,.novel-card p{margin:0;padding:0}.novel-card h2{font-size:18px;line-height:1.35}.novel-card-body h2 a{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.detail-info{min-width:0}@media (max-width:767px){.novel-grid{grid-template-columns:1fr;gap:12px}.novel-card{flex-direction:row;min-height:132px}.novel-cover-link{flex:0 0 96px;width:96px}.novel-card img,.novel-card .cover-placeholder{aspect-ratio:auto;width:96px;height:132px}.novel-card-body{flex:1;align-content:start;padding:12px 12px 10px}.novel-card h2{font-size:16px}.detail-head.detail-has-cover{grid-template-columns:104px minmax(0,1fr);align-items:start;gap:12px}.detail-head.detail-has-cover .detail-cover{aspect-ratio:auto;border-radius:10px;order:-1;grid-area:1/1;width:104px;height:138px}.detail-head.detail-has-cover .detail-info{grid-area:1/2}.detail-info h1{margin-top:0;font-size:22px;line-height:1.25}.detail-info p{margin:8px 0;line-height:1.55}.detail-info .actions{grid-column:1/-1}.detail-info .actions .btn,.detail-info .actions form,.detail-info .actions form .btn{width:100%}.chapter-list a{align-items:flex-start;gap:8px}}.form-label{margin-bottom:8px;font-weight:700;display:block}.jjwxc-fetch-form{gap:10px;display:grid}.jjwxc-url-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.jjwxc-select-form .jjwxc-url-row{grid-template-columns:minmax(0,1fr) 180px auto}.jjwxc-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:18px;display:grid}.jjwxc-pane{min-width:0}.jjwxc-table-scroll{border:1px solid var(--border);background:#fff;border-radius:12px;max-height:68vh;overflow:auto}.jjwxc-table{border-collapse:collapse;width:100%;min-width:760px}.jjwxc-table th,.jjwxc-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:9px 10px;line-height:1.45}.jjwxc-table th{z-index:1;color:#475569;background:#f8fafc;font-size:13px;position:sticky;top:0}.jjwxc-table td:first-child,.jjwxc-table th:first-child{white-space:nowrap;width:72px}.jjwxc-table .empty{text-align:center;padding:28px}.replace-table tr.changed{background:#f8fbff}.jjwxc-sticky-toolbar{margin:12px 0;top:0}.right-table{max-height:56vh}@media (max-width:1023px){.jjwxc-workspace{grid-template-columns:1fr}.jjwxc-table-scroll{max-height:52vh}}.content-preview{border:1px solid var(--border);background:var(--surface-soft);white-space:pre-wrap;word-break:break-word;border-radius:8px;max-height:52vh;margin:12px 0 0;padding:12px;overflow:auto}@media (max-width:767px){.jjwxc-url-row,.jjwxc-select-form .jjwxc-url-row{grid-template-columns:1fr}.jjwxc-url-row .btn{width:100%}.jjwxc-table{min-width:680px}.jjwxc-table-scroll{max-height:48vh}}.jjwxc-control-panel{gap:14px;display:grid}.jjwxc-control-grid{grid-template-columns:minmax(280px,1.8fr) minmax(220px,1.2fr) minmax(150px,.8fr) auto;align-items:end;gap:12px;display:grid}.jjwxc-control-grid.secondary{border-top:1px solid var(--border);grid-template-columns:minmax(260px,1fr) 180px auto;padding-top:14px}.jjwxc-control-actions{align-items:end;display:flex}.jjwxc-control-actions .btn{white-space:nowrap}.jjwxc-novelid-row{border:1px solid var(--border);background:#fff;border-radius:8px;align-items:center;min-height:42px;display:flex;overflow:hidden}.jjwxc-novelid-row input{border:0;border-radius:0;min-width:120px;padding-left:8px}.jjwxc-novelid-row input:focus{outline:none}.jjwxc-url-prefix{color:var(--muted);white-space:nowrap;flex:none;padding:10px 0 10px 12px;font-size:13px}.jjwxc-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.jjwxc-summary-grid strong{margin-top:4px;font-size:20px;line-height:1.35;display:block}.jjwxc-meta-preview{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;margin-top:10px;display:grid}.jjwxc-cover-link{width:76px;line-height:0;display:block}.jjwxc-cover-preview{aspect-ratio:3/4;object-fit:cover;border:1px solid var(--border);background:#f8fafc;border-radius:8px;width:76px}.jjwxc-intro-preview{color:var(--muted);-webkit-line-clamp:5;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.6;display:-webkit-box;overflow:hidden}.jjwxc-merged-panel{min-width:0}.jjwxc-merged-scroll{max-height:72vh}.jjwxc-compare-table{min-width:980px}.jjwxc-compare-table th:first-child,.jjwxc-compare-table td:first-child{text-align:center;width:64px}.jjwxc-compare-table th:nth-child(2),.jjwxc-compare-table td:nth-child(2){white-space:nowrap;width:70px}.jjwxc-compare-table th:nth-child(6),.jjwxc-compare-table td:nth-child(6){width:96px}.jjwxc-compare-table td strong{line-height:1.45;display:block}.jjwxc-compare-table td small{color:var(--muted);margin-top:4px;line-height:1.45;display:block}.jjwxc-inline-form{margin:0}@media (max-width:1023px){.jjwxc-control-grid,.jjwxc-control-grid.secondary{grid-template-columns:1fr 1fr}.jjwxc-control-actions{align-items:stretch}.jjwxc-control-actions .btn{width:100%}.jjwxc-summary-grid{grid-template-columns:1fr}.jjwxc-compare-table{min-width:900px}}@media (max-width:767px){.jjwxc-control-grid,.jjwxc-control-grid.secondary{grid-template-columns:1fr}.jjwxc-url-prefix{white-space:normal;word-break:break-all;width:100%;padding:9px 12px 0;display:block}.jjwxc-novelid-row{display:block}.jjwxc-meta-preview{grid-template-columns:56px minmax(0,1fr)}.jjwxc-cover-link{width:56px}.jjwxc-cover-preview{border-radius:6px;width:56px}.jjwxc-intro-preview{-webkit-line-clamp:4}.jjwxc-merged-scroll{background:0 0;border:0;max-height:none;overflow:visible}.jjwxc-compare-table,.jjwxc-compare-table thead,.jjwxc-compare-table tbody,.jjwxc-compare-table tr,.jjwxc-compare-table th,.jjwxc-compare-table td{width:100%;min-width:0;display:block}.jjwxc-compare-table{border-collapse:separate;border-spacing:0}.jjwxc-compare-table thead{display:none}.jjwxc-compare-table tr{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:12px;margin-bottom:12px;padding:12px}.jjwxc-compare-table tr.changed{background:#f8fbff}.jjwxc-compare-table td{border-bottom:1px dashed var(--border);min-height:36px;padding:8px 0 8px 88px;position:relative;text-align:left!important}.jjwxc-compare-table td:last-child{border-bottom:0}.jjwxc-compare-table td:before{content:attr(data-label);width:76px;color:var(--muted);font-size:12px;font-weight:700;position:absolute;top:8px;left:0}.jjwxc-compare-table td[data-label=替换]{padding-left:88px}.jjwxc-compare-table .empty{text-align:left;padding:8px 0 8px 88px}.jjwxc-sticky-toolbar{z-index:5;align-items:stretch;position:sticky;top:0}.jjwxc-sticky-toolbar .btn{flex:1}.page-head h1{font-size:24px;line-height:1.25}.jjwxc-control-panel,.jjwxc-summary-panel,.jjwxc-merged-panel{border-radius:12px;margin:12px 0;padding:12px}.jjwxc-control-grid,.jjwxc-control-grid.secondary{gap:9px}.jjwxc-control-grid .form-label{margin-bottom:0;font-size:13px}.jjwxc-novelid-row{border-radius:10px;grid-template-columns:1fr;min-height:0;display:grid}.jjwxc-url-prefix{border-bottom:1px solid var(--border);word-break:break-all;background:#f8fafc;width:auto;padding:8px 10px;font-size:12px;line-height:1.35;display:block}.jjwxc-novelid-row input,.jjwxc-control-grid select,.jjwxc-control-grid.secondary select{min-height:42px;font-size:16px}.jjwxc-novelid-row input{padding:10px}.jjwxc-control-actions,.jjwxc-control-actions .btn{width:100%}.jjwxc-inline-form .jjwxc-control-grid.secondary{padding-top:10px}.jjwxc-summary-grid{gap:10px}.jjwxc-summary-grid>div{border:1px solid var(--border);background:#fff;border-radius:10px;padding:10px}.jjwxc-summary-grid strong{font-size:16px}.jjwxc-merged-panel .section-head h2{margin-bottom:2px;font-size:20px}.jjwxc-sticky-toolbar{border-radius:12px;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 12px;padding:10px;display:grid}.jjwxc-sticky-toolbar span{text-align:center;order:3;grid-column:1/-1;margin:0;font-size:12px}.jjwxc-sticky-toolbar .btn.primary{order:4;grid-column:1/-1}.jjwxc-compare-table tr{box-shadow:none;border-radius:14px;margin-bottom:10px;padding:10px}.jjwxc-compare-table td{word-break:break-word;grid-template-columns:72px minmax(0,1fr);align-items:start;gap:10px;min-height:0;padding:8px 0;display:grid}.jjwxc-compare-table td:before{width:auto;line-height:1.45;position:static}.jjwxc-compare-table td[data-label=替换],.jjwxc-compare-table td[data-label=序号],.jjwxc-compare-table td[data-label=状态]{grid-template-columns:72px auto;align-items:center}.jjwxc-compare-table td[data-label=晋江目录] strong,.jjwxc-compare-table td[data-label=本站目录] strong,.jjwxc-compare-table td[data-label=替换后标题]{font-size:14px;line-height:1.5}.jjwxc-compare-table td small{font-size:12px;line-height:1.45}.jjwxc-compare-table .badge{justify-self:start;margin:0}.jjwxc-compare-table .empty{padding:10px}}@media (max-width:390px){.jjwxc-control-panel,.jjwxc-summary-panel,.jjwxc-merged-panel{padding:10px}.jjwxc-compare-table td{grid-template-columns:64px minmax(0,1fr);gap:8px}.jjwxc-sticky-toolbar{grid-template-columns:1fr}.jjwxc-sticky-toolbar span,.jjwxc-sticky-toolbar .btn.primary{grid-column:auto}}.fanqie-sync-page,.fanqie-workspace,.fanqie-result-panel{margin-top:16px}.fanqie-sync-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.fanqie-main-grid{grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr)}.fanqie-sync-column{gap:12px;min-width:0;display:grid}.fanqie-config-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.fanqie-config-grid .form-label{min-width:0;margin:0}.fanqie-config-grid input,.fanqie-search-row input,.fanqie-chapter-toolbar input,.fanqie-sync-column select,.fanqie-sync-column input[type=number]{width:100%;min-width:0}.fanqie-action-row,.fanqie-status-list{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fanqie-log{border:1px solid var(--border);color:#334155;white-space:pre-wrap;overflow-wrap:anywhere;background:#f8fafc;border-radius:8px;min-height:74px;max-height:180px;margin:0;padding:10px 12px;line-height:1.55;overflow:auto}.fanqie-search-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.fanqie-result-list{gap:10px;max-height:360px;padding-right:2px;display:grid;overflow:auto}.fanqie-book-result{border:1px solid var(--border);width:100%;color:var(--text);text-align:left;cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:54px minmax(0,1fr);align-items:start;gap:10px;padding:10px;display:grid}.fanqie-book-result:hover{background:#f8fbff;border-color:rgba(37,99,235,.38)}.fanqie-book-result img,.fanqie-cover-placeholder{aspect-ratio:3/4;border:1px solid var(--border);object-fit:cover;background:#f1f5f9;border-radius:6px;width:54px}.fanqie-cover-placeholder{color:var(--muted);place-items:center;font-size:12px;display:grid}.fanqie-book-result strong,.fanqie-book-result small,.fanqie-book-result em{overflow-wrap:anywhere;display:block}.fanqie-book-result strong{line-height:1.45}.fanqie-book-result small,.fanqie-book-result em{color:var(--muted);margin-top:4px;font-size:12px;font-style:normal;line-height:1.45}.fanqie-workspace-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.fanqie-workspace-head h2{overflow-wrap:anywhere;margin:0 0 4px;font-size:22px;line-height:1.3}.fanqie-chapter-toolbar{grid-template-columns:auto minmax(0,260px);align-items:center;gap:10px;display:grid}.fanqie-chapter-toolbar span{color:var(--muted);font-weight:700}.fanqie-table-scroll{border:1px solid var(--border);background:#fff;border-radius:8px;max-height:62vh;overflow:auto}.fanqie-target-scroll{max-height:42vh}.fanqie-table{min-width:720px}.fanqie-target-scroll .fanqie-table{min-width:520px}.fanqie-table th{z-index:1;background:#f8fafc;position:sticky;top:0}.fanqie-table td:first-child,.fanqie-table th:first-child{width:72px}.fanqie-table td strong,.fanqie-table td small{overflow-wrap:anywhere;display:block}.fanqie-table td small{color:var(--muted);margin-top:3px;font-size:12px}.fanqie-target-summary,.fanqie-summary-strip{border:1px solid var(--border);color:#334155;overflow-wrap:anywhere;background:#f8fafc;border-radius:8px;padding:10px 12px;line-height:1.5}.fanqie-sync-submit{width:100%}.fanqie-table tr.is-success{background:#f7fef9}.fanqie-table tr.is-failed{background:#fff7f7}@media (max-width:1023px){.fanqie-sync-grid,.fanqie-main-grid{grid-template-columns:1fr}.fanqie-table-scroll,.fanqie-target-scroll{max-height:50vh}}@media (max-width:767px){.fanqie-sync-page,.fanqie-workspace,.fanqie-result-panel{padding:12px}.fanqie-config-grid,.fanqie-search-row,.fanqie-chapter-toolbar{grid-template-columns:1fr}.fanqie-search-row .btn,.fanqie-action-row .btn,.fanqie-workspace-head .btn{width:100%}.fanqie-workspace-head{grid-template-columns:1fr;display:grid}.fanqie-workspace-head .inline-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.fanqie-result-list{max-height:none;overflow:visible}.fanqie-table-scroll,.fanqie-target-scroll{background:0 0;border:0;max-height:none;overflow:visible}.fanqie-table,.fanqie-table thead,.fanqie-table tbody,.fanqie-table tr,.fanqie-table th,.fanqie-table td{width:100%;min-width:0;display:block}.fanqie-table thead{display:none}.fanqie-table tr{border:1px solid var(--border);background:#fff;border-radius:8px;margin-bottom:10px;padding:10px}.fanqie-table tr.is-success{background:#f7fef9;border-color:#bbf7d0}.fanqie-table tr.is-failed{background:#fff7f7;border-color:#fecaca}.fanqie-table td{border-bottom:1px dashed var(--border);word-break:break-word;grid-template-columns:72px minmax(0,1fr);align-items:start;gap:10px;padding:8px 0;display:grid}.fanqie-table td:last-child{border-bottom:0}.fanqie-table td:before{content:attr(data-label);color:var(--muted);font-size:12px;font-weight:800;line-height:1.45}.fanqie-table .empty{padding:12px;display:block}.fanqie-table .empty:before{content:none}}@media (max-width:390px){.fanqie-workspace-head .inline-actions{grid-template-columns:1fr}.fanqie-book-result{grid-template-columns:46px minmax(0,1fr)}.fanqie-book-result img,.fanqie-cover-placeholder{width:46px}}@media (max-width:767px){.jjwxc-compare-table td[data-label=替换],.jjwxc-compare-table td[data-label=序号],.jjwxc-compare-table td[data-label=状态],.jjwxc-compare-table td[data-label=晋江目录],.jjwxc-compare-table td[data-label=本站目录],.jjwxc-compare-table td[data-label=替换后标题],.jjwxc-compare-table td[data-label=内容摘要],.jjwxc-compare-table td[data-label=生成标题],.jjwxc-compare-table td[data-label=晋江标题],.jjwxc-compare-table td[data-label=本站标题],.jjwxc-compare-table td[data-label=字数]{padding:8px 0}}.topbar{padding:0}.topbar-inner{justify-content:space-between;align-items:center;gap:18px;width:100%;max-width:1200px;margin:0 auto;padding:12px 16px;display:flex}.brand{letter-spacing:.02em;flex:none;font-size:21px;line-height:1.2}.nav{align-items:center;gap:8px;margin-left:auto}.nav a{white-space:nowrap;border-radius:999px;align-items:center;min-height:34px;padding:6px 10px;font-size:14px;line-height:1;display:inline-flex}.nav a:hover{background:#eff6ff}.nav-toggle{border:1px solid var(--border);min-height:36px;color:var(--text);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:7px 11px;display:none}.nav-toggle-icon,.nav-toggle-icon:before,.nav-toggle-icon:after{content:"";background:currentColor;border-radius:999px;width:16px;height:2px;display:block}.nav-toggle-icon{position:relative}.nav-toggle-icon:before,.nav-toggle-icon:after{position:absolute;left:0}.nav-toggle-icon:before{top:-5px}.nav-toggle-icon:after{top:5px}.detail-head{align-items:start}.detail-info h1{margin:0 0 14px;line-height:1.22}.detail-meta{gap:9px;display:grid}.detail-meta p{grid-template-columns:44px minmax(0,1fr);align-items:start;gap:10px;margin:0;line-height:1.55;display:grid}.detail-meta p>span:first-child{color:var(--muted);white-space:nowrap}.detail-meta strong{min-width:0;font-weight:500}.detail-tags strong{flex-wrap:wrap;gap:4px;display:flex}.detail-intro,.detail-actions{grid-column:1/-1}.detail-intro{border-top:1px solid var(--border);margin-top:2px;padding-top:16px}.detail-intro-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.detail-intro h2{margin:0;font-size:18px}.intro-text{color:var(--text);white-space:pre-wrap;word-break:break-word;-webkit-line-clamp:5;-webkit-box-orient:vertical;margin:0;line-height:1.9;display:-webkit-box;overflow:hidden}.detail-intro.is-expanded .intro-text,.empty-intro .intro-text{display:block;overflow:visible}.intro-toggle{color:var(--primary);cursor:pointer;background:0 0;border:0;flex:none;padding:6px 2px;font-weight:700}.detail-actions{padding-top:4px}@media (max-width:767px){.topbar{flex-direction:row;align-items:stretch}.topbar-inner{grid-template-columns:minmax(0,1fr) auto;gap:10px 12px;padding:10px 12px;display:grid}.brand{text-overflow:ellipsis;white-space:nowrap;align-self:center;min-width:0;font-size:19px;overflow:hidden}.nav-toggle{align-self:center;display:inline-flex}.nav{opacity:0;pointer-events:none;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;max-height:0;margin:0;transition:max-height .22s,opacity .16s;display:grid;overflow:hidden}.topbar.nav-open .nav{opacity:1;pointer-events:auto;max-height:240px;padding-top:4px}.nav a{border:1px solid var(--border);background:rgba(255,255,255,.72);border-radius:10px;justify-content:center;min-height:36px;padding:7px 6px;font-size:13px}.detail-head.detail-has-cover{grid-template-columns:98px minmax(0,1fr);gap:12px;padding:14px}.detail-head.detail-has-cover .detail-cover{width:98px;height:130px}.detail-info h1{margin-bottom:9px;font-size:20px}.detail-meta{gap:5px}.detail-meta p{grid-template-columns:36px minmax(0,1fr);gap:8px;font-size:14px;line-height:1.45}.detail-tags .badge{text-overflow:ellipsis;max-width:100%;overflow:hidden}.detail-intro{margin-top:0;padding-top:12px}.detail-intro h2{font-size:16px}.intro-text{-webkit-line-clamp:4;font-size:15px;line-height:1.75}.detail-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.detail-actions .btn,.detail-actions form,.detail-actions form .btn{width:100%}.detail-actions form:last-child{grid-column:1/-1}}@media (max-width:390px){.nav{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-head.detail-has-cover{grid-template-columns:88px minmax(0,1fr)}.detail-head.detail-has-cover .detail-cover{width:88px;height:118px}.detail-meta p{grid-template-columns:34px minmax(0,1fr);font-size:13px}}.dashboard-hero{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.dashboard-hero h1{margin:0 0 6px}.dashboard-hero-actions{flex-wrap:wrap;gap:10px;display:flex}.dashboard-stat-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.dashboard-stat-card{background:var(--card);border:1px solid var(--border);min-height:86px;box-shadow:var(--shadow);border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:16px;display:grid}.dashboard-stat-card span{color:var(--muted);font-weight:700}.dashboard-stat-card strong{font-size:30px;line-height:1}.dashboard-section-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);align-items:start;gap:16px;display:grid}.dashboard-panel{margin:0}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.quick-card{border:1px solid var(--border);background:#fff;border-radius:13px;gap:4px;min-height:92px;padding:14px;display:grid}.quick-card.primary{background:#eff6ff;border-color:rgba(37,99,235,.35)}.quick-card strong{font-size:16px}.quick-card span{color:var(--muted);line-height:1.45}.mini-flow{gap:10px;display:grid}.mini-flow div{border:1px solid var(--border);background:#fff;border-radius:12px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:10px;display:grid}.mini-flow b{width:34px;height:34px;color:var(--primary);background:#eff6ff;border-radius:999px;place-items:center;display:grid}.legado-layout{grid-template-columns:minmax(0,1.4fr) minmax(300px,.7fr);align-items:start;gap:16px;display:grid}.legado-config-card,.legado-side-card{margin-top:0}.legado-form label{gap:7px;font-weight:700;display:grid}.legado-form label small{font-weight:400}.legado-inline-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.inline-actions{justify-content:flex-start}.legado-source-box{border:1px solid var(--border);background:#f8fafc;border-radius:12px;gap:8px;padding:12px;display:grid}.legado-source-box span,.legado-info-list span{color:var(--muted);font-size:13px}.legado-source-box strong,.legado-info-list strong{word-break:break-all;line-height:1.45;display:block}.source-url-input{border:1px solid var(--border);width:100%;min-width:0;color:var(--text);font:inherit;background:#fff;border-radius:8px;padding:10px 11px;line-height:1.4}.source-import-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.source-import-actions .btn{width:100%}.source-qr-box{border:1px solid var(--border);text-align:center;background:#fff;border-radius:8px;justify-items:center;gap:10px;margin-top:14px;padding:12px;display:grid}.source-qr-box h3{margin:0;font-size:15px}.source-qr-box img{aspect-ratio:1;border:1px solid var(--border);background:#fff;border-radius:8px;width:min(220px,100%)}.legado-info-list{gap:10px;margin-top:14px;display:grid}.legado-info-list div{border-bottom:1px solid var(--border);padding:10px 0}.legado-info-list div:last-child{border-bottom:0}.profile-avatar-preview{align-items:center;gap:12px;display:flex}.profile-avatar-preview img{border:1px solid var(--border);object-fit:cover;background:#fff;border-radius:50%;width:72px;height:72px}.totp-panel{gap:18px;display:grid}.totp-status{justify-content:space-between;align-items:center;gap:16px;display:flex}.totp-status h2,.totp-setup-copy h2{margin:0 0 4px;font-size:18px;line-height:1.35}.totp-status p,.totp-setup-copy p{margin:0;line-height:1.55}.totp-info-box{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;gap:4px;padding:12px;display:grid}.totp-info-box span{color:#166534;line-height:1.5}.totp-recovery-panel{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;gap:12px;padding:14px;display:grid}.totp-recovery-panel h2{margin:0 0 4px;font-size:18px;line-height:1.35}.totp-recovery-panel p{margin:0;line-height:1.55}.totp-recovery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.totp-recovery-grid code{color:#713f12;text-align:center;overflow-wrap:anywhere;background:#fff;border:1px solid #facc15;border-radius:7px;padding:8px 10px;font:700 13px/1.35 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:block}.totp-setup-grid{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:18px;display:grid}.totp-qr-card{border:1px solid var(--border);background:#fff;border-radius:8px;place-items:center;min-width:0;padding:14px;display:grid}.totp-qr-card img{aspect-ratio:1;width:min(212px,100%)}.totp-setup-copy{gap:12px;min-width:0;display:grid}.totp-setup-copy input[readonly]{letter-spacing:.02em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.totp-form{max-width:620px}.chapter-page-summary{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin:-2px 0 10px;font-size:13px;line-height:1.5;display:flex}.chapter-pagination{overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;justify-content:center;align-items:center;gap:8px;margin-top:12px;display:flex;overflow-x:auto;flex-direction:row!important}.chapter-pagination::-webkit-scrollbar{display:none}.chapter-pagination span{color:var(--muted);font-size:13px}.chapter-page-btn{white-space:nowrap;flex:none;min-width:64px}.chapter-page-indicator{text-align:center;white-space:nowrap;flex:none;min-width:82px}.chapter-page-jump{white-space:nowrap;flex:none;align-items:center;gap:6px;min-width:0;margin:0;display:flex}.chapter-page-jump label{color:var(--muted);align-items:center;gap:4px;margin:0;font-size:13px;line-height:1;display:inline-flex}.chapter-page-jump input{text-align:center;width:62px;height:32px;min-height:32px;padding:0 6px}.chapter-page-jump .btn{white-space:nowrap;flex:none}@media (max-width:767px){.chapter-pagination{justify-content:flex-start;gap:5px;padding-bottom:2px}.chapter-page-btn{min-width:52px;padding-left:8px;padding-right:8px}.chapter-page-indicator{min-width:70px;font-size:12px}.chapter-page-jump{gap:4px}.chapter-page-jump label,.chapter-page-jump label span{font-size:12px}.chapter-page-jump input{width:50px;height:30px;min-height:30px}.chapter-page-jump .btn{padding-left:8px;padding-right:8px}}.token-card-open{-webkit-appearance:none;appearance:none;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.token-card-open:hover .resource-card-title{color:var(--primary)}.token-permission-box{border:1px solid var(--border);background:#fbfdff;border-radius:10px;gap:12px;min-width:0;padding:14px;display:grid}.token-permission-box legend{padding:0 6px;font-weight:700}.token-permission-all-option,.token-permission-item{cursor:pointer;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;min-width:0;display:grid}.token-permission-all-option{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:12px}.token-permission-all-option input,.token-permission-item input{width:18px;height:18px;margin:3px 0 0}.token-permission-all-option strong,.token-permission-item strong{min-width:0;line-height:1.35;display:block}.token-permission-all-option small{color:#475569;margin-top:3px;line-height:1.45;display:block}.token-permission-presets{background:#fff;border:1px dashed #cbd5e1;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;min-width:0;padding:10px;display:flex}.token-permission-presets>span{color:var(--muted);flex:none;font-size:13px}.token-permission-presets .btn.small{min-height:32px;padding:5px 9px}.token-permission-groups{gap:12px;min-width:0;display:grid}.token-permission-group{border:1px solid var(--border);background:#fff;border-radius:8px;gap:10px;min-width:0;padding:12px;display:grid}.token-permission-group-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;padding-bottom:10px;display:flex}.token-permission-group-head h3{margin:0;font-size:15px;line-height:1.35}.token-permission-group-head p{color:var(--muted);margin:3px 0 0;font-size:12px;line-height:1.5}.token-permission-group-head>span{color:#475569;white-space:nowrap;background:#f1f5f9;border-radius:999px;flex:none;padding:3px 8px;font-size:12px}.token-permission-list{gap:8px;min-width:0;display:grid}.token-permission-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:10px 11px;transition:border-color .16s,background .16s,box-shadow .16s}.token-permission-item:hover{background:#f8fafc;border-color:#cbd5e1}.token-permission-item:has(input:checked){background:#f8fbff;border-color:#2563eb;box-shadow:0 0 0 1px rgba(37,99,235,.08)}.token-permission-box.is-all-api .token-permission-item{opacity:.58;cursor:default}.token-permission-main{gap:5px;min-width:0;display:grid}.token-permission-title-row{flex-wrap:wrap;align-items:center;gap:7px;min-width:0;display:flex}.token-method{color:#075985;background:#e0f2fe;border-radius:7px;justify-content:center;align-items:center;min-width:52px;height:24px;padding:0 8px;font:700 12px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:inline-flex}.token-method-post{color:#166534;background:#dcfce7}.token-method-put,.token-method-patch{color:#92400e;background:#fef3c7}.token-method-delete{color:#991b1b;background:#fee2e2}.token-method-label{color:var(--muted);font-size:12px;line-height:1.4}.token-permission-desc{color:#475569;overflow-wrap:anywhere;font-size:13px;line-height:1.5}.token-permission-path{color:#334155;white-space:normal;overflow-wrap:anywhere;word-break:break-word;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;min-width:0;max-width:100%;padding:6px 8px;font-size:12px;line-height:1.45;display:block}.token-permission-note{color:var(--muted);line-height:1.55}@media (max-width:1023px){.dashboard-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-section-grid,.legado-layout{grid-template-columns:1fr}}@media (max-width:767px){.dashboard-hero{flex-direction:column;align-items:stretch;margin-bottom:12px}.dashboard-hero h1{font-size:24px}.dashboard-hero-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.dashboard-hero-actions .btn{width:100%}.dashboard-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dashboard-stat-card{grid-template-columns:1fr;gap:8px;min-height:72px;padding:12px}.dashboard-stat-card strong{order:-1;font-size:26px}.quick-grid{grid-template-columns:1fr 1fr;gap:10px}.quick-card{min-height:84px;padding:12px}.quick-card strong{font-size:15px}.quick-card span{font-size:13px}.dashboard-guide{display:none}.legado-head .actions{grid-template-columns:1fr 1fr;width:100%;display:grid}.legado-head .btn{width:100%}.source-page-head{grid-template-columns:1fr}.source-page-head .page-title{grid-column:1}.legado-side-card{order:-1}.legado-inline-grid{grid-template-columns:1fr}.inline-actions{grid-template-columns:1fr;display:grid}.inline-actions .btn{width:100%}.totp-status{gap:8px;display:grid}.totp-status .badge{justify-self:start}.totp-setup-grid,.totp-recovery-grid{grid-template-columns:1fr}.totp-qr-card{padding:12px}.totp-form{max-width:none}.token-permission-box{gap:10px;padding:10px}.token-permission-group{padding:10px}.token-permission-presets{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.token-permission-presets>span{grid-column:1/-1}.token-permission-presets .btn.small{width:100%}.token-permission-group-head{gap:6px;display:grid}.token-permission-group-head>span{justify-self:start}.token-permission-item{grid-template-columns:18px minmax(0,1fr);gap:9px;padding:10px}.token-permission-title-row{align-items:flex-start}.token-method{min-width:48px;height:23px;padding:0 7px}.token-permission-desc,.token-permission-path,.token-permission-note{font-size:12px}}@media (max-width:390px){.quick-grid,.dashboard-hero-actions{grid-template-columns:1fr}}.cover-img{background:#e2e8f0;display:block}.cover-fallback{border:1px solid var(--border);text-align:center;line-height:1.5}.detail-cover.cover-fallback{place-items:center;min-height:292px;display:grid}.import-live-notice{color:#1e40af;background:#eff6ff;border-color:#bfdbfe;gap:6px;display:grid}.import-job-row.is-terminal,.import-file-row.is-terminal{border-color:#bbf7d0}.btn.small{min-height:32px;padding:5px 10px;font-size:13px}.chapter-manage-list{gap:10px}.chapter-row{border:1px solid var(--border);background:#fff;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.chapter-list .chapter-row .chapter-link{background:0 0;border:0;border-radius:0;justify-content:space-between;gap:12px;min-width:0;padding:0;display:flex}.chapter-link strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chapter-link span{color:var(--muted);white-space:nowrap}@media (max-width:767px){.chapter-row{grid-template-columns:1fr;align-items:stretch}.chapter-list .chapter-row .chapter-link{flex-direction:column;gap:4px}.chapter-row .btn{width:100%}}.novel-list-head{margin-bottom:12px}.novel-list-actions{justify-content:flex-end}.list-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0 16px;display:grid}.list-tab{border:1px solid var(--border);box-shadow:var(--shadow);color:var(--text);background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;text-decoration:none;display:flex}.list-tab span{font-weight:700}.list-tab strong{color:#475569;background:#f1f5f9;border-radius:999px;justify-content:center;align-items:center;min-width:30px;height:30px;padding:0 8px;display:inline-flex}.list-tab.active{background:#eff6ff;border-color:#2563eb}.list-tab.active strong{color:#fff;background:#2563eb}@media (max-width:767px){.list-tabs{gap:8px}.list-tab{border-radius:12px;padding:12px}.novel-list-actions .btn{width:100%}}.import-job-actions{justify-content:flex-start;gap:8px}.import-job-log{grid-column:1/-1;margin-top:6px;font-size:13px}.import-job-log summary{cursor:pointer;color:var(--muted)}.import-job-log pre{border:1px solid var(--border);color:#e2e8f0;white-space:pre-wrap;word-break:break-word;background:#0f172a;border-radius:10px;max-height:180px;margin:8px 0 0;padding:10px;overflow:auto}html,body{max-width:100%;overflow-x:hidden}img,video,canvas,svg{max-width:100%}.btn,button,input,textarea,select,.modal-form,.modal-form label{min-width:0;max-width:100%}.modal-form input,.modal-form textarea,.modal-form select{width:100%;min-width:0;max-width:100%;display:block}.chapter-insert-select{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chapter-row,.chapter-link,.chapter-link strong{min-width:0}.chapter-row .btn.small{text-overflow:ellipsis;max-width:100%;overflow:hidden}@media (max-width:767px){.modal-form textarea[name=content]{min-height:34vh;max-height:48vh}.btn,button{white-space:normal;overflow-wrap:anywhere}.chapter-row .btn.small{white-space:normal}.detail-actions,.section-head .btn{max-width:100%}}.system-stat-grid{margin:18px 0}.mini-stat-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.mini-stat-grid>div{border:1px solid var(--border);background:#fff;border-radius:12px;padding:14px}.mini-stat-grid strong{font-size:24px;display:block}.mini-stat-grid span{color:var(--muted);font-size:13px}.maintenance-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.maintenance-actions form{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.danger-confirm{color:var(--danger)}.issue-counts{margin:12px 0}.issue-list{gap:10px;margin-top:12px;display:grid}.issue-item{border:1px solid var(--border);background:#fff;border-radius:10px;padding:12px}.issue-item.warning{background:#fffbeb;border-color:#f59e0b}.issue-item.error{background:#fef2f2;border-color:#fecaca}.issue-item p{margin:6px 0;line-height:1.6}.issue-item small{color:var(--muted);white-space:pre-wrap;word-break:break-word;display:block}.maintenance-log-row{grid-template-columns:.8fr .35fr 1.6fr}@media (max-width:1023px){.mini-stat-grid{grid-template-columns:repeat(3,1fr)}.maintenance-log-row{grid-template-columns:1fr 1fr}}@media (max-width:767px){.mini-stat-grid{grid-template-columns:1fr 1fr}.maintenance-actions,.maintenance-actions form{flex-direction:column;align-items:stretch;width:100%}.maintenance-actions .btn{width:100%}.maintenance-log-row{grid-template-columns:1fr}}@media (max-width:480px){.mini-stat-grid{grid-template-columns:1fr}}:root{--shadow-soft:0 8px 22px rgba(15,23,42,.06)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans CJK SC,sans-serif;line-height:1.55}.panel,.card,.auth-card,.novel-card,.stat-card,.table-row,.quick-card,.list-tab,.guide-grid>div,.mini-stat-grid>div{box-shadow:var(--shadow-soft)}.panel>h2,.card>h2,.compact-panel>h2{margin-top:0}.row-main,.row-main strong,.row-main span,.table-row,.table-row>*,.chapter-row,.chapter-link,.chapter-link strong,.chapter-preview-main,.chapter-preview-main strong{min-width:0}.row-main strong,.table-row strong,.chapter-link strong,.chapter-preview-main strong{overflow-wrap:anywhere;word-break:break-word}.chapter-list .chapter-row .chapter-link{align-items:flex-start}.chapter-link strong{white-space:normal;text-overflow:clip;line-height:1.45;overflow:visible}.chapter-link span{flex:none;font-size:13px}.chapter-preview-main strong,.chapter-preview-main em{overflow-wrap:anywhere;word-break:break-word}@media (max-width:767px){body{background:#f6f8fc;font-size:15px}.topbar-inner{padding:9px 12px}.brand{font-size:18px}.container{padding:12px 10px calc(18px + env(safe-area-inset-bottom,0px))}.page-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 10px;margin-bottom:10px;display:grid}.page-head>div{min-width:0}.page-head h1{letter-spacing:0;margin:0;font-size:22px;line-height:1.25}.page-head .page-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:6px;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.page-head>.btn{white-space:nowrap;align-self:start;width:auto;min-width:0;min-height:34px;padding:6px 11px;font-size:14px}.panel,.card,.compact-panel{border-radius:12px;margin:10px 0;padding:12px}.panel>h2,.card>h2,.compact-panel>h2,.section-head h2{margin:0 0 8px;font-size:19px;line-height:1.3}.section-head{gap:8px;margin-bottom:10px}.section-head .page-desc{margin-top:4px;font-size:13px;line-height:1.5}.table-list,.clean-list{gap:8px}.table-row,.category-row,.tag-row,.token-row,.import-file-row,.import-job-row,.maintenance-log-row{box-shadow:none;border-radius:10px;gap:6px 8px;padding:9px 10px}.category-row,.tag-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.category-row .row-main,.tag-row .row-main{grid-column:1/-1;gap:2px}.category-row>span,.tag-row>span,.token-row>span,.import-file-row>.muted,.import-job-row>.muted,.maintenance-log-row>span{font-size:13px;line-height:1.4}.row-main strong{white-space:normal;font-size:15px;line-height:1.35}.row-main span{-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;font-size:13px;line-height:1.45;display:-webkit-box;overflow:hidden}.row-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:7px;display:flex}.category-row .row-actions,.tag-row .row-actions{grid-column:1/-1}.token-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.token-row .row-main{grid-column:1/-1;gap:2px}.token-row form{grid-column:1/-1}.token-row form .btn,.row-actions .btn,.row-actions form .btn{width:auto}.btn,button{border-radius:8px;min-height:34px;padding:6px 11px;font-size:14px;line-height:1.25}.btn.small{min-height:30px;padding:5px 9px;font-size:12px}input,textarea,select{border-radius:8px;padding:9px 10px;font-size:16px}.badge{margin:1px 3px 1px 0;padding:2px 7px;font-size:11px;line-height:1.45}.chapter-manage-list{gap:8px}.chapter-row{grid-template-columns:minmax(0,1fr);padding:9px 10px}.chapter-list .chapter-row .chapter-link{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;display:grid}.chapter-link strong{font-size:14px;line-height:1.45}.chapter-link span{padding-top:1px;font-size:12px}.chapter-row .btn.small{justify-self:start;width:auto;max-width:100%}.chapter-select-toolbar{border-radius:10px;gap:7px;padding:9px}.chapter-preview-list{gap:7px;max-height:48vh}.chapter-preview-item{border-radius:10px;gap:8px;padding:9px 10px}.token-box,.import-job-log pre{font-size:12px;line-height:1.55}.guide-grid>div,.mini-stat-grid>div,.quick-card,.list-tab{border-radius:11px;padding:10px}.stat-card{padding:12px}.stat-card strong{font-size:24px}}@media (max-width:390px){.page-head{grid-template-columns:1fr}.page-head>.btn{justify-self:start}.chapter-list .chapter-row .chapter-link{grid-template-columns:1fr;gap:3px}}@media (max-width:767px){.mobile-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px;display:grid}.mobile-card-grid .empty{grid-column:1/-1}.mobile-card-grid .table-row,.mobile-card-grid .category-row,.mobile-card-grid .tag-row,.mobile-card-grid .token-row{border-radius:10px;grid-template-columns:minmax(0,1fr);align-content:start;gap:5px;min-width:0;min-height:0;padding:8px;display:grid}.mobile-card-grid .row-main{grid-column:auto;gap:1px}.mobile-card-grid .row-main strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.25;display:-webkit-box;overflow:hidden}.mobile-card-grid .row-main span{-webkit-line-clamp:1;font-size:12px;line-height:1.35}.mobile-card-grid .category-row>span,.mobile-card-grid .tag-row>span,.mobile-card-grid .token-row>span{overflow-wrap:anywhere;min-width:0;font-size:12px;line-height:1.35}.mobile-card-grid .category-row>span:first-of-type,.mobile-card-grid .category-row>span:nth-of-type(2),.mobile-card-grid .tag-row>span:first-of-type{align-items:center;min-height:22px;display:inline-flex}.mobile-card-grid .badge,.mobile-card-grid .muted{font-size:11px}.mobile-card-grid .row-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;display:grid}.mobile-card-grid .row-actions form,.mobile-card-grid .token-row form{width:100%;min-width:0}.mobile-card-grid .row-actions .btn,.mobile-card-grid .row-actions form .btn,.mobile-card-grid .token-row form .btn{border-radius:8px;width:100%;min-height:30px;padding:5px 7px;font-size:12px}.mobile-card-grid .token-row form{grid-column:auto;margin-top:1px}.mobile-card-grid .token-row>span:nth-of-type(2){-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}.brand{align-items:center;gap:8px;min-width:0;display:inline-flex}.brand-logo{object-fit:cover;border-radius:8px;flex:none;width:30px;height:30px;box-shadow:0 4px 12px rgba(15,23,42,.1)}.brand-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:inline-block;overflow:hidden}.site-footer{border-top:1px solid var(--border);background:rgba(255,255,255,.72);margin-top:18px}.site-footer-inner{max-width:1200px;padding:14px 16px calc(14px + env(safe-area-inset-bottom,0px));color:var(--muted);text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;margin:0 auto;font-size:13px;display:flex}.footer-version{white-space:nowrap}.form-help{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.55;display:block}.site-settings-grid{grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);align-items:start;gap:16px;display:grid}.site-settings-form code,.site-preview-panel code{color:#334155;background:#f1f5f9;border-radius:6px;padding:1px 5px;font-size:.92em}.site-form-section{margin-top:20px}.site-settings-actions{margin-top:12px}.site-preview-card{gap:14px;display:grid}.site-preview-header{border:1px solid var(--border);background:#fff;border-radius:14px;align-items:center;gap:12px;padding:12px;display:flex}.site-preview-header img,.site-preview-icon{object-fit:cover;border-radius:12px;flex:none;width:42px;height:42px}.site-preview-icon{color:var(--primary);background:#eff6ff;place-items:center;font-weight:800;display:grid}.site-preview-header div{gap:2px;min-width:0;display:grid}.site-preview-header strong,.browser-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.site-preview-header span,.site-preview-browser small{color:var(--muted)}.site-preview-browser{border:1px solid var(--border);background:#f8fafc;border-radius:14px;padding:14px}.browser-dot-row{gap:5px;margin-bottom:12px;display:flex}.browser-dot-row i{background:#cbd5e1;border-radius:999px;width:9px;height:9px}.browser-title{margin:0 0 4px;font-weight:700}@media (max-width:900px){.site-settings-grid{grid-template-columns:1fr}}@media (max-width:767px){.brand-logo{border-radius:7px;width:28px;height:28px}.site-footer-inner{padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));flex-direction:column;justify-content:center;align-items:center;gap:4px}.site-settings-grid{gap:10px}.import-job-summary-grid,.ai-chapter-clean-summary{grid-template-columns:1fr}.site-preview-header,.site-preview-browser{border-radius:12px;padding:10px}}.ai-chapter-title-panel{gap:12px;display:grid}.ai-chapter-title-segment{border:1px solid var(--border);background:#f8fafc;border-radius:8px;gap:8px;padding:12px;display:grid}.ai-chapter-title-segment-label{color:var(--text);gap:6px;font-size:13px;font-weight:700;display:grid}.ai-chapter-title-segment select{width:100%}.ai-chapter-title-part-meta{color:var(--muted);font-size:12px;line-height:1.5}.ai-chapter-title-meta{color:var(--muted);font-size:13px;line-height:1.5}.ai-chapter-title-list{gap:10px;max-height:min(58vh,680px);padding-right:2px;display:grid;overflow:auto}.ai-chapter-title-row{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:86px minmax(0,1fr) minmax(0,1fr);align-items:start;gap:12px;padding:12px;display:grid}.ai-chapter-title-row.is-unchanged{opacity:.68}.ai-chapter-title-index{color:#3730a3;white-space:nowrap;background:#eef2ff;border-radius:8px;justify-content:center;align-items:center;min-height:30px;padding:5px 8px;font-size:12px;font-weight:800;display:inline-flex}.ai-chapter-title-old,.ai-chapter-title-new{gap:4px;min-width:0;display:grid}.ai-chapter-title-old span,.ai-chapter-title-new span{color:var(--muted);font-size:12px;font-weight:700}.ai-chapter-title-old strong,.ai-chapter-title-new strong{overflow-wrap:anywhere;line-height:1.55}.ai-chapter-title-new strong{color:var(--primary)}.ai-chapter-title-empty{border:1px dashed var(--border);color:var(--muted);text-align:center;border-radius:8px;padding:18px}.ai-chapter-title-raw{border:1px solid var(--border);color:#e2e8f0;white-space:pre-wrap;word-break:break-word;background:#0f172a;border-radius:8px;max-height:220px;margin:0;padding:12px;overflow:auto}.ai-chapter-clean-panel{gap:12px;display:grid}.ai-instruction-field{min-width:0;color:var(--muted);gap:6px;font-weight:800;display:grid}.ai-instruction-field textarea,.ai-batch-instruction textarea{resize:vertical;width:100%;min-width:0;color:var(--text);font:inherit;line-height:1.55}.ai-batch-instruction{align-items:start;min-width:min(360px,100%)}.ai-batch-instruction textarea{min-height:42px}.ai-chapter-clean-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.ai-chapter-clean-summary span{border:1px solid var(--border);min-width:0;color:var(--text);overflow-wrap:anywhere;background:#f8fafc;border-radius:8px;padding:10px 12px}.ai-chapter-clean-summary strong{color:var(--muted);margin-bottom:2px;font-size:12px;display:block}.ai-chapter-clean-preview{gap:12px;display:grid}.ai-chapter-clean-preview textarea{min-height:360px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.7}.ai-chapter-clean-preview pre{border:1px solid var(--border);color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;background:#f8fafc;border-radius:8px;min-width:0;max-width:100%;margin:0;padding:12px;overflow-x:hidden}.ai-chapter-clean-raw{border:1px solid var(--border);color:#e2e8f0;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;background:#0f172a;border-radius:8px;max-height:260px;margin:0;padding:12px;overflow:auto}.openapi-permission-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.openapi-permission-card{border:1px solid var(--border);background:#fff;border-radius:8px;min-width:0;padding:12px}.openapi-permission-card summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;display:flex}.openapi-permission-card summary strong,.openapi-permission-card p,.openapi-permission-list code{overflow-wrap:anywhere}.openapi-permission-card p{color:var(--muted);margin:10px 0;line-height:1.6}.openapi-permission-list{gap:6px;display:grid}.openapi-debug-panel{gap:10px;display:grid}.openapi-debug-grid{grid-template-columns:minmax(0,1.2fr) minmax(180px,.9fr) minmax(180px,.9fr);gap:10px;display:grid}.openapi-debug-grid label,.openapi-debug-body{min-width:0;color:var(--muted);gap:6px;font-weight:700;display:grid}.openapi-debug-grid input,.openapi-debug-body textarea{width:100%;min-width:0;color:var(--text);font:inherit}.openapi-debug-body textarea,.openapi-debug-result{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.openapi-debug-actions{flex-wrap:wrap;gap:8px;display:flex}.openapi-debug-result{border:1px solid var(--border);color:#e2e8f0;background:#0f172a;border-radius:8px;max-height:360px;margin:0;padding:12px;overflow:auto}[data-ai-chapter-clean-notes]{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;min-width:0;max-width:100%;overflow-x:hidden}.ai-clean-task-panel{gap:14px;display:grid}.ai-clean-task-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.ai-clean-task-summary div,.ai-clean-task-metrics span{border:1px solid var(--border);background:#f8fafc;border-radius:8px;min-width:0;padding:10px 12px}.ai-clean-task-summary span,.ai-clean-task-metrics b{color:var(--muted);margin-bottom:3px;font-size:12px;font-weight:800;display:block}.ai-clean-task-summary strong{font-size:24px;line-height:1.1}.ai-clean-task-list{gap:12px;display:grid}.ai-clean-task-item{border:1px solid var(--border);background:#fff;border-radius:8px;gap:12px;min-width:0;padding:14px;display:grid}.ai-clean-task-item.is-failed{background:#fff7f7;border-color:#fecaca}.ai-clean-task-item.is-applied{background:#f7fef9;border-color:#bbf7d0}.ai-clean-task-item header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ai-clean-task-item header div{min-width:0}.ai-clean-task-item header strong,.ai-clean-task-item header span{overflow-wrap:anywhere;display:block}.ai-clean-task-item header>div>span{color:var(--muted);margin-top:4px;font-size:12px}.ai-clean-task-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.ai-clean-task-metrics span{overflow-wrap:anywhere;font-size:14px}.ai-clean-task-notes{border:1px dashed var(--border);color:#334155;overflow-wrap:anywhere;background:#f8fafc;border-radius:8px;margin:0;padding:10px 12px 10px 28px;line-height:1.6}.ai-clean-task-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ai-clean-task-actions form{margin:0}.ai-clean-task-raw summary{cursor:pointer;color:var(--primary);font-weight:800}.ai-chapter-clean-modal .modal-sheet__body{max-height:min(78vh,840px)}.ai-chapter-clean-title-diff{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:72px minmax(0,1fr);align-items:start;gap:8px 12px;padding:12px;display:grid}.ai-chapter-clean-title-diff strong{color:var(--muted)}.ai-chapter-clean-title-diff span{overflow-wrap:anywhere}.ai-chapter-clean-title-diff .is-replace{color:#92400e;background:#fef3c7;border-radius:6px;padding:2px 5px}.ai-clean-title-next{color:#047857;background:#ecfdf5;border-radius:6px;grid-column:2;padding:2px 5px}.ai-chapter-clean-diff{gap:10px;display:grid}.ai-clean-diff-legend{flex-wrap:wrap;gap:8px;display:flex}.ai-clean-diff-legend span{border-radius:999px;align-items:center;min-height:26px;padding:4px 9px;font-size:12px;font-weight:800;display:inline-flex}.ai-clean-diff-legend .is-replace{color:#92400e;background:#fef3c7}.ai-clean-diff-legend .is-delete{color:#991b1b;background:#fee2e2}.ai-clean-diff-legend .is-insert{color:#166534;background:#dcfce7}.ai-clean-diff-lines{border:1px solid var(--border);background:#fff;border-radius:8px;max-height:min(56vh,620px);overflow:auto}.ai-clean-diff-line{border-bottom:1px solid #eef2f7;grid-template-columns:52px minmax(0,1fr);min-height:30px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.7;display:grid}.ai-clean-diff-line:last-child{border-bottom:0}.ai-clean-diff-no{color:#94a3b8;text-align:right;user-select:none;border-right:1px solid #eef2f7;padding:5px 8px}.ai-clean-diff-text{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0;padding:5px 10px}.ai-clean-diff-line.is-delete .ai-clean-diff-text{color:#991b1b}.ai-clean-diff-line.is-replace .ai-clean-diff-text{background:#fffdf4}.ai-clean-diff-line.is-insert .ai-clean-diff-text{color:#166534}.ai-clean-diff-old{color:#92400e;display:block}.ai-clean-diff-new{color:#047857;border-left:3px solid #22c55e;margin-top:4px;padding-left:10px;display:block}.ai-clean-token-delete,.ai-clean-token-insert{-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:4px;padding:1px 2px}.ai-clean-token-delete{color:#991b1b;background:#fee2e2;text-decoration:line-through;text-decoration-thickness:1px}.ai-clean-token-insert{color:#166534;background:#dcfce7}.import-job-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.metric-card{border:1px solid var(--border);background:#fff;border-radius:8px;gap:4px;min-width:0;padding:12px;display:grid}.metric-card span{color:var(--muted);font-size:13px;font-weight:700}.metric-card strong{font-size:28px;line-height:1.1}.metric-card small{color:var(--muted);overflow-wrap:anywhere}@media (max-width:767px){.import-job-summary-grid,.ai-chapter-clean-summary,.ai-clean-task-summary,.ai-clean-task-metrics{grid-template-columns:1fr}.ai-clean-task-item header{grid-template-columns:1fr;align-items:stretch;display:grid}.ai-clean-task-actions .btn,.ai-clean-task-actions form,.ai-clean-task-actions form .btn{width:100%}.openapi-debug-grid{grid-template-columns:1fr}.openapi-debug-actions,.openapi-debug-actions .btn{width:100%}.ai-clean-diff-line{grid-template-columns:38px minmax(0,1fr)}.ai-clean-diff-no{padding-left:5px;padding-right:5px}.ai-clean-diff-text{padding-left:8px;padding-right:8px}}[data-ai-chapter-clean-status][data-tone=loading]{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}[data-ai-chapter-clean-status][data-tone=success]{color:#166534;background:#f0fdf4;border-color:#bbf7d0}[data-ai-chapter-clean-status][data-tone=warning]{color:#92400e;background:#fffbeb;border-color:#fde68a}[data-ai-chapter-clean-status][data-tone=error]{color:#991b1b;background:#fef2f2;border-color:#fecaca}.ai-knowledge-default{gap:8px;display:grid}.ai-knowledge-default textarea{min-height:220px}.ai-knowledge-default pre{border:1px solid var(--border);color:#334155;white-space:pre-wrap;word-break:break-word;background:#f8fafc;border-radius:8px;max-height:220px;margin:0;padding:12px;line-height:1.6;overflow:auto}main.container.pjax-loading{opacity:.58;pointer-events:none;transition:opacity .14s}.dynamic-loader{z-index:1800;pointer-events:none;opacity:0;visibility:hidden;place-items:center;transition:opacity .16s,visibility .16s;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.dynamic-loader:before{content:"";background:linear-gradient(90deg,#2563eb,#14b8a6,#22c55e);border-radius:999px;width:42%;height:3px;position:fixed;top:0;left:0;transform:translate(-120%);box-shadow:0 0 18px rgba(37,99,235,.32)}.dynamic-loader-card{color:#0f172a;background:rgba(255,255,255,.94);border:1px solid rgba(148,163,184,.32);border-radius:8px;align-items:center;gap:10px;min-height:42px;padding:10px 14px;font-size:14px;font-weight:700;transition:transform .16s;display:inline-flex;transform:translateY(8px);box-shadow:0 12px 34px rgba(15,23,42,.14)}.dynamic-loader-spinner{border:2px solid #cbd5e1;border-top-color:#2563eb;border-radius:999px;width:18px;height:18px}body.js-booting .dynamic-loader,body.pjax-busy .dynamic-loader{opacity:1;visibility:visible}body.js-booting .dynamic-loader:before,body.pjax-busy .dynamic-loader:before{animation:1.12s ease-in-out infinite dynamicLoaderLine}body.js-booting .dynamic-loader-card,body.pjax-busy .dynamic-loader-card{transform:translateY(0)}body.js-booting .dynamic-loader-spinner,body.pjax-busy .dynamic-loader-spinner{animation:.78s linear infinite dynamicLoaderSpin}@keyframes dynamicLoaderLine{0%{transform:translate(-120%)}to{transform:translate(260%)}}@keyframes dynamicLoaderSpin{to{transform:rotate(360deg)}}@media (max-width:767px){.dynamic-loader{padding-bottom:calc(26px + env(safe-area-inset-bottom,0px));align-items:end}.dynamic-loader-card{min-height:38px;padding:9px 12px;font-size:13px}}@media (prefers-reduced-motion:reduce){.dynamic-loader,.dynamic-loader-card{transition:none}body.js-booting .dynamic-loader:before,body.pjax-busy .dynamic-loader:before,body.js-booting .dynamic-loader-spinner,body.pjax-busy .dynamic-loader-spinner{animation:none}}[data-ai-chapter-title-status][data-tone=success]{color:#166534;background:#f0fdf4;border-color:#bbf7d0}[data-ai-chapter-title-status][data-tone=warning]{color:#92400e;background:#fffbeb;border-color:#fde68a}[data-ai-chapter-title-status][data-tone=error]{color:#991b1b;background:#fef2f2;border-color:#fecaca}@media (max-width:767px){.ai-chapter-title-segment{padding:10px}.ai-chapter-title-list{max-height:none;overflow:visible}.ai-chapter-title-row{grid-template-columns:1fr;gap:8px;padding:10px}.ai-chapter-title-index{justify-self:start}}.import-list{gap:10px;display:grid}.import-file-row,.import-job-row{border-radius:8px;grid-template-columns:34px minmax(220px,1.35fr) minmax(86px,max-content) minmax(230px,1fr) minmax(170px,.85fr) minmax(110px,.65fr) minmax(128px,auto);align-items:start;gap:10px 12px}.import-file-row .batch-cell,.import-job-row .batch-cell{padding-top:3px}.import-file-row .row-main,.import-job-row .row-main{gap:5px}.import-file-row .row-main strong,.import-job-row .row-main strong{white-space:normal;line-height:1.4}.import-file-row .row-actions,.import-job-row .row-actions{grid-column:7;justify-content:flex-end;align-items:flex-start;min-width:128px}.import-file-row .row-actions .btn,.import-job-row .row-actions .btn,.import-file-row .row-actions form .btn,.import-job-row .row-actions form .btn{white-space:nowrap;min-width:72px}.import-file-row .row-main span,.import-job-row .row-main span,.import-file-chapters,[data-import-job-message],[data-import-job-result]{font-size:13px;line-height:1.45}.import-progress{gap:7px;min-width:0;display:grid}.import-progress[hidden]{display:none}.import-progress-meta{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;font-size:13px;line-height:1.35;display:flex}.import-progress-meta span{overflow-wrap:anywhere;min-width:0}.import-progress-meta strong{color:var(--text);flex:none;font-size:12px;line-height:1}.import-progress-track{background:#e2e8f0;border-radius:999px;height:8px;overflow:hidden}.import-progress-track span{border-radius:inherit;background:linear-gradient(90deg,#2563eb,#10b981);width:0;height:100%;transition:width .2s;display:block}.import-submit-progress{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:12px}.import-submit-progress.is-error{background:#fef2f2;border-color:#fecaca}.import-submit-progress.is-error .import-progress-track span{background:#ef4444}.import-live-notice .import-row-progress{margin-top:2px}.import-upload-form.is-submitting,.import-confirm-form.is-submitting{cursor:progress}.import-upload-form.is-submitting .modal-actions,.import-confirm-form.is-submitting .modal-actions{opacity:.78}.import-job-actions{align-items:flex-start}@media (max-width:1120px){.import-file-row,.import-job-row{grid-template-columns:34px minmax(0,1.4fr) minmax(104px,auto) minmax(190px,1fr)}.import-file-row .row-actions,.import-job-row .row-actions,.import-job-log{grid-column:2/-1;justify-content:flex-start}}@media (max-width:767px){.import-list{gap:9px}.import-file-row,.import-job-row{grid-template-columns:30px minmax(0,1fr);gap:8px 10px;padding:10px}.import-file-row>:not(.batch-cell):not(.row-main),.import-job-row>:not(.batch-cell):not(.row-main),.import-job-log{grid-column:1/-1}.import-file-row .row-main,.import-job-row .row-main{grid-column:2}.import-file-row .row-actions,.import-job-row .row-actions,.import-job-actions{grid-template-columns:1fr 1fr;gap:8px;width:100%;display:grid}.import-file-row .row-actions form,.import-job-row .row-actions form,.import-file-row .row-actions .btn,.import-job-row .row-actions .btn{width:100%}.import-progress-meta{font-size:12px}.import-submit-progress{padding:10px}}@media (max-width:390px){.import-file-row .row-actions,.import-job-row .row-actions,.import-job-actions{grid-template-columns:1fr}}.password-panel{width:min(760px,100%);margin-left:auto;margin-right:auto}.password-form{gap:16px}.password-form hr{border:0;border-top:1px solid var(--border);width:100%;margin:4px 0}.profile-avatar-preview{justify-content:flex-start}.profile-avatar-preview img{width:76px;height:76px}.totp-panel{width:min(980px,100%);margin-left:auto;margin-right:auto}.totp-panel>.totp-form{border:1px solid var(--border);background:#fff;border-radius:8px;max-width:none;padding:14px}.totp-panel .split-actions,.password-panel .split-actions,.backup-restore-panel .btn{max-width:100%}.site-settings-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);width:min(1180px,100%);margin-left:auto;margin-right:auto}.site-settings-form{min-width:0}.site-settings-form .form-stack{gap:13px}.site-preview-panel{position:sticky;top:82px}.site-rate-limit-preview{gap:8px;margin-top:14px;display:grid}.stats-grid{gap:12px;display:grid}.task-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.task-summary-grid .stat-card{min-height:96px;padding:16px}.task-stat-card{color:inherit;border-radius:8px;gap:4px;text-decoration:none;display:grid}.task-stat-card small{color:var(--muted);font-size:12px;line-height:1.35}.task-stat-card.has-warning{background:#fef2f2;border-color:#fecaca}.task-stat-card.has-warning strong{color:var(--danger)}.task-summary-grid .stat-card strong{margin-top:6px;font-size:30px;line-height:1}.task-filter-form{align-items:stretch}.task-filter-form .btn{width:100%}.task-card{border-radius:8px}.task-card-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px}.task-card-meta span,.task-card-title span{overflow-wrap:anywhere}.backup-actions-panel .maintenance-actions{grid-template-columns:minmax(180px,auto) minmax(0,1fr);align-items:end;gap:12px;display:grid}.backup-actions-panel .maintenance-actions form{min-width:0}.backup-actions-panel input[type=file]{min-height:38px;padding:7px 10px}.backup-row{border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(118px,auto) minmax(220px,auto);align-items:start}.backup-row .row-main strong{white-space:normal;overflow-wrap:anywhere}.backup-row .row-actions{justify-content:flex-end;align-items:flex-start}.backup-row .row-actions form{margin:0}.backup-row .row-actions .btn{white-space:nowrap}.backup-restore-panel .code-block pre{white-space:pre-wrap;word-break:break-word;max-height:320px;overflow:auto}.system-actions-panel .maintenance-actions{grid-template-columns:repeat(auto-fit,minmax(148px,max-content));align-items:start;gap:10px;display:grid}.system-actions-panel .maintenance-actions form{margin:0}.system-actions-panel .maintenance-actions .btn{white-space:nowrap;width:100%}.system-actions-panel .danger-confirm{white-space:normal;grid-column:1/-1}form.is-submitting{cursor:wait}form.is-submitting input,form.is-submitting select,form.is-submitting textarea{pointer-events:none}@media (min-width:900px){.totp-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.totp-status,.totp-recovery-panel,.totp-info-box,.totp-setup-grid{grid-column:1/-1}}@media (max-width:1100px){.site-settings-grid{grid-template-columns:1fr}.site-preview-panel{position:static}.backup-row{grid-template-columns:minmax(0,1fr) minmax(118px,auto)}.backup-row .row-actions{grid-column:1/-1;justify-content:flex-start}}@media (max-width:767px){.password-panel,.totp-panel,.site-settings-grid{width:100%}.password-panel,.totp-panel>.totp-form,.backup-actions-panel,.backup-list-panel,.backup-restore-panel{padding:12px}.profile-avatar-preview{justify-content:center}.profile-avatar-preview img{width:70px;height:70px}.totp-status{align-items:flex-start}.totp-recovery-grid,.totp-setup-grid,.task-card-meta,.backup-actions-panel .maintenance-actions,.backup-row{grid-template-columns:1fr}.task-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.task-summary-grid .stat-card{min-height:80px;padding:12px}.task-summary-grid .stat-card strong{font-size:25px}.backup-row .row-actions{grid-template-columns:1fr 1fr 1fr;gap:8px;width:100%;display:grid}.backup-row .row-actions form,.backup-row .row-actions .btn{width:100%}.system-actions-panel .maintenance-actions{grid-template-columns:1fr 1fr;align-items:stretch}.system-actions-panel .maintenance-actions form,.system-actions-panel .maintenance-actions .btn{width:100%}}@media (max-width:430px){.task-summary-grid,.backup-row .row-actions{grid-template-columns:1fr}}.api-log-filter-card{overflow:visible}.api-log-filter-form{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px;display:grid}.api-log-filter-form label{min-width:0;color:var(--muted);gap:6px;font-size:13px;display:grid}.api-log-filter-form input,.api-log-filter-form select{width:100%;min-width:0}.api-log-filter-actions{align-items:center;gap:8px;display:flex}.api-log-list{gap:10px;display:grid}.api-log-card{border:1px solid var(--border);background:#fff;border-radius:12px;gap:10px;padding:12px;display:grid}.api-log-title{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.api-log-title strong{overflow-wrap:anywhere;word-break:break-word}.api-log-path{color:#334155;overflow-wrap:anywhere;word-break:break-all;margin:6px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}.api-log-meta{color:var(--muted);grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;font-size:13px;display:grid}.api-log-meta span{overflow-wrap:anywhere;min-width:0}.api-log-detail{border-top:1px dashed var(--border);padding-top:8px}.api-log-detail summary{cursor:pointer;color:var(--primary);font-weight:600}.api-log-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.api-log-detail-grid div{gap:4px;min-width:0;display:grid}.api-log-detail-grid strong{color:#334155;font-size:13px}.api-log-detail-grid span,.api-log-detail-grid pre{min-width:0;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;margin:0}.api-log-pagination{justify-content:center;align-items:center;gap:10px;margin-top:14px;display:flex}.method-badge{color:#3730a3;background:#eef2ff}@media (max-width:1023px){.api-log-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.api-log-meta{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:767px){.api-log-filter-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.api-log-filter-actions{grid-column:1/-1}.api-log-card{border-radius:10px;padding:10px}.api-log-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;font-size:12px}.api-log-detail-grid{grid-template-columns:1fr}.api-log-pagination{justify-content:space-between}}.page-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}@media (max-width:767px){.page-actions{justify-content:flex-start;width:100%}}.api-log-head .page-actions{align-items:center}.api-log-summary-card{margin-top:14px}.api-log-active-filters{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;display:flex}.api-log-card-actions{justify-content:flex-end;align-items:center;display:flex}.modal-detail-grid .detail-wide{grid-column:1/-1}.api-log-filter-form.modal-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.api-log-filter-form.modal-form label{color:var(--text);font-weight:700}.api-log-filter-form.modal-form .api-log-filter-actions{grid-column:1/-1;justify-content:flex-end}.rate-limit-settings{gap:12px;display:grid}.rate-limit-switch{border:1px solid var(--border);background:#f8fafc;border-radius:12px;justify-content:flex-start;padding:10px 12px}.rate-limit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.rate-limit-grid label{gap:7px;min-width:0;font-weight:700;display:grid}.site-rate-limit-preview{gap:6px;display:grid}.site-rate-limit-preview strong{color:var(--text);display:block}.site-rate-limit-preview span{color:var(--muted)}@media (max-width:767px){.api-log-summary-card .section-head>.btn{width:100%}.api-log-card-actions{justify-content:stretch}.api-log-card-actions .btn{width:100%}.api-log-filter-form.modal-form,.rate-limit-grid{grid-template-columns:1fr}.api-log-filter-form.modal-form .api-log-filter-actions{justify-content:stretch}}.radio-card-list{gap:10px;display:grid}.radio-card{border:1px solid var(--border);background:var(--surface-soft);border-radius:14px;grid-template-columns:auto 1fr;align-items:flex-start;gap:10px;padding:12px;display:grid}.radio-card input{margin-top:3px}.radio-card span{gap:3px;display:grid}.radio-card small{color:var(--muted);line-height:1.5}.danger-radio{border-color:rgba(220,38,38,.28)}.access-log-settings{margin-bottom:12px}@media (max-width:767px){.radio-card{border-radius:12px;padding:10px}}.filter-form{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px;display:grid}.filter-form input,.filter-form select{width:100%;min-width:0}.stack-form{gap:12px;max-width:720px;display:grid}.stack-form label{color:var(--muted);gap:6px;display:grid}.stack-form label.checkbox{color:var(--text);align-items:center;gap:8px;display:flex}@media (max-width:900px){.filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.filter-form{grid-template-columns:1fr}}.nav-refactor{flex-wrap:nowrap;gap:6px}@media (max-width:767px){body.nav-locked{overscroll-behavior:none;overflow:hidden}.nav-backdrop,.topbar.nav-open .nav-backdrop{opacity:0!important;pointer-events:none!important;backdrop-filter:none!important;background:0 0!important;display:none!important}.nav-refactor,.topbar.nav-open .nav-refactor{overscroll-behavior:contain;touch-action:pan-y}}.nav-refactor .nav-link,.nav-refactor .nav-group>summary{min-height:34px;color:var(--muted);white-space:nowrap;cursor:pointer;border-radius:999px;align-items:center;padding:6px 10px;font-size:14px;line-height:1;list-style:none;display:inline-flex}.nav-refactor .nav-group>summary::-webkit-details-marker{display:none}.nav-refactor .nav-group>summary:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:6px;height:6px;margin-left:7px;transform:rotate(45deg)translateY(-2px)}.nav-refactor .nav-link:hover,.nav-refactor .nav-group>summary:hover,.nav-refactor .nav-group[open]>summary{color:var(--primary);background:#eff6ff}.nav-refactor .nav-group{position:relative}.nav-refactor .nav-menu{z-index:80;border:1px solid var(--border);background:#fff;border-radius:14px;gap:4px;min-width:148px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 18px 42px rgba(15,23,42,.14)}.nav-refactor .nav-menu a{min-height:34px;color:var(--text);border-radius:10px;justify-content:flex-start;align-items:center;padding:8px 10px;font-size:14px;display:flex}.nav-refactor .nav-menu a:hover{color:var(--primary);background:#eff6ff}.dashboard-stat-grid{margin-top:12px}.dashboard-hero{align-items:center}.dashboard-hero h1,.page-head h1{letter-spacing:-.02em}.page-head{margin-bottom:14px}.page-desc.compact-desc,.section-head .page-desc.compact-desc{margin-top:0}.compact-section-head{margin-bottom:8px}.table-row .row-main span:empty{display:none}.site-settings-form .section-head,.api-log-summary-card .section-head,.compact-panel .section-head{margin-bottom:10px}.legado-layout,.site-settings-grid{align-items:start}@media (min-width:768px){.nav-refactor .nav-group:not([open]) .nav-menu{display:none}}@media (max-width:767px){.nav-refactor{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.topbar.nav-open .nav-refactor{max-height:320px}.nav-refactor .nav-link,.nav-refactor .nav-group>summary{border:1px solid var(--border);width:100%;min-height:34px;color:var(--text);background:rgba(255,255,255,.72);border-radius:10px;justify-content:center;padding:7px 6px;font-size:13px}.nav-refactor .nav-group{min-width:0}.nav-refactor .nav-menu{min-width:0;box-shadow:none;border-radius:10px;margin-top:6px;padding:6px;position:static}.nav-refactor .nav-menu a{justify-content:center;min-height:32px;padding:7px 6px;font-size:12px}.dashboard-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-hero{margin-bottom:8px}.dashboard-hero h1{font-size:22px}.page-head{margin-bottom:8px}.page-head h1{font-size:21px}.compact-panel>h2,.section-head h2{margin-bottom:0}}.nav-drawer-head,.nav-backdrop{display:none}.page-head,.legado-head,.novel-list-head,.api-log-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px 14px;display:grid}.page-head>div:first-child,.legado-head>div:first-child,.novel-list-head>div:first-child,.api-log-head>div:first-child{grid-column:1;min-width:0}.page-head h1,.legado-head h1,.novel-list-head h1,.api-log-head h1{overflow-wrap:anywhere;min-width:0;margin:0}.page-head>.btn,.page-head>.actions,.page-head>.page-actions,.legado-head>.actions,.novel-list-head>.actions,.api-log-head>.page-actions{grid-area:1/2;place-self:start end;width:auto;max-width:100%}.page-head>.actions,.page-head>.page-actions,.legado-head>.actions,.novel-list-head>.actions,.api-log-head>.page-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.page-head>.actions .btn,.page-head>.page-actions .btn,.legado-head>.actions .btn,.novel-list-head>.actions .btn,.api-log-head>.page-actions .btn{white-space:nowrap}@media (max-width:767px){body.nav-locked{overflow:hidden}.topbar{flex-direction:row;align-items:stretch}.topbar-inner{grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.nav-toggle{z-index:1202;display:inline-flex;position:relative}.nav-backdrop{z-index:1190;opacity:0;pointer-events:none;background:rgba(15,23,42,.46);transition:opacity .2s;display:block;position:fixed;top:0;bottom:0;left:0;right:0}.topbar.nav-open .nav-backdrop{opacity:1;pointer-events:auto}.nav-refactor,.topbar.nav-open .nav-refactor{z-index:1201;width:min(82vw,324px);height:100vh;max-height:none;padding:calc(16px + env(safe-area-inset-top,0px)) 14px calc(18px + env(safe-area-inset-bottom,0px));border-left:1px solid var(--border);opacity:1;pointer-events:auto;background:rgba(255,255,255,.98);flex-direction:column;align-items:stretch;gap:8px;margin:0;transition:transform .22s;display:flex;position:fixed;top:0;bottom:0;left:auto;right:0;overflow-y:auto;transform:translate(105%);box-shadow:-18px 0 42px rgba(15,23,42,.22)}.topbar.nav-open .nav-refactor{transform:translate(0)}.nav-drawer-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;padding:2px 2px 12px;display:flex}.nav-drawer-head strong{font-size:17px}.nav-drawer-close{border:1px solid var(--border);width:34px;height:34px;color:var(--text);background:#fff;border-radius:999px;justify-content:center;align-items:center;font-size:22px;line-height:1;display:inline-flex}.nav-refactor .nav-link,.nav-refactor .nav-group>summary{width:100%;min-height:42px;color:var(--text);background:#fff;border:1px solid transparent;border-radius:12px;justify-content:flex-start;padding:10px 12px;font-size:15px}.nav-refactor .nav-link:hover,.nav-refactor .nav-group>summary:hover,.nav-refactor .nav-group[open]>summary{background:#eff6ff;border-color:rgba(37,99,235,.18)}.nav-refactor .nav-group{width:100%;min-width:0}.nav-refactor .nav-menu{min-width:0;box-shadow:none;background:#f8fafc;border-radius:12px;margin:6px 0 2px;padding:6px;display:none;position:static}.nav-refactor .nav-group[open] .nav-menu{display:grid}.nav-refactor .nav-menu a{justify-content:flex-start;min-height:36px;padding:8px 12px;font-size:14px}.page-head,.legado-head,.novel-list-head,.api-log-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 10px}.page-head>.btn,.page-head>.actions,.page-head>.page-actions,.legado-head>.actions,.novel-list-head>.actions,.api-log-head>.page-actions{grid-area:1/2;justify-self:end;width:auto}.page-head>.actions,.page-head>.page-actions,.legado-head>.actions,.novel-list-head>.actions,.api-log-head>.page-actions{flex-wrap:nowrap;justify-content:flex-end;gap:6px}.page-head>.btn,.page-head>.actions .btn,.page-head>.page-actions .btn,.legado-head>.actions .btn,.novel-list-head>.actions .btn,.api-log-head>.page-actions .btn{white-space:nowrap;border-radius:10px;min-height:34px;padding:6px 10px;font-size:13px}.api-log-head>.page-actions .btn{padding-left:8px;padding-right:8px}}@media (max-width:390px){.page-head,.legado-head,.novel-list-head,.api-log-head{grid-template-columns:minmax(0,1fr) auto}.page-head h1,.legado-head h1,.novel-list-head h1,.api-log-head h1{font-size:20px}.page-head>.btn,.page-head>.actions .btn,.page-head>.page-actions .btn,.legado-head>.actions .btn,.novel-list-head>.actions .btn,.api-log-head>.page-actions .btn{padding-left:8px;padding-right:8px;font-size:12px}}.switch-row{width:100%;min-height:44px;color:var(--text);cursor:pointer;user-select:none;justify-content:space-between;align-items:center;gap:14px;padding:10px 0;font-weight:600;display:flex!important}.modal-form .switch-row,.form-stack .switch-row{grid-template-columns:none;display:flex!important}.switch-label{overflow-wrap:anywhere;min-width:0;line-height:1.45}.switch-input{opacity:0;pointer-events:none;border:0!important;width:1px!important;height:1px!important;margin:0!important;padding:0!important;position:absolute!important}.switch-control{background:#e5e7eb;border:1px solid #cbd5e1;border-radius:999px;flex:0 0 46px;width:46px;height:26px;transition:background .18s,border-color .18s,box-shadow .18s;position:relative}.switch-control:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .18s;position:absolute;top:2px;left:2px;box-shadow:0 1px 4px rgba(15,23,42,.24)}.switch-input:checked+.switch-control{border-color:var(--primary);background:var(--primary)}.switch-input:checked+.switch-control:after{transform:translate(20px)}.switch-input:focus-visible+.switch-control{box-shadow:0 0 0 3px rgba(37,99,235,.18)}@media (max-width:767px){.switch-row{min-height:40px;padding:8px 0}.switch-control{flex-basis:44px;width:44px;height:24px}.switch-control:after{width:18px;height:18px}.switch-input:checked+.switch-control:after{transform:translate(20px)}.nav-backdrop{backdrop-filter:blur(2px);background:rgba(15,23,42,.42)}.nav-refactor,.topbar.nav-open .nav-refactor{top:max(10px, env(safe-area-inset-top,0px));width:min(74vw,292px);height:auto;min-height:0;max-height:calc(100vh - 20px - env(safe-area-inset-top,0px));max-height:calc(100dvh - 20px - env(safe-area-inset-top,0px));overscroll-behavior:contain;visibility:hidden;border:1px solid rgba(226,232,240,.96);border-radius:20px 0 0 20px;padding:14px;bottom:auto;left:auto;right:0;overflow-y:auto;transform:translate(calc(100% + 14px));box-shadow:-16px 18px 42px rgba(15,23,42,.22)}.topbar.nav-open .nav-refactor{visibility:visible;transform:translate(0)}.nav-drawer-head{flex:none}.nav-refactor .nav-link,.nav-refactor .nav-group>summary{min-height:40px}}:root{--app-height:100vh;--app-safe-bottom:env(safe-area-inset-bottom,0px);--app-safe-top:env(safe-area-inset-top,0px)}html,body{min-height:var(--app-height)}body{flex-direction:column;display:flex}.topbar{flex:none}.container{flex:1 0 auto;width:100%}.site-footer{flex:none}@media (max-width:767px){body.nav-locked{width:100%;min-height:var(--app-height);overscroll-behavior:contain;overflow:hidden}.nav-backdrop{height:var(--app-height);min-height:var(--app-height);top:0;bottom:auto;left:0;right:0}.nav-refactor,.topbar.nav-open .nav-refactor{top:max(10px, var(--app-safe-top));width:min(78vw,310px);height:calc(var(--app-height) - 20px - var(--app-safe-top) - var(--app-safe-bottom));max-height:calc(var(--app-height) - 20px - var(--app-safe-top) - var(--app-safe-bottom));min-height:min(420px, calc(var(--app-height) - 20px - var(--app-safe-top) - var(--app-safe-bottom)));padding:14px 14px calc(14px + var(--app-safe-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border-radius:20px 0 0 20px;bottom:auto;right:0;overflow-y:auto}.nav-drawer-head{z-index:1;background:rgba(255,255,255,.98);position:sticky;top:0}}.dashboard-hero-compact{margin-bottom:10px;display:block}.dashboard-hero-main,.dashboard-title-row{width:100%;min-width:0}.dashboard-title-inline{justify-content:space-between;align-items:flex-start;gap:12px;width:100%;min-width:0;margin:0;display:flex!important}.dashboard-title-inline>span{min-width:0}.dashboard-title-inline .dashboard-maintenance-btn{letter-spacing:0;border-radius:10px;flex:none;min-height:36px;padding:7px 12px;font-size:14px;font-weight:800;line-height:1.2}.dashboard-maintenance-btn{flex:none;margin-top:4px}.dashboard-hero-meta{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.dashboard-hero-meta span{border:1px solid var(--border);min-height:26px;color:var(--muted);background:#f8fafc;border-radius:999px;align-items:center;padding:4px 8px;font-size:12px;font-weight:700;display:inline-flex}.dashboard-health-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 14px;display:grid}.dashboard-health-strip>div{border:1px solid var(--border);background:var(--card);min-width:0;box-shadow:var(--shadow-soft,var(--shadow));border-radius:14px;gap:3px;padding:10px 12px;display:grid}.dashboard-health-strip span{color:var(--muted);font-size:12px}.dashboard-health-strip strong{overflow-wrap:anywhere;min-width:0;font-size:16px;line-height:1.2}.dashboard-health-strip .is-ok strong{color:#047857}.dashboard-health-strip .is-warn strong{color:#b45309}.dashboard-health-strip .is-error strong{color:var(--danger)}.dashboard-chart-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}.chart-card{border:1px solid var(--border);background:var(--card);min-width:0;box-shadow:var(--shadow-soft,var(--shadow));border-radius:18px;gap:14px;padding:16px;display:grid;overflow:hidden}.chart-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.chart-head h2{letter-spacing:-.02em;margin:0 0 3px;font-size:17px}.chart-head span,.scale-main span,.scale-side span,.bar-chart-row span{color:var(--muted);font-size:13px}.donut-layout{grid-template-columns:108px minmax(0,1fr);align-items:center;gap:14px;display:grid}.donut-chart{aspect-ratio:1;background:conic-gradient(var(--primary) 0 var(--public-pct), #7c3aed var(--public-pct) 100%);border-radius:50%;place-items:center;width:108px;display:grid;position:relative}.donut-chart.is-empty{background:#e5e7eb}.donut-chart:after{content:"";background:var(--card);border-radius:50%;position:absolute;top:18px;bottom:18px;left:18px;right:18px;box-shadow:inset 0 0 0 1px rgba(226,232,240,.88)}.donut-chart span{z-index:1;letter-spacing:-.03em;font-size:24px;font-weight:900;position:relative}.chart-legend{gap:8px;min-width:0;display:grid}.chart-legend a{border:1px solid var(--border);background:#f8fafc;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:32px;padding:6px 8px;display:grid}.dot{border-radius:50%;width:9px;height:9px}.dot-primary{background:var(--primary)}.dot-purple{background:#7c3aed}.bar-chart-list{align-content:center;gap:10px;display:grid}.bar-chart-row{gap:6px;min-width:0;display:grid}.bar-chart-row div{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.bar-chart-row strong{font-size:18px}.bar-chart-row b{background:#e5e7eb;border-radius:999px;height:9px;display:block;overflow:hidden}.bar-chart-row i{border-radius:inherit;background:linear-gradient(90deg, var(--primary), #60a5fa);min-width:4px;height:100%;display:block}.bubble-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:10px;display:grid}.bubble-metric{border:1px solid var(--border);background:radial-gradient(circle at 50% 50%, var(--card) 0 48%, transparent 49%), conic-gradient(var(--bubble-color,var(--primary)) 0 var(--value), #e5e7eb var(--value) 100%);border-radius:22px;align-content:center;place-items:center;gap:3px;min-width:0;min-height:132px;padding:12px 8px;display:grid;position:relative;overflow:hidden}.bubble-metric:after{content:"";pointer-events:none;border:1px solid rgba(226,232,240,.9);border-radius:18px;position:absolute;top:11px;bottom:11px;left:11px;right:11px}.bubble-metric strong,.bubble-metric span{z-index:1;position:relative}.bubble-metric strong{font-size:25px;line-height:1}.bubble-metric span{color:var(--muted);font-size:13px;font-weight:700}.bubble-metric-a{--bubble-color:#2563eb}.bubble-metric-b{--bubble-color:#14b8a6}.bubble-metric-c{--bubble-color:#f59e0b}.stacked-resource-bar{background:#e5e7eb;border-radius:999px;height:14px;display:flex;overflow:hidden}.stacked-resource-bar i{min-width:4px;height:100%}.stacked-resource-bar .stack-a{background:#2563eb}.stacked-resource-bar .stack-b{background:#14b8a6}.stacked-resource-bar .stack-c{background:#f59e0b}.mini-column-chart{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px;min-height:166px;display:grid}.mini-column-chart a{text-align:center;min-width:0;color:inherit;grid-template-rows:auto minmax(92px,1fr) auto;gap:7px;display:grid}.mini-column-chart strong{font-size:22px;line-height:1}.mini-column-chart i{width:min(48px,72%);height:max(8px, var(--height));background:linear-gradient(180deg, #60a5fa, var(--primary));border-radius:999px 999px 10px 10px;place-self:end center;display:block;box-shadow:inset 0 -10px 18px rgba(30,64,175,.2)}.mini-column-chart a:nth-child(2) i{background:linear-gradient(#5eead4,#0f766e)}.mini-column-chart a:nth-child(3) i{background:linear-gradient(#fcd34d,#d97706)}.mini-column-chart span{color:var(--muted);font-size:12px;font-weight:700}.scale-chart{grid-template-columns:minmax(0,1fr) minmax(0,.86fr);align-items:stretch;gap:12px;display:grid}.scale-main,.scale-side>div{border:1px solid var(--border);background:#f8fafc;border-radius:14px;align-content:center;gap:4px;min-width:0;padding:12px;display:grid}.scale-main strong{letter-spacing:-.04em;font-size:max(28px,min(4vw,42px));line-height:1}.scale-side{gap:10px;display:grid}.scale-side strong{font-size:22px;line-height:1.05}.system-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:12px 0 14px;display:grid}.system-summary-card{border:1px solid var(--border);background:var(--card);min-width:0;box-shadow:var(--shadow-soft,var(--shadow));border-radius:14px;gap:4px;padding:12px;display:grid}.system-summary-card span,.system-run-grid span{color:var(--muted);font-size:12px}.system-summary-card strong{letter-spacing:-.03em;overflow-wrap:anywhere;min-width:0;font-size:max(19px,min(2.4vw,28px));line-height:1.08}.system-summary-card.is-ok strong{color:#047857}.system-summary-card.is-error strong{color:var(--danger)}.system-run-panel{margin-top:0}.system-run-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.system-run-grid>div{border:1px solid var(--border);background:#f8fafc;border-radius:12px;gap:3px;min-width:0;padding:9px 10px;display:grid}.system-run-grid strong{overflow-wrap:anywhere;min-width:0;font-size:15px;line-height:1.25}.system-run-wide{grid-column:span 4}.dashboard-server-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr) minmax(0,1fr);gap:14px;margin-top:14px;display:grid}.dashboard-server-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.dashboard-server-chart-grid .bar-chart-row div{align-items:center;min-width:0}.dashboard-server-chart-grid .bar-chart-row strong{text-overflow:ellipsis;white-space:nowrap;text-align:right;min-width:0;max-width:58%;overflow:hidden}.dashboard-server-chart-grid .scale-main strong,.dashboard-server-chart-grid .scale-side strong{overflow-wrap:anywhere}.dashboard-server-chart-grid .compact-bars{gap:11px}.dashboard-server-chart-grid .bar-chart-row{gap:7px}.dashboard-server-chart-grid .dashboard-row-compact strong{font-size:15px}.dashboard-config-bars .bar-chart-row strong{max-width:50%}.runtime-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.runtime-chip-grid>div,.storage-facts>div,.config-status-grid>div{border:1px solid var(--border);background:#f8fafc;border-radius:14px;gap:5px;min-width:0;padding:11px 12px;display:grid}.runtime-chip-grid>div{grid-template-rows:auto auto;grid-template-columns:44px minmax(0,1fr);align-items:center;min-height:74px;position:relative;overflow:hidden}.runtime-chip-grid>div:after{content:"";opacity:.72;background-image:radial-gradient(circle,#2563eb 0,#2563eb 3px,transparent 3.5px);background-size:14px 14px;border-radius:10px;grid-area:1/1/3;place-self:center;width:42px;height:42px}.runtime-chip-wide{grid-column:1/-1}.runtime-chip-grid span,.storage-facts span,.config-status-grid span{color:var(--muted);font-size:12px;font-weight:700}.runtime-chip-grid strong,.storage-facts strong,.config-status-grid strong{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;min-width:0;overflow:visible}.runtime-chip-grid span,.runtime-chip-grid strong{grid-column:2}.storage-gauge-layout{grid-template-columns:132px minmax(0,1fr);align-items:center;gap:14px;display:grid}.storage-gauge{aspect-ratio:1;background:conic-gradient(#2563eb 0 var(--used), #e5e7eb var(--used) 100%);border-radius:50%;align-content:center;place-items:center;width:132px;display:grid;position:relative}.storage-gauge-warn{background:conic-gradient(#d97706 0 var(--used), #e5e7eb var(--used) 100%)}.storage-gauge-danger{background:conic-gradient(#dc2626 0 var(--used), #e5e7eb var(--used) 100%)}.storage-gauge:after{content:"";background:var(--card);border-radius:50%;position:absolute;top:18px;bottom:18px;left:18px;right:18px;box-shadow:inset 0 0 0 1px rgba(226,232,240,.88)}.storage-gauge strong,.storage-gauge span{z-index:1;position:relative}.storage-gauge strong{font-size:26px;line-height:1}.storage-gauge span{color:var(--muted);font-size:12px;font-weight:800}.storage-facts{gap:8px;min-width:0;display:grid}.directory-treemap{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(76px,auto);gap:10px;display:grid}.directory-tile{border:1px solid var(--border);background:linear-gradient(rgba(37,99,235,.12),rgba(37,99,235,.03)),#f8fafc;border-radius:14px;align-content:end;gap:5px;min-width:0;padding:12px;display:grid;position:relative;overflow:hidden}.directory-tile:before{content:"";height:max(5px, var(--share));background:linear-gradient(rgba(37,99,235,.24),rgba(37,99,235,.42));position:absolute;bottom:0;left:0;right:0}.directory-tile.is-error:before{background:linear-gradient(rgba(220,38,38,.18),rgba(220,38,38,.36))}.directory-tile span,.directory-tile strong{z-index:1;min-width:0;position:relative}.directory-tile span{color:var(--muted);font-size:12px;font-weight:700}.directory-tile strong{overflow-wrap:anywhere}.config-status-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.config-status-grid>div{grid-template-columns:32px minmax(0,1fr);align-items:center;gap:4px 8px;min-height:68px;padding:10px;position:relative;overflow:hidden}.config-status-grid>div:before{content:none}.config-status-grid>div:after{content:"";background:linear-gradient(var(--status-color,#94a3b8), var(--status-color,#94a3b8)) bottom / 100% 68% no-repeat, #e5e7eb;border-radius:999px;grid-area:1/1/3;place-self:center;width:30px;height:46px}.config-status-grid .is-ok{--status-color:#10b981}.config-status-grid .is-warn{--status-color:#f59e0b}.config-status-grid .is-error{--status-color:#dc2626}.config-status-grid span,.config-status-grid strong{grid-column:2}.dashboard-disk-bar-warn{background:linear-gradient(90deg,#d97706,#fbbf24)!important}.dashboard-disk-bar-danger{background:linear-gradient(90deg,#dc2626,#fb7185)!important}.dashboard-info-card{align-content:start}.dashboard-kv-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.dashboard-kv-list>div,.dashboard-storage-list>div{border:1px solid var(--border);background:#f8fafc;border-radius:12px;gap:4px;min-width:0;padding:10px;display:grid}.dashboard-kv-list span,.dashboard-storage-list span,.dashboard-disk-meter span{color:var(--muted);font-size:12px;font-weight:700}.dashboard-kv-list strong,.dashboard-storage-list strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;line-height:1.25;overflow:hidden}.dashboard-kv-wide{grid-column:1/-1}.dashboard-storage-list{gap:8px;display:grid}.dashboard-storage-list code{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.35;display:block;overflow:hidden}.dashboard-storage-list .is-error strong{color:var(--danger)}.dashboard-disk-meter{border:1px solid var(--border);background:#f8fafc;border-radius:14px;gap:7px;margin-bottom:10px;padding:12px;display:grid}.dashboard-disk-meter div{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.dashboard-disk-meter strong{font-size:20px}.dashboard-disk-meter b{background:#e5e7eb;border-radius:999px;height:10px;display:block;overflow:hidden}.dashboard-disk-meter i{border-radius:inherit;background:linear-gradient(90deg,#047857,#34d399);min-width:4px;height:100%;display:block}.dashboard-disk-meter p{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.dashboard-disk-warn i{background:linear-gradient(90deg,#d97706,#fbbf24)}.dashboard-disk-danger i{background:linear-gradient(90deg,#dc2626,#fb7185)}@media (max-width:1180px){.dashboard-chart-grid,.dashboard-server-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.system-summary-grid,.dashboard-health-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-server-grid{grid-template-columns:1fr}}@media (max-width:767px){.dashboard-hero-compact{margin-bottom:10px}.dashboard-title-row{width:100%}.dashboard-title-inline{gap:8px;margin-bottom:0}.dashboard-title-inline .dashboard-maintenance-btn{white-space:nowrap;border-radius:10px;min-height:34px;margin-top:2px;padding:6px 12px;font-size:13px}.dashboard-hero-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;margin-top:8px;display:grid}.dashboard-hero-meta span{text-overflow:ellipsis;white-space:nowrap;border-radius:10px;justify-content:center;min-width:0;min-height:30px;padding:5px 7px;font-size:12px;line-height:1.2;overflow:hidden}.dashboard-chart-grid{grid-template-columns:1fr;gap:10px}.chart-card{border-radius:14px;gap:10px;padding:12px}.chart-head h2{font-size:15px}.donut-layout{grid-template-columns:86px minmax(0,1fr);gap:10px}.donut-chart{width:86px}.donut-chart:after{top:14px;bottom:14px;left:14px;right:14px}.donut-chart span{font-size:20px}.bar-chart-list{gap:8px}.bar-chart-row strong{font-size:16px}.bubble-metric-grid{gap:8px}.bubble-metric{border-radius:18px;min-height:104px;padding:10px 6px}.bubble-metric:after{border-radius:15px;top:9px;bottom:9px;left:9px;right:9px}.bubble-metric strong{font-size:21px}.mini-column-chart{gap:10px;min-height:142px}.mini-column-chart a{grid-template-rows:auto minmax(76px,1fr) auto}.mini-column-chart strong{font-size:19px}.runtime-chip-grid,.config-status-grid{grid-template-columns:1fr;gap:8px}.runtime-chip-grid>div{grid-template-rows:auto auto;grid-template-columns:42px minmax(0,1fr);align-items:center;min-height:64px;padding:10px 12px}.runtime-chip-grid>div:after{background-size:11px 11px;border-radius:9px;grid-area:1/1/3;justify-self:center;width:34px;height:34px}.runtime-chip-grid span,.runtime-chip-grid strong{grid-column:2;min-width:0}.runtime-chip-grid strong{text-overflow:clip;overflow-wrap:anywhere;font-size:15px;line-height:1.35;overflow:visible}.runtime-chip-wide strong{font-size:13px}.config-status-grid>div{grid-template-columns:30px minmax(0,1fr);min-height:62px;padding:9px 10px}.config-status-grid>div:after{width:24px;height:40px}.storage-gauge-layout{grid-template-columns:104px minmax(0,1fr);gap:10px}.storage-gauge{width:104px}.storage-gauge:after{top:15px;bottom:15px;left:15px;right:15px}.storage-gauge strong{font-size:21px}.directory-treemap{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(68px,auto);gap:8px}.scale-chart{grid-template-columns:1fr 1fr;gap:8px}.scale-main,.scale-side>div{border-radius:12px;padding:10px}.scale-main strong{font-size:28px}.scale-side strong{font-size:18px}.system-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 12px}.dashboard-health-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.dashboard-system-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0 10px}.dashboard-system-grid .system-summary-card{border-radius:13px;min-height:62px;padding:9px 10px}.dashboard-system-grid .system-summary-card span{font-size:11px}.dashboard-system-grid .system-summary-card strong{font-size:20px;line-height:1.12}.dashboard-health-strip>div{border-radius:12px;padding:9px 10px}.dashboard-health-strip strong{font-size:15px}.system-summary-card{border-radius:12px;min-height:68px;padding:10px}.system-summary-card strong{font-size:21px}.system-run-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.system-run-grid>div{border-radius:10px;padding:8px}.system-run-wide{grid-column:1/-1}.dashboard-server-grid,.dashboard-server-chart-grid{gap:10px;margin-top:10px}.dashboard-server-chart-grid .compact-bars{gap:9px}.dashboard-server-chart-grid .bar-chart-row strong{max-width:52%;font-size:15px}.dashboard-kv-list{grid-template-columns:1fr}.dashboard-storage-list code,.dashboard-kv-list strong,.dashboard-storage-list strong,.runtime-chip-grid strong,.storage-facts strong,.config-status-grid strong{white-space:normal}}@media (max-width:390px){.dashboard-health-strip,.dashboard-hero-meta,.bubble-metric-grid,.directory-treemap{grid-template-columns:1fr}.storage-gauge-layout{grid-template-columns:1fr;justify-items:center}.dashboard-system-grid{grid-template-columns:1fr}.system-summary-card strong{font-size:19px}.chart-legend a{padding-left:7px;padding-right:7px}}.form-actions{flex-wrap:nowrap;justify-content:stretch;align-items:stretch;gap:10px;width:100%;display:flex}.form-actions>.btn,.form-actions>a.btn,.form-actions>button.btn,.form-actions>form,.form-actions>form>.btn{flex:1 1 0;width:auto;min-width:0}.form-actions.two-actions>.btn,.form-actions.two-actions>a.btn,.form-actions.two-actions>button.btn{flex-basis:50%}.chapter-edit-actions>.btn,.chapter-edit-actions>a.btn,.chapter-edit-actions>button.btn{flex:1 1 0}.detail-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:10px;width:100%;display:grid}.detail-actions>.btn,.detail-actions>form,.detail-actions>form>.btn{width:100%;min-width:0}.detail-actions>form,.detail-actions form:last-child{display:flex;grid-column:auto!important}.detail-actions>form>.btn{flex:auto}@media (max-width:767px){.form-actions,.detail-actions{gap:8px}.form-actions>.btn,.form-actions>a.btn,.form-actions>button.btn,.chapter-edit-actions>.btn,.chapter-edit-actions>a.btn,.chapter-edit-actions>button.btn,.detail-actions>.btn,.detail-actions>form>.btn{white-space:nowrap;min-height:40px;padding-left:10px;padding-right:10px}}@media (max-width:360px){.chapter-edit-actions{flex-wrap:wrap}.chapter-edit-actions>.btn,.chapter-edit-actions>a.btn,.chapter-edit-actions>button.btn{flex-basis:calc(50% - 4px)}.chapter-edit-actions>button.btn.danger{flex-basis:100%}}.detail-cover.cover-img{content-visibility:auto}.chapter-row.chapter-row-compact{grid-template-columns:minmax(0,1fr) 44px;align-items:stretch;gap:10px;padding:10px 10px 10px 12px;display:grid}.chapter-row-compact .chapter-main,.chapter-list .chapter-row-compact .chapter-link{grid-template-columns:1fr;align-content:center;gap:5px;min-width:0;display:grid}.chapter-row-compact .chapter-main strong{white-space:normal;overflow-wrap:anywhere;word-break:break-word;min-width:0;line-height:1.45;display:block}.chapter-row-compact .chapter-main span{color:var(--muted);white-space:nowrap;justify-self:start;font-size:13px;line-height:1.2}.chapter-row-compact .chapter-insert-btn{writing-mode:vertical-rl;text-orientation:upright;white-space:nowrap;place-self:stretch stretch;place-items:center;width:44px;min-width:44px;min-height:68px;padding:8px 0;line-height:1.1;display:grid}.chapter-insert-display[readonly]{cursor:default;color:var(--muted);background:#f8fafc}@media (max-width:767px){.chapter-row.chapter-row-compact{grid-template-columns:minmax(0,1fr) 42px;gap:8px;padding:9px 9px 9px 10px}.chapter-row-compact .chapter-insert-btn{width:42px;min-width:42px;min-height:64px;padding:7px 0}.chapter-row-compact .chapter-main strong{font-size:14px}.chapter-row-compact .chapter-main span{font-size:12px}}.chapter-row.chapter-row-compact .btn.small.chapter-insert-btn{justify-self:stretch;width:44px;max-width:44px}@media (max-width:767px){.chapter-row.chapter-row-compact .btn.small.chapter-insert-btn{justify-self:stretch;width:42px;max-width:42px}}.chapter-row-compact{content-visibility:auto;contain-intrinsic-size:84px}.chapter-row-compact .chapter-insert-btn,.chapter-row.chapter-row-compact .btn.small.chapter-insert-btn{writing-mode:horizontal-tb;text-orientation:mixed;white-space:nowrap;width:54px;min-width:54px;max-width:54px;min-height:64px;padding:6px 8px;line-height:1.2;overflow:visible}@media (max-width:767px){.chapter-row.chapter-row-compact{grid-template-columns:minmax(0,1fr) 54px}.chapter-row-compact .chapter-insert-btn,.chapter-row.chapter-row-compact .btn.small.chapter-insert-btn{width:54px;min-width:54px;max-width:54px;min-height:62px}}.chapter-position-picker,.searchable-select-field{color:var(--text);gap:8px;font-weight:600;display:grid}.picker-current{border:1px solid var(--border);min-height:38px;color:var(--muted);overflow-wrap:anywhere;background:#f8fafc;border-radius:9px;align-items:center;padding:9px 11px;line-height:1.45;display:flex}.picker-search,.select-search-input{width:100%}.picker-results{border:1px solid var(--border);background:#f8fafc;border-radius:10px;gap:7px;max-height:260px;padding:4px;display:grid;overflow:auto}.picker-option{text-align:left;border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:9px;grid-template-columns:1fr;justify-items:start;gap:3px;width:100%;padding:9px 10px;display:grid}.picker-option strong{overflow-wrap:anywhere;min-width:0;max-width:100%;line-height:1.35}.picker-option span{color:var(--muted);font-size:12px}.picker-option.is-selected{border-color:var(--primary);color:#1d4ed8;background:#eff6ff}.picker-empty{margin:4px;padding:8px}@media (max-width:767px){.picker-results{max-height:220px}.picker-current,.picker-option{font-size:14px}}.chapter-row.chapter-row-compact{grid-template-columns:minmax(0,1fr) 64px}.chapter-row-compact .chapter-insert-btn,.chapter-row.chapter-row-compact .btn.small.chapter-insert-btn{text-align:center;min-height:58px;padding:6px 8px;writing-mode:horizontal-tb!important;text-orientation:mixed!important;white-space:nowrap!important;width:64px!important;min-width:64px!important;max-width:64px!important;overflow:visible!important}.picker-combo-row,.search-select-combo{grid-template-columns:minmax(0,1fr) 82px;align-items:stretch;gap:8px;width:100%;display:grid}.picker-combo-input,.search-select-input,.picker-search.picker-combo-input,.select-search-input.search-select-input{width:100%;min-width:0;height:42px}.picker-select-wrap{min-width:0;height:42px;display:block;position:relative}.picker-select-visual,.picker-select-wrap>.btn.picker-select-visual{pointer-events:none;white-space:nowrap;justify-content:center;align-items:center;width:100%;height:100%;min-height:42px;padding:0 10px;display:inline-flex}.picker-native-select,.native-search-select,.picker-select-wrap>select{opacity:0;cursor:pointer;z-index:2;width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.chapter-position-picker .picker-current,.chapter-position-picker .picker-results{display:none!important}.searchable-select-field>select,.searchable-select-field>.select-search-input:not(.search-select-input){width:100%}@media (max-width:767px){.chapter-row.chapter-row-compact{grid-template-columns:minmax(0,1fr) 60px}.chapter-row-compact .chapter-insert-btn,.chapter-row.chapter-row-compact .btn.small.chapter-insert-btn{min-height:56px;font-size:13px;width:60px!important;min-width:60px!important;max-width:60px!important}.picker-combo-row,.search-select-combo{grid-template-columns:minmax(0,1fr) 76px;gap:7px}.picker-combo-input,.search-select-input,.picker-search.picker-combo-input,.select-search-input.search-select-input,.picker-select-wrap,.picker-select-visual,.picker-select-wrap>.btn.picker-select-visual{height:40px;min-height:40px}}.chapter-position-picker,.searchable-select-field{position:relative}.picker-select-visual,.picker-select-wrap>.btn.picker-select-visual{pointer-events:auto;cursor:pointer;z-index:3;position:relative}.picker-native-select,.native-search-select,.picker-select-wrap>select{opacity:0;pointer-events:none;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.picker-select-wrap{height:42px}.picker-select-visual,.picker-select-wrap>.btn.picker-select-visual{display:none!important}.picker-native-select,.native-search-select,.picker-select-wrap>select{cursor:pointer;border:1px solid var(--border);color:var(--text);-webkit-appearance:auto;appearance:auto;background:#fff;border-radius:10px;padding:0 10px;opacity:1!important;pointer-events:auto!important;clip-path:none!important;width:100%!important;height:42px!important;min-height:42px!important;position:static!important;top:auto!important;bottom:auto!important;left:auto!important;right:auto!important;overflow:visible!important}@media (max-width:767px){.picker-select-wrap,.picker-native-select,.native-search-select,.picker-select-wrap>select{height:40px!important;min-height:40px!important}.picker-combo-row,.search-select-combo{grid-template-columns:1fr!important;gap:8px!important}.picker-combo-input,.search-select-input,.picker-search.picker-combo-input,.select-search-input.search-select-input,.picker-select-wrap,.picker-native-select,.native-search-select,.picker-select-wrap>select{width:100%!important}}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.hamburger-toggle{justify-content:center}.hamburger-lines,.hamburger-lines:before,.hamburger-lines:after{content:"";background:currentColor;border-radius:999px;width:18px;height:2px;display:block}.hamburger-lines{position:relative}.hamburger-lines:before,.hamburger-lines:after{position:absolute;left:0}.hamburger-lines:before{top:-6px}.hamburger-lines:after{top:6px}@media (max-width:767px){.nav-toggle.hamburger-toggle{border-radius:12px;width:40px;min-width:40px;height:40px;min-height:40px;padding:0}}.picker-input-wrap{width:100%;min-width:0;height:42px;position:relative}.picker-input-wrap>.picker-combo-input,.picker-input-wrap>.search-select-input,.picker-input-wrap>input[type=search]{min-height:42px;padding-right:42px;width:100%!important;height:100%!important}.picker-clear-btn{z-index:4;width:30px;min-width:30px;height:30px;min-height:30px;color:var(--muted);cursor:pointer;background:#eef2f7;border:1px solid transparent;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:20px;line-height:1;display:inline-flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.picker-clear-btn:hover{color:var(--primary);background:#e0ecff;border-color:rgba(37,99,235,.24);outline:none}.picker-clear-btn:focus-visible{color:var(--primary);background:#e0ecff;border-color:rgba(37,99,235,.24);outline:none}@media (max-width:767px){.picker-input-wrap{height:40px}.picker-input-wrap>.picker-combo-input,.picker-input-wrap>.search-select-input,.picker-input-wrap>input[type=search]{min-height:40px;padding-right:40px}.picker-clear-btn{width:28px;min-width:28px;height:28px;min-height:28px;font-size:19px;right:6px}}.openapi-summary-grid .system-summary-card strong{word-break:break-word;font-size:18px;line-height:1.25}.openapi-tool-panel .openapi-doc-links{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.openapi-group-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.openapi-group-card{border:1px solid var(--border);background:#fff;border-radius:14px;padding:12px}.openapi-group-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.openapi-group-title strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;overflow:hidden}.openapi-group-title span{color:var(--muted);flex:none;font-size:12px}.openapi-group-bar{background:#eef2ff;border-radius:999px;height:6px;margin-top:10px;overflow:hidden}.openapi-group-bar span{border-radius:inherit;background:var(--primary);min-width:8px;height:100%;display:block}.openapi-operation-groups{gap:14px;display:grid}.openapi-operation-list{gap:10px;display:grid}.openapi-operation-card{border:1px solid var(--border);background:#fff;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.openapi-operation-main{min-width:0}.openapi-operation-line{align-items:center;gap:8px;min-width:0;display:flex}.openapi-operation-line code{color:#334155;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;overflow:hidden}.openapi-method{text-align:center;color:#fff;letter-spacing:.04em;border-radius:999px;flex:none;min-width:52px;padding:3px 8px;font-size:11px;font-weight:800}.openapi-method-get{background:#2563eb}.openapi-method-post{background:#059669}.openapi-method-put,.openapi-method-patch{background:#d97706}.openapi-method-delete{background:#dc2626}.openapi-method-options,.openapi-method-head{background:#64748b}.openapi-operation-meta{gap:3px;margin-top:8px;display:grid}.openapi-operation-meta strong{font-size:14px}.openapi-operation-meta span{color:var(--muted);font-size:12px;line-height:1.45}.openapi-operation-flags{margin-top:8px}.badge.warn{color:#b45309;background:#fffbeb}.openapi-operation-actions{grid-template-columns:1fr;gap:8px;min-width:96px;display:grid}.openapi-operation-actions .btn{justify-content:center}@media (max-width:767px){.openapi-head .page-actions{justify-content:flex-end}.openapi-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.openapi-summary-grid .system-summary-card:first-child{grid-column:1/-1}.openapi-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.openapi-group-card{border-radius:12px;padding:10px}.openapi-group-title{flex-direction:column;align-items:flex-start;gap:4px}.openapi-operation-card{border-radius:12px;grid-template-columns:1fr;gap:10px;padding:10px}.openapi-operation-line{align-items:flex-start}.openapi-operation-line code{white-space:normal;word-break:break-all}.openapi-operation-actions{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}}.openapi-operation-clickable{cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s}.openapi-operation-clickable:hover{border-color:rgba(37,99,235,.35);outline:none;box-shadow:0 10px 24px rgba(15,23,42,.08)}.openapi-operation-clickable:focus-visible{border-color:rgba(37,99,235,.35);outline:none;box-shadow:0 10px 24px rgba(15,23,42,.08)}.openapi-detail-grid{margin-bottom:14px}.openapi-detail-section{border-top:1px solid var(--border);margin-top:16px;padding-top:14px}.openapi-detail-section h3{margin:0 0 10px;font-size:15px}.openapi-detail-table-wrap{border:1px solid var(--border);border-radius:12px;overflow-x:auto}.openapi-detail-table{border-collapse:collapse;width:100%;min-width:520px;font-size:13px}.openapi-detail-table th,.openapi-detail-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:9px 10px}.openapi-detail-table th{color:var(--muted);background:rgba(15,23,42,.035);font-weight:700}.openapi-detail-table tr:last-child td{border-bottom:0}.openapi-copy-block{color:#e5e7eb;white-space:pre-wrap;word-break:break-word;background:#0f172a;border-radius:12px;margin:0;padding:12px;font-size:12px;line-height:1.6;overflow-x:auto}@media (max-width:767px){.openapi-detail-table{min-width:440px}.openapi-operation-clickable:hover{transform:none}}html{scroll-behavior:smooth}body.modal-sheet-locked{overscroll-behavior:none;width:100%;position:fixed;left:0;right:0;overflow:hidden!important}.picker-combo-row,.search-select-combo{grid-template-columns:1fr!important;gap:8px!important}.picker-input-wrap,.search-input-wrap,.picker-select-wrap,.search-select-wrap,.picker-native-select,.native-search-select,.picker-select-wrap>select{width:100%!important}@media (min-width:768px){.chapter-list.chapter-manage-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.chapter-row.chapter-row-compact{height:100%}}@media (max-width:767px){.chapter-list.chapter-manage-list{grid-template-columns:1fr}}@media (prefers-reduced-motion:no-preference){body{animation:.18s ease-out both pageFadeIn}main>*,.panel,.card,.compact-panel,.chapter-row,.openapi-operation-card,.system-summary-card,.novel-card,.resource-card,.token-card,.category-card,.tag-card{animation:.2s ease-out both itemRiseIn}.btn,.nav a,.chapter-row,.openapi-operation-card,.modal-sheet__close,input,select,textarea{transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s,transform .16s,opacity .16s}.btn:active,.openapi-operation-card:active,.chapter-row:active{transform:translateY(1px)}}@keyframes pageFadeIn{0%{opacity:.86}to{opacity:1}}@keyframes itemRiseIn{0%{opacity:.88;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.openapi-tool-panel .section-head{align-items:center}@media (max-width:767px){.openapi-head .page-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.openapi-head .page-actions .btn{justify-content:center;min-width:0}.openapi-detail-grid{gap:8px;grid-template-columns:1fr!important}.openapi-detail-grid div{border:1px solid var(--border);background:rgba(248,250,252,.72);border-radius:12px;padding:9px 10px}.openapi-detail-section{margin-top:12px;padding-top:12px}.openapi-detail-section h3{font-size:14px}.openapi-detail-table-wrap{border:0;border-radius:0;overflow-x:visible}.openapi-detail-table{font-size:12px;min-width:0!important}.openapi-detail-table thead{display:none}.openapi-detail-table,.openapi-detail-table tbody,.openapi-detail-table tr,.openapi-detail-table td{width:100%;display:block}.openapi-detail-table tr{border:1px solid var(--border);background:#fff;border-radius:12px;margin-bottom:8px;padding:9px 10px}.openapi-detail-table td{overflow-wrap:anywhere;word-break:break-word;border:0;grid-template-columns:72px minmax(0,1fr);gap:8px;padding:3px 0;line-height:1.45;display:grid}.openapi-detail-table td:before{content:attr(data-label);color:var(--muted);font-weight:700}.openapi-copy-block{max-height:220px;padding:10px;font-size:11px;line-height:1.55}}.openapi-group-card{color:inherit;cursor:pointer;text-decoration:none}.openapi-group-card:focus-visible{outline-offset:3px;outline:3px solid rgba(37,99,235,.22)}.openapi-operation-group{scroll-margin-top:92px}@media (max-width:767px){.openapi-operation-group{scroll-margin-top:76px}}body.modal-sheet-locked{touch-action:none;left:0;right:0}.source-switch-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:-4px 0 14px;display:grid}.source-switch-tab{border:1px solid var(--border);min-height:42px;color:var(--text);box-shadow:var(--shadow);background:#fff;border-radius:12px;justify-content:center;align-items:center;padding:10px 12px;font-weight:700;text-decoration:none;transition:transform .16s,border-color .16s,background .16s;display:flex}.source-switch-tab:hover{border-color:rgba(37,99,235,.45);transform:translateY(-1px)}.source-switch-tab.active{color:#1d4ed8;background:#eff6ff;border-color:rgba(37,99,235,.5)}.compact-source-info{margin-top:0}.subscription-rule-grid,.subscription-target-body{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);align-items:start;gap:14px;display:grid}.subscription-rule-note{min-height:100%;margin:0}.subscription-rule-note p{color:var(--muted);margin:8px 0 0;line-height:1.65}.subscription-targets{gap:16px;display:grid}.subscription-target-card .section-head{align-items:start}.subscription-source-comment{margin:14px 0 0}.subscription-qr-panel{border:1px solid var(--border);background:#fff;border-radius:12px;justify-items:center;gap:10px;padding:14px;display:grid}.subscription-qr-panel img{aspect-ratio:1;width:min(220px,100%)}.subscription-target-meta{margin-top:14px}.subscription-validation-error{background:#fff7ed;border-color:#fed7aa;margin:14px 0 0}.subscription-curl-block{color:#e5e7eb;white-space:pre-wrap;word-break:break-all;background:#0f172a;border-radius:8px;margin:14px 0 0;padding:12px;font-size:13px}.setting-login-fields{background:#f8fbff;border:1px solid rgba(37,99,235,.18);border-radius:8px;gap:10px;padding:12px;display:grid}.setting-login-fields strong{font-size:14px}.setting-login-fields small{line-height:1.55}.device-action-box{gap:10px;display:grid}.device-action-box>summary{list-style:none;display:inline-flex}.device-action-box>summary::-webkit-details-marker{display:none}.device-action-box form{border:1px solid var(--border);background:#fff;border-radius:8px;padding:12px}.qysg-actions{margin-top:14px}.qysg-note-card{margin-top:16px}.qysg-step-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.qysg-step{border:1px solid var(--border);background:#f8fafc;border-radius:12px;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:10px;padding:12px;display:grid}.qysg-step b{color:#1d4ed8;background:#eff6ff;border-radius:999px;place-items:center;width:34px;height:34px;display:grid}.qysg-step span{color:var(--muted);line-height:1.55}@media (max-width:1023px){.subscription-rule-grid,.subscription-target-body{grid-template-columns:1fr}.qysg-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:767px){.source-switch-tabs{gap:8px;margin-bottom:10px}.source-switch-tab{border-radius:10px;min-height:38px;padding:8px 10px;font-size:14px}.qysg-step-grid{grid-template-columns:1fr;gap:8px}.qysg-step{padding:10px}.qysg-actions{grid-template-columns:1fr 1fr;display:grid}}.chapter-row.chapter-row-compact{align-items:stretch;grid-template-columns:minmax(0,1fr) 76px!important}.chapter-row.chapter-row-compact>.chapter-main{grid-column:1;min-width:0}.chapter-row-actions{flex-direction:column;grid-column:2;justify-content:center;align-items:stretch;gap:8px;min-width:0;display:flex}.chapter-row-actions .chapter-batch-cell{justify-content:center;min-width:0;min-height:22px}.chapter-row-actions .batch-checkbox{flex:none}.chapter-row-actions .chapter-insert-btn,.chapter-row.chapter-row-compact .chapter-row-actions .btn.small.chapter-insert-btn{place-self:stretch stretch;min-height:42px;padding:6px 8px;width:100%!important;min-width:0!important;max-width:100%!important}@media (max-width:767px){.chapter-row.chapter-row-compact{grid-template-columns:minmax(0,1fr) 72px!important}.chapter-row-actions{gap:7px}.chapter-row-actions .chapter-insert-btn,.chapter-row.chapter-row-compact .chapter-row-actions .btn.small.chapter-insert-btn{min-height:40px;font-size:13px}}:root{--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--surface-soft:#f8fafc;--primary-soft:#eff6ff;--success:#16a34a;--success-soft:#ecfdf5;--warning:#d97706;--warning-soft:#fffbeb;--danger-soft:#fef2f2}.page-title{min-width:0}.page-title h1{margin:0;line-height:1.18}.page-title .page-desc{margin-top:6px}.page-actions,.inline-actions,.actions{min-width:0}.panel,.card,.auth-card,.novel-card,.stat-card,.system-summary-card,.chart-card{border-radius:var(--radius-lg)}.compact-section-head h2,.section-head h2,.card>h2,.panel>h2{margin-top:0}.btn{gap:6px;font-weight:600;line-height:1.2;transition:transform .16s,box-shadow .16s,border-color .16s,background .16s}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,23,42,.08)}.btn:active:not(:disabled){box-shadow:none;transform:translateY(0)}.btn.is-loading{cursor:wait}.btn.is-loading:before{content:"";border:2px solid;border-right-color:transparent;border-radius:999px;width:14px;height:14px;animation:.72s linear infinite buttonLoadingSpin}@keyframes buttonLoadingSpin{to{transform:rotate(360deg)}}.btn:disabled{cursor:not-allowed;opacity:.58}.btn.secondary{background:var(--surface-soft)}.btn.ghost{background:0 0}.badge.privacy-badge{color:#6d28d9;background:#f5f3ff}.badge.success{background:var(--success-soft);color:#047857}.badge.warn{background:var(--warning-soft);color:#92400e}.badge.danger-lite{background:var(--danger-soft);color:#b91c1c}.empty-state{border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--surface-soft);justify-items:start;gap:10px;padding:18px;display:grid}.empty-state .empty{margin:0}.table-list .empty-state,.novel-grid .empty-state{grid-column:1/-1}.form-label,.form-stack label{min-width:0}.form-help,.form-stack small{color:var(--muted)}[data-copy-text],[data-copy-target],[data-copy-url]{user-select:none}@media (max-width:767px){.page-head{gap:12px}.page-title h1{font-size:26px}.empty-state{justify-items:stretch}.empty-state .btn{width:100%}}.batch-toolbar{background:0 0;border:0;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0 14px;padding:0;display:flex}.batch-toolbar.compact-batch-toolbar{margin-top:0}.batch-check-all{white-space:nowrap;align-items:center;gap:6px;margin:0;display:inline-flex}.batch-count-text{color:var(--muted,#64748b);white-space:nowrap;font-size:13px}.batch-action-select,.batch-action-fields{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:inline-flex}.batch-action-select{color:var(--muted,#64748b);font-size:13px}.batch-action-select select,.inline-field.small-inline-field select{min-width:150px;height:32px;padding:4px 8px}.batch-action-fields[hidden],[data-batch-action-field][hidden]{display:none!important}.batch-cell{justify-content:center;align-items:center;min-width:26px;display:flex}.batch-checkbox{width:18px;height:18px;accent-color:var(--primary,#2563eb)}.batch-row{gap:10px}.batch-card{position:relative}.novel-card-check{z-index:2;background:rgba(255,255,255,.92);border-radius:999px;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:8px;left:8px;box-shadow:0 6px 18px rgba(15,23,42,.12)}.inline-field.small-inline-field{color:var(--muted,#64748b);align-items:center;gap:6px;margin:0;font-size:13px;display:inline-flex}.tag-select-field select{min-width:180px}[data-batch-submit-disabled=true]{opacity:.55}@media (max-width:720px){.batch-toolbar,.batch-action-select,.batch-action-fields{flex-direction:column;align-items:stretch}.batch-toolbar>*,.batch-action-select,.batch-action-select select,.batch-action-fields,.batch-action-fields>*,.inline-field.small-inline-field,.inline-field.small-inline-field select,.batch-toolbar .btn{width:100%}}.batch-tag-picker-field{gap:8px}.batch-tag-picker-button{justify-content:center;align-items:center;gap:6px;min-width:150px;max-width:260px;display:inline-flex}.batch-tag-summary{text-overflow:ellipsis;white-space:nowrap;max-width:140px;color:var(--muted,#64748b);font-weight:500;display:inline-block;overflow:hidden}.batch-tag-picker-modal{gap:14px;display:grid}.batch-tag-picker-head{border-bottom:1px solid var(--border,#e5e7eb);justify-content:space-between;align-items:center;gap:12px;padding:2px 0 10px;display:flex}.batch-tag-picker-head>div:first-child{gap:3px;display:grid}.batch-tag-checkbox-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;max-height:min(52vh,420px);padding:2px 2px 6px;display:grid;overflow:auto}.batch-tag-checkbox-item{border:1px solid var(--border,#e5e7eb);background:var(--card,#fff);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-width:0;margin:0;padding:9px 10px;display:flex}.batch-tag-checkbox-item:hover{border-color:var(--primary,#2563eb)}.batch-tag-checkbox-item input{width:16px;height:16px;accent-color:var(--primary,#2563eb);flex:none}.batch-tag-checkbox-item span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.batch-tag-checkbox-item em{color:var(--danger,#dc2626);margin-left:4px;font-size:12px;font-style:normal}@media (max-width:720px){.batch-tag-picker-head{flex-direction:column;align-items:stretch}.batch-tag-picker-head .inline-actions,.batch-tag-picker-head .inline-actions .btn,.batch-tag-picker-button{width:100%}.batch-tag-checkbox-grid{grid-template-columns:1fr;max-height:48vh}}.password-panel{max-width:560px}.password-form .danger-confirm{white-space:normal;align-items:flex-start}.batch-audit-card .api-log-title strong{word-break:break-word}.batch-audit-list pre{white-space:pre-wrap;max-height:360px;overflow:auto}.badge.success{color:#166534;background:#dcfce7}.badge.warning{color:#92400e;background:#fef3c7}@media (max-width:767px){.password-panel{max-width:none}}.management-card-list,.resource-list.management-card-list{grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;gap:12px;display:grid}.management-card-list .empty-state{grid-column:1/-1}.resource-card{border:1px solid var(--border,#e2e8f0);background:var(--card,#fff);min-width:0;height:100%;min-height:132px;box-shadow:var(--shadow-soft,0 10px 30px rgba(15,23,42,.06));border-radius:14px;grid-template:"main select""meta meta"1fr"actions actions"/minmax(0,1fr) auto;align-content:start;align-items:start;gap:10px;padding:14px;display:grid}.resource-card-select{grid-area:select;justify-content:flex-end;justify-self:end;align-items:center;width:auto;min-width:22px;line-height:1;display:inline-flex}.resource-card-main{text-align:left;grid-area:main;justify-items:start;gap:4px;min-width:0;display:grid}.resource-card-title{max-width:100%;color:var(--text,#0f172a);overflow-wrap:anywhere;word-break:break-word;font-size:16px;font-weight:800;line-height:1.35;display:block}.resource-card-desc{max-width:100%;color:var(--muted,#64748b);overflow-wrap:anywhere;word-break:break-word;font-size:13px;line-height:1.45}.resource-card-meta{min-width:0;color:var(--muted,#64748b);text-align:left;flex-wrap:wrap;grid-area:meta;place-content:flex-start;align-items:flex-start;gap:6px 10px;font-size:13px;line-height:1.4;display:flex}.resource-card-meta .meta-item{overflow-wrap:anywhere;word-break:break-word;align-items:center;min-width:0;max-width:100%;display:inline-flex}.token-card-meta{grid-template-columns:1fr;justify-content:stretch;gap:4px;display:grid}.resource-card-actions{flex-wrap:wrap;grid-area:actions;justify-content:flex-start;align-self:end;align-items:center;gap:8px;width:100%;min-width:0;display:flex}.resource-card-actions form{margin:0;display:inline-flex}.resource-card-actions .btn,.resource-card-actions form .btn{white-space:nowrap;min-height:34px}.discover-entry-list,.resource-list.discover-entry-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.discover-entry-card{min-height:148px}.discover-entry-card .resource-card-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.discover-rule-doc{gap:14px;display:grid}.discover-rule-doc section{border:1px solid var(--border,#e2e8f0);background:var(--surface,#f8fafc);border-radius:12px;gap:8px;padding:14px;display:grid}.discover-rule-doc h3{color:var(--text,#0f172a);margin:0;font-size:15px;line-height:1.35}.discover-rule-doc p,.discover-rule-doc li{color:var(--muted,#64748b);margin:0;line-height:1.7}.discover-rule-doc ul{gap:6px;margin:0;padding-left:20px;display:grid}.discover-rule-doc code{white-space:normal;overflow-wrap:anywhere;word-break:break-word;max-width:100%}.discover-rule-examples{gap:8px;display:grid}.discover-rule-examples code{border:1px solid var(--border,#e2e8f0);background:var(--card,#fff);color:var(--text,#0f172a);border-radius:10px;padding:10px 12px;display:block}@media (max-width:1279px){.management-card-list,.resource-list.management-card-list{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:1023px){.management-card-list,.resource-list.management-card-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:767px){.management-card-list,.resource-list.management-card-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.resource-card{border-radius:12px;gap:8px;min-height:122px;padding:10px}.resource-card-title{font-size:15px}.resource-card-desc,.resource-card-meta{font-size:12px}.resource-card-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.token-card .resource-card-actions{grid-template-columns:1fr}.resource-card-actions form,.resource-card-actions form .btn,.resource-card-actions>.btn{width:100%}.resource-card-actions .btn,.resource-card-actions form .btn{min-height:32px;padding:5px 8px;font-size:13px}}@media (max-width:360px){.management-card-list,.resource-list.management-card-list{gap:6px}.resource-card{padding:9px}.resource-card-actions .btn,.resource-card-actions form .btn{padding-left:6px;padding-right:6px}}.operation-log-filter-form,.operation-log-cleanup-form{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.operation-log-filter-form .btn,.operation-log-cleanup-form .btn,.operation-log-filter-form .inline-field,.operation-log-cleanup-form .inline-field{min-width:0}.operation-log-list .operation-log-row{grid-template-columns:minmax(180px,1.5fr) auto minmax(160px,1fr) minmax(160px,1fr)}.operation-audit-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.operation-audit-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.audit-chart{border:1px solid var(--border);background:#fff;border-radius:8px;gap:8px;min-width:0;padding:12px;display:grid}.audit-chart h3{margin:0;font-size:14px}.audit-action-chart{margin-top:12px}.audit-bar-row{min-height:24px;color:var(--muted);grid-template-columns:minmax(92px,.42fr) minmax(60px,1fr) auto;align-items:center;gap:8px;font-size:13px;display:grid}.audit-bar-row span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.audit-bar-row b{background:#2563eb;border-radius:999px;min-width:2px;height:8px;display:block}.audit-bar-row strong{color:var(--text);font-size:12px}.pagination-actions{justify-content:flex-end;gap:10px;margin-top:14px;display:flex}@media (max-width:767px){.operation-log-list .operation-log-row,.operation-audit-metrics,.operation-audit-chart-grid{grid-template-columns:1fr}.pagination-actions{flex-direction:column}}.nav-task-link{align-items:center;gap:6px;display:inline-flex}.task-nav-badge{min-width:20px;height:20px;color:var(--primary,#2563eb);background:rgba(37,99,235,.12);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.task-nav-badge.has-failed{color:var(--danger,#dc2626);background:rgba(220,38,38,.12)}.task-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.task-filter-form{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.task-card-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;display:grid}.task-card{border:1px solid var(--border,#e5e7eb);background:var(--card,#fff);border-radius:16px;flex-direction:column;gap:10px;min-width:0;min-height:170px;padding:14px;display:flex}.task-card-head,.task-card-actions,.task-progress-meta{justify-content:space-between;align-items:center;gap:10px;display:flex}.task-card-title{flex-direction:column;gap:2px;min-width:0;display:flex}.task-card-title strong,.task-card-title span,.task-card-message{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.task-card-title span,.task-card-meta,.task-card-message{color:var(--muted,#64748b);font-size:13px}.task-card-meta{grid-template-columns:1fr;gap:4px;display:grid}.task-card-message{margin:0}.task-card-actions{flex-wrap:wrap;justify-content:flex-end;margin-top:auto}.task-progress-block{gap:10px;margin-bottom:14px;display:grid}.task-progress-bar{background:#e5e7eb;border-radius:999px;height:8px;overflow:hidden}.task-progress-bar>span{border-radius:inherit;background:var(--primary,#2563eb);height:100%;transition:width .2s;display:block}.task-status-success .task-progress-bar>span{background:#16a34a}.task-status-failed .task-progress-bar>span,.task-status-cancelled .task-progress-bar>span{background:var(--danger,#dc2626)}.task-file-list{gap:10px;display:grid}.task-file-item{border:1px solid var(--border,#e5e7eb);color:inherit;background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}.task-file-item span{color:var(--muted,#64748b);font-size:13px}.task-log-list{border:1px solid var(--border,#e5e7eb);color:#e2e8f0;background:#0f172a;border-radius:14px;max-height:420px;overflow:auto}.task-log-line{border-bottom:1px solid rgba(148,163,184,.22);grid-template-columns:150px 64px minmax(0,1fr);gap:10px;padding:8px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;display:grid}.task-log-line:last-child{border-bottom:0}.task-log-line time,.task-log-line span{color:#94a3b8}.task-log-line p{white-space:pre-wrap;word-break:break-word;margin:0}.task-log-error p{color:#fecaca}.task-log-warn p{color:#fde68a}@media (max-width:767px){.task-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.task-card-list{grid-template-columns:1fr}.task-log-line{grid-template-columns:1fr;gap:3px}}.modal-sheet{z-index:2000;isolation:isolate;display:none;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.modal-sheet[hidden]{display:none!important}.modal-sheet.is-open{display:block}.modal-sheet,.modal-sheet *{min-width:0}.modal-sheet__backdrop{backdrop-filter:blur(3px);background:rgba(15,23,42,.42);position:absolute;top:0;bottom:0;left:0;right:0}.modal-sheet__panel{background:var(--card,#fff);grid-template-rows:auto minmax(0,1fr) auto;width:min(520px,94vw);max-width:100vw;min-height:0;display:grid;position:absolute;top:0;bottom:0;right:0;overflow:hidden;box-shadow:-18px 0 42px rgba(15,23,42,.2)}.modal-sheet__panel--wide{width:min(720px,96vw)}.modal-sheet__header{border-bottom:1px solid var(--border,#e5e7eb);background:var(--card,#fff);grid-row:1;justify-content:space-between;align-items:flex-start;gap:18px;min-height:0;margin:0;padding:20px 22px 14px;display:flex}.modal-sheet__title-block{min-width:0;padding-right:8px}.modal-sheet__header h2{margin:0 0 4px}.modal-sheet__header p{color:var(--muted,#64748b);margin:0;line-height:1.5}.modal-sheet__close{border:1px solid var(--border,#e5e7eb);background:var(--card,#fff);width:36px;height:36px;color:var(--text,#0f172a);cursor:pointer;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0;font-size:22px;line-height:1;display:inline-flex}.modal-sheet__body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;grid-row:2;min-height:0;padding:18px 22px;overflow-x:hidden;overflow-y:auto}.modal-sheet__body .modal-actions{display:none!important}.modal-sheet__footer{width:100%;min-width:0;padding:12px 22px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border,#e5e7eb);background:var(--card,#fff);grid-row:3;margin:0;box-shadow:0 -10px 24px rgba(15,23,42,.1)}.modal-sheet__footer[hidden],.modal-sheet__footer:empty{display:none!important}.modal-sheet__footer .modal-actions{width:100%!important;min-width:0!important;box-shadow:none!important;backdrop-filter:none!important;background:0 0!important;border:0!important;flex-flow:row!important;justify-content:flex-end!important;align-items:stretch!important;gap:10px!important;margin:0!important;padding:0!important;display:flex!important;position:static!important;top:auto!important;bottom:auto!important;left:auto!important;right:auto!important}.modal-sheet__footer .modal-actions>.btn,.modal-sheet__footer .modal-actions>a.btn,.modal-sheet__footer .modal-actions>button.btn,.modal-sheet__footer .modal-actions>form,.modal-sheet__footer .modal-actions>form>.btn{white-space:nowrap!important;flex:1 1 0!important;width:auto!important;min-width:0!important;min-height:42px!important}@media (max-width:767px){.modal-sheet__panel,.modal-sheet__panel--wide{border-radius:0;width:100vw;max-width:100vw;top:0;bottom:0;left:0;right:0}.modal-sheet__header{gap:12px;padding:16px 16px 12px}.modal-sheet__header h2{font-size:20px;line-height:1.25}.modal-sheet__header p{font-size:13px;line-height:1.45}.modal-sheet__body{padding:14px 16px}.modal-sheet__footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px))}.modal-sheet__footer .modal-actions{gap:8px!important}.modal-sheet__footer .modal-actions>.btn,.modal-sheet__footer .modal-actions>a.btn,.modal-sheet__footer .modal-actions>button.btn,.modal-sheet__footer .modal-actions>form,.modal-sheet__footer .modal-actions>form>.btn{min-height:42px!important;padding-left:10px!important;padding-right:10px!important}}
