@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600;700&family=Noto+Sans+SC:wght@300;400;500;600;700;800;900&family=Noto+Serif+SC:wght@400;500;600;700&display=swap";.ctrl-search{background:var(--bg-secondary);height:36px;color:var(--text-muted);border:1.5px solid #0000001a;border-radius:10px;flex:0 280px;align-items:center;gap:8px;min-width:0;max-width:280px;padding:0 12px;font-size:13px;transition:border-color .2s,box-shadow .2s,background .2s;display:flex}.ctrl-search:focus-within{border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px #5645d41a}.ctrl-search>i{opacity:.4;flex-shrink:0;font-size:15px;transition:opacity .15s}.ctrl-search:focus-within>i{opacity:.7}.ctrl-search .arco-input-wrapper,.ctrl-search .arco-input{box-shadow:none!important;background:0 0!important;border:none!important;flex:1 1 0!important;width:0!important;min-width:0!important;height:100%!important;padding:0!important;font-size:13px!important}.ctrl-search .arco-input::placeholder{color:var(--text-muted)}.ctrl-search kbd{color:var(--text-muted);pointer-events:none;background:#fff;border:1px solid #0000000f;border-radius:4px;flex-shrink:0;padding:1px 5px;font-family:inherit;font-size:10px;font-weight:500;line-height:1.4}.ctrl-filters{align-items:center;gap:6px;display:flex}.filter-chip{height:30px;color:var(--text-muted);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #0000000f;border-radius:999px;align-items:center;gap:5px;padding:0 10px;font-family:inherit;font-size:12px;font-weight:450;transition:all .15s;display:inline-flex}.filter-chip:hover{color:var(--text-secondary);border-color:#5645d424}.filter-chip.active{color:var(--color-primary);background:#5645d40f;border-color:#5645d424;font-weight:500}.filter-chip i{opacity:.5;font-size:12px}.filter-chip .count{background:var(--bg-secondary);color:var(--text-muted);border-radius:8px;padding:0 5px;font-size:10px;font-weight:600;line-height:16px}.filter-chip.active .count{color:var(--color-primary);background:#5645d41f}.admin-page .arco-select-view-single,.admin-page .arco-select-view{transition:all .15s;height:30px!important;box-shadow:none!important;background:#fff!important;border:1px solid #0000001a!important;border-radius:999px!important;padding:0 28px 0 10px!important;font-size:12px!important}.admin-page .arco-select-view-single:hover,.admin-page .arco-select-view:hover{border-color:#5645d42e!important}.admin-page .arco-select-view-single.arco-select-view-focused,.admin-page .arco-select-view.arco-select-view-focused{border-color:var(--color-primary)!important;box-shadow:0 0 0 3px #5645d41a!important}.admin-page .arco-select-view-suffix-icon{color:var(--text-muted)!important;font-size:12px!important}.admin-toolbar .arco-select-view,.admin-toolbar .arco-select-view-single{flex-shrink:0!important;width:120px!important}.admin-toolbar .user-filter.arco-select-view,.admin-toolbar .tenant-filter.arco-select-view,.admin-toolbar .novel-filter.arco-select-view,.admin-toolbar .menu-filter.arco-select-view{width:118px!important}.admin-toolbar .login-filter.arco-select-view,.admin-toolbar .small-filter.arco-select-view{width:112px!important}.admin-toolbar .ai-task-filter.arco-select-view,.admin-toolbar .workflow-filter.arco-select-view,.admin-toolbar .shop-account-filter.arco-select-view,.admin-toolbar .creator-asset-filter.arco-select-view{width:126px!important}.admin-toolbar .status-filter.arco-select-view,.admin-toolbar .login-type-filter.arco-select-view,.admin-toolbar .billing-filter.arco-select-view,.admin-toolbar .model-filter.arco-select-view,.admin-toolbar .sort-filter.arco-select-view{width:132px!important}.admin-toolbar .food-filter.arco-select-view,.admin-toolbar .media-tasks-filter.arco-select-view,.admin-toolbar .writing-filter.arco-select-view{width:140px!important}.admin-toolbar .type-filter.arco-select-view,.admin-toolbar .fanqie-filter.arco-select-view{width:150px!important}.logs-toolbar .fanqie-filter.arco-select-view{flex-shrink:0!important;width:150px!important}.admin-toolbar .shop-ops-filter.arco-select-view,.admin-toolbar .content-intel-filter.arco-select-view,.admin-toolbar .merch-filter.arco-select-view,.admin-toolbar .blog-ainews-filter.arco-select-view{width:160px!important}.admin-toolbar .game-type-filter.arco-select-view{width:130px!important}.admin-toolbar .difficulty-filter.arco-select-view{width:110px!important}.permission-filters .arco-select-view,.permission-filters .arco-select-view-single{flex-shrink:0!important;width:110px!important}.admin-page .admin-toolbar .arco-input-search{width:260px!important}.admin-page .admin-toolbar .arco-input-search .arco-input-wrapper{transition:all .2s;background:var(--bg-secondary)!important;height:36px!important;box-shadow:none!important;border:1.5px solid #0000000f!important;border-radius:10px!important}.admin-page .admin-toolbar .arco-input-search .arco-input-wrapper:focus-within,.admin-page .admin-toolbar .arco-input-search .arco-input-wrapper.arco-input-focus{border-color:var(--color-primary)!important;background:#fff!important;box-shadow:0 0 0 3px #5645d41a!important}.admin-page .arco-pagination{font-size:12px}.admin-page .arco-pagination-item{min-width:28px;height:28px;font-size:12px;border-radius:6px!important}.admin-page .arco-pagination-item-active{background:var(--color-primary)!important;color:#fff!important;border-color:var(--color-primary)!important}.admin-page .arco-table-td .admin-tag+.admin-tag{margin-left:4px}.admin-page .arco-table-td .op-btn+.op-btn{margin-left:2px}.admin-page .arco-table-tr:hover{background:0 0!important}.admin-page .btn{border-radius:var(--admin-radius-sm,6px);border:1px solid var(--admin-hairline,#0000000f);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:#fff;justify-content:flex-start;align-items:center;gap:5px;padding:7px 14px;font-size:12.5px;font-weight:480;transition:all .15s;display:inline-flex}.admin-page .btn:hover{color:var(--text-primary);background:var(--bg-secondary);border-color:#0000001f}.admin-page .btn i{font-size:14px}.admin-page .btn.btn-primary,.admin-page .btn.arco-btn-primary,.admin-page .arco-btn.btn-primary{font-weight:500;background:var(--color-primary)!important;color:#fff!important;border-color:var(--color-primary)!important}.admin-page .btn.btn-primary:hover,.admin-page .btn.arco-btn-primary:hover{box-shadow:0 2px 8px #5645d433;background:var(--color-primary-light-2)!important;color:#fff!important}.admin-page .btn.btn-sm{height:28px;padding:0 10px;font-size:11.5px}.admin-page .btn:disabled,.admin-page .btn[disabled]{opacity:.5;cursor:not-allowed}.role-card-list{flex:1;padding:8px;overflow-y:auto}.role-card{cursor:pointer;border:1.5px solid #0000;border-radius:10px;align-items:center;gap:10px;margin-bottom:2px;padding:10px 12px;transition:all .15s;display:flex}.role-card:hover{background:#00000006}.role-card.active{background:#5645d40f;border-color:#5645d424}.role-card-icon{color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;display:flex}.role-card-info{flex:1;min-width:0}.role-card-name{color:var(--text-primary);align-items:center;gap:6px;font-size:13px;font-weight:530;display:flex}.role-card-desc{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.role-card-meta{gap:10px;margin-top:4px;display:flex}.role-card-meta span{color:var(--text-muted);align-items:center;gap:3px;font-size:11px;display:flex}.role-card-meta span i{opacity:.45;font-size:12px}.role-card-icon.icon-admin{background:linear-gradient(135deg,#5645d4 0%,#7c6ef0 100%)}.role-card-icon.icon-writer{background:linear-gradient(135deg,#16a34a 0%,#34d058 100%)}.role-card-icon.icon-editor{background:linear-gradient(135deg,#2563eb 0%,#5b9bf5 100%)}.role-card-icon.icon-viewer{background:linear-gradient(135deg,#d97706 0%,#f5b731 100%)}.role-card-icon.icon-ops{background:linear-gradient(135deg,#dc2626 0%,#f87171 100%)}.role-card-icon.icon-default{background:linear-gradient(135deg,#71717a 0%,#a1a1aa 100%)}.role-card.role-card-create{min-height:52px;color:var(--text-muted);border:1.5px dashed #0000001a;justify-content:center;gap:6px;transition:all .15s}.role-card.role-card-create:hover{color:var(--color-primary);background:#5645d408;border-color:#5645d43d}.role-card.role-card-create i{font-size:16px}.role-card.role-card-create span{font-size:12px;font-weight:500}.role-builtin-badge{letter-spacing:.2px;color:var(--text-muted);background:#0000000a;border-radius:4px;padding:1px 5px;font-size:9px;font-weight:600}.perm-panel{background:var(--bg-secondary);flex-direction:column;display:flex;overflow:hidden}.perm-head{background:#fff;border-bottom:1px solid #00000009;justify-content:space-between;align-items:center;gap:12px;padding:16px 24px 14px;display:flex}.perm-role-info{align-items:center;gap:10px;display:flex}.perm-role-name{color:var(--text-primary);letter-spacing:-.2px;font-size:15px;font-weight:600}.perm-role-tag{color:var(--color-primary);letter-spacing:.3px;background:#5645d40f;border-radius:4px;padding:2px 7px;font-family:ui-monospace,monospace;font-size:10px;font-weight:600}.perm-tools{align-items:center;gap:6px;display:flex}.perm-body{flex:1;padding:16px 24px;overflow-y:auto}.perm-summary{gap:16px;margin-bottom:16px;font-size:12px;display:flex}.perm-summary-item{color:var(--text-muted);align-items:center;gap:5px;display:flex}.perm-summary-item strong{color:var(--text-primary);font-family:ui-monospace,monospace;font-size:12px;font-weight:600}.perm-summary-divider{background:#0000000f;width:1px;height:14px}.perm-summary-status{color:#16a34a;align-items:center;gap:4px;margin-left:auto;font-weight:500;display:flex}.perm-summary-status i{font-size:14px}.perm-group{background:#fff;border:1px solid #00000009;border-radius:14px;margin-bottom:8px;overflow:hidden}.perm-group-head{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:12px 16px;transition:background .1s;display:flex}.perm-group-head:hover{background:#00000006}.perm-chevron{color:var(--text-muted);font-size:14px;transition:transform .2s}.perm-group.collapsed .perm-chevron{transform:rotate(-90deg)}.perm-group-label{color:var(--text-primary);font-size:13px;font-weight:530}.perm-group-count{color:var(--text-muted);background:var(--bg-secondary);border-radius:8px;padding:1px 6px;font-family:ui-monospace,monospace;font-size:10px;font-weight:500}.perm-group-body{padding:0 16px 12px}.perm-group.collapsed .perm-group-body{display:none}.perm-row{border-radius:6px;align-items:center;gap:10px;padding:7px 12px;font-size:12.5px;transition:background .1s;display:flex}.perm-row:hover{background:#00000006}.perm-check{cursor:pointer;color:#0000;border:1.5px solid #00000026;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;transition:all .15s;display:flex}.perm-check:hover{border-color:var(--color-primary)}.perm-check.checked{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.perm-check.partial{border-color:var(--color-primary);background:#5645d40f}.perm-check.partial:after{content:"";background:var(--color-primary);border-radius:1px;width:6px;height:2px}.perm-label{color:var(--text-secondary);flex:1}.perm-path{color:var(--text-muted);letter-spacing:.2px;font-family:ui-monospace,monospace;font-size:10.5px}.perm-type{letter-spacing:.2px;border-radius:4px;padding:1px 6px;font-size:10px;font-weight:500}.perm-type.menu{color:#2563eb;background:#2563eb12}.perm-type.btn{color:#d97706;background:#d9770612}.menu-tree-search{background:var(--bg-secondary);border:1px solid #0000000f;border-radius:6px;flex:1;align-items:center;gap:6px;height:30px;padding:0 8px;transition:all .15s;display:flex}.menu-tree-search:focus-within{border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px #5645d41a}.menu-tree-search i{color:var(--text-muted);flex-shrink:0;font-size:13px}.menu-tree-search .arco-input-wrapper,.menu-tree-search .arco-input{box-shadow:none!important;background:0 0!important;border:none!important;height:100%!important;padding:0!important;font-size:12px!important}.config-grid-v2{grid-template-columns:1fr 1fr;gap:16px;padding:24px;display:grid}.config-card-v2{background:#fff;border:1px solid #00000009;border-radius:14px;padding:20px}.config-card-head-v2{border-bottom:1px solid #00000009;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:14px;display:flex}.config-card-icon-v2{border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;display:flex}.config-card-title-v2{color:var(--text-primary);letter-spacing:-.2px;font-size:14px;font-weight:600}.config-card-desc-v2{color:var(--text-muted);margin-top:1px;font-size:11.5px}.config-rows-v2{flex-direction:column;gap:12px;display:flex}.config-row-v2{justify-content:space-between;align-items:center;gap:12px;display:flex}.config-row-label{color:var(--text-secondary);font-size:13px}.config-row-input{text-align:center;background:#fff;border:1.5px solid #0000000f;border-radius:6px;outline:none;width:80px;height:32px;padding:0 10px;font-family:ui-monospace,monospace;font-size:13px;transition:all .18s}.config-row-input:hover{border-color:#0000001f}.config-row-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #5645d41a}@media (width<=1200px){.config-grid-v2{grid-template-columns:1fr}}@media (width<=760px){.admin-page [class$=-banner]{flex-direction:column!important;align-items:flex-start!important;gap:12px!important}.admin-page [class$=-banner]>[class$=-banner-actions],.admin-page [class$=-banner]>[class$=-banner-stats]{flex-wrap:wrap!important;justify-content:flex-start!important;width:100%!important}.admin-page [class$=-banner]>[class$=-banner-main]{flex-direction:column!important;align-items:flex-start!important;gap:8px!important;width:100%!important}.admin-page [class$=-banner-text]{width:100%!important;min-width:0!important}}@media (width<=480px){.admin-page [class$=-banner-icon]{width:44px!important;height:44px!important;font-size:22px!important}.admin-page [class$=-banner-title]{font-size:18px!important}.admin-page [class$=-banner-sub]{font-size:12px!important}}[data-theme=dark] .admin-page .ctrl-search,[data-theme=dark] .admin-page .admin-toolbar,[data-theme=dark] .admin-page .admin-toolbar .arco-input-wrapper,[data-theme=dark] .admin-page .admin-toolbar .arco-input-search .arco-input-wrapper,[data-theme=dark] .admin-page .arco-select-view-single,[data-theme=dark] .admin-page .arco-select-view,[data-theme=dark] .admin-page .arco-input-search,[data-theme=dark] .admin-page .pagination-wrapper,[data-theme=dark] .admin-page .login-logs-toolbar,[data-theme=dark] .admin-page .ait-toolbar,[data-theme=dark] .admin-page .kanban-toolbar,[data-theme=dark] .admin-page .table-card,[data-theme=dark] .admin-page .login-logs-card,[data-theme=dark] .admin-page .ait-table-card,[data-theme=dark] .admin-page .kanban-card,[data-theme=dark] .admin-page .arco-table,[data-theme=dark] .admin-page .arco-table-container,[data-theme=dark] .admin-page .arco-table-content,[data-theme=dark] .admin-page .arco-table-td,[data-theme=dark] .admin-page .arco-table-th,[data-theme=dark] .admin-page .arco-table-tr,[data-theme=dark] .admin-page .arco-table-tbody,[data-theme=dark] .admin-page .arco-table-header,[data-theme=dark] .admin-page .arco-pagination,[data-theme=dark] .admin-page .arco-pagination-item{color:var(--color-text-1,#f5f5f7)!important;background-color:#1c1c1e!important;background-image:none!important;border-color:#38383a!important}[data-theme=dark] .admin-page .admin-toolbar .arco-input-search .arco-input-wrapper:focus-within,[data-theme=dark] .admin-page .admin-toolbar .arco-input-search .arco-input-wrapper.arco-input-focus,[data-theme=dark] .admin-page .ctrl-search:focus-within{border-color:var(--color-primary,#0a84ff)!important;color:var(--color-text-1,#f5f5f7)!important;background-color:#2c2c2e!important}[data-theme=dark] .admin-page .arco-input,[data-theme=dark] .admin-page .arco-input::placeholder,[data-theme=dark] .admin-page .arco-textarea,[data-theme=dark] .admin-page .arco-select-view-value,[data-theme=dark] .admin-page .arco-select-view-input,[data-theme=dark] .admin-page .arco-select-view-placeholder,[data-theme=dark] .admin-page .pagination-wrapper,[data-theme=dark] .admin-page .arco-pagination-item{color:var(--color-text-1,#f5f5f7)!important;background-color:#0000!important}[data-theme=dark] .admin-page .arco-pagination-item-active{background-color:var(--color-primary,#0a84ff)!important;color:#fff!important;border-color:var(--color-primary,#0a84ff)!important}[data-theme=dark] .menu-drawer-footer,[data-theme=dark] .arco-modal-footer,[data-theme=dark] .arco-drawer-footer{color:var(--color-text-1,#f5f5f7)!important;background-color:#1c1c1e!important;border-top-color:#38383a!important}[data-theme=dark] .arco-switch-handle{background-color:#e5e5ea!important;background-image:none!important;box-shadow:0 1px 2px #0000004d!important}.admin-page,.admin-page-host,.admin-layout{--admin-primary:#4f46e5;--admin-primary-hover:#6366f1;--admin-primary-active:#4338ca;--admin-primary-soft:#4f46e514;--admin-primary-soft-hover:#4f46e524;--admin-accent:#818cf8;--admin-danger:#dc2626;--admin-warning:#d97706;--admin-success:#059669;--admin-info:#4f46e5;--admin-radius-sm:4px;--admin-radius:6px;--admin-radius-lg:8px;--admin-radius-xl:10px;--admin-row-h:40px;--admin-header-h:56px;--admin-sider-w:220px;--admin-sider-w-collapsed:56px;--admin-kpi-pad:16px;--admin-card-pad:20px;--admin-shadow-xs:0 1px 2px #0f0f120a;--admin-shadow-sm:0 1px 3px #0f0f120f, 0 1px 2px #0f0f120a;--admin-shadow-md:0 4px 12px #0f0f1214, 0 2px 4px #0f0f120a;--admin-font-sans:"Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, sans-serif;--admin-font-mono:"JetBrains Mono", "SF Mono", "Monaco", "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02", "cv03", "cv04", "cv11";font-family:var(--admin-font-sans)!important}.admin-page,.admin-page-host code,.admin-page,.admin-page-host kbd,.admin-page,.admin-page-host .mono,.admin-page,.admin-page-host .numeric,.admin-page,.admin-page-host [data-mono],.admin-page,.admin-page-host .arco-table-td .user-id,.admin-page,.admin-page-host .arco-table-td .token-cell{font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-family:var(--admin-font-mono)!important}.admin-page,.admin-page-host .arco-btn{font-weight:500;transition:background .12s,border-color .12s,box-shadow .12s,color .12s;border-radius:var(--admin-radius)!important}.admin-page,.admin-page-host .arco-btn-size-mini{height:24px;padding:0 8px;font-size:12px}.admin-page,.admin-page-host .arco-btn-size-small{height:28px;padding:0 12px;font-size:13px}.admin-page,.admin-page-host .arco-btn-size-default{height:32px;padding:0 14px;font-size:13px}.admin-page,.admin-page-host .arco-btn:not(.arco-btn-primary):not(.arco-btn-danger):not(.arco-btn-secondary){color:#1f2937;box-shadow:var(--admin-shadow-xs);background:#fff;border-color:#e5e7eb}.admin-page,.admin-page-host .arco-btn:not(.arco-btn-primary):not(.arco-btn-danger):not(.arco-btn-secondary):hover{color:#111827;background:#f9fafb;border-color:#d1d5db}.admin-page,.admin-page-host .arco-btn-primary{box-shadow:var(--admin-shadow-xs);background:var(--admin-primary)!important;border-color:var(--admin-primary)!important}.admin-page,.admin-page-host .arco-btn-primary:hover{box-shadow:var(--admin-shadow-sm);background:var(--admin-primary-hover)!important;border-color:var(--admin-primary-hover)!important}.admin-page,.admin-page-host .arco-btn-primary:active{background:var(--admin-primary-active)!important;border-color:var(--admin-primary-active)!important}.admin-page,.admin-page-host .arco-table-th{text-transform:uppercase;letter-spacing:.04em;color:#6b7280!important;background:#f9fafb!important;border-bottom:1px solid #e5e7eb!important;height:36px!important;font-size:12px!important;font-weight:600!important}.admin-page,.admin-page-host .arco-table-td{vertical-align:middle;height:var(--admin-row-h)!important;color:#1f2937!important;border-bottom:1px solid #f3f4f6!important;padding:0 12px!important;font-size:13px!important}.admin-page,.admin-page-host .arco-table-tr{transition:background .1s}.admin-page,.admin-page-host .arco-table-tr:hover .arco-table-td{background:#f9fafb!important}.admin-page,.admin-page-host .arco-table{--border-radius:var(--admin-radius)!important}.admin-page,.admin-page-host .arco-table-container{box-shadow:var(--admin-shadow-xs);overflow:hidden;border-radius:var(--admin-radius)!important;border:1px solid #e5e7eb!important}.admin-page,.admin-page-host .arco-table-border .arco-table-container{border:1px solid #e5e7eb}.admin-page,.admin-page-host .table-card,.admin-page,.admin-page-host .kpi-card,.admin-page,.admin-page-host .stat-card,.admin-page,.admin-page-host .admin-card{box-shadow:var(--admin-shadow-xs);padding:var(--admin-card-pad);transition:box-shadow .15s,border-color .15s;border-radius:var(--admin-radius-lg)!important;background:#fff!important;border:1px solid #e5e7eb!important}.admin-page,.admin-page-host .table-card:hover,.admin-page,.admin-page-host .kpi-card:hover{box-shadow:var(--admin-shadow-sm);border-color:#d1d5db}.admin-page,.admin-page-host .kpi-card{padding:var(--admin-kpi-pad) var(--admin-card-pad)}.admin-page,.admin-page-host .kpi-card .kpi-label{color:#6b7280;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:500}.admin-page,.admin-page-host .kpi-card .kpi-value{color:#111827;font-size:24px;font-weight:600;font-family:var(--admin-font-mono);font-variant-numeric:tabular-nums;margin-top:6px;line-height:1.2}.admin-page,.admin-page-host .kpi-card .kpi-delta{font-size:12px;font-weight:500;font-family:var(--admin-font-mono);align-items:center;gap:2px;margin-top:8px;display:inline-flex}.admin-page,.admin-page-host .kpi-card .kpi-delta.up{color:var(--admin-success)}.admin-page,.admin-page-host .kpi-card .kpi-delta.down{color:var(--admin-danger)}.admin-page,.admin-page-host .kpi-card .kpi-delta.neutral{color:#6b7280}.admin-page,.admin-page-host .arco-tag{height:20px;padding:0 6px;font-size:12px;font-weight:500;line-height:18px;border-radius:4px!important}.admin-page,.admin-page-host .arco-tag-size-small{height:18px;padding:0 5px;font-size:11px;line-height:16px}.admin-page,.admin-page-host .admin-toolbar,.admin-page,.admin-page-host .ctrl-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex;border-radius:var(--admin-radius)!important;background:#fff!important;border:1px solid #e5e7eb!important;padding:12px 16px!important}.admin-layout .admin-sider{background:#fafafa!important;border-right:1px solid #e5e7eb!important}.admin-layout .admin-sider.admin-sider-dark{background:#0f0f12!important;border-right-color:#1f1f23!important}.admin-layout .admin-logo{letter-spacing:-.01em;background:#fff;align-items:center;padding:0 18px;display:flex;height:var(--admin-header-h)!important;border-bottom:1px solid #e5e7eb!important;font-size:14px!important;font-weight:600!important}.admin-layout .admin-sider.admin-sider-dark .admin-logo{color:#fafafa;background:#0f0f12;border-bottom-color:#1f1f23}.admin-layout .menu-group{padding:12px 0 4px}.admin-layout .menu-group-label{text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;-webkit-user-select:none;user-select:none;padding:4px 18px 6px;font-size:10px;font-weight:600}.admin-layout.admin-sider-dark .menu-group-label{color:#6b7280}.admin-layout .menu-group-items{margin:0;padding:0;list-style:none}.admin-layout .menu-group-items li a{color:#4b5563;align-items:center;gap:10px;padding:6px 18px;font-size:13px;font-weight:500;text-decoration:none;transition:background .1s,color .1s;display:flex;position:relative}.admin-layout .menu-group-items li a:hover{color:#111827;background:#f3f4f6}.admin-layout .menu-group-items li a.is-active{background:var(--admin-primary-soft);color:var(--admin-primary)}.admin-layout .menu-group-items li a.is-active:before{content:"";background:var(--admin-primary);border-radius:0 2px 2px 0;width:2px;position:absolute;top:4px;bottom:4px;left:0}.admin-layout .menu-group-items li a i{opacity:.85;font-size:16px}.admin-layout.admin-sider-dark .menu-group-items li a{color:#d1d5db}.admin-layout.admin-sider-dark .menu-group-items li a:hover{color:#fafafa;background:#1f1f23}.admin-layout.admin-sider-dark .menu-group-items li a.is-active{background:var(--admin-primary-soft);color:#c7d2fe}.admin-layout .admin-header{justify-content:space-between;align-items:center;display:flex;height:var(--admin-header-h)!important;background:#fff!important;border-bottom:1px solid #e5e7eb!important;padding:0 20px!important}.admin-layout.admin-header-dark .admin-header{color:#fafafa;background:#0f0f12!important;border-bottom-color:#1f1f23!important}.admin-layout .admin-header .arco-breadcrumb-item{font-size:13px;font-weight:500}.admin-layout .admin-avatar{width:28px;height:28px;font-size:12px;font-weight:600;line-height:28px;background:var(--admin-primary)!important;color:#fff!important;font-family:var(--admin-font-sans)!important}.admin-layout .admin-content{min-height:calc(100vh - var(--admin-header-h));background:#f9fafb!important;padding:20px 24px!important}.admin-layout.admin-content-dark .admin-content{background:#0a0a0c!important}.admin-page,.admin-page-host .arco-input-wrapper,.admin-page,.admin-page-host .arco-textarea-wrapper{background:#fff;border-radius:var(--admin-radius)!important}.admin-page,.admin-page-host .arco-input,.admin-page,.admin-page-host .arco-textarea{font-size:13px}.admin-page,.admin-page-host .arco-input-wrapper:hover,.admin-page,.admin-page-host .arco-textarea-wrapper:hover{border-color:#c7d2fe!important}.admin-page,.admin-page-host .arco-input-wrapper.arco-input-focus,.admin-page,.admin-page-host .arco-input-wrapper:focus-within,.admin-page,.admin-page-host .arco-textarea-wrapper.arco-textarea-focus{border-color:var(--admin-primary)!important;box-shadow:0 0 0 3px var(--admin-primary-soft)!important}.admin-page,.admin-page-host .arco-select-view{min-height:32px;border-radius:var(--admin-radius)!important;background:#fff!important}.admin-page,.admin-page-host .arco-select-view:hover{border-color:#c7d2fe!important}.admin-page,.admin-page-host .arco-modal{overflow:hidden;border-radius:var(--admin-radius-lg)!important}.admin-page,.admin-page-host .arco-modal-header{border-bottom:1px solid #e5e7eb;padding:14px 20px}.admin-page,.admin-page-host .arco-modal-title{letter-spacing:-.01em;font-size:15px;font-weight:600}.admin-page,.admin-page-host .arco-modal-body{padding:20px}.admin-page,.admin-page-host .arco-modal-footer{border-top:1px solid #e5e7eb;padding:12px 20px}.admin-page,.admin-page-host .arco-drawer{border-radius:0!important}.admin-page,.admin-page-host .arco-drawer-header{border-bottom:1px solid #e5e7eb;padding:14px 20px}.admin-page,.admin-page-host .arco-drawer-title{font-size:15px;font-weight:600}.admin-page,.admin-page-host .status-success{color:var(--admin-success)!important}.admin-page,.admin-page-host .status-warning{color:var(--admin-warning)!important}.admin-page,.admin-page-host .status-danger{color:var(--admin-danger)!important}.admin-page,.admin-page-host .status-info{color:var(--admin-info)!important}.admin-page,.admin-page-host .status-dot{vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.admin-page,.admin-page-host .status-dot.success{background:var(--admin-success);box-shadow:0 0 0 3px #0596691f}.admin-page,.admin-page-host .status-dot.warning{background:var(--admin-warning);box-shadow:0 0 0 3px #d977061f}.admin-page,.admin-page-host .status-dot.danger{background:var(--admin-danger);box-shadow:0 0 0 3px #dc26261f}.admin-page,.admin-page-host .status-dot.info{background:var(--admin-info);box-shadow:0 0 0 3px #4f46e51f}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host,[data-theme=dark] .admin-layout{color:#e5e7eb}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host a,[data-theme=dark] .admin-layout a{color:#c7d2fe}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .toolbar-info,[data-theme=dark] .admin-page-host .toolbar-info,[data-theme=dark] .admin-page .dash-last-label,[data-theme=dark] .admin-page-host .dash-last-label{color:#9ca3af!important}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-radio,[data-theme=dark] .admin-page-host .arco-radio{color:#d1d5db!important}[data-theme=dark] .admin-layout .admin-sider,[data-theme=dark] .admin-sider{color:#fafafa;background:#0f0f12!important;border-right-color:#1f1f23!important}[data-theme=dark] .admin-layout .admin-sider .admin-logo,[data-theme=dark] .admin-layout .admin-logo{color:#fafafa!important;background:#0f0f12!important;border-bottom-color:#1f1f23!important}[data-theme=dark] .admin-layout .admin-sider .admin-sider-scroll::-webkit-scrollbar-thumb{background:#38383a!important}[data-theme=dark] .admin-sider-scroll::-webkit-scrollbar-thumb{background:#38383a!important}[data-theme=dark] .admin-layout .admin-header,[data-theme=dark] .admin-header{color:#fafafa!important;background:#0f0f12!important;border-bottom-color:#1f1f23!important}[data-theme=dark] .admin-layout .admin-content,[data-theme=dark] .admin-content{background:#0a0a0c!important}[data-theme=dark] .admin-layout .admin-breadcrumb .arco-breadcrumb-item,[data-theme=dark] .admin-breadcrumb .arco-breadcrumb-item{color:#9ca3af!important}[data-theme=dark] .admin-layout .admin-breadcrumb .arco-breadcrumb-item:last-child,[data-theme=dark] .admin-breadcrumb .arco-breadcrumb-item:last-child{color:#fafafa!important}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host,[data-theme=dark] .admin-layout{--admin-primary:#818cf8;--admin-primary-hover:#a5b4fc;--admin-primary-active:#6366f1;--admin-primary-soft:#818cf81f;--admin-primary-soft-hover:#818cf833}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .table-card,[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .kpi-card,[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .stat-card,[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .admin-card{color:#f5f5f7;background:#161618!important;border-color:#2a2a2e!important}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .kpi-card .kpi-value{color:#fafafa}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .kpi-card .kpi-label{color:#9ca3af}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-table-th{color:#9ca3af!important;background:#1a1a1c!important;border-bottom-color:#2a2a2e!important}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-table-td{color:#e5e7eb!important;background:0 0!important;border-bottom-color:#2a2a2e!important}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-table-tr:hover .arco-table-td{background:#1f1f23!important}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-table-container,[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .admin-toolbar,[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .ctrl-bar{background:#161618!important;border-color:#2a2a2e!important}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-btn:not(.arco-btn-primary):not(.arco-btn-danger):not(.arco-btn-secondary){color:#e5e7eb;background:#1f1f23;border-color:#2a2a2e}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-btn:not(.arco-btn-primary):not(.arco-btn-danger):not(.arco-btn-secondary):hover{color:#fafafa;background:#2a2a2e;border-color:#38383a}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-input-wrapper,[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-textarea-wrapper,[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-select-view{color:#fafafa;background:#1a1a1c!important;border-color:#2a2a2e!important}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-input,[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-textarea{color:#fafafa;background:0 0!important}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .modal-card,[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-modal,[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-drawer{color:#e5e7eb;background:#161618!important}[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-modal-header,[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-modal-footer,[data-theme=dark] .admin-page,[data-theme=dark] .admin-page-host .arco-drawer-header{border-color:#2a2a2e!important}.admin-page{width:8px;height:8px}.admin-page-host ::-webkit-scrollbar{width:8px;height:8px}.admin-page-host ::-webkit-scrollbar-track{background:0 0}.admin-page{background:#d1d5db;border-radius:4px}.admin-page-host ::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.admin-page{background:#9ca3af}.admin-page-host ::-webkit-scrollbar-thumb:hover{background:#9ca3af}[data-theme=dark] .admin-page-host ::-webkit-scrollbar-thumb{background:#38383a}[data-theme=dark] .admin-page{background:#4b5563}[data-theme=dark] .admin-page-host ::-webkit-scrollbar-thumb:hover{background:#4b5563}.admin-page,.admin-page-host :focus-visible{outline-offset:1px;outline:2px solid var(--admin-primary)!important}.admin-page,.admin-page-host.dashboard-page .kpi-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:20px;display:grid}.admin-page,.admin-page-host.roles-page .roles-grid,.admin-page,.admin-page-host.menu-permissions-page .menu-perm-grid{grid-template-columns:280px 1fr;align-items:start;gap:16px;display:grid}.admin-page,.admin-page-host.prompts-tester-page{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}@media (width<=1024px){.admin-page,.admin-page-host.prompts-tester-page{grid-template-columns:1fr}}.admin-page,.admin-page-host .empty-state{text-align:center;color:#9ca3af;padding:48px 16px;font-size:13px}.admin-page,.admin-page-host .empty-state .empty-icon{opacity:.3;margin-bottom:8px;font-size:36px}.admin-page.prompts-tester-admin,.admin-page-host.prompts-tester-admin,.admin-page-root.prompts-tester-admin{--accent-grad-1:#4f46e52e;--accent-grad-2:#818cf81a;--accent:#4f46e5;--accent-soft:#4f46e51f}.admin-page.prompts-tester-admin .lab-hero,.admin-page-host.prompts-tester-admin .lab-hero,.admin-page-root.prompts-tester-admin .lab-hero{background:linear-gradient(135deg,#4f46e5 0%,#818cf8 100%)!important;box-shadow:0 8px 24px #4f46e52e!important}.admin-page.prompts-tester-admin .lab-theme,.admin-page-host.prompts-tester-admin .lab-theme,.admin-page-root.prompts-tester-admin .lab-theme{--accent:#4f46e5;--accent-soft:#4f46e51f;--accent-grad-1:#4f46e5;--accent-grad-2:#818cf8}.admin-page.system-stats-admin .ss-hero,.admin-page.system-stats-admin .ss-pulse,.admin-page.system-stats-admin .ss-banner,.admin-page-host.system-stats-admin .ss-hero,.admin-page-host.system-stats-admin .ss-pulse,.admin-page-host.system-stats-admin .ss-banner,.admin-page-root.system-stats-admin .ss-hero{color:#fff!important;background:linear-gradient(135deg,#4f46e5 0%,#818cf8 100%)!important;border-color:#0000!important}.admin-page.system-stats-admin .ss-hero *,.admin-page.system-stats-admin .ss-pulse *,.admin-page.system-stats-admin .ss-banner *,.admin-page-host.system-stats-admin .ss-hero *,.admin-page-host.system-stats-admin .ss-pulse *,.admin-page-host.system-stats-admin .ss-banner *,.admin-page-root.system-stats-admin .ss-hero *{color:#fff!important}.admin-page.system-stats-admin .ss-hero .arco-tag,.admin-page.system-stats-admin .ss-pulse .arco-tag,.admin-page.system-stats-admin .ss-banner .arco-tag,.admin-page-host.system-stats-admin .ss-hero .arco-tag,.admin-page-host.system-stats-admin .ss-pulse .arco-tag,.admin-page-host.system-stats-admin .ss-banner .arco-tag{color:#fff!important;background:#ffffff26!important;border:1px solid #ffffff40!important}.admin-page.system-stats-admin .ss-hero .ss-pill,.admin-page.system-stats-admin .ss-pulse .ss-pill,.admin-page.system-stats-admin .ss-banner .ss-pill,.admin-page-host.system-stats-admin .ss-hero .ss-pill,.admin-page-host.system-stats-admin .ss-pulse .ss-pill,.admin-page-host.system-stats-admin .ss-banner .ss-pill,.admin-page-root.system-stats-admin .ss-hero .ss-pill{color:#18181b!important;background:#fff!important}.admin-page.system-stats-admin .ss-hero .ss-pill *,.admin-page.system-stats-admin .ss-pulse .ss-pill *,.admin-page.system-stats-admin .ss-banner .ss-pill *,.admin-page-host.system-stats-admin .ss-hero .ss-pill *,.admin-page-host.system-stats-admin .ss-pulse .ss-pill *,.admin-page-host.system-stats-admin .ss-banner .ss-pill *,.admin-page-root.system-stats-admin .ss-hero .ss-pill *{color:inherit!important}.admin-page.system-stats-admin .ss-hero .ss-pill .ss-pill-label,.admin-page.system-stats-admin .ss-hero .ss-pill .ss-pill-meta,.admin-page.system-stats-admin .ss-hero .ss-pill .ss-pill-unit,.admin-page-host.system-stats-admin .ss-hero .ss-pill .ss-pill-label,.admin-page-host.system-stats-admin .ss-hero .ss-pill .ss-pill-meta,.admin-page-host.system-stats-admin .ss-hero .ss-pill .ss-pill-unit,.admin-page-root.system-stats-admin .ss-hero .ss-pill .ss-pill-label,.admin-page-root.system-stats-admin .ss-hero .ss-pill .ss-pill-meta,.admin-page-root.system-stats-admin .ss-hero .ss-pill .ss-pill-unit{color:#6b7280!important}.admin-page.system-stats-admin .ss-hero .ss-pill .ss-pill-value,.admin-page-host.system-stats-admin .ss-hero .ss-pill .ss-pill-value,.admin-page-root.system-stats-admin .ss-hero .ss-pill .ss-pill-value{color:#111827!important}.admin-page.system-stats-admin .ss-hero .ss-source-chip,.admin-page.system-stats-admin .ss-pulse .ss-source-chip,.admin-page.system-stats-admin .ss-banner .ss-source-chip,.admin-page-host.system-stats-admin .ss-hero .ss-source-chip,.admin-page-host.system-stats-admin .ss-pulse .ss-source-chip,.admin-page-host.system-stats-admin .ss-banner .ss-source-chip,.admin-page-root.system-stats-admin .ss-hero .ss-source-chip{color:#fff!important;background:#ffffff26!important;border-color:#ffffff4d!important}.admin-page.system-stats-admin .ss-hero .ss-source-chip *,.admin-page.system-stats-admin .ss-pulse .ss-source-chip *,.admin-page.system-stats-admin .ss-banner .ss-source-chip *,.admin-page-host.system-stats-admin .ss-hero .ss-source-chip *,.admin-page-host.system-stats-admin .ss-pulse .ss-source-chip *,.admin-page-host.system-stats-admin .ss-banner .ss-source-chip *,.admin-page-root.system-stats-admin .ss-hero .ss-source-chip *{color:inherit!important}[data-theme=dark] .admin-page.prompts-tester-admin .lab-hero,[data-theme=dark] .admin-page-host.prompts-tester-admin .lab-hero,[data-theme=dark] .admin-page-root.prompts-tester-admin .lab-hero,[data-theme=dark] .admin-page.system-stats-admin .ss-hero,[data-theme=dark] .admin-page.system-stats-admin .ss-pulse,[data-theme=dark] .admin-page.system-stats-admin .ss-banner,[data-theme=dark] .admin-page-host.system-stats-admin .ss-hero,[data-theme=dark] .admin-page-host.system-stats-admin .ss-pulse,[data-theme=dark] .admin-page-host.system-stats-admin .ss-banner,[data-theme=dark] .admin-page-root.system-stats-admin .ss-hero{background:linear-gradient(135deg,#6366f1 0%,#a5b4fc 100%)!important}.admin-page .dash-tile,.admin-page-host .dash-tile{padding:var(--admin-kpi-pad) var(--admin-card-pad)!important}.admin-page .dash-tile-value,.admin-page-host .dash-tile-value{font-family:var(--admin-font-mono)!important;font-variant-numeric:tabular-nums!important;color:#111827!important;margin-top:6px!important;font-size:24px!important;font-weight:600!important;line-height:1.2!important}.admin-page .dash-tile-label,.admin-page-host .dash-tile-label{color:#6b7280!important;text-transform:uppercase!important;letter-spacing:.04em!important;font-size:12px!important;font-weight:500!important}[data-theme=dark] .admin-page .dash-tile-value,[data-theme=dark] .admin-page-host .dash-tile-value{color:#fafafa!important}[data-theme=dark] .admin-page .dash-tile-label,[data-theme=dark] .admin-page-host .dash-tile-label{color:#9ca3af!important}.admin-page.users-page .users-stat,.admin-page-host.users-page .users-stat{font-family:var(--admin-font-mono)!important;font-variant-numeric:tabular-nums!important;font-size:24px!important;font-weight:600!important;line-height:1.2!important}.admin-page.users-page .users-stat-label,.admin-page-host.users-page .users-stat-label{color:#6b7280!important;text-transform:uppercase!important;letter-spacing:.04em!important;font-size:12px!important;font-weight:500!important}.admin-page [class*=stat-value],.admin-page [class*=metric-value],.admin-page [class*=kpi-value],.admin-page-host [class*=stat-value],.admin-page-host [class*=metric-value],.admin-page-host [class*=kpi-value]{font-family:var(--admin-font-mono)!important;font-variant-numeric:tabular-nums!important;font-size:24px!important;font-weight:600!important;line-height:1.2!important}.admin-page [class*=stat-label],.admin-page [class*=metric-label],.admin-page [class*=kpi-label],.admin-page-host [class*=stat-label],.admin-page-host [class*=metric-label],.admin-page-host [class*=kpi-label]{color:#6b7280!important;text-transform:uppercase!important;letter-spacing:.04em!important;font-size:12px!important;font-weight:500!important}[data-theme=dark] .admin-page [class*=stat-value],[data-theme=dark] .admin-page [class*=metric-value],[data-theme=dark] .admin-page [class*=kpi-value],[data-theme=dark] .admin-page-host [class*=stat-value],[data-theme=dark] .admin-page-host [class*=metric-value],[data-theme=dark] .admin-page-host [class*=kpi-value]{color:#fafafa!important}[data-theme=dark] .admin-page [class*=stat-label],[data-theme=dark] .admin-page [class*=metric-label],[data-theme=dark] .admin-page [class*=kpi-label],[data-theme=dark] .admin-page-host [class*=stat-label],[data-theme=dark] .admin-page-host [class*=metric-label],[data-theme=dark] .admin-page-host [class*=kpi-label]{color:#9ca3af!important}@media (width<=767.98px){body .admin-layout .arco-layout-sider,body .admin-layout .admin-sider,.admin-layout .arco-layout-sider.arco-layout-sider,.admin-layout .admin-sider{display:none!important}body .admin-layout.mobile-sider-open .arco-layout-sider,body .admin-layout.mobile-sider-open .admin-sider{z-index:1001!important;width:220px!important;max-width:85vw!important;display:flex!important;position:fixed!important;top:0!important;bottom:0!important;left:0!important;box-shadow:4px 0 16px #0003!important}body .admin-layout.mobile-sider-open:after{content:"";z-index:1000;pointer-events:auto;background:#00000073;position:fixed;inset:0}body .admin-layout .arco-layout,.admin-layout>.arco-layout{margin-left:0!important}.admin-layout .admin-header{height:48px!important;padding:0 12px!important}.admin-layout .admin-breadcrumb{font-size:13px!important}.admin-layout .header-hamburger{display:inline-flex!important}.admin-layout .header-collapse{display:none!important}}@media (width>=768px){.admin-layout .header-hamburger{display:none!important}.admin-layout .header-collapse{display:inline-flex!important}}[data-theme=dark] .admin-page .ss-health,[data-theme=dark] .admin-page-host .ss-health,[data-theme=dark] .admin-page [class*=health-card],[data-theme=dark] .admin-page-host [class*=health-card]{color:#fafafa!important;background:linear-gradient(135deg,#1f1f23 0%,#18181b 100%)!important;border:1px solid #2d2d32!important;box-shadow:0 1px 2px #0000004d!important}[data-theme=dark] .admin-page .ss-health-label,[data-theme=dark] .admin-page-host .ss-health-label{color:#9ca3af!important}[data-theme=dark] .admin-page .ss-health-value,[data-theme=dark] .admin-page-host .ss-health-value{color:#fafafa!important}[data-theme=dark] .admin-page [class*=kpi-card],[data-theme=dark] .admin-page-host [class*=kpi-card],[data-theme=dark] .admin-page [class*=kpi-grid]>*,[data-theme=dark] .admin-page-host [class*=kpi-grid]>*{color:#fafafa!important;background:linear-gradient(135deg,#1f1f23 0%,#18181b 100%)!important;border:1px solid #2d2d32!important;box-shadow:0 1px 2px #0000004d!important}[data-theme=dark] .admin-page [class*=kpi-label],[data-theme=dark] .admin-page-host [class*=kpi-label]{color:#9ca3af!important}[data-theme=dark] .admin-page [class*=kpi-value],[data-theme=dark] .admin-page-host [class*=kpi-value]{color:#fafafa!important}[data-theme=dark] .admin-page [class*=trend-card],[data-theme=dark] .admin-page-host [class*=trend-card],[data-theme=dark] .admin-page [class*=dash-trend],[data-theme=dark] .admin-page-host [class*=dash-trend]{color:#fafafa!important;background:linear-gradient(135deg,#1f1f23 0%,#18181b 100%)!important;border:1px solid #2d2d32!important}[data-theme=dark] .admin-page [class*=trend-card-title],[data-theme=dark] .admin-page-host [class*=trend-card-title]{color:#fafafa!important}[data-theme=dark] .admin-page [class*=distribution-bar],[data-theme=dark] .admin-page-host [class*=distribution-bar]{filter:brightness(.85)saturate(.8)!important}[data-theme=dark] .admin-page .arco-table,[data-theme=dark] .admin-page-host .arco-table{color:#e5e7eb!important;background:0 0!important}[data-theme=dark] .admin-page .arco-table-th,[data-theme=dark] .admin-page-host .arco-table-th{color:#9ca3af!important;background:#ffffff0a!important;border-bottom-color:#2d2d32!important}[data-theme=dark] .admin-page .arco-table-td,[data-theme=dark] .admin-page-host .arco-table-td{color:#e5e7eb!important;border-bottom-color:#ffffff0f!important}[data-theme=dark] .admin-page .arco-table-tr:hover .arco-table-td,[data-theme=dark] .admin-page-host .arco-table-tr:hover .arco-table-td{background:#4f46e50f!important}[data-theme=dark] .admin-page [class*=admin-card],[data-theme=dark] .admin-page-host [class*=admin-card],[data-theme=dark] .admin-page [class*=stat-card],[data-theme=dark] .admin-page-host [class*=stat-card]{background:linear-gradient(135deg,#1f1f23 0%,#18181b 100%)!important;border:1px solid #2d2d32!important}[data-theme=dark]{--text-1:#ffffffe6;--bg-1:#17171a}:root{--fs-display:24px;--fs-h1:20px;--fs-h2:18px;--fs-h3:16px;--fs-body-l:14px;--fs-body:13px;--fs-caption:12px;--fs-mini:11px;--lh-tight:1.25;--lh-snug:1.4;--lh-base:1.5;--lh-relaxed:1.65;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:13px}body{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:var(--lh-base);color:var(--text-1,#1d2129);background:var(--bg-1,#fff);font-size:var(--fs-body-l)!important}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:var(--lh-tight);color:var(--text-1,#1d2129);letter-spacing:-.005em;margin:0}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}h4{font-size:var(--fs-body-l)}h5{font-size:var(--fs-body)}h6{font-size:var(--fs-caption)}.arco-table{font-size:var(--fs-body-l)!important}.arco-table th{letter-spacing:.02em;font-size:var(--fs-caption)!important;background:var(--bg-2,var(--color-neutral-2,#f7f8fa))!important;white-space:nowrap!important;padding:8px 12px!important;font-weight:600!important}.arco-table td{white-space:nowrap;font-size:var(--fs-body-l)!important;line-height:var(--lh-snug)!important;padding:10px 12px!important}.arco-table-pagination{font-size:var(--fs-caption)!important;padding:12px!important}.hero-title,.marketing-hero h1,.landing-title{letter-spacing:-.01em;font-size:clamp(28px,3.2vw,40px);line-height:1.2}.hero-sub,.hero-subtitle,.marketing-hero h2,.marketing-hero p.lead{font-size:clamp(13px,1vw,14px);line-height:1.6}.arco-btn{font-size:var(--fs-body-l)!important;border-radius:var(--radius-md)!important;height:32px!important;padding:0 14px!important;line-height:30px!important}.arco-btn-size-small{height:26px!important;line-height:24px!important;font-size:var(--fs-body)!important;padding:0 10px!important}.arco-btn-size-mini{height:22px!important;line-height:20px!important;font-size:var(--fs-caption)!important;padding:0 8px!important}.arco-btn-size-large{height:38px!important;line-height:36px!important;font-size:var(--fs-body-l)!important;padding:0 18px!important}.arco-input{font-size:var(--fs-body-l)!important;border-radius:var(--radius-md)!important;height:32px!important}.arco-input-size-large{height:36px!important}.arco-input-size-small{height:26px!important}.arco-input-size-mini{height:22px!important}.arco-textarea{font-size:var(--fs-body-l)!important;border-radius:var(--radius-md)!important}.arco-select-view{font-size:var(--fs-body-l)!important;border-radius:var(--radius-md)!important;min-height:32px!important}.arco-card{border-radius:var(--radius-lg)!important}.arco-card-header{height:auto!important;min-height:44px!important;font-size:var(--fs-h3)!important;border-bottom:1px solid var(--border-2,#f2f3f5)!important;padding:12px 16px!important;font-weight:600!important}.arco-card-body{font-size:var(--fs-body-l)!important;padding:16px!important}.arco-tag{font-size:var(--fs-caption)!important;border-radius:var(--radius-sm)!important;height:22px!important;padding:0 8px!important;line-height:20px!important}.arco-modal-header{padding:14px 20px!important}.arco-modal-title{font-size:var(--fs-h3)!important;font-weight:600!important}.arco-modal-body{font-size:var(--fs-body-l)!important;padding:16px 20px!important}.arco-modal-footer{padding:12px 20px!important}.arco-form-item{margin-bottom:16px!important}.arco-form-item-label{font-size:var(--fs-body-l)!important;line-height:var(--lh-snug)!important;padding-bottom:4px!important}.arco-form-item-message{font-size:var(--fs-caption)!important;padding-top:2px!important}.arco-typography{font-size:var(--fs-body-l)!important}.arco-typography h1{font-size:var(--fs-h1)!important}.arco-typography h2{font-size:var(--fs-h2)!important}.arco-typography h3{font-size:var(--fs-h3)!important}.arco-typography h4{font-size:var(--fs-body-l)!important}.arco-typography h5{font-size:var(--fs-body)!important}.arco-typography h6{font-size:var(--fs-caption)!important}.arco-descriptions-item-label{font-size:var(--fs-caption)!important;color:var(--text-3,#86909c)!important}.arco-descriptions-item-value,.arco-menu,.arco-menu-item,.arco-menu-title-content{font-size:var(--fs-body-l)!important}.arco-breadcrumb{font-size:var(--fs-caption)!important}.arco-tabs-header-title{font-size:var(--fs-body-l)!important;padding:6px 14px!important}.arco-pagination{font-size:var(--fs-caption)!important}.arco-pagination-item{min-width:28px!important;height:28px!important;line-height:26px!important;font-size:var(--fs-caption)!important}.arco-empty{padding:32px 16px!important}.arco-empty-description{font-size:var(--fs-body)!important;color:var(--text-3,#86909c)!important}.arco-skeleton-text-row{height:14px!important}.arco-checkbox,.arco-radio{font-size:var(--fs-body-l)!important}.arco-switch,.arco-progress-text{font-size:var(--fs-caption)!important}.arco-statistic-title{font-size:var(--fs-caption)!important;color:var(--text-3,#86909c)!important;margin-bottom:4px!important}.arco-statistic-content{font-size:var(--fs-h2)!important;color:var(--text-1,#1d2129)!important;font-weight:600!important}.arco-avatar{font-size:var(--fs-caption)!important}.arco-link{font-size:inherit!important}p{margin:0 0 var(--sp-3) 0;line-height:var(--lh-base)}ul,ol{padding-left:var(--sp-5);margin:0}li{line-height:var(--lh-snug);margin:4px 0}@media (width<=760px){:root{--fs-display:20px;--fs-h1:18px;--fs-h2:16px;--fs-h3:15px;--fs-body-l:14px;--fs-body:13px;--fs-caption:12px;--fs-mini:11px}.arco-btn{height:30px!important;line-height:28px!important}.arco-input{height:30px!important}.arco-card-header{font-size:var(--fs-h3)!important;padding:10px 12px!important}.arco-card-body{padding:12px!important}}@media (width<=1024px) and (width>=761px){:root{--fs-display:22px;--fs-h1:19px;--fs-h2:17px;--fs-h3:15px}}:root{--mobile-fs-hero:clamp(22px, 6vw, 32px);--mobile-fs-h1:clamp(18px, 4.5vw, 24px);--mobile-fs-h2:clamp(16px, 4vw, 20px);--mobile-fs-h3:clamp(14px, 3.5vw, 18px);--mobile-fs-body:clamp(13px, 3.5vw, 14px);--mobile-fs-sm:clamp(12px, 3vw, 13px);--mobile-fs-xs:clamp(11px, 2.5vw, 12px);--mobile-pad:clamp(8px, 2vw, 16px);--mobile-gap:clamp(8px, 2vw, 16px);--mobile-radius:clamp(6px, 1.5vw, 10px);--mobile-tap-target:44px}#app,.main-content,.main-outlet{min-width:0}.main-outlet{overflow-x:hidden}img,video,canvas,svg{max-width:100%;height:auto}.admin-toolbar,.toolbar,.page-hdr,.page-actions{flex-wrap:wrap;align-items:flex-start;gap:8px;min-width:0}.toolbar-sep{display:none}.admin-toolbar>*,.toolbar>*,.page-actions>*{max-width:100%}.admin-toolbar .arco-input-search,.admin-toolbar .arco-input-wrapper,.admin-toolbar .arco-select-view,.toolbar .arco-input-search,.toolbar .arco-input-wrapper,.toolbar .arco-select-view{min-width:0;width:100%!important}.admin-toolbar .arco-radio-group,.toolbar .arco-radio-group{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.table-card,.creator-panel,.operation-panel,.operation-card,.stat-card,.kanban-column,.dashboard-card{min-width:0}.arco-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.arco-table{min-width:600px}@media (width<=900px){.arco-table{min-width:0}}@media (width<=760px){.arco-modal{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important}.arco-drawer{width:min(100vw,420px)!important}}.arco-form-item-content,.arco-input-wrapper,.arco-input-search,.arco-select,.arco-select-view,.arco-input-number,.arco-textarea-wrapper{min-width:0;max-width:100%}.operation-page .arco-row{margin-left:0!important;margin-right:0!important}.operation-page .arco-col{flex:0 0 100%!important;max-width:100%!important;padding-left:0!important;padding-right:0!important}.grid,.admin-grid,.stat-grid,.dashboard-grid,.user-grid,.creator-grid{gap:var(--mobile-gap);grid-template-columns:1fr;display:grid}@media (width>=761px){.grid,.admin-grid,.stat-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.user-grid,.creator-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}.bottom-tab-strip,.tab-strip,.tab-bar,.tabs-scroll{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;gap:var(--mobile-gap);padding:var(--mobile-pad) 0;scrollbar-width:none;flex-wrap:nowrap;display:flex;overflow-x:auto}.bottom-tab-strip::-webkit-scrollbar{display:none}.tab-strip::-webkit-scrollbar{display:none}.tab-bar::-webkit-scrollbar{display:none}.tabs-scroll::-webkit-scrollbar{display:none}.bottom-tab-strip>*,.tab-strip>*,.tab-bar>*,.tabs-scroll>*{scroll-snap-align:start;flex:none}@media (width<=760px){button:not(.hamburger-btn):not(.topbar-icon-btn):not(.topbar-avatar):not(.topbar-ai-btn):not(.topbar-search-btn):not(.topbar-tab):not(.arco-input-number-step-button),.arco-btn,.arco-checkbox,.arco-radio,.nav-item,.menu-item,.list-item-action,.tab-item,.card-action{min-height:var(--mobile-tap-target);min-width:var(--mobile-tap-target)}.arco-btn-size-mini,.arco-btn-size-small{min-width:36px;min-height:36px}h1,.h1{font-size:var(--mobile-fs-h1);line-height:1.3}h2,.h2{font-size:var(--mobile-fs-h2);line-height:1.35}h3,.h3{font-size:var(--mobile-fs-h3);line-height:1.4}h4,.h4{font-size:var(--mobile-fs-body);line-height:1.5}body,p,span,div,li,td,th,input,textarea{font-size:var(--mobile-fs-body)}small,.small,.text-sm,.text-secondary{font-size:var(--mobile-fs-sm)}.text-xs,.micro{font-size:var(--mobile-fs-xs)}.hero-title,.marketing-hero h1,.landing-title{word-break:break-word;font-size:var(--mobile-fs-hero)!important;line-height:1.2!important}.hero-subtitle,.landing-subtitle,.marketing-hero h2,.marketing-hero p.lead{font-size:var(--mobile-fs-h3)!important;line-height:1.5!important}.decor-orb,.decor-blob,.bg-blob,.landing-bg-decor,.marketing-hero:before,.marketing-hero:after{filter:blur(40px)!important;opacity:.4!important}}.admin-page-root,.portal-page,.user-page,.page-shell,.page-container,.workspace-shell,.section{padding:var(--mobile-pad);min-width:0}@media (width>=761px){.admin-page-root,.portal-page,.user-page,.page-shell,.page-container,.workspace-shell,.section{padding:16px 24px}}.chip-list,.tag-list,.menu-pills,.workflow-pills,.kanban-pills{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.chip-list::-webkit-scrollbar{display:none}.tag-list::-webkit-scrollbar{display:none}.menu-pills::-webkit-scrollbar{display:none}.workflow-pills::-webkit-scrollbar{display:none}.kanban-pills::-webkit-scrollbar{display:none}.admin-sidebar,.portal-sidebar,.dashboard-sidebar,.side-nav{z-index:999;background:var(--color-bg-2,#fff);-webkit-overflow-scrolling:touch;width:80vw;max-width:320px;height:100vh;transition:left .25s;position:fixed;top:0;left:-100%;overflow-y:auto;box-shadow:4px 0 16px #0000001a}.admin-sidebar.is-open,.portal-sidebar.is-open,.dashboard-sidebar.is-open,.side-nav.is-open{left:0}@media (width>=1025px){.admin-sidebar,.portal-sidebar,.dashboard-sidebar,.side-nav{width:auto;height:auto;box-shadow:none;transition:none;position:static;left:auto}}.mobile-sticky-bar{background:var(--color-bg-2,#fff);padding:12px var(--mobile-pad);border-top:1px solid var(--color-border,#e5e5e5);z-index:100;justify-content:flex-end;gap:8px;display:flex;position:sticky;bottom:0;left:0;right:0;box-shadow:0 -2px 8px #0000000a}@media (width>=761px){.mobile-sticky-bar{box-shadow:none;background:0 0;border-top:0;padding:16px 0;position:static}}.truncate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.auth-page,.login-page{padding:var(--mobile-pad);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-card,.login-card{width:100%;max-width:480px;padding:var(--mobile-pad)}.chat-page,.chat-shell,.chat-container{flex-direction:column;height:calc(100vh - 60px);min-height:0;display:flex}.chat-page .message-list,.chat-shell .message-list,.chat-container .message-list{-webkit-overflow-scrolling:touch;flex:auto;overflow-y:auto}.kanban-board,.kanban-container{gap:var(--mobile-gap);-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;padding:var(--mobile-pad);flex-direction:row;display:flex;overflow-x:auto}.kanban-column{scroll-snap-align:start;flex:0 0 85vw;max-width:320px}@media (width>=1025px){.kanban-board,.kanban-container{flex-wrap:wrap;overflow:visible}.kanban-column{flex:none;max-width:none}}.portal-public-view{padding:var(--mobile-pad)}.stat-card-value{font-size:var(--mobile-fs-h1);line-height:1.2}.stat-card-label{font-size:var(--mobile-fs-sm);color:var(--color-text-3,#86909c)}@supports (-webkit-touch-callout:none){::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-thumb{background:#0003;border-radius:2px}}@media (width<=1024px){.topbar-search-btn,.topbar-search,[class*=search-btn],.topbar-divider{display:none!important}.topbar-logo{width:auto!important;padding:0 8px!important}.topbar-logo-text{display:none!important}.topbar-tabs{-webkit-overflow-scrolling:touch;flex:auto;min-width:0;padding:0 4px;overflow-x:auto}.topbar-tabs::-webkit-scrollbar{display:none}.topbar-tab{flex:none;padding:0 10px;font-size:12px}.topbar-notification-btn{display:none!important}.topbar-avatar{width:28px!important;height:28px!important}.page-tabs{scrollbar-width:none;overflow-x:auto;height:32px!important;padding:0 8px!important}.page-tabs::-webkit-scrollbar{display:none}.page-tab{max-width:110px!important;padding:4px 8px!important;font-size:11px!important}@media (width<=900px){.page-tabs{display:none!important}}.editor-topbar,.topbar,.editor-canvas-toolbar{flex-wrap:wrap;gap:4px}.arco-modal{width:min(90vw,720px)!important;max-width:90vw!important}}@media (width<=1024px) and (width>=761px){.admin-page-root,.portal-page,.user-page{padding:12px 16px}.stat-row,.stat-grid{grid-template-columns:repeat(2,1fr)!important}}.arco-message-wrapper{top:16px!important}.arco-message-wrapper .arco-message{max-width:480px;margin:0 auto;box-shadow:0 4px 12px #0000001f;border-radius:var(--mobile-radius)!important;width:calc(100vw - 32px)!important;font-size:var(--mobile-fs-body)!important;padding:10px 16px!important}@media (width>=761px){.arco-message-wrapper .arco-message{max-width:480px;width:auto!important}}@media (width<=760px){.stat-row,.stat-grid,.admin-stat-row,.admin-stat-grid,.portal-stat-row,.user-stat-row,.two-col,.grid-2,.grid-cols-2,.admin-grid-2{grid-template-columns:1fr!important}.three-col,.grid-3,.grid-cols-3,.admin-grid-3,.creator-flow{flex-direction:column!important;grid-template-columns:1fr!important}.creator-flow .flow-arrow{align-self:center;transform:rotate(90deg)}.four-col,.grid-4,.grid-cols-4,.admin-grid-4{grid-template-columns:repeat(2,1fr)!important}.admin-toolbar,.portal-toolbar{flex-wrap:wrap}.admin-toolbar>*{flex:100%;min-width:0}.admin-toolbar>.arco-btn{flex:none}.admin-arco-table-host{overflow-x:auto}.admin-page-root,.admin-page-inner,.admin-page{gap:8px;padding:12px!important}.arco-form .arco-row{flex-direction:column!important}.arco-form .arco-col{flex:0 0 100%!important;max-width:100%!important}.filter-row,.search-row{flex-direction:column!important;align-items:stretch!important}.filter-row>*,.search-row>*{min-width:0;width:100%!important}.admin-breadcrumb,.arco-breadcrumb{flex-wrap:wrap;max-width:100%;overflow:hidden}.admin-breadcrumb .arco-breadcrumb-item:last-child,.arco-breadcrumb .arco-breadcrumb-item:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.table-card,.creator-panel,.stat-card,.operation-card,.admin-card{margin-bottom:8px;padding:12px!important}.stat-value,.stat-card-value{font-size:clamp(20px,5vw,28px)}.arco-tabs,.arco-tabs-nav{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.arco-tabs-header{padding-right:0}.arco-tabs-nav-tab{font-size:var(--mobile-fs-sm)!important;padding:8px 12px!important}.arco-descriptions-item{flex-direction:column!important;align-items:flex-start!important;padding:8px 0!important;display:flex!important}.arco-descriptions-item-label,.arco-descriptions-item-value{text-align:left!important;width:100%!important;padding:4px 0!important}.arco-descriptions-table{table-layout:fixed!important}.arco-descriptions-item-value{word-break:break-all!important;overflow-wrap:anywhere!important;white-space:normal!important;text-align:left!important}.arco-descriptions-item-label{white-space:nowrap!important;text-align:left!important}.arco-pagination{flex-wrap:wrap;justify-content:center;gap:4px}.arco-pagination-item,.arco-pagination-jump-prev,.arco-pagination-jump-next{min-width:32px!important;height:32px!important;line-height:30px!important}.header-avatar,.arco-avatar{flex-shrink:0}.nav-drawer .arco-drawer{max-width:320px;width:80vw!important}.hide-on-mobile,.desktop-only{display:none!important}.mobile-only{display:block!important}}@media (width<=480px){.four-col,.grid-4,.grid-cols-4,.admin-grid-4{grid-template-columns:1fr!important}.arco-pagination-item:not(.arco-pagination-item-active):not(:first-child):not(:last-child){display:none}.table-card,.admin-card,.creator-panel{padding:10px!important}}.mobile-only{display:none}@media (width<=760px){.mobile-only{display:initial}.system-search,.search-bar,.filter-bar,.toolbar-search{box-sizing:border-box;width:100%;flex-direction:column!important;align-items:stretch!important;gap:8px!important}.system-search>*,.search-bar>*,.filter-bar>*,.toolbar-search>*{box-sizing:border-box;flex:none!important;width:100%!important;min-width:0!important}.system-search .arco-input-search,.search-bar .arco-input-search,.toolbar-search .arco-input-search{grid-column:1/-1}.system-search,.search-bar{grid-template-columns:1fr 1fr;display:grid!important}.system-actions,.action-bar,.toolbar-actions{grid-template-columns:1fr 1fr;gap:8px!important;display:grid!important}.system-actions .arco-btn,.action-bar .arco-btn,.toolbar-actions .arco-btn{width:100%}.system-actions .arco-btn-primary,.action-bar .arco-btn-primary{grid-column:1/-1}.arco-table-td-content,.arco-table-th{font-size:var(--mobile-fs-sm)!important;padding:8px 6px!important}.arco-table-th{font-weight:500;font-size:11px!important}.arco-table-td-content .arco-btn-size-mini,.arco-table-td-content .arco-btn-size-small{min-height:28px!important;padding:0 8px!important}.arco-pagination{flex-wrap:wrap;justify-content:center;gap:2px;padding:12px 0}.arco-pagination-item,.arco-pagination-prev,.arco-pagination-next{min-width:32px;height:32px;font-size:12px;line-height:30px}.arco-pagination-total-text,.arco-pagination-jumper{display:none!important}.topbar{flex-wrap:nowrap!important;gap:4px!important;height:48px!important;padding:0 6px!important}.topbar-logo{flex:none!important;padding:0 4px!important}.topbar-logo-icon{width:24px!important;height:24px!important}.topbar-logo-icon img{width:18px!important;height:18px!important}.topbar-ai-btn{display:none!important}.topbar-avatar{width:24px!important;min-width:24px!important;height:24px!important;min-height:24px!important;margin-left:0!important;font-size:11px!important}.topbar-tabs{scrollbar-width:none;flex:1 1 0!important;min-width:0!important;max-width:100%!important;height:48px!important;padding:0 4px!important;overflow:auto hidden!important}.topbar-tabs::-webkit-scrollbar{display:none}.topbar-tab{gap:3px;flex:none!important;padding:0 8px!important;font-size:12px!important}.topbar-tab i{font-size:14px}.hamburger-btn{width:32px!important;min-width:32px!important;height:32px!important;min-height:32px!important;font-size:16px!important;top:8px!important;left:8px!important}.decor-orb,.decor-blob,.bg-blob,.marketing-hero:before,.marketing-hero:after,.landing-bg-decor,.aurora-blob,.gradient-blob{display:none!important}.topbar-right{flex:none!important;gap:4px!important}.topbar-icon-btn{width:28px!important;min-width:28px!important;height:28px!important;min-height:28px!important}.blog-article{padding:12px}.blog-article h1{line-height:1.3;font-size:22px!important}.blog-article h2{font-size:18px!important}.blog-article p{line-height:1.7;font-size:15px!important}.blog-article img,.blog-article pre,.blog-article code{max-width:100%}.blog-article pre{padding:12px;font-size:12px;overflow-x:auto}.blog-meta{flex-wrap:wrap;gap:4px;font-size:12px}.blog-tags{flex-wrap:wrap;gap:4px}.blog-tag{padding:2px 8px;font-size:11px}.public-page,.portal-public,.view-page{padding:12px}.public-hero,.portal-public-hero{text-align:center;padding:24px 16px}.public-hero h1,.portal-public-hero h1{font-size:clamp(22px,5vw,32px)!important}.public-hero p,.portal-public-hero p{font-size:14px!important}.arco-list-item-meta-title{font-size:14px}.arco-list-item{padding:10px 12px!important}.arco-empty{padding:24px 12px!important}.arco-empty .arco-empty-description{font-size:13px!important}.arco-card-header{min-height:44px;padding:10px 12px!important}.arco-card-body{padding:12px!important}.arco-card-title{font-weight:600;font-size:14px!important}.arco-input,.arco-input-wrapper input,.arco-textarea{font-size:16px!important}.arco-input-wrapper{min-height:36px}.arco-select-view{min-height:36px;font-size:14px!important}}.arco-table th,.arco-table td,.post-title-cell,.user-cell-name{white-space:nowrap}.arco-table .empty .d,.arco-table .arco-table-empty .d{white-space:normal;overflow-wrap:anywhere}.admin-arco-table-host,.table-card .arco-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (width<=760px){.stat-card-value,.system-metric strong,.admin-dashboard-metric-value,.arco-statistic-content{font-size:22px!important}.stat-card-value-lg{font-size:24px!important}}@media (width<=1024px){.astral-chat-workspace{grid-template-columns:1fr!important;gap:0!important}}@media (width<=760px){.astral-session-rail{display:none!important}.astral-chat-stage{width:100%!important;min-width:0!important}.astral-chat-workspace{grid-template-columns:100vw!important;gap:0!important}.astral-chat-workspace.session-rail-open .astral-session-rail{z-index:200;background:var(--bg-1,#fff);width:80vw;max-width:320px;position:fixed;inset:56px 0 0;box-shadow:2px 0 12px #0000001a;display:flex!important}.astral-chat-inspector,.astral-inspector-drawer{border-radius:12px 12px 0 0!important;width:100vw!important;max-width:100vw!important;height:50vh!important;position:fixed!important;inset:auto 0 0!important}.astral-chat-window{padding:8px!important}.astral-chat-window-head{padding:8px 12px!important}.astral-chat-empty-placeholder{padding:16px 12px!important}.astral-chat-empty-placeholder h2{word-break:keep-all!important;font-size:18px!important;line-height:1.4!important}.astral-sidebar{transition:transform .25s;transform:translate(100%);z-index:200!important;width:min(85vw,360px)!important;position:fixed!important;top:56px!important;bottom:0!important;right:0!important}.astral-sidebar.is-open,.astral-sidebar[data-open=true]{transform:translate(0)}.hero-title,.marketing-hero h1,.landing-title{font-size:clamp(20px,6vw,28px)!important;line-height:1.25!important}.hero-sub,.hero-subtitle{font-size:13px!important;line-height:1.55!important}.auth-card,.login-card{padding:16px!important}}@media (width>=1025px){.hero-title,.marketing-hero h1,.landing-title{font-size:clamp(28px,3.2vw,42px);line-height:1.2}.hero-sub,.hero-subtitle{font-size:clamp(13px,1vw,15px);line-height:1.6}}@media (width>=761px) and (width<=1024px){.hero-title,.marketing-hero h1,.landing-title{font-size:clamp(24px,3.5vw,32px);line-height:1.25}}@media (width<=760px){.topbar-tabs{display:none!important}.topbar-tab[aria-current=page],.topbar-tab.is-active{display:inline-flex!important}.topbar-divider,.topbar-search{display:none!important}}@media (width>=1025px){.stat-card-value,.system-metric strong,.admin-dashboard-metric-value{font-size:26px!important}}@media (width<=760px){.arco-drawer{padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}}.modal-overlay,.modal-mask,[class$=-mask]{overscroll-behavior:contain}@media (width<=760px){.arco-modal{flex-direction:column;display:flex;max-height:calc(100vh - 32px)!important}.arco-modal-header,.arco-modal-footer{flex:none}.arco-modal-body{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow-y:auto}.arco-modal-close{justify-content:center;align-items:center;min-width:32px;min-height:32px;display:inline-flex}}html,body{overflow-x:clip}.novel-content{overflow-wrap:break-word;overflow-x:clip}.novel-content pre,.novel-content code{overflow-wrap:normal}@media (width<=760px){.arco-select-view input,.arco-input-number input,.arco-picker input,.arco-pagination-options .arco-select-view input{font-size:16px!important}.arco-trigger-popup,.arco-picker-container{max-width:calc(100vw - 16px)}.arco-dropdown,.arco-select-popup{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;max-width:calc(100vw - 16px);max-height:60vh;overflow-y:auto}.arco-dropdown-option,.arco-select-option{min-height:40px}.arco-dropdown-option .arco-dropdown-option-content{padding-top:9px;padding-bottom:9px}}@media (pointer:coarse){.arco-switch{position:relative}.arco-switch:before{content:"";position:absolute;inset:-9px -12px}}@media (width<=760px){.mobile-sticky-bar{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.arco-drawer-body{padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}.arco-drawer-footer{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}}@media (height<=480px) and (orientation:landscape){.arco-modal{max-height:calc(100vh - 16px)!important}.arco-modal-header{padding-top:10px;padding-bottom:10px}.arco-modal-footer{padding-top:8px;padding-bottom:8px}}@media (width<=760px){input:not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]):not([type=reset]),textarea{font-size:16px!important}}:root,[data-theme=novel],[data-theme=light]{--novel-primary:#b45309;--novel-primary-light:#d97706;--novel-primary-dark:#92400e;--novel-brand-50:#fff7ed;--novel-brand-100:#ffedd5;--novel-brand-200:#fed7aa;--novel-brand-300:#fdba74;--novel-brand-400:#fb923c;--novel-brand-500:#f97316;--novel-brand-600:#ea580c;--novel-brand-700:#c2410c;--novel-brand-800:#9a3412;--novel-brand-tx:#fff;--novel-rose-50:#fff1f2;--novel-rose-100:#ffe4e6;--novel-rose-200:#fecdd3;--novel-rose-500:#f43f5e;--novel-rose-600:#e11d48;--novel-rose-700:#be123c;--novel-sky-50:#f0f9ff;--novel-sky-100:#e0f2fe;--novel-sky-200:#bae6fd;--novel-sky-500:#0ea5e9;--novel-sky-600:#0284c7;--novel-sky-700:#0369a1;--novel-violet-50:#f5f3ff;--novel-violet-100:#ede9fe;--novel-violet-200:#ddd6fe;--novel-violet-500:#5645d4;--novel-violet-600:#4f3fc1;--novel-violet-700:#4035a0;--novel-paper:#faf8f3;--novel-paper-warm:#f5efe6;--novel-paper-dark:#e8dfd0;--novel-ink:#1a1815;--novel-ink-2:#3a3530;--novel-ink-3:#706965;--novel-ink-mute:#a8a29e;--novel-border:#e9e3d6;--novel-border-dark:#d4c8b5;--novel-bg-soft:#f3eee2;--novel-card:#fff;--novel-input-bg:#fff;--accent:var(--novel-brand-600);--accent-hover:var(--novel-brand-700);--accent-soft:#ea580c1f;--bg-card:#fff;--bg-hover:var(--novel-bg-soft);--bg-surface:var(--novel-bg-soft);--border:var(--novel-border);--hairline:var(--novel-border);--text-primary:var(--novel-ink);--text-secondary:var(--novel-ink-2);--text-muted:var(--novel-ink-3);--text-body:13px;--text-sm:12px;--text-xs:11px;--r-sm:var(--radius-sm);--r-md:var(--radius-md);--r-lg:var(--radius-lg);--warning-bg:#fef3c7;--color-purple-bg:var(--novel-violet-50);--novel-cream-50:#faf7f1;--novel-cream-100:#f3eee2;--novel-cream-200:#e9e3d6;--novel-moss-50:#f0fdf4;--novel-moss-100:#dcfce7;--novel-moss-500:#22c55e;--novel-moss-600:#16a34a;--novel-moss-700:#15803d;--novel-clay-500:#c97b3f;--novel-clay-600:#b06367;--novel-success:#15803d;--novel-warning:#ca8a04;--novel-danger:#b91c1c;--novel-info:#1d4ed8;--novel-font-display:"Noto Serif SC", "Songti SC", "宋体", Georgia, serif;--novel-font-body:"Inter", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--novel-font-mono:"JetBrains Mono", "SF Mono", Menlo, monospace;--novel-font-reading:"Noto Serif SC", "Songti SC", "宋体", Georgia, serif;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:999px;--shadow-sm:var(--sh-v4-xs);--shadow-md:var(--sh-v4-sm);--shadow-lg:var(--sh-v4-lg)}[data-theme=novel]{--primary-5:var(--novel-brand-500);--primary-6:var(--novel-brand-600);--primary-7:var(--novel-brand-700);--primary-8:var(--novel-brand-700);--link-color:var(--novel-brand-600);--link-hover-color:var(--novel-brand-700);--link-active-color:var(--novel-brand-800)}body,[data-theme=novel] body{--color-text-2:#4b5563;--color-text-3:#6b7280;--color-text-4:#9ca3af}body[arco-theme=dark],[data-theme=dark] body{--color-text-2:var(--ink-700);--color-text-3:var(--ink-500);--color-text-4:var(--ink-400)}:root,[data-theme=novel],[data-theme=light]{--paper-warm-1:#f5ebd9;--paper-warm-2:#efe2c9;--paper-warm-3:#e8d8b8;--card-warm-1:#fffcf5;--card-warm-2:#faf3e1;--coral:#e0533c;--coral-d:#b83922;--coral-dd:#8b2e1b;--coral-l:#f47a5f;--coral-50:#fbe4dc;--coral-100:#f6ccbe;--coral-glow:#e0533c2e;--coral-tx:#fff;--teal:#1f6b7a;--teal-d:#0e4d5a;--teal-l:#3d8fa0;--teal-50:#d4e7ec;--teal-glow:#1f6b7a29;--gold:#c99543;--gold-d:#a37528;--gold-l:#e0b664;--gold-50:#f4e5c2;--gold-glow:#c995432e;--plum:#6b3f6b;--plum-d:#4f2a4f;--plum-l:#8e5e8e;--plum-50:#e8d5e8;--forest:#3d6b43;--forest-d:#284d2d;--forest-l:#5c8c62;--forest-50:#d5e5d7;--slate-1:#2c2a28;--slate-2:#1a1816;--slate-3:#3d3a35;--ink-v4-1:#1f1812;--ink-v4-2:#3a2e22;--ink-v4-3:#6b5a45;--ink-v4-mute:#998770;--ink-v4-faint:#c8b89a;--f-v4-display:"Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--f-v4-zh-dis:"Inter", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--f-v4-sans:"Inter", "Noto Sans SC", -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--f-v4-serif:"Noto Serif SC", "Songti SC", "宋体", Georgia, serif;--f-v4-mono:"JetBrains Mono", "SF Mono", Menlo, monospace;--sh-v4-xs:0 1px 2px #1f18120f;--sh-v4-sm:0 2px 8px #1f181214, 0 1px 2px #1f18120a;--sh-v4-md:0 8px 24px #1f18121a, 0 2px 6px #1f18120f;--sh-v4-lg:0 16px 48px #1f181224, 0 4px 12px #1f181214;--sh-v4-xl:0 32px 80px #1f18122e, 0 8px 24px #1f18121a;--r-v4-sm:6px;--r-v4-md:10px;--r-v4-lg:14px;--r-v4-xl:20px;--r-v4-2xl:28px;--grad-sunset:linear-gradient(135deg, #e0533c 0%, #c73e5c 50%, #8b3f6b 100%);--grad-teal:linear-gradient(135deg, #1f6b7a 0%, #3d8fa0 100%);--grad-gold:linear-gradient(135deg, #e0b664 0%, #c99543 100%);--on-gold:#14110f}body{background:var(--paper-warm-1);color:var(--ink-v4-1);font-family:var(--f-v4-sans)!important}.novel-display{font-family:var(--novel-font-display);letter-spacing:.02em;font-weight:700}.novel-paper-bg{background:var(--novel-paper);background-image:linear-gradient(#0000 0%,#b4530905 100%),radial-gradient(circle at 0 0,#b4530908 0%,#0000 50%)}.novel-heading-1{font-family:var(--novel-font-display);letter-spacing:.02em;color:var(--novel-ink);font-size:32px;font-weight:700;line-height:1.25}.novel-heading-2{color:var(--novel-ink);font-size:22px;font-weight:600;line-height:1.35}.novel-heading-3{color:var(--novel-ink);font-size:18px;font-weight:600;line-height:1.45}.novel-heading-4{color:var(--novel-ink-2);font-size:15px;font-weight:600;line-height:1.5}.novel-body{color:var(--novel-ink);font-size:14px;line-height:1.6}.novel-caption{color:var(--novel-ink-3);font-size:12px;line-height:1.5}.settings-section{font-family:var(--novel-font-body);border:1px solid var(--novel-border,#e9e3d6);background:#fff;border-radius:12px;margin-bottom:20px;padding:20px 24px 24px;transition:box-shadow .18s,border-color .18s;box-shadow:0 1px 3px #1a18150a}.settings-section:hover{border-color:var(--novel-brand-300,#fdba74);box-shadow:0 4px 16px -2px #1a18150f}.section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px;display:flex}.section-title{color:#1a1815;letter-spacing:-.01em;align-items:center;gap:8px;font-size:16px;font-weight:600;display:flex}.section-title>i{width:28px;height:28px;color:var(--novel-brand-700,#c2410c);background:var(--novel-brand-50,#fff7ed);border-radius:8px;justify-content:center;align-items:center;font-size:16px;display:inline-flex;font-family:remixicon!important}.section-count{color:#a8a29e;font-variant-numeric:tabular-nums;font-size:12px;font-weight:400}.section-actions{flex-wrap:wrap;gap:6px 8px;display:flex}.settings-filter-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.settings-filter-bar>input,.settings-filter-bar>select{border:1px solid color-mix(in srgb, var(--ink-400) 20%, transparent);border-radius:var(--r-lg);background:var(--surface);min-width:0;color:var(--ink-900);flex:1;padding:8px 12px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .15s}.settings-filter-bar>input::placeholder{color:var(--ink-400)}.settings-filter-bar>input:focus,.settings-filter-bar>select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--focus) 12%, transparent);outline:none}.settings-filter-bar>select{flex:0 0 140px}@media (width<=900px){.settings-filter-bar{row-gap:8px}.settings-filter-bar>input{flex:1 0 100%;width:100%}.settings-filter-bar>select{flex:140px;min-width:0}}.settings-list{flex-direction:column;gap:10px;display:flex}.setting-item{cursor:pointer;background:#fafaf7;border:1px solid #a8a29e2e;border-radius:10px;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex}.setting-item:hover{border-color:var(--novel-brand-300,#fdba74);background:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #ea580c14}.item-content{flex:1;min-width:0}.item-text{color:#3f3a35;margin:0;font-size:13px;line-height:1.6}.item-actions{opacity:0;flex-shrink:0;gap:4px;transition:opacity .15s;display:flex}.setting-item:hover .item-actions,.setting-item:focus-within .item-actions{opacity:1}@media (hover:none),(width<=640px){.item-actions,.character-actions,.card-actions,.ch-del-btn{opacity:1}}.btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:4px;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:500;line-height:1;transition:all .15s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn>i{font-size:14px;font-family:remixicon!important}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-sm{padding:5px 10px;font-size:12px}.btn-sm>i{font-size:13px}.btn-primary{background:var(--novel-brand-600,#ea580c);color:#fff;box-shadow:0 1px 3px #ea580c33}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #c2410c47}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{color:var(--novel-brand-700,#c2410c);background:#fff;border:1px solid #c2410c40}.btn-secondary:hover:not(:disabled){border-color:var(--novel-brand-600,#ea580c);color:var(--novel-brand-700,#c2410c);background:var(--novel-brand-50,#fff7ed)}.btn-icon{color:#a8a29e;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-family:inherit;transition:all .13s;display:inline-flex}.btn-icon>i{font-size:14px;font-family:remixicon!important}.btn-icon:hover{background:var(--novel-brand-50,#fff7ed);color:var(--novel-brand-700,#c2410c)}.btn-icon.danger:hover{background:color-mix(in srgb, var(--err) 8%, transparent);color:var(--err)}.empty-state{text-align:left;color:var(--ink-v4-3,#706965);background:0 0;border:0;border-top:1px solid #f3eee2;border-radius:0;align-items:center;gap:10px;padding:16px 18px;display:flex}@media (width<=560px){.empty-state{flex-wrap:wrap;align-items:flex-start;row-gap:10px}.empty-state>p{flex:100%;order:2;min-width:0}.empty-state>i{order:1}.empty-state>button,.empty-state>.btn{order:3;margin-left:auto}}.empty-state>i{color:#a8a29e;background:0 0;border-radius:0;flex:none;width:auto;height:auto;margin:0;font-size:20px;font-family:remixicon!important}.empty-state>p{min-width:0;color:var(--ink-v4-3,#706965);flex:0 auto;margin:0;font-size:13px}.empty-state>.empty-tip{color:#a8a29e;flex:0 auto;min-width:0;margin:0;font-size:12px}.empty-state>.btn{flex:none;margin-left:auto}.settings-detail{border:1px solid var(--novel-brand-200,#fed7aa);background:linear-gradient(180deg, var(--novel-brand-50,#fff7ed) 0%, #fff7ed66 100%);border-radius:10px;margin:12px 0 0;padding:14px 16px}.settings-detail-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.settings-detail h4{color:#1a1815;margin:0;font-size:14px;font-weight:600}.settings-detail p{color:#52525b;white-space:pre-wrap;margin:6px 0 0;line-height:1.6}.item-type{background:var(--novel-brand-50,#fff7ed);color:var(--novel-brand-700,#c2410c);letter-spacing:.03em;border-radius:999px;margin-bottom:6px;padding:2px 8px;font-size:10px;font-weight:600;line-height:1.4;display:inline-block}html[data-theme=dark],html[data-theme=dark] body{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=dark],[data-theme=dark]{--paper-warm-1:#1f1d1b;--paper-warm-2:#2a2724;--paper-warm-3:#3a3530;--card-warm-1:#2c2926;--card-warm-2:#353129;--ink-v4-1:#f5ebd9;--ink-v4-2:#c8b89a;--ink-v4-3:#998770;--ink-v4-4:#6b5a45;--ink-v4-faint:#a89a85;--ink-v4-mute:#5c5240;--ink-v4-bg:#1f1d1b;--novel-border:#3a3530;--novel-border-dark:#2a2724;--novel-card:#2c2926;--novel-bg-soft:#26231f;--novel-paper:#26231f;--novel-paper-warm:#2a2620;--novel-paper-dark:#1a1815;--novel-input-bg:#2c2926;--novel-ink:#f5ebd9;--novel-ink-2:#d6ccba;--novel-ink-3:#a3937f;--novel-ink-mute:#6e6353;--warning-bg:#3a2f14;--color-purple-bg:#2a2440;--bg-card:#2c2926;--bg-hover:#2a2620;--bg-surface:#26231f}:root{--novel-page-header-py:24px;--novel-page-header-px:28px;--novel-content-max-width:1280px}.novel-page-section{padding:16px var(--novel-page-header-px)}.novel-section-title{color:var(--novel-ink);margin:0 0 4px;font-size:17px;font-weight:600;line-height:1.4}.novel-section-subtitle{color:var(--novel-ink-3);margin:0 0 14px;font-size:12px;line-height:1.5}.novel-empty-state{box-sizing:border-box;text-align:center;background:linear-gradient(180deg, var(--novel-card) 0%, var(--novel-bg-soft,var(--novel-paper)) 100%);border:1px dashed var(--novel-border);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;min-height:180px;padding:32px 24px;display:flex}@media (width<=640px){.novel-empty-state{min-height:42vh;padding:var(--sp-6,24px) var(--sp-2,8px);background:0 0;border:0;border-radius:0}}.novel-empty-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:20px;display:flex}.novel-empty-illu{background:var(--novel-brand-50);width:56px;height:56px;color:var(--novel-brand-600);border-radius:14px;justify-content:center;align-items:center;margin-bottom:12px;font-size:24px;line-height:1;display:inline-flex}.novel-empty-title{color:var(--novel-ink);margin:0 0 4px;font-size:15px;font-weight:600}.novel-empty-desc{color:var(--novel-ink-3);max-width:420px;margin:0 0 14px;font-size:12.5px;line-height:1.6}.novel-tag-chip{border:1px solid var(--novel-border);background:var(--novel-card);color:var(--novel-ink-2);cursor:pointer;white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;line-height:1.4;transition:all .18s;display:inline-flex}.novel-tag-chip:hover{border-color:var(--novel-brand-500);color:var(--novel-brand-700);background:var(--novel-brand-50)}.novel-tag-chip.is-active,.novel-tag-chip[aria-pressed=true]{border-color:var(--novel-brand-600);background:var(--novel-brand-600);color:#fff;font-weight:500}.novel-tag-chip.is-info{background:var(--novel-sky-50);border-color:var(--novel-sky-200);color:var(--novel-sky-700)}.novel-tag-chip.is-warning{background:var(--novel-brand-50);border-color:var(--novel-brand-200);color:var(--novel-brand-800)}.novel-tag-chip.is-urgent{background:var(--err-bg);color:var(--err);border-color:#fecaca}.novel-tag-chip.is-success{background:var(--ok-bg);color:var(--ok);border-color:#bbf7d0}.novel-tag-chip.is-violet{background:var(--novel-violet-50);border-color:var(--novel-violet-200);color:var(--novel-violet-700)}.novel-tag-chip.is-rose{background:var(--novel-rose-50);border-color:var(--novel-rose-200);color:var(--novel-rose-700)}.novel-tag-chip.is-mini{padding:2px 6px;font-size:11px}.novel-tag-chip.is-small{padding:3px 8px;font-size:11px}.novel-tag-chip .novel-chip-count{background:color-mix(in srgb, var(--ink-v4-1) 6%, transparent);height:16px;color:inherit;border-radius:8px;align-items:center;margin-left:2px;padding:0 5px;font-size:10px;line-height:1;display:inline-flex}.novel-tag-chip.is-active .novel-chip-count{background:#ffffff38}.novel-status-chip{border:1px solid var(--novel-border);background:var(--novel-card);color:var(--novel-ink-2);white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:4px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;line-height:1.4;display:inline-flex}.novel-status-chip.is-success{background:var(--ok-bg);color:var(--ok);border-color:#bbf7d0}.novel-status-chip.is-info{background:var(--novel-sky-50);border-color:var(--novel-sky-200);color:var(--novel-sky-700)}.novel-status-chip.is-warning{background:var(--novel-brand-50);border-color:var(--novel-brand-200);color:var(--novel-brand-800)}.novel-status-chip.is-violet{background:var(--novel-violet-50);border-color:var(--novel-violet-200);color:var(--novel-violet-700)}.novel-status-chip.is-mute{background:var(--novel-bg-soft);border-color:var(--novel-border);color:var(--novel-ink-3,#78716c)}.novel-status-chip.is-danger{background:var(--err-bg);color:var(--err);border-color:#fecaca}.novel-status-chip.is-mini{padding:1px 6px;font-size:10px}.novel-pill-button{border:1px solid var(--novel-border-dark);background:var(--novel-card);color:var(--novel-ink-2);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;line-height:1.4;transition:all .18s;display:inline-flex}.novel-pill-button:hover{border-color:var(--novel-brand-500);color:var(--novel-brand-700)}.novel-pill-button.is-primary{background:var(--novel-brand-600);border-color:var(--novel-brand-600);color:#fff}.novel-pill-button.is-primary:hover{background:var(--novel-brand-700);border-color:var(--novel-brand-700)}.btn{border-radius:var(--radius-md,8px);border:1px solid var(--novel-border);background:var(--novel-card);color:var(--novel-ink-2);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:7px 16px;font-family:inherit;font-size:13px;font-weight:500;transition:all .16s;display:inline-flex}.btn:hover{border-color:var(--novel-brand-500);color:var(--novel-brand-700)}.btn.btn-primary{background:var(--novel-brand-700);border-color:var(--novel-brand-700);color:var(--novel-brand-tx)}.btn.btn-primary:hover{background:var(--novel-brand-700);border-color:var(--novel-brand-700)}.btn.btn-primary:active{background:var(--novel-brand-800);transform:translateY(.5px)}.btn.btn-primary:focus-visible{outline:2px solid var(--novel-brand-500);outline-offset:2px}.novel-icon-button{width:32px;height:32px;color:var(--novel-ink-2);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;transition:all .18s;display:inline-flex}.novel-icon-button:hover{background:var(--novel-brand-50);color:var(--novel-brand-700);border-color:var(--novel-brand-200)}.novel-card{background:var(--novel-card);border:1px solid var(--novel-border);box-shadow:var(--shadow-sm);border-radius:12px;transition:box-shadow .2s,transform .2s;overflow:hidden}.novel-card:hover{box-shadow:var(--shadow-md)}.novel-divider{background:var(--novel-border);border:none;height:1px;margin:16px 0}.novel-status-dot{background:var(--novel-success);vertical-align:0;border-radius:999px;width:6px;height:6px;margin-right:6px;display:inline-block}.novel-status-dot.is-warning{background:var(--novel-warning)}.novel-status-dot.is-danger{background:var(--novel-danger)}.novel-status-dot.is-info{background:var(--novel-info)}.novel-status-dot.is-mute{background:var(--novel-ink-mute)}.novel-page{width:100%;max-width:1080px;padding:var(--space-10,40px) var(--space-8,32px) var(--space-16,80px);color:var(--novel-ink);font-family:var(--novel-font-body);margin:0 auto}.novel-page-head{justify-content:space-between;align-items:flex-start;gap:var(--space-6,24px);margin-bottom:var(--space-6,24px);flex-wrap:wrap;display:flex}.novel-page-head h1{letter-spacing:-.01em;color:var(--novel-ink);margin:0 0 4px;font-size:20px;font-weight:650;line-height:1.3}.novel-page-head .novel-page-sub{color:var(--novel-ink-3,#78716c);margin:0;font-size:13px;line-height:1.5}.novel-page-actions{align-items:center;gap:var(--space-2,8px);flex-wrap:wrap;flex-shrink:0;display:flex}.novel-panel{background:var(--novel-card);border:1px solid var(--novel-border);border-radius:var(--radius-lg,12px)}.novel-panel+.novel-panel{margin-top:var(--space-4,16px)}.novel-panel-body{padding:var(--space-5,20px) var(--space-6,24px)}.novel-panel-title{letter-spacing:.08em;text-transform:uppercase;color:var(--novel-ink-mute);padding:var(--space-4,16px) var(--space-6,24px) 8px;border-bottom:1px solid var(--novel-bg-soft);margin:0;font-size:11px;font-weight:600}.novel-stat-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:var(--space-5,20px) var(--space-6,24px);transition:border-color .14s,box-shadow .14s;position:relative}.novel-stat-card:hover{border-color:var(--accent-line);box-shadow:var(--sh-2)}.novel-stat-label{color:var(--novel-ink-3,#78716c);align-items:center;gap:6px;margin:0 0 8px;font-size:12px;display:flex}.novel-stat-label i{color:var(--novel-ink-3,#78716c);font-size:14px}.novel-stat-value{letter-spacing:-.02em;color:var(--novel-ink);font-variant-numeric:tabular-nums;font-size:28px;font-weight:650;line-height:1}.novel-stat-value.loading{color:var(--novel-ink-mute)}.novel-admin-table-card{background:var(--novel-card);border:1px solid var(--novel-border);border-radius:var(--radius-lg,12px);padding:var(--space-4,16px)}.novel-admin-table-card :deep(.arco-table-th){background:var(--novel-bg-soft);color:var(--novel-ink-2);font-weight:600}.novel-admin-table-card :deep(.arco-table-tr:hover .arco-table-td){background:var(--novel-paper)}.novel-admin-table-card :deep(.arco-table-tr){border-radius:0}.novel-focus-ring:focus-visible,.novel-panel :focus-visible,.novel-stat-card :focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--focus) 12%, transparent);outline:none}.rag-page,.character-page,.memory-browser,.plan-page,.novel-list-page,.admin-dashboard,.inbox-page,.dashboard-content{box-sizing:border-box}.novel-page-toolbar{align-items:center;gap:var(--space-2,8px);padding:var(--space-3,12px);background:var(--novel-card);border:1px solid var(--novel-border);border-radius:var(--radius-lg,12px);margin-bottom:var(--space-4,16px);flex-wrap:wrap;display:flex}.novel-page-toolbar .toolbar-spacer{flex:1}.novel-empty-state .novel-empty-illu{color:var(--novel-ink-3,#78716c);background:var(--novel-bg-soft)}.novel-empty-state .novel-empty-illu svg{color:inherit}@media (width<=640px){.novel-page{padding:var(--space-6,24px) var(--space-4,16px) var(--space-12,48px)}.novel-page-head{flex-direction:column;align-items:stretch}.novel-page-actions{justify-content:flex-start}}.novel-hero{background:var(--grad-sunset,linear-gradient(135deg, var(--coral) 0%, #c73e5c 50%, #8b3f6b 100%));color:#fff;box-shadow:var(--sh-v4-sm,0 2px 10px #1f18121f);border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:20px;margin-bottom:16px;padding:18px 22px;display:grid;position:relative;overflow:hidden}.novel-hero .novel-hero-main{z-index:1;position:relative}.novel-hero .novel-hero-eyebrow{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:#ffffffd1;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:6px;margin-bottom:4px;font-size:10px;font-weight:700;display:flex}.novel-hero .novel-hero-eyebrow .novel-hero-pip{background:#fff;border-radius:50%;width:5px;height:5px;box-shadow:0 0 8px #fffc}.novel-hero h1{font-family:var(--f-v4-zh-dis,"Inter", "Noto Sans SC", sans-serif);letter-spacing:0;color:#fff;margin:0 0 3px;font-size:19px;font-weight:700;line-height:1.3}.novel-hero h1 em{color:var(--gold-l);font-style:normal;font-weight:800}.novel-hero .novel-hero-sub{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:#ffffffd1;margin:0 0 8px;font-size:12.5px;font-weight:400;line-height:1.5}.novel-hero .novel-hero-meta{flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex}.novel-hero .novel-hero-meta .stat{align-items:baseline;gap:5px;display:flex}.novel-hero .novel-hero-meta .stat .n{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);letter-spacing:0;color:#fff;font-size:15px;font-weight:700;line-height:1}.novel-hero .novel-hero-meta .stat .l{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:#ffffffb3;letter-spacing:.04em;text-transform:none;white-space:nowrap;font-size:11px;font-weight:500}.novel-hero .novel-hero-meta .sep{background:#fff3;width:1px;height:12px}.novel-hero .novel-hero-actions{z-index:1;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:relative}.novel-hero .novel-hero-actions .a-btn{white-space:nowrap}.novel-hero .novel-hero-target{z-index:1;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:relative}.novel-hero .novel-hero-target svg{width:56px;height:56px;transform:rotate(-90deg)}.novel-hero .novel-hero-target .target-track{fill:none;stroke:#ffffff26;stroke-width:6px}.novel-hero .novel-hero-target .target-prog{fill:none;stroke:#fff;stroke-width:6px;stroke-linecap:round;filter:drop-shadow(0 0 4px #ffffff73)}.novel-hero .novel-hero-target .target-lbl{color:#fff;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.novel-hero .novel-hero-target .target-lbl .n{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);letter-spacing:0;font-size:15px;font-weight:700;line-height:1}.novel-hero .novel-hero-target .target-lbl .u{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:#ffffffb3;letter-spacing:.02em;margin-top:2px;font-size:9px;font-weight:500}.novel-hero .novel-hero-target .target-lbl .p{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--gold-l);letter-spacing:.1em;text-transform:uppercase;margin-top:1px;font-size:9px;font-weight:700}.novel-hero.v4-coral{background:linear-gradient(135deg, var(--ink-v4-1) 0%, #2a1f18 50%, #4a2a1c 100%)}.novel-hero.v4-teal{background:linear-gradient(135deg, var(--teal) 0%, #2a4a6b 100%)}.novel-hero.v4-plum{background:linear-gradient(135deg, var(--plum) 0%, #8e3b5c 50%, #c73e5c 100%)}.novel-hero.v4-plum-deep{background:linear-gradient(135deg, var(--plum) 0%, #4a2a4f 100%)}.novel-hero.v4-storm{background:linear-gradient(135deg, var(--teal) 0%, #2a4a6b 50%, var(--ink-v4-1) 100%)}.novel-hero.v4-ink{background:linear-gradient(135deg, var(--ink-v4-1) 0%, #2a1f18 50%, #4a2a1c 100%)}.novel-hero.v4-warm{background:linear-gradient(135deg, var(--teal) 0%, var(--teal-l) 100%)}.novel-tool-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px;display:grid}.novel-tool-card{background:var(--card-warm-1);border-radius:var(--r-v4-lg,14px);box-shadow:var(--sh-v4-sm,0 2px 8px #1f181214);cursor:pointer;padding:20px;transition:all .2s;position:relative;overflow:hidden}.novel-tool-card:hover{box-shadow:var(--sh-v4-md,0 8px 24px #1f18121a);transform:translateY(-3px)}.novel-tool-card .tool-ico{color:#fff;background:var(--tool-ico-bg,var(--coral));width:40px;height:40px;box-shadow:0 4px 12px var(--tool-ico-glow,var(--coral-glow));border-radius:10px;justify-content:center;align-items:center;margin-bottom:14px;display:flex}.novel-tool-card .tool-ico svg{width:20px;height:20px}.novel-tool-card .tool-ico i{font-size:20px}.novel-tool-card .tool-nm{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-1);letter-spacing:-.01em;margin:0 0 4px;font-size:17px;font-weight:800;line-height:1.2}.novel-tool-card .tool-sub{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-3);margin:0 0 14px;font-size:12px;line-height:1.5}.novel-tool-card .tool-row{font-family:var(--f-v4-mono,"JetBrains Mono", monospace);color:var(--ink-v4-2);border-top:1px solid var(--paper-warm-2);align-items:center;gap:6px;padding-top:12px;font-size:11px;display:flex}.novel-tool-card .tool-pill{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--coral-d);letter-spacing:.1em;text-transform:uppercase;background:var(--coral-50);border-radius:4px;margin-left:auto;padding:2px 6px;font-size:9.5px;font-weight:700}.novel-heatmap{background:var(--card-warm-1);border-radius:var(--r-v4-lg,14px);box-shadow:var(--sh-v4-sm,0 2px 8px #1f181214);margin-bottom:32px;padding:24px;position:relative;overflow:hidden}.novel-heatmap .heatmap-head{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.novel-heatmap .heatmap-head h3{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-1);letter-spacing:-.01em;align-items:baseline;gap:12px;margin:0;font-size:16px;font-weight:800;display:flex}.novel-heatmap .heatmap-head .period{font-family:var(--f-v4-mono,"JetBrains Mono", monospace);color:var(--ink-v4-mute);font-size:11px}.novel-heatmap .heatmap-legend{font-family:var(--f-v4-mono,"JetBrains Mono", monospace);color:var(--ink-v4-mute);align-items:center;gap:6px;font-size:10px;display:flex}.novel-heatmap .heatmap-legend .scale{gap:3px;display:flex}.novel-heatmap .heatmap-legend .scale .cell{background:var(--paper-warm-2);border-radius:2px;width:11px;height:11px}.novel-heatmap .heatmap-legend .scale .cell.l1{background:#f4d08c}.novel-heatmap .heatmap-legend .scale .cell.l2{background:#e8a85a}.novel-heatmap .heatmap-legend .scale .cell.l3{background:var(--coral)}.novel-heatmap .heatmap-legend .scale .cell.l4{background:var(--coral-d)}.novel-heatmap .heatmap-body{align-items:center;gap:48px;display:flex}.novel-heatmap .heatmap-chart{flex:none}.novel-heatmap .novel-heatmap-grid{grid-template-rows:repeat(7,14px);grid-template-columns:repeat(26,14px);grid-auto-flow:column;gap:3px;margin-bottom:12px;display:grid}.novel-heatmap .heatmap-cell{aspect-ratio:1;background:var(--paper-warm-2);cursor:pointer;border-radius:2px;transition:transform .12s;position:relative}.novel-heatmap .heatmap-cell:hover{z-index:1;box-shadow:var(--sh-v4-sm,0 2px 8px #1f181214);transform:scale(1.3)}.novel-heatmap .heatmap-cell.l1{background:#f4d08c}.novel-heatmap .heatmap-cell.l2{background:#e8a85a}.novel-heatmap .heatmap-cell.l3{background:var(--coral)}.novel-heatmap .heatmap-cell.l4{background:var(--coral-d)}.novel-heatmap .heatmap-cell.today{box-shadow:0 0 0 1.5px var(--coral)}.novel-heatmap .heatmap-months{width:439px;font-family:var(--f-v4-mono,"JetBrains Mono", monospace);color:var(--ink-v4-mute);letter-spacing:.05em;justify-content:space-between;margin-top:4px;padding:0 2px;font-size:10px;display:flex}.novel-heatmap .heatmap-summary{border-left:1px dashed var(--paper-warm-3);flex:1;grid-template-columns:repeat(2,1fr);gap:24px 32px;padding-left:48px;display:grid}.novel-heatmap .heatmap-summary .item .l{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-mute);letter-spacing:.16em;text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:700}.novel-heatmap .heatmap-summary .item .v{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-1);letter-spacing:-.02em;font-size:22px;font-weight:800;line-height:1}.novel-heatmap .heatmap-summary .item .v small{color:var(--ink-v4-3);margin-left:4px;font-size:13px;font-weight:500}.novel-chapter-track{background:var(--card-warm-1);border-radius:var(--r-v4-lg,14px);box-shadow:var(--sh-v4-sm,0 2px 8px #1f181214);margin-bottom:32px;padding:24px}.novel-chapter-track .track-head{justify-content:space-between;align-items:baseline;margin-bottom:16px;display:flex}.novel-chapter-track .track-head h3{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-1);letter-spacing:-.01em;margin:0;font-size:14px;font-weight:800}.novel-chapter-track .track-head .right{font-family:var(--f-v4-mono,"JetBrains Mono", monospace);color:var(--ink-v4-3);font-size:11px}.novel-chapter-track .track-head .right b{color:var(--ink-v4-1);font-weight:700}.novel-chapter-track .track{gap:2px;margin-bottom:12px;display:flex}.novel-chapter-track .chap{background:var(--paper-warm-2);height:24px;font-family:var(--f-v4-mono,"JetBrains Mono", monospace);color:var(--ink-v4-mute);cursor:pointer;border-radius:3px;flex:1;justify-content:center;align-items:center;font-size:9px;font-weight:600;transition:all .15s;display:flex;position:relative}.novel-chapter-track .chap:hover{transform:scaleY(1.4)}.novel-chapter-track .chap.is-done{background:var(--forest);color:#fff}.novel-chapter-track .chap.is-active{background:var(--coral);color:#fff;box-shadow:0 0 0 2px var(--coral-50)}.novel-chapter-track .chap.is-todo{background:var(--paper-warm-2);color:var(--ink-v4-mute)}.novel-chapter-track .track-empty{color:var(--ink-v4-3);margin:0;padding:14px 0 2px;font-size:13px}.novel-donut{justify-content:center;margin-bottom:20px;display:flex;position:relative}.novel-donut svg{width:160px;height:160px;transform:rotate(-90deg)}.novel-donut .donut-track{fill:none;stroke:var(--paper-warm-2);stroke-width:18px}.novel-donut .donut-seg{fill:none;stroke-width:18px;transition:stroke-width .2s}.novel-donut .donut-seg:hover{stroke-width:22px}.novel-donut .donut-lbl{text-align:center;font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.novel-donut .donut-lbl .n{color:var(--ink-v4-1);letter-spacing:-.02em;font-size:28px;font-weight:800;line-height:1}.novel-donut .donut-lbl .u{color:var(--ink-v4-mute);letter-spacing:.12em;text-transform:uppercase;margin-top:4px;font-size:10px;font-weight:600}.novel-donut-legend{flex-direction:column;gap:8px;display:flex}.novel-donut-legend .it{align-items:center;gap:10px;font-size:12px;display:flex}.novel-donut-legend .it .dot{border-radius:2px;flex-shrink:0;width:8px;height:8px}.novel-donut-legend .it .nm{color:var(--ink-v4-2);flex:1;font-weight:500}.novel-donut-legend .it .v{font-family:var(--f-v4-mono,"JetBrains Mono", monospace);color:var(--ink-v4-1);font-size:11px;font-weight:700}.novel-stat-card{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--sh-1);padding:24px;position:relative;overflow:hidden}.novel-stat-card:before{content:"";background:var(--stat-color,var(--info));height:4px;position:absolute;top:0;left:0;right:0}.novel-stat-card .stat-head{font-family:var(--f-body);font-size:var(--t-2xs);color:var(--stat-color,var(--info));letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:14px;font-weight:700;display:flex}.novel-stat-card .stat-head:before{content:"";background:var(--stat-color,var(--info));border-radius:50%;width:6px;height:6px}.novel-stat-card .stat-v{font-family:var(--f-body);color:var(--ink-900);letter-spacing:-.02em;margin:0 0 8px;font-size:32px;font-weight:700;line-height:1.05}.novel-stat-card .stat-sub{font-family:var(--f-body);font-size:var(--t-sm);color:var(--ink-500);align-items:center;gap:8px;display:flex}.novel-stat-card .stat-sub .bar{background:var(--surface-3);border-radius:var(--r-full);flex:1;max-width:120px;height:6px;overflow:hidden}.novel-stat-card .stat-sub .bar i{background:var(--stat-color,var(--info));border-radius:var(--r-full);height:100%;display:block}.novel-stat-card .stat-sub .pct{font-family:var(--f-mono);font-size:var(--t-xs);color:var(--stat-color,var(--info));font-weight:700}.novel-tl-list{flex-direction:column;gap:12px;display:flex}.novel-tl-card{background:var(--card-warm-1);border-radius:var(--r-v4-lg,14px);box-shadow:var(--sh-v4-sm,0 2px 8px #1f181214);border-left:4px solid var(--tl-color,var(--teal));cursor:pointer;grid-template-columns:64px 1fr auto;align-items:center;gap:24px;padding:20px 24px;transition:all .15s;display:grid;position:relative}.novel-tl-card:hover{box-shadow:var(--sh-v4-md,0 8px 24px #1f18121a)}.novel-tl-card.is-done{background:var(--card-warm-2);border-left-color:var(--forest)}.novel-tl-card.is-active{background:linear-gradient(135deg, var(--card-warm-1) 0%, var(--coral-50) 200%);border-left-color:var(--coral);box-shadow:0 4px 16px var(--coral-glow,#e0533c2e)}.novel-tl-card .tl-vol{text-align:center;font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif)}.novel-tl-card .tl-vol .n{color:var(--tl-color,var(--teal));letter-spacing:-.02em;font-size:32px;font-weight:800;line-height:1}.novel-tl-card.is-done .tl-vol .n{color:var(--forest)}.novel-tl-card.is-active .tl-vol .n{color:var(--coral)}.novel-tl-card .tl-vol .l{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-mute);letter-spacing:.18em;text-transform:uppercase;margin-top:4px;font-size:9.5px;font-weight:700}.novel-tl-card .tl-body h4{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-1);letter-spacing:-.015em;margin:0 0 4px;font-size:20px;font-weight:800;line-height:1.25}.novel-tl-card .tl-body p{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-3);max-width:720px;margin:0;font-size:13px;line-height:1.6}.novel-tl-card .tl-right{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.novel-tl-card .tl-right .stat{font-family:var(--f-v4-mono,"JetBrains Mono", monospace);color:var(--ink-v4-3);font-size:11px}.novel-tl-card .tl-right .stat b{color:var(--ink-v4-1);font-weight:700}.novel-tl-card .tl-right .badge{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);letter-spacing:.1em;text-transform:uppercase;border-radius:6px;align-items:center;gap:5px;padding:4px 10px;font-size:10px;font-weight:700;display:flex}.novel-tl-card .tl-right .badge:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.novel-tl-card .tl-right .badge.is-done{background:var(--forest-50);color:var(--forest-d)}.novel-tl-card .tl-right .badge.is-active{background:var(--coral);color:#fff;box-shadow:0 2px 8px var(--coral-glow,#e0533c2e)}.novel-tl-card .tl-right .badge.is-todo{background:var(--paper-warm-2);color:var(--ink-v4-3)}.novel-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.novel-card-v4{background:var(--card-warm-1);border-radius:var(--r-v4-lg,14px);box-shadow:var(--sh-v4-sm,0 2px 8px #1f181214);cursor:pointer;transition:all .2s;position:relative;overflow:hidden}.novel-card-v4:hover{box-shadow:var(--sh-v4-lg,0 16px 48px #1f181224);transform:translateY(-4px)}.novel-card-v4 .novel-cover{flex-direction:column;justify-content:flex-end;height:180px;padding:20px;display:flex;position:relative;overflow:hidden}.novel-card-v4 .novel-cover:before{content:"";background:var(--cover-bg,var(--grad-sunset,linear-gradient(135deg, var(--coral) 0%, #c73e5c 50%, #8b3f6b 100%)));z-index:0;position:absolute;inset:0}.novel-card-v4 .novel-cover:after{content:"";z-index:1;background:linear-gradient(#0000 30%,#00000080 100%);position:absolute;inset:0}.novel-card-v4 .novel-cover .deco-ink{z-index:1;opacity:.3;color:#fff;width:120px;height:120px;position:absolute;top:-10px;right:-10px}.novel-card-v4 .novel-cover .deco-spine{z-index:1;background:#ffffff26;width:2px;position:absolute;top:0;bottom:0;right:40px}.novel-card-v4 .novel-cover .deco-2{font-family:var(--f-v4-zh-dis,"Inter", "Noto Sans SC", sans-serif);color:#ffffff26;z-index:1;letter-spacing:-.04em;font-size:64px;font-weight:800;line-height:1;position:absolute;top:24px;left:22px}.novel-card-v4 .novel-cover .gen{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:#fffffff2;letter-spacing:.2em;text-transform:uppercase;z-index:2;align-items:center;gap:6px;margin-bottom:8px;font-size:10px;font-weight:700;display:flex;position:relative}.novel-card-v4 .novel-cover .gen:before{content:"";background:#fff;width:16px;height:1.5px}.novel-card-v4 .novel-cover h3{font-family:var(--f-v4-zh-dis,"Inter", "Noto Sans SC", sans-serif);color:#fff;z-index:2;text-shadow:0 2px 8px #0003;letter-spacing:-.01em;margin:0;font-size:24px;font-weight:800;line-height:1.2;position:relative}.novel-card-v4 .novel-body{padding:20px}.novel-card-v4 .novel-dsc{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-3);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:42px;margin:0 0 16px;font-size:13px;line-height:1.6;display:-webkit-box;overflow:hidden}.novel-card-v4 .novel-stats{border-top:1px solid var(--paper-warm-2);gap:0;margin:0 -20px -20px;padding:14px 20px 0;display:flex}.novel-card-v4 .novel-stats .st{flex-direction:column;flex:1;gap:2px;display:flex}.novel-card-v4 .novel-stats .st:not(:last-child){border-right:1px solid var(--paper-warm-2);margin-right:12px;padding-right:12px}.novel-card-v4 .novel-stats .st .n{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-1);letter-spacing:-.01em;font-size:16px;font-weight:800;line-height:1}.novel-card-v4 .novel-stats .st .l{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-mute);letter-spacing:.12em;text-transform:uppercase;font-size:9.5px;font-weight:600}.novel-card-v4 .novel-status-pip{z-index:3;font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);letter-spacing:.1em;text-transform:uppercase;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0006;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:10px;font-weight:700;display:flex;position:absolute;top:12px;right:12px}.novel-card-v4 .novel-status-pip .pt{background:var(--forest-l);width:5px;height:5px;box-shadow:0 0 6px var(--forest-l);border-radius:50%}.novel-card-v4 .novel-status-pip.is-draft .pt{background:var(--ink-v4-faint);box-shadow:none}.novel-card-v4 .novel-status-pip.is-pub .pt{background:var(--gold-l);box-shadow:0 0 6px var(--gold-l)}.novel-char-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.novel-char-card{background:var(--card-warm-1);border-radius:var(--r-v4-lg,14px);box-shadow:var(--sh-v4-sm,0 2px 8px #1f181214);cursor:pointer;grid-template-columns:220px 1fr;transition:all .2s;display:grid;position:relative;overflow:hidden}.novel-char-card:hover{box-shadow:var(--sh-v4-md,0 8px 24px #1f18121a);transform:translateY(-3px)}.novel-char-card .char-left{background:var(--char-hero-bg,var(--grad-sunset,linear-gradient(135deg, var(--coral) 0%, #c73e5c 100%)));flex-direction:column;justify-content:space-between;padding:24px 20px;display:flex;position:relative;overflow:hidden}.novel-char-card .char-left:before{content:"";background:radial-gradient(circle,#fff3 0%,#0000 60%);width:120px;height:120px;position:absolute;top:-30px;right:-20px}.novel-char-card .char-left:after{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--ink-v4-1) 15%, transparent) 0%, transparent 60%);width:100px;height:100px;position:absolute;bottom:-40px;left:-20px}.novel-char-card .char-left .deco{font-family:var(--f-v4-zh-dis,"Inter", "Noto Sans SC", sans-serif);color:#ffffff29;letter-spacing:-.04em;z-index:0;font-size:56px;font-weight:800;line-height:1;position:absolute;top:12px;right:16px}.novel-char-card .char-left .role-tag{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:#fff;letter-spacing:.16em;text-transform:uppercase;z-index:1;align-items:center;gap:6px;margin-bottom:12px;font-size:10px;font-weight:700;display:flex;position:relative}.novel-char-card .char-left .role-tag:before{content:"";background:#fff;width:14px;height:1.5px}.novel-char-card .char-left .char-av{color:#fff;width:64px;height:64px;font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);z-index:1;letter-spacing:-.02em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff3;border-radius:16px;justify-content:center;align-items:center;margin-bottom:12px;font-size:30px;font-weight:800;display:flex;position:relative;box-shadow:0 4px 12px #00000026,inset 0 1px #ffffff4d}.novel-char-card .char-left .char-pills{z-index:1;flex-direction:column;gap:6px;display:flex;position:relative}.novel-char-card .char-left .char-pills .pill{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);letter-spacing:.1em;text-transform:uppercase;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff2e;border-radius:4px;width:fit-content;padding:3px 8px;font-size:10px;font-weight:600}.novel-char-card .char-right{flex-direction:column;justify-content:space-between;padding:24px;display:flex}.novel-char-card .char-name{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-1);letter-spacing:-.015em;margin:0 0 8px;font-size:22px;font-weight:800;line-height:1.2}.novel-char-card .char-dsc{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-3);margin:0 0 16px;font-size:13px;line-height:1.6}.novel-char-card .char-attrs{border-top:1px dashed var(--paper-warm-3);grid-template-columns:1fr 1fr;gap:10px 16px;padding-top:14px;display:grid}.novel-char-card .char-attrs .k{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-mute);letter-spacing:.16em;text-transform:uppercase;margin-bottom:2px;font-size:9.5px;font-weight:700}.novel-char-card .char-attrs .v{color:var(--ink-v4-1);font-size:12.5px;font-weight:600;font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);line-height:1.4}.novel-mem-card{background:var(--card-warm-1);border-radius:var(--r-v4-lg,14px);box-shadow:var(--sh-v4-sm,0 2px 8px #1f181214);cursor:pointer;padding:24px;transition:all .2s;position:relative;overflow:hidden}.novel-mem-card:before{content:"";background:var(--mem-accent,var(--plum));width:4px;position:absolute;top:0;bottom:0;left:0}.novel-mem-card:hover{box-shadow:var(--sh-v4-md,0 8px 24px #1f18121a);transform:translateY(-2px)}.novel-mem-card .mem-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.novel-mem-card .mem-head .src{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--mem-accent,var(--plum));letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:8px;font-size:10px;font-weight:700;display:flex}.novel-mem-card .mem-head .src:before{content:"";background:var(--mem-accent,var(--plum));border-radius:50%;width:6px;height:6px}.novel-mem-card .mem-head .imp{align-items:baseline;gap:8px;display:flex}.novel-mem-card .mem-head .imp .lbl{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-mute);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:600}.novel-mem-card .mem-head .imp .v{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--mem-accent,var(--plum));letter-spacing:-.015em;font-size:22px;font-weight:800;line-height:1}.novel-mem-card h3{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-1);letter-spacing:-.01em;margin:0 0 8px;font-size:19px;font-weight:800;line-height:1.3}.novel-mem-card .mem-dsc{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-2);margin:0 0 16px;font-size:13.5px;line-height:1.65}.novel-mem-card .mem-foot{border-top:1px dashed var(--paper-warm-3);color:var(--ink-v4-mute);font-size:11px;font-family:var(--f-v4-mono,"JetBrains Mono", monospace);justify-content:space-between;align-items:center;padding-top:12px;display:flex}.novel-mem-card .mem-foot .ref b{color:var(--ink-v4-2);font-weight:600}.novel-msg-list{flex-direction:column;gap:12px;display:flex}.novel-msg-card{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--sh-1);cursor:pointer;border-left:4px solid var(--msg-accent,var(--accent));grid-template-columns:56px 1fr auto;align-items:flex-start;gap:20px;padding:20px 24px;transition:all .15s;display:grid;position:relative}.novel-msg-card:hover{box-shadow:var(--sh-2)}.novel-msg-card.is-read{background:var(--surface-3);opacity:.85}.novel-msg-card .msg-type-ico{border-radius:var(--r-xl);background:var(--msg-accent-bg,var(--accent-50));width:48px;height:48px;color:var(--msg-accent,var(--accent));justify-content:center;align-items:center;font-weight:700;display:flex}.novel-msg-card .msg-type-ico svg{width:22px;height:22px}.novel-msg-card .msg-type-ico i{font-size:20px}.novel-msg-card .msg-body .msg-ttl-line{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.novel-msg-card .msg-body .msg-ttl{font-family:var(--f-body);font-size:var(--t-h2);color:var(--ink-900);letter-spacing:-.01em;font-weight:700;line-height:1.3}.novel-msg-card .msg-body .msg-tag{font-family:var(--f-body);font-size:var(--t-2xs);color:var(--msg-accent,var(--accent));letter-spacing:.14em;text-transform:uppercase;background:var(--msg-accent-bg,var(--accent-50));border-radius:var(--r-sm);padding:3px 8px;font-weight:700}.novel-msg-card .msg-body .msg-tag.is-urgent{color:var(--err);background:color-mix(in srgb, var(--err) 12%, transparent)}.novel-msg-card .msg-body .msg-dsc{font-family:var(--f-body);font-size:var(--t-body);color:var(--ink-500);margin:0 0 10px;line-height:1.6}.novel-msg-card .msg-body .msg-src{font-size:var(--t-xs);color:var(--ink-400);font-family:var(--f-mono);gap:16px;display:flex}.novel-msg-card .msg-body .msg-src b{color:var(--ink-700);font-weight:600}.novel-msg-card .msg-right{flex-direction:column;align-items:flex-end;gap:6px;padding-top:4px;display:flex}.novel-msg-card .msg-right .msg-when{font-family:var(--f-mono);font-size:var(--t-xs);color:var(--ink-400)}.novel-msg-card .msg-right .msg-pip{font-family:var(--f-body);font-size:var(--t-2xs);color:var(--accent);letter-spacing:.12em;text-transform:uppercase;background:var(--accent-50);border-radius:var(--r-sm);align-items:center;gap:5px;padding:2px 8px;font-weight:700;display:flex}.novel-msg-card .msg-right .msg-pip:before{content:"";background:var(--accent);width:5px;height:5px;box-shadow:0 0 6px color-mix(in srgb, var(--accent) 45%, transparent);border-radius:50%}.novel-msg-card .msg-right .msg-view{font-family:var(--f-mono);font-size:var(--t-xs);color:var(--ink-400)}.novel-kb-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.novel-kb-doc{background:var(--card-warm-1);border-radius:var(--r-v4-lg,14px);box-shadow:var(--sh-v4-sm,0 2px 8px #1f181214);cursor:pointer;flex-direction:column;transition:all .2s;display:flex;overflow:hidden}.novel-kb-doc:hover{box-shadow:var(--sh-v4-md,0 8px 24px #1f18121a);transform:translateY(-2px)}.novel-kb-doc .kb-top{background:var(--kb-cover-bg,var(--grad-teal,linear-gradient(135deg, var(--teal) 0%, var(--teal-l) 100%)));height:88px;font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:#fff;text-shadow:0 2px 8px #0003;letter-spacing:-.02em;justify-content:center;align-items:center;font-size:36px;font-weight:800;display:flex;position:relative}.novel-kb-doc .kb-top:before{content:"";background:radial-gradient(circle,#fff3 0%,#0000 60%);width:100px;height:100px;position:absolute;top:-20px;right:-20px}.novel-kb-doc .kb-body{flex-direction:column;flex:1;padding:20px;display:flex}.novel-kb-doc .kb-body .src{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--teal-d);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:6px;margin-bottom:8px;font-size:10px;font-weight:700;display:flex}.novel-kb-doc .kb-body .src:before{content:"";background:var(--teal);width:12px;height:1.5px}.novel-kb-doc .kb-body h3{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-1);letter-spacing:-.01em;margin:0 0 8px;font-size:18px;font-weight:800;line-height:1.3}.novel-kb-doc .kb-body .ex{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-3);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;margin:0 0 16px;font-size:12.5px;line-height:1.6;display:-webkit-box;overflow:hidden}.novel-kb-doc .kb-body .meta{border-top:1px dashed var(--paper-warm-3);font-family:var(--f-v4-mono,"JetBrains Mono", monospace);color:var(--ink-v4-mute);justify-content:space-between;align-items:center;padding-top:12px;font-size:11px;display:flex}.novel-kb-doc .kb-body .meta .act{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--coral-d);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:700}.novel-act-list{flex-direction:column;gap:10px;display:flex}.novel-act-card{background:var(--card-warm-1);border-radius:var(--r-v4-md,10px);box-shadow:var(--sh-v4-xs,0 1px 2px #1f18120f);cursor:pointer;grid-template-columns:44px 1fr auto;align-items:center;gap:16px;padding:14px 18px;transition:all .15s;display:grid}.novel-act-card:hover{box-shadow:var(--sh-v4-sm,0 2px 8px #1f181214)}.novel-act-card .act-ico{background:var(--act-ico-bg,var(--coral-50));width:36px;height:36px;color:var(--act-ico-color,var(--coral-d));border-radius:8px;justify-content:center;align-items:center;display:flex}.novel-act-card .act-ico svg{width:16px;height:16px}.novel-act-card .act-ico i{font-size:16px}.novel-act-card .act-body .act-ttl{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-1);margin:0 0 2px;font-size:13.5px;font-weight:500;line-height:1.4}.novel-act-card .act-body .act-ttl b{color:var(--coral-d);font-weight:700}.novel-act-card .act-body .act-meta{color:var(--ink-v4-mute);font-size:11px;font-family:var(--f-v4-mono,"JetBrains Mono", monospace);gap:12px;display:flex}.novel-act-card .act-right{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.novel-act-card .act-right .wrd{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--coral-d);letter-spacing:-.01em;font-size:18px;font-weight:800;line-height:1}.novel-act-card .act-right .wrd.mute{color:var(--ink-v4-3);font-size:12px;font-family:var(--f-v4-mono,"JetBrains Mono", monospace);font-weight:500}.novel-act-card .act-right .src{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-mute);letter-spacing:.14em;text-transform:uppercase;font-size:9.5px;font-weight:600}.novel-section-head{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.novel-section-head h2{font-family:var(--f-body);font-size:var(--t-title);color:var(--ink-900);letter-spacing:-.015em;align-items:center;gap:12px;margin:0;font-weight:700;display:flex}.novel-section-head h2 .num{font-family:var(--f-mono);font-size:var(--t-xs);color:var(--accent);background:var(--accent-50);border-radius:var(--r-md);letter-spacing:.04em;padding:4px 10px;font-weight:700}.novel-section-head .right{align-items:center;gap:8px;display:flex}.novel-v4-btn{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);letter-spacing:-.005em;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;align-items:center;gap:8px;padding:10px 18px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.novel-v4-btn svg{width:14px;height:14px}.novel-v4-btn.is-primary{background:var(--coral);color:#fff;box-shadow:0 2px 8px var(--coral-glow,#e0533c2e)}.novel-v4-btn.is-primary:hover{background:var(--coral-d);box-shadow:0 6px 20px var(--coral-glow,#e0533c2e);transform:translateY(-1px)}.novel-v4-btn.is-light{background:var(--card-warm-1);color:var(--ink-v4-1);box-shadow:var(--sh-v4-sm,0 2px 8px #1f181214)}.novel-v4-btn.is-light:hover{background:var(--card-warm-2);transform:translateY(-1px)}.novel-v4-btn.is-ghost{color:var(--ink-v4-2);background:0 0}.novel-v4-btn.is-ghost:hover{background:var(--paper-warm-2);color:var(--ink-v4-1)}.novel-v4-btn.is-sm{border-radius:6px;padding:6px 12px;font-size:12px}.novel-v4-btn.is-lg{border-radius:10px;padding:14px 24px;font-size:14px}.novel-v4-btn.on-hero{background:var(--card-warm-1);color:var(--ink-v4-1);box-shadow:var(--sh-v4-sm,0 2px 8px #1f181214)}.novel-v4-btn.on-hero.is-ghost{color:#ffffffd9;background:0 0}.novel-v4-btn.on-hero.is-ghost:hover{color:#fff;background:#ffffff14}.novel-now-writing{z-index:50;background:var(--ink-v4-1);color:#fff;box-shadow:var(--sh-v4-lg,0 16px 48px #1f181224);font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);cursor:pointer;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:10px;padding:10px 18px 10px 12px;font-size:12.5px;font-weight:600;display:flex;position:fixed;bottom:24px;right:24px}.novel-now-writing .pulse{background:var(--coral);width:8px;height:8px;box-shadow:0 0 8px var(--coral);border-radius:50%;animation:1.5s infinite v4-live-pulse}.novel-now-writing .arrow{opacity:.5;font-size:14px}@keyframes v4-live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}.novel-pagination-bar{border-top:.5px solid var(--paper-warm-2);justify-content:space-between;align-items:center;margin-top:24px;padding:16px 0 8px;display:flex}.novel-pagination-bar .left{font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);color:var(--ink-v4-3);font-size:12px}.novel-pagination-bar .left b{color:var(--ink-v4-1);font-weight:700;font-family:var(--f-v4-mono,"JetBrains Mono", monospace)}.novel-pagination-bar .right{align-items:center;gap:6px;display:flex}.novel-pagination-bar .pg-it{background:var(--card-warm-1);width:32px;height:32px;color:var(--ink-v4-2);border:1px solid var(--paper-warm-2);font-family:var(--f-v4-sans,"Inter", system-ui, sans-serif);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;font-size:12px;font-weight:600;transition:all .12s;display:inline-flex}.novel-pagination-bar .pg-it:hover{border-color:var(--ink-v4-1)}.novel-pagination-bar .pg-it.is-on{background:var(--ink-v4-1);color:#fff;border-color:var(--ink-v4-1)}.novel-pagination-bar .pg-it.is-on:hover{background:var(--coral);border-color:var(--coral)}.novel-pagination-bar .pg-it.is-arrow{font-size:14px}.ri-spin{animation:1s linear infinite ri-spin-anim;display:inline-block}@keyframes ri-spin-anim{to{transform:rotate(360deg)}}@media (width<=1100px){.novel-tool-grid,.novel-grid{grid-template-columns:repeat(2,1fr)}.novel-char-grid,.novel-mem-layout,.novel-kb-grid{grid-template-columns:1fr}}@media (width<=720px){.novel-tool-grid,.novel-grid{grid-template-columns:1fr}.novel-heatmap .heatmap-body{flex-direction:column;align-items:stretch;gap:24px}.novel-heatmap .novel-heatmap-grid{grid-template-rows:repeat(7,auto);grid-template-columns:repeat(26,1fr)}.novel-heatmap .heatmap-months{width:auto}.novel-heatmap .heatmap-summary{border-left:none;border-top:1px dashed var(--paper-warm-3);padding-top:20px;padding-left:0}}.novel-inb-toolbar,.inb-toolbar{flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:10px;min-width:0;margin-bottom:14px;display:flex}@media (width<=900px){.novel-inb-toolbar,.inb-toolbar{flex-wrap:wrap}}.novel-inb-toolbar .novel-inb-tabs,.novel-inb-toolbar .inb-tabs,.inb-toolbar .novel-inb-tabs,.inb-toolbar .inb-tabs{scrollbar-width:none;flex:0 auto;min-width:0;margin-bottom:0;overflow-x:auto}.inb-toolbar .inb-tabs::-webkit-scrollbar{display:none}.novel-inb-toolbar .novel-inb-tabs::-webkit-scrollbar{display:none}.inb-toolbar>.novel-switch,.inb-toolbar>.arco-select{flex:none}.novel-inb-toolbar-actions,.inb-toolbar-actions{flex-wrap:wrap;flex:none;gap:8px;display:inline-flex}.novel-page-actions{align-items:center;gap:8px;display:inline-flex}.novel-page-actions .novel-v4-btn.is-sm{border-radius:8px;padding:7px 14px;font-size:13px}@media (width<=720px){.novel-char-card{grid-template-columns:1fr}.novel-char-card .char-left{padding:20px 16px}.novel-char-card .char-right{padding:16px}}.novel-inb-tabs,.inb-tabs{background:var(--surface-3);border:1px solid var(--line);border-radius:var(--r-xl);align-items:center;gap:4px;margin:0 0 24px;padding:4px;display:inline-flex}@media (width<=900px){.novel-inb-tabs,.inb-tabs{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}}.novel-inb-tab,.inb-tab{box-sizing:border-box;min-height:var(--mobile-tap-target,44px);font-family:var(--f-body);font-size:var(--t-body);color:var(--ink-500);border-radius:var(--r-lg);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;align-items:center;gap:6px;padding:8px 14px;font-weight:500;transition:background .14s,color .14s,box-shadow .14s;display:inline-flex}.novel-inb-tab:hover,.inb-tab:hover{background:var(--surface);color:var(--ink-900)}.novel-inb-tab.is-on,.inb-tab.is-on{background:var(--surface);color:var(--accent);box-shadow:var(--sh-1), 0 0 0 1px var(--accent-line);font-weight:600}.novel-inb-tab .cnt,.inb-tab .cnt{min-width:22px;height:18px;font-size:var(--t-xs);background:var(--line);color:var(--ink-700);border-radius:var(--r-md);justify-content:center;align-items:center;padding:0 6px;font-weight:600;display:inline-flex}.novel-inb-tab.is-on .cnt,.inb-tab.is-on .cnt{background:var(--accent);color:var(--solid-tx)}@media (width<=640px){.novel-inb-tab,.inb-tab{gap:5px;padding:8px 10px}.novel-inb-tab .cnt,.inb-tab .cnt{min-width:20px;padding:0 5px}}:root{--bp-sm:640px;--bp-md:960px;--bp-lg:1200px}.novel-page{width:100%;max-width:1200px;margin:0 auto;padding:20px 24px 40px}@media (width<=960px){.novel-page{padding:16px 20px 32px}}@media (width<=640px){.novel-page{padding:12px 12px 28px}}.novel-hero{grid-template-columns:1fr auto}@media (width<=960px){.novel-hero{grid-template-columns:1fr;gap:12px;padding:16px 20px}.novel-hero .novel-hero-target{width:56px;height:56px;margin:0 auto}.novel-hero .novel-hero-target svg{width:56px;height:56px}.novel-hero .novel-hero-target .target-lbl .n{font-size:15px}.novel-hero .novel-hero-target .target-lbl .u{margin-top:2px;font-size:9px}.novel-hero-actions{flex-flow:wrap}}@media (width<=640px){.novel-hero{border-radius:10px;gap:0;padding:14px 16px;position:relative}.novel-hero:has(.novel-hero-target) .novel-hero-main{padding-right:64px}.novel-hero .novel-hero-eyebrow{letter-spacing:.1em;margin-bottom:4px;font-size:10px}.novel-hero h1{margin-bottom:3px;font-size:19px!important}.novel-hero .novel-hero-sub{margin-bottom:8px;font-size:12.5px!important}.novel-hero .novel-hero-meta{flex-wrap:wrap;gap:4px 12px}.novel-hero-meta .sep{display:none}.novel-hero-meta .n{font-size:15px!important}.novel-hero .novel-hero-target{width:52px;height:52px;margin:0;position:absolute;top:12px;right:12px}.novel-hero .novel-hero-target svg{width:52px;height:52px}.novel-hero .novel-hero-target .target-lbl .n{font-size:14px}.novel-hero .novel-hero-target .target-lbl .u{margin-top:1px;font-size:8px}.novel-hero .novel-hero-target .target-lbl .p{display:none}.novel-hero-actions{flex-flow:wrap}.novel-hero-actions button{width:auto}}.novel-grid{grid-template-columns:repeat(3,1fr)}@media (width<=960px){.novel-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.novel-grid{grid-template-columns:1fr}}.novel-tool-grid{grid-template-columns:repeat(4,1fr)}@media (width<=1200px){.novel-tool-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.novel-tool-grid{grid-template-columns:1fr}}.novel-char-grid{grid-template-columns:repeat(2,1fr)}@media (width<=960px){.novel-char-grid{grid-template-columns:1fr}}.novel-mem-layout{grid-template-columns:1fr 320px}@media (width<=960px){.novel-mem-layout{grid-template-columns:1fr}.mem-side{position:static}}.kpi-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}@media (width<=1200px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.kpi-grid{grid-template-columns:1fr}}.plan-stats{grid-template-columns:1.4fr 1fr 1fr}@media (width<=880px){.plan-stats{grid-template-columns:1fr}}.novel-filter-bar,.novel-page-toolbar{flex-wrap:wrap}@media (width<=640px){.novel-inb-toolbar,.inb-toolbar{flex-wrap:wrap}}.novel-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.novel-table-wrap .arco-table{min-width:640px}@media (width<=640px){.novel-header{padding:0 12px!important}.user-trigger .user-name{display:none}.novel-bell-popover{min-width:320px!important;max-width:90vw!important}}@media (width<=768px){.arco-modal{max-width:calc(100vw - 16px)}}:root{--dur-fast:.12s;--dur-base:.18s;--dur-slow:.28s;--dur-enter:.45s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-out-quart:cubic-bezier(.25, 1, .5, 1)}html{scroll-behavior:smooth}::selection{background:#e0533c38}[data-theme=dark] ::selection{background:#f47a5f61}*{scrollbar-width:thin;scrollbar-color:var(--novel-border-dark) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-thumb{background:var(--novel-border-dark);background-clip:padding-box;border:2px solid #0000;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--novel-ink-mute);background-clip:padding-box;border:2px solid #0000}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#4a4238 padding-box padding-box;border:2px solid #0000}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#5c5240 padding-box padding-box;border:2px solid #0000}[data-theme=dark]{scrollbar-color:#4a4238 transparent}button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible,[role=button]:focus-visible,[role=link]:focus-visible,[role=tab]:focus-visible,input:focus-visible:not(.arco-input){outline:2px solid var(--coral)!important;outline-offset:2px!important}[data-theme=dark] button:focus-visible,[data-theme=dark] a:focus-visible,[data-theme=dark] select:focus-visible,[data-theme=dark] textarea:focus-visible,[data-theme=dark] [tabindex]:focus-visible,[data-theme=dark] [role=button]:focus-visible{outline-color:var(--coral-l)!important}.arco-input-wrapper,.arco-textarea-wrapper,.arco-select-view,.arco-input-number,.arco-picker{transition:border-color var(--dur-base) var(--ease-standard), box-shadow var(--dur-base) var(--ease-standard)}.arco-input-wrapper.arco-input-focus,.arco-input-wrapper:focus-within,.arco-textarea-wrapper.arco-textarea-focus,.arco-textarea-wrapper:focus-within{box-shadow:0 0 0 3px var(--accent-soft,#ea580c1f)}.btn:active:not(:disabled),.novel-v4-btn:active:not(:disabled),.novel-pill-button:active:not(:disabled),.novel-icon-button:active:not(:disabled),.btn-icon:active:not(:disabled),.novel-tag-chip:active,.inb-tab:active,.novel-theme-toggle:active,.novel-menu-burger:active,.novel-header-bell:active,.user-trigger:active,.novel-pagination-bar .pg-it:active{transform:translateY(0)scale(.96)}.novel-tool-card:active,.novel-card-v4:active,.novel-char-card:active,.novel-mem-card:active,.novel-kb-doc:active{transform:translateY(-1px)scale(.995)}.novel-tl-card:active,.novel-msg-card:active,.novel-act-card:active,.setting-item:active,.novel-panel.is-clickable:active{transform:translateY(0)scale(.995)}@keyframes af-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes af-fade{0%{opacity:0}to{opacity:1}}.anim-rise{animation:af-rise var(--dur-enter) var(--ease-out-quart) both}.anim-fade{animation:af-fade var(--dur-enter) var(--ease-out-quart) both}.anim-stagger>*{animation:af-rise var(--dur-enter) var(--ease-out-quart) both}.anim-stagger>:nth-child(2){animation-delay:50ms}.anim-stagger>:nth-child(3){animation-delay:.1s}.anim-stagger>:nth-child(4){animation-delay:.15s}.anim-stagger>:nth-child(5){animation-delay:.2s}.anim-stagger>:nth-child(6){animation-delay:.25s}.anim-stagger>:nth-child(7){animation-delay:.3s}.anim-stagger>:nth-child(8){animation-delay:.35s}.anim-stagger>:nth-child(n+9){animation-delay:.4s}.novel-hero,.novel-tool-grid>.novel-tool-card,.novel-grid>.novel-card-v4,.novel-char-grid>.novel-char-card,.novel-kb-grid>.novel-kb-doc,.novel-msg-list>.novel-msg-card,.novel-act-list>.novel-act-card,.novel-tl-list>.novel-tl-card{animation:af-rise var(--dur-enter) var(--ease-out-quart) both}.novel-tool-grid>:nth-child(2),.novel-grid>:nth-child(2),.novel-char-grid>:nth-child(2),.novel-kb-grid>:nth-child(2){animation-delay:60ms}.novel-tool-grid>:nth-child(3),.novel-grid>:nth-child(3),.novel-char-grid>:nth-child(3),.novel-kb-grid>:nth-child(3){animation-delay:.12s}.novel-tool-grid>:nth-child(4),.novel-grid>:nth-child(n+4){animation-delay:.18s}.novel-skeleton{background:var(--novel-bg-soft);border-radius:8px;position:relative;overflow:hidden}.novel-skeleton:after{content:"";animation:af-shimmer 1.6s var(--ease-standard) infinite;background:linear-gradient(90deg,#0000,#ffffff8c,#0000);position:absolute;inset:0;transform:translate(-100%)}[data-theme=dark] .novel-skeleton:after{background:linear-gradient(90deg,#0000,#ffffff12,#0000)}@keyframes af-shimmer{to{transform:translate(100%)}}.novel-skeleton.is-text{height:13px;margin:6px 0}.novel-skeleton.is-title{width:55%;height:20px;margin:8px 0}.novel-skeleton.is-round{border-radius:999px}.novel-v4-btn:disabled,.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn.is-danger,.novel-v4-btn.is-danger{background:var(--err);color:#fff;border:1px solid #0000}.btn.is-danger:hover:not(:disabled),.novel-v4-btn.is-danger:hover:not(:disabled){background:var(--err);transform:translateY(-1px)}.btn.is-ghost{color:var(--ink-v4-2);background:0 0;border-color:#0000}.btn.is-ghost:hover:not(:disabled){background:var(--paper-warm-2);color:var(--ink-v4-1)}.btn.is-loading,.novel-v4-btn.is-loading{pointer-events:none;position:relative;color:#0000!important}.btn.is-loading:after,.novel-v4-btn.is-loading:after{content:"";border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:14px;height:14px;margin:-7px 0 0 -7px;animation:.7s linear infinite af-spin;position:absolute;top:50%;left:50%}.btn.is-loading:not(.btn-primary):not(.is-danger):after,.novel-v4-btn.is-loading:not(.is-primary):not(.is-danger):after{border-color:#1f181226;border-top-color:var(--coral)}@keyframes af-spin{to{transform:rotate(360deg)}}.novel-panel.is-clickable{cursor:pointer;transition:border-color var(--dur-base) var(--ease-standard), box-shadow var(--dur-base) var(--ease-standard), transform var(--dur-base) var(--ease-standard)}.novel-panel.is-clickable:hover{border-color:var(--novel-brand-300);box-shadow:var(--shadow-md,0 4px 16px -2px #1a181514)}.novel-panel.is-clickable:focus-visible{outline:2px solid var(--coral);outline-offset:2px}.novel-field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.novel-field-label{letter-spacing:.02em;color:var(--ink-v4-2);font-size:12px;font-weight:600}.novel-field-label .req{color:var(--coral);margin-left:2px}.novel-field input,.novel-field select,.novel-field textarea{border:1px solid var(--novel-border);background:var(--novel-input-bg);color:var(--ink-v4-1);transition:border-color var(--dur-base) var(--ease-standard), box-shadow var(--dur-base) var(--ease-standard);border-radius:8px;padding:9px 12px;font-family:inherit;font-size:13px}.novel-field input:focus,.novel-field select:focus,.novel-field textarea:focus{border-color:var(--novel-brand-600);box-shadow:0 0 0 3px var(--accent-soft,#ea580c1f);outline:none}.novel-field-help{color:var(--ink-v4-3);font-size:12px}.novel-field-error{color:var(--novel-danger,var(--err));font-size:12px}body .arco-input-wrapper,body .arco-textarea-wrapper,body .arco-input-number,body .arco-picker{border-radius:8px}body .arco-modal{box-shadow:var(--sh-v4-xl,0 32px 80px #1f18122e);border-radius:16px;overflow:hidden}body .arco-trigger-popup,body .arco-dropdown{box-shadow:var(--sh-v4-lg,0 16px 48px #1f181224);border-radius:12px}body .arco-message,body .arco-notification{border-radius:12px}body .arco-table td{transition:background-color var(--dur-fast) var(--ease-standard)}body .arco-btn{transition:color var(--dur-fast) var(--ease-standard), background-color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard), transform var(--dur-fast) var(--ease-standard)}body .arco-btn:not(.arco-btn-disabled):active{transform:scale(.97)}a{transition:color var(--dur-fast) var(--ease-standard)}button,a,[role=button]{-webkit-tap-highlight-color:transparent}button,[role=button]{touch-action:manipulation}@media (pointer:coarse){.btn-icon{width:32px;height:32px}.novel-icon-button{width:36px;height:36px}}.novel-now-writing{bottom:calc(24px + env(safe-area-inset-bottom,0px));right:calc(24px + env(safe-area-inset-right,0px))}@media (width<=720px){.novel-now-writing{bottom:calc(16px + env(safe-area-inset-bottom,0px));right:calc(16px + env(safe-area-inset-right,0px))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root,[data-theme=novel],[data-theme=light]{--ink-900:#14110f;--ink-800:#221e1b;--ink-700:#332e29;--ink-600:#4a443d;--ink-500:#575048;--ink-400:#635d55;--ink-350:#706961;--ink-300:#b5aca0;--ink-200:#d7cfc3;--ink-100:#e8e2d8;--text-primary:var(--ink-900);--text-secondary:var(--ink-600);--text-tertiary:var(--ink-400);--text-muted:var(--ink-500);--bg-secondary:var(--surface-3);--border-color:var(--line);--bg:#f7f5f2;--surface:#fff;--surface-2:#faf8f5;--surface-3:#f2efea;--line:#e4ded4;--line-2:#efeae2;--accent:#c2410c;--accent-hover:#9a3412;--accent-50:#fdf0e8;--accent-line:#e8c4ac;--accent-tx:#fff;--focus:#ea580c;--solid-pri:#c2410c;--solid-pri-hover:#9a3412;--solid-pri-tx:#fff;--solid-pri-grad:linear-gradient(135deg, var(--solid-pri), var(--solid-pri-hover));--solid-pri-grad-hover:linear-gradient(135deg, var(--solid-pri-hover), var(--solid-pri));--ok:#15803d;--ok-bg:#f0fdf4;--warn:#b45309;--warn-bg:#fffbeb;--warn-tx:#fff;--err:#b91c1c;--err-bg:#fef2f2;--accent-text:#a83a08;--warn-text:#a04608;--ok-text:#163;--info:#1d4ed8;--info-bg:#eff6ff;--violet:#5b4bc4;--violet-bg:#f5f3ff;--violet-tx:#fff;--t-text:#6b7a8f;--t-image:#b07a3c;--t-video:#7a6ba8;--t-audio:#4c8a86;--t-char:#a8707e;--t-shots:#96794a;--t-model:#5b6ba8;--t-latent:#8a6a9a;--t-cam:#4f7a9a;--t-any:#8e857a;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--solid:#221e1b;--solid-tx:#fff;--r-sm:4px;--r-md:6px;--r-lg:8px;--r-xl:10px;--r-full:999px;--sh-1:0 1px 2px #221e1b0d;--sh-2:0 4px 16px #221e1b17;--sh-pop:0 8px 28px #221e1b24;--f-display:"Noto Serif SC", "Songti SC", Georgia, serif;--f-body:"Inter", "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", "EmojiOne Color", emoji;--f-mono:"SF Mono", "JetBrains Mono", Menlo, monospace;--t-title:20px;--t-h2:15px;--t-h3:13px;--t-body:13px;--t-sm:12px;--t-xs:11px;--t-2xs:10px;--ease:cubic-bezier(.4, 0, .2, 1);--d-fast:.1s;--d:.16s;--d-slow:.24s}[data-theme=dark]{--ink-900:#f2ede4;--ink-800:#e5ded2;--ink-700:#d2c9bb;--ink-600:#b8ae9e;--ink-500:#9a9082;--ink-400:#9e9486;--ink-300:#978d7e;--ink-350:#a0968a;--ink-200:#3a352f;--ink-100:#2a2622;--bg:#111010;--surface:#181615;--surface-2:#1e1c1a;--surface-3:#252220;--line:#2c2825;--line-2:#2a2522;--accent:#ea580c;--accent-hover:#f97316;--accent-50:#2a1b12;--accent-line:#4a2e1d;--accent-tx:#14110f;--focus:#f97316;--solid-pri:#c2410c;--solid-pri-hover:#c8480e;--solid-pri-tx:#fff;--solid-pri-grad:linear-gradient(135deg, var(--solid-pri), var(--solid-pri-hover));--solid-pri-grad-hover:linear-gradient(135deg, var(--solid-pri-hover), var(--solid-pri));--t-text:#8c9db2;--t-image:#ce9450;--t-video:#9887c6;--t-audio:#62a5a0;--t-char:#c48c99;--t-shots:#b29662;--t-model:#7c8cc9;--t-latent:#a583b4;--t-cam:#6793b2;--t-any:#7a7166;--ok:#4ade80;--ok-bg:#14251a;--warn:#fbbf24;--warn-bg:#2a2213;--warn-tx:#14110f;--accent-text:#f97316;--warn-text:#fbbf24;--ok-text:#4ade80;--err:#f87171;--err-bg:#2a1616;--info:#60a5fa;--info-bg:#141e2e;--violet:#a78bfa;--violet-bg:#1d1a2e;--violet-tx:#14110f;--sh-1:0 1px 2px #0006;--sh-2:0 4px 16px #00000080;--sh-pop:0 8px 28px #0009;--solid:#e5ded2;--solid-tx:#171513}.v2{max-width:1080px;font-family:var(--f-body);font-size:var(--t-body);color:var(--ink-700);-webkit-font-smoothing:antialiased;margin:0 auto;line-height:1.6}.v2.immerse{max-width:none;height:100%;margin:0}.v2 h1,.v2 h2,.v2 h3,.v2 h4,.v2 h5,.v2 p,.v2 ul,.v2 ol,.v2 dl,.v2 dd,.v2 figure{margin:0}.v2 a{color:inherit;text-decoration:none}.v2 b,.v2 strong{color:var(--ink-800);font-weight:600}.v2 code,.v2 .mono{font-family:var(--f-mono)}.v2 :focus-visible{outline:2px solid var(--focus);outline-offset:1px;border-radius:var(--r-sm)}.v2 ::selection{background:var(--accent-50);color:var(--accent-hover)}.v2 .btn{--h:30px;height:var(--h);font-family:inherit;font-size:var(--t-sm);border-radius:var(--r-md);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background var(--d-fast) var(--ease), border-color var(--d-fast) var(--ease), color var(--d-fast) var(--ease), box-shadow var(--d-fast) var(--ease), transform var(--d-fast) var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-weight:500;line-height:1;display:inline-flex}.v2 .btn:active{transform:scale(.98)}.v2 .btn.sm{--h:26px;font-size:var(--t-xs);padding:0 8px}.v2 .btn.lg{--h:36px;font-size:var(--t-body);padding:0 16px}.v2 .btn.icon{width:var(--h);padding:0}.v2 .btn.pri{background:var(--solid-pri);color:#fff;font-weight:600}.v2 .btn.pri:hover{background:var(--solid-pri-hover)}.v2 .btn.sec{background:var(--surface);color:var(--ink-700);border-color:var(--line)}.v2 .btn.sec:hover{border-color:var(--ink-300);color:var(--ink-900);background:var(--surface-2)}.v2 .btn.ghost{color:var(--ink-500);background:0 0}.v2 .btn.ghost:hover{background:var(--surface-3);color:var(--ink-800)}.v2 .btn.danger{color:var(--err);background:0 0;border-color:#0000}.v2 .btn.danger:hover{background:var(--err-bg);border-color:#fca5a5}[data-theme=dark] .v2 .btn.danger:hover{border-color:#f8717166}.v2 .btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none!important;transform:none!important}.v2 .btn.loading{pointer-events:none;position:relative;color:#0000!important}.v2 .btn.loading:after{content:"";border:1.5px solid #fff;border-top-color:#0000;border-radius:50%;width:12px;height:12px;animation:.65s linear infinite v2-spin;position:absolute}.v2 .btn.sec.loading:after,.v2 .btn.ghost.loading:after,.v2 .btn.danger.loading:after{border-color:var(--ink-400);border-top-color:#0000}@keyframes v2-spin{to{transform:rotate(360deg)}}.v2 kbd{font-family:var(--f-mono);color:var(--ink-400);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);border-bottom-width:2px;padding:1px 4px;font-size:9px}.v2 .field{flex-direction:column;gap:5px;display:flex}.v2 .field>label{font-size:var(--t-xs);color:var(--ink-600);font-weight:500}.v2 .field .hint{font-size:var(--t-2xs);color:var(--ink-400);line-height:1.5}.v2 .inp{box-sizing:border-box;height:30px;font-family:inherit;font-size:var(--t-sm);color:var(--ink-800);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);transition:border-color var(--d-fast) var(--ease), box-shadow var(--d-fast) var(--ease);padding:0 9px}.v2 textarea.inp{resize:vertical;height:auto;padding:7px 9px;line-height:1.65}.v2 .inp:hover{border-color:var(--ink-200)}.v2 .inp:focus{border-color:var(--focus);outline:none;box-shadow:0 0 0 3px #ea580c1f}.v2 .inp::placeholder{color:var(--ink-350)}.v2 .inp:disabled{opacity:.5;cursor:not-allowed;background:var(--surface-3)}.v2 .inp.err{border-color:var(--err)}.v2 .inp.err:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--err) 10%, transparent)}.v2 .tag{height:19px;font-size:var(--t-2xs);border-radius:var(--r-sm);background:var(--surface-3);color:var(--ink-500);white-space:nowrap;align-items:center;gap:4px;padding:0 7px;font-weight:500;display:inline-flex}.v2 .tag.ok{background:var(--ok-bg);color:var(--ok)}.v2 .tag.warn{background:var(--warn-bg);color:var(--warn)}.v2 .tag.err{background:var(--err-bg);color:var(--err)}.v2 .tag.info{background:var(--info-bg);color:var(--info)}.v2 .tag.violet{background:var(--violet-bg);color:var(--violet)}.v2 .tag.acc{background:var(--accent-50);color:var(--accent)}.v2 .arco-pagination-item-active{background:var(--accent-50);color:var(--accent);font-weight:600}.v2 .arco-pagination-item-active:focus-visible{outline-color:var(--focus)}.v2 .dot{border-radius:50%;flex:none;width:6px;height:6px;display:inline-block}.v2 .dot.ok{background:var(--ok)}.v2 .dot.warn{background:var(--warn)}.v2 .dot.err{background:var(--err)}.v2 .dot.off{background:var(--ink-300)}.v2 .dot.run{background:var(--accent);animation:v2-pulse 1.4s var(--ease) infinite}@keyframes v2-pulse{0%,to{opacity:1}50%{opacity:.35}}.v2 .page-acts{justify-content:flex-end;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.v2 .toolbar .acts{align-items:center;gap:var(--sp-2);flex:none;margin-left:auto;display:flex}.v2 .sec:not(.btn){align-items:baseline;gap:var(--sp-2);margin:var(--sp-5) 0 var(--sp-3);display:flex}.v2 .sec:not(.btn):first-child{margin-top:0}.v2 .sec:not(.btn) h2{font-size:var(--t-h3);color:var(--ink-900);letter-spacing:-.01em;font-weight:700}.v2 .sec:not(.btn) .n{font-family:var(--f-mono);font-size:var(--t-2xs);color:var(--ink-350);font-weight:600}.v2 .sec:not(.btn) .sp{flex:1}.v2 .sec:not(.btn) .more{font-size:var(--t-2xs);color:var(--ink-400);cursor:pointer;background:0 0;border:0;padding:0;font-family:inherit}.v2 .sec:not(.btn) .more:hover{color:var(--accent)}.v2 .toolbar{align-items:center;gap:var(--sp-2);padding:7px var(--sp-3);margin-bottom:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);flex-wrap:wrap;display:flex}.v2 .toolbar .srch{width:190px;position:relative}.v2 .toolbar .srch .inp{width:100%;height:26px;font-size:var(--t-xs);padding-left:26px}.v2 .toolbar .srch:before{content:"⌕";color:var(--ink-350);pointer-events:none;font-size:12px;position:absolute;top:50%;left:8px;transform:translateY(-54%)}.v2 .toolbar .sp{flex:1}.v2 .toolbar .inp.sel{width:auto;height:26px;font-size:var(--t-xs);cursor:pointer;flex:none;padding-right:22px}.v2 .list{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:auto hidden}.v2 .lrow{align-items:center;gap:var(--sp-3);padding:9px var(--sp-3);border-bottom:1px solid var(--line-2);transition:background var(--d-fast) var(--ease);display:grid}.v2 .lrow:last-child{border-bottom:none}.v2 .lrow:hover{background:var(--surface-2)}.v2 .lrow.pick{cursor:pointer}.v2 .lrow.pick.on{background:var(--accent-50);box-shadow:inset 2px 0 0 var(--accent)}.v2 .lrow.cur{box-shadow:inset 2px 0 0 var(--accent)}.v2 .lrow .acts{opacity:0;transition:opacity var(--d-fast) var(--ease);align-items:center;gap:2px;display:flex}.v2 .lrow:hover .acts,.v2 .lrow.on .acts{opacity:1}.v2 .lrow .cover{border-radius:var(--r-sm);width:34px;height:44px;font-family:var(--f-display);color:#ffffffeb;flex:none;place-items:center;font-size:15px;display:grid}.v2 .lrow .info{min-width:0}.v2 .lrow .info .t{font-size:var(--t-body);color:var(--ink-800);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.v2 .lrow .info .m{font-size:var(--t-xs);color:var(--ink-400);align-items:center;gap:var(--sp-2);white-space:nowrap;margin-top:1px;display:flex;overflow:hidden}.v2 .lrow .info .m>*{flex:none}.v2 .lrow .info .m>:last-child{text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.v2 .lrow .info .m .sep{color:var(--ink-200)}.v2 .tbl{border-collapse:collapse;width:100%;font-size:var(--t-sm)}.v2 .tbl th{text-align:left;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-400);white-space:nowrap;font-weight:600;position:sticky;top:0;font-size:var(--t-2xs)!important;padding:8px var(--sp-3)!important;background:var(--surface-2)!important;border-bottom:1px solid var(--line)!important}.v2 .tbl .arco-table-th.arco-table-col-fixed-right,.v2 .tbl .arco-table-th.arco-table-col-fixed-left{z-index:3}.v2 .tbl th:not(.arco-table-col-fixed-left):not(.arco-table-col-fixed-right){position:static}.v2 .tbl th.arco-table-col-fixed-left,.v2 .tbl th.arco-table-col-fixed-right{top:auto}.v2 .tbl td{border-bottom:1px solid var(--line-2);vertical-align:middle;color:var(--ink-600);background:0 0;padding:8px var(--sp-3)!important;font-size:var(--t-sm)!important}.v2 .tbl tbody tr:last-child td{border-bottom:none}.v2 .tbl tbody tr{transition:background var(--d-fast) var(--ease)}.v2 .tbl tbody tr:hover{background:var(--surface-2)}.v2 .tbl .arco-table-tr:hover .arco-table-td{background:var(--surface-2)!important}.v2 .tbl .arco-table-td.arco-table-col-fixed-right,.v2 .tbl .arco-table-td.arco-table-col-fixed-left{background:var(--surface)}.v2 .tbl .arco-table-tr:hover .arco-table-td.arco-table-col-fixed-right,.v2 .tbl .arco-table-tr:hover .arco-table-td.arco-table-col-fixed-left{background:var(--surface-2)}.v2 .tbl .arco-table-td.arco-table-col-fixed-right,.v2 .tbl .arco-table-th.arco-table-col-fixed-right{box-shadow:-7px 0 7px -7px #00000029}.v2 .tbl .arco-table-cell,.v2 .tbl .arco-table-td-content{padding:0}@media (width<=640px){.v2 .tbl .arco-table-col-fixed-right{padding-left:8px!important;padding-right:8px!important}.v2 .tbl th{text-overflow:ellipsis;overflow:hidden}}.v2 .tbl .num{font-family:var(--f-mono);font-size:var(--t-xs);color:var(--ink-350)}.v2 .tbl .name{color:var(--ink-800);font-weight:600}.v2 .tbl .sub{font-size:var(--t-2xs);color:var(--ink-400);font-weight:400}.v2 .tfoot{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-top:1px solid var(--line-2);display:flex}.v2 .tfoot .cnt{font-size:var(--t-2xs);color:var(--ink-350)}.v2 .app{gap:var(--sp-6);grid-template-columns:196px 1fr;align-items:start;display:grid}.v2 .side{top:var(--sp-5);flex-direction:column;gap:1px;display:flex;position:sticky}.v2 .side .grp{font-size:var(--t-2xs);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-350);padding:12px 8px 4px;font-weight:600}.v2 .side a{border-radius:var(--r-md);font-size:var(--t-sm);color:var(--ink-500);transition:all var(--d-fast) var(--ease);align-items:center;gap:8px;padding:6px 8px;display:flex}.v2 .side a:hover{background:var(--surface-3);color:var(--ink-800)}.v2 .side a.on{background:var(--surface-3);color:var(--ink-900);font-weight:600}.v2 .side a .ic{text-align:center;width:14px;color:var(--ink-400);font-size:12px}.v2 .side a.on .ic{color:var(--accent)}.v2 .side a .badge{font-size:10px;font-family:var(--f-mono);color:var(--ink-350);margin-left:auto}.v2 .modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--sh-pop);max-width:480px;overflow:hidden}.v2 .modal .hd{padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex}.v2 .modal .hd h3{font-size:var(--t-h3);color:var(--ink-900);font-weight:600}.v2 .modal .hd .x{color:var(--ink-350);cursor:pointer;border-radius:var(--r-sm);padding:2px 4px;font-size:15px;line-height:1}.v2 .modal .hd .x:hover{color:var(--ink-700);background:var(--surface-3)}.v2 .modal .bd{padding:var(--sp-4);gap:var(--sp-3);flex-direction:column;display:flex}.v2 .modal .ft{justify-content:flex-end;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);background:var(--surface-2);border-top:1px solid var(--line);display:flex}.v2 .arco-spin{width:100%;display:block}.v2 .arco-spin-mask{background:var(--surface)}.v2 .arco-spin-icon,.v2 .arco-icon-loading{color:var(--accent)}.v2 .empty{text-align:center;padding:var(--sp-8) var(--sp-4);flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:42vh;display:flex}.v2 .empty:not(:has(>*)){justify-content:normal;align-items:baseline;gap:0;min-height:0;padding:0;display:inline}.v2 .empty .t{font-size:var(--t-body);color:var(--ink-700);font-weight:600}.v2 .empty .d{font-size:var(--t-xs);color:var(--ink-400);max-width:300px;line-height:1.65}.v2 .sk{background:var(--surface-3);border-radius:var(--r-sm);height:11px;position:relative;overflow:hidden}.v2 .sk:after{content:"";background:linear-gradient(90deg,#0000,#fff9,#0000);animation:1.3s infinite v2-sh;position:absolute;inset:0}[data-theme=dark] .v2 .sk:after{background:linear-gradient(90deg,#0000,#ffffff0d,#0000)}@keyframes v2-sh{0%{transform:translate(-100%)}to{transform:translate(100%)}}.v2 .chip{height:26px;font-size:var(--t-xs);color:var(--ink-500);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-full);cursor:pointer;transition:all var(--d-fast) var(--ease);white-space:nowrap;align-items:center;gap:5px;padding:0 9px;display:inline-flex}.v2 .chip:hover{border-color:var(--ink-300);color:var(--ink-800)}.v2 .chip.on{background:var(--solid);border-color:var(--solid);color:var(--solid-tx);font-weight:500}.v2 .chip .n{font-family:var(--f-mono);color:var(--ink-350);font-size:10px}.v2 .chip.on .n{color:var(--solid-tx);opacity:.55}.v2 .seg{background:var(--surface-3);border-radius:var(--r-md);gap:2px;padding:2px;display:inline-flex}.v2 .seg button{height:26px;font-size:var(--t-xs);color:var(--ink-500);border-radius:var(--r-sm);cursor:pointer;transition:all var(--d-fast) var(--ease);background:0 0;border:none;padding:0 9px;font-family:inherit}.v2 .seg button:hover{color:var(--ink-800)}.v2 .seg button.on{background:var(--surface);color:var(--ink-900);box-shadow:var(--sh-1);font-weight:600}.v2 .seg button,.v2 .chip,.v2 .sec:not(.btn) .more{position:relative}.v2 .seg button:after,.v2 .chip:after,.v2 .sec:not(.btn) .more:after{content:"";height:44px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.v2 .ava{border-radius:var(--r-full);width:28px;height:28px;font-size:var(--t-xs);color:#fff;flex:none;place-items:center;font-weight:600;display:grid}.v2 .bar{border-radius:var(--r-full);background:var(--surface-3);height:3px;overflow:hidden}.v2 .bar i{background:var(--accent);border-radius:inherit;height:100%;display:block}.v2 .bar.ok i{background:var(--ok)}.v2 .kv{gap:7px var(--sp-3);font-size:var(--t-sm);grid-template-columns:56px 1fr;display:grid}.v2 .kv dt{font-size:var(--t-xs);color:var(--ink-400);padding-top:1px}.v2 .kv dd{color:var(--ink-700);line-height:1.6}.v2 .cbx{border:1px solid var(--line);background:var(--surface);cursor:pointer;width:13px;height:13px;transition:all var(--d-fast) var(--ease);border-radius:3px;flex:none;place-items:center;display:inline-grid}.v2 .cbx:hover{border-color:var(--ink-300)}.v2 .cbx.on{background:var(--solid-pri);border-color:var(--solid-pri)}.v2 .cbx.on:after{content:"✓";color:#fff;font-size:9px;line-height:1}.v2 .star{color:var(--ink-200);cursor:pointer;transition:color var(--d-fast) var(--ease);font-size:12px}.v2 .star:hover{color:var(--ink-400)}.v2 .star.on{color:var(--accent)}.v2 .topbar{align-items:center;gap:var(--sp-2);height:38px;padding:0 var(--sp-2) 0 var(--sp-3);margin-bottom:var(--sp-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);display:flex}.v2 .topbar .sep{color:var(--ink-200)}.v2 .editor{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);grid-template-columns:186px 1fr 236px;display:grid;overflow:hidden}.v2 .editor .chapters{border-right:1px solid var(--line);background:var(--surface-2);flex-direction:column;display:flex}.v2 .editor .chapters .hd{padding:9px var(--sp-3);font-size:var(--t-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-400);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;font-weight:600;display:flex}.v2 .editor .chapters a{padding:6px var(--sp-3);font-size:var(--t-xs);color:var(--ink-500);transition:all var(--d-fast) var(--ease);border-left:2px solid #0000;align-items:center;gap:7px;display:flex}.v2 .editor .chapters a:hover{background:var(--surface-3);color:var(--ink-800)}.v2 .editor .chapters a.on{border-left-color:var(--accent);background:var(--accent-50);color:var(--accent);font-weight:600}.v2 .editor .chapters a .n{font-family:var(--f-mono);font-size:var(--t-2xs);color:var(--ink-350);flex:none}.v2 .editor .chapters a.on .n{color:var(--accent)}.v2 .editor .chapters .ft{padding:var(--sp-2);border-top:1px solid var(--line);margin-top:auto}.v2 .editor .paper{padding:var(--sp-6) var(--sp-8);min-width:0}.v2 .editor .paper .ttl{font-family:var(--f-display);color:var(--ink-900);margin-bottom:3px;font-size:17px;font-weight:700}.v2 .editor .paper .wc{font-size:var(--t-2xs);color:var(--ink-350);margin-bottom:var(--sp-2);padding-bottom:var(--sp-3);border-bottom:1px solid var(--line-2);align-items:center;gap:var(--sp-3);display:flex}.v2 .editor .paper .wc .bar{width:90px}.v2 .editor .paper p{color:var(--ink-700);font-size:15px;line-height:2;font-family:var(--f-display);margin-bottom:var(--sp-3)}.v2 .editor .paper .tail{margin-top:var(--sp-4);gap:7px;display:grid}.v2 .rail{background:var(--surface-2);border-left:1px solid var(--line);padding:var(--sp-3);gap:var(--sp-2);flex-direction:column;display:flex}.v2 .rail .sug{font-size:var(--t-xs);color:var(--ink-600);padding:var(--sp-2);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-md);line-height:1.7}.v2 .rail .sug .op{justify-content:flex-end;gap:2px;margin-top:5px;display:flex}.v2 .cols{gap:var(--sp-4);grid-template-columns:1fr 272px;align-items:start;display:grid}.v2 .detail{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:var(--sp-4)}.v2 .detail .who{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-3);display:flex}.v2 .detail .who .nm{font-size:var(--t-h3);color:var(--ink-900);font-weight:600;line-height:1.3}.v2 .detail .who .sub{font-size:var(--t-2xs);color:var(--ink-400)}.v2 .detail .hr{background:var(--line-2);height:1px;margin:var(--sp-3) 0}.v2 .rel{flex-wrap:wrap;gap:5px;display:flex}.v2 .mention{align-items:center;gap:var(--sp-2);border-bottom:1px solid var(--line-2);font-size:var(--t-xs);color:var(--ink-500);padding:6px 0;display:flex}.v2 .mention:last-child{border-bottom:none}.v2 .mention .ch{font-family:var(--f-mono);font-size:var(--t-2xs);color:var(--ink-350);flex:none}.v2 .mention .tx{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.v2 .resume{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-5)}.v2 .resume .in{align-items:center;gap:var(--sp-3);display:flex}.v2 .resume .goal{align-items:center;gap:var(--sp-2);margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--line-2);display:flex}.v2 .resume .goal .bar{flex:1}.v2 .rows{grid-template-columns:minmax(0,1fr);gap:0;display:grid}.v2 .rows .r{align-items:center;gap:var(--sp-3);border-bottom:1px solid var(--line-2);font-size:var(--t-sm);padding:7px 0;display:flex}.v2 .rows .r:last-child{border-bottom:none}.v2 .rows .r .nm{color:var(--ink-800);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:500;overflow:hidden}.v2 .rows .r .sp{flex:1}.v2 .rows .r .num{font-family:var(--f-mono);font-size:var(--t-xs);color:var(--ink-350);white-space:nowrap;flex:none}.v2 .rows .r .tm{font-size:var(--t-2xs);color:var(--ink-350);flex:none}.v2 .links{gap:var(--sp-1) var(--sp-4);flex-wrap:wrap;display:flex}.v2 .links a{font-size:var(--t-sm);color:var(--ink-600);transition:color var(--d-fast) var(--ease);align-items:center;gap:5px;padding:3px 0;display:inline-flex}.v2 .links a:hover{color:var(--accent)}.v2 .links a .ar{color:var(--ink-350);font-size:var(--t-2xs)}.v2 .discover{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);padding:var(--sp-3) var(--sp-4);margin-top:var(--sp-3)}.v2 .discover .src{align-items:center;gap:var(--sp-2);font-size:var(--t-2xs);color:var(--ink-400);flex-wrap:wrap;display:flex}.v2 .discover .src code{font-size:var(--t-2xs);color:var(--ink-600);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-sm);padding:1px 5px}.v2 .discover .drow{align-items:center;gap:var(--sp-3);border-bottom:1px solid var(--line-2);font-size:var(--t-sm);padding:6px 0;display:flex}.v2 .discover .drow:last-of-type{border-bottom:none}.v2 .discover .ft{align-items:center;gap:var(--sp-2);margin-top:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--line);display:flex}.v2 .note{font-size:var(--t-xs);color:var(--ink-500);padding:var(--sp-2) var(--sp-3);background:var(--surface-2);border:1px solid var(--line-2);border-left:2px solid var(--ink-200);border-radius:0 var(--r-sm) var(--r-sm) 0;line-height:1.75}.v2 .note b{color:var(--ink-700)}.v2 .note.acc{background:var(--accent-50);border-left-color:var(--accent);color:var(--accent-hover)}.v2 .note.acc b{color:var(--accent-hover)}.v2 .sp{flex:1}.v2 .frame{background:var(--bg);width:393px;max-width:100%;box-shadow:var(--sh-2);border:7px solid #14110f;border-radius:28px;overflow:hidden}@media (width<=900px){.v2 .app,.v2 .editor,.v2 .cols{grid-template-columns:1fr}.v2 .side{flex-direction:row;gap:2px;position:static;overflow-x:auto}.v2 .side .grp{display:none}.v2 .side a{white-space:nowrap}.v2 .editor .chapters{border-right:none;border-bottom:1px solid var(--line);flex-direction:row;overflow-x:auto}.v2 .editor .chapters .hd,.v2 .editor .chapters .ft{display:none}.v2 .editor .chapters a{white-space:nowrap;border-bottom:2px solid #0000;border-left:none}.v2 .editor .chapters a.on{border-bottom-color:var(--accent)}.v2 .rail{border-left:none;border-top:1px solid var(--line)}}@media (width<=640px){.v2{padding-left:var(--sp-4);padding-right:var(--sp-4)}.v2 .page-acts{scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;justify-content:flex-end;overflow-x:auto}.v2 .page-acts::-webkit-scrollbar{display:none}.v2 .page-acts>*{flex:none}.v2 .toolbar .acts{margin-left:auto}.v2 .sec:not(.btn){margin:var(--sp-4) 0 var(--sp-2)}.v2 .lrow{grid-template-rows:auto auto;grid-template-columns:34px minmax(0,1fr) auto;row-gap:6px}.v2 .lrow .acts{grid-column:1/-1;justify-content:flex-end}.v2 .hide-sm{display:none}.v2 .toolbar .srch{flex:160px;width:auto;min-width:0}.v2 .toolbar .srch-go{display:none}.v2 .toolbar .sel-wrap .arco-select-view input,.v2 .toolbar .sel-wrap .arco-select-view-value{font-size:13px!important}.v2 .toolbar .sel-wrap .arco-select-view-single{padding-right:4px}.v2 .toolbar .sel-wrap .arco-select-view-suffix{padding-left:4px}}@media (hover:none),(width<=640px){.v2 .lrow .acts{opacity:1}}@media (pointer:coarse),(width<=640px){.v2 .btn,.v2 .btn.sm,.v2 .btn.lg{--h:44px}.v2 .btn.sm{font-size:var(--t-sm)}.v2 .cbx{width:17px;height:17px}.v2 .modal .hd .x{padding:8px;font-size:17px}.v2 .chip{height:36px;font-size:var(--t-sm);padding:0 12px}.v2 .chip .n{font-size:11px}.v2 .seg button{height:32px;padding:0 12px}.v2 .toolbar .srch .inp{height:44px;padding-left:30px;font-size:16px}.v2 .toolbar .srch:before{font-size:14px;left:11px}.v2 .toolbar .inp.sel{height:44px;font-size:var(--t-sm);padding:0 26px 0 12px}.v2 .lrow .acts{flex-wrap:wrap;justify-content:flex-end;gap:6px}.v2 .toolbar .srch .inp,.v2 .toolbar .inp.sel,.v2 input.inp,.v2 select.inp.sel{min-height:44px}.v2 .arco-input-size-medium,.v2 .arco-input-size-small{height:44px;min-height:44px}.v2 .arco-select-view,.v2 .arco-select-view-single,.v2 .arco-select-view-input{min-height:44px}}.v2 .btn-primary,.v2 .btn-secondary,.v2 .btn.btn-primary,.v2 .btn.btn-secondary{border-radius:var(--r-md);height:30px;padding:0 10px}.v2 .btn-primary,.v2 .btn.btn-primary{background:var(--solid-pri);border-color:var(--solid-pri);color:var(--solid-pri-tx);font-weight:600}.v2 .btn-primary:hover,.v2 .btn.btn-primary:hover{background:var(--solid-pri-hover);border-color:var(--solid-pri-hover)}.v2 .btn-secondary,.v2 .btn.btn-secondary{background:var(--surface);border-color:var(--line);color:var(--ink-700)}.v2 .btn-secondary:hover,.v2 .btn.btn-secondary:hover{border-color:var(--ink-300);color:var(--ink-900);background:var(--surface-2)}.v2 .btn-sm,.v2 .btn.btn-sm{height:26px;font-size:var(--t-xs);padding:0 8px}.v2 .toolbar.tag-mode{display:none}@media (prefers-reduced-motion:reduce){.v2 *,.v2 :before,.v2 :after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.v2 .arco-slider-btn{border-color:var(--accent)}.v2 .arco-slider-btn:after{background:var(--accent)}.v2 .arco-slider-btn:hover{border-color:var(--accent-hover)}.v2 .arco-slider-btn:hover:after{background:var(--accent-hover)}.v2 .arco-slider-bar{background:var(--accent)}.v2 .arco-switch-checked{background:var(--accent);border-color:var(--accent)}.v2 .arco-switch-checked:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.v2 .arco-checkbox-checked .arco-checkbox-inner,.v2 .arco-checkbox-indeterminate .arco-checkbox-inner,.v2 .arco-radio-checked .arco-radio-inner{background:var(--accent);border-color:var(--accent)}.v2 .arco-progress-line{background:var(--accent)}.v2 .arco-image-error-alt{color:var(--ink-500)}:root:not([data-theme=dark]) .v2 .arco-tag-green{color:#167706!important}:root:not([data-theme=dark]) .v2 .arco-tag-red{color:#b91c1c!important}:is(body:has(.v2) .arco-drawer .arco-btn-primary,body:has(.v2) .arco-modal .arco-btn-primary,body:has(.v2) .arco-popconfirm .arco-btn-primary){background:var(--accent)!important;border-color:var(--accent)!important;color:var(--accent-tx)!important}:is(body:has(.v2) .arco-drawer .arco-btn-primary:hover,body:has(.v2) .arco-modal .arco-btn-primary:hover,body:has(.v2) .arco-popconfirm .arco-btn-primary:hover){background:var(--accent-hover)!important;border-color:var(--accent-hover)!important}.v2 .arco-input-wrapper,.v2 .arco-select-view,.v2 .arco-picker,.v2 .arco-input-number,.v2 .arco-textarea-wrapper{background:var(--surface-3)!important;border-color:var(--line)!important}.v2 .arco-input-wrapper.arco-input-focus,.v2 .arco-select-view.arco-select-view-focus,.v2 .arco-input-wrapper:focus-within,.v2 .arco-select-view:focus-within,.v2 .arco-picker-focused,.v2 .arco-input-number-focus{border-color:var(--accent)!important}html,body,#app{min-height:100vh;margin:0;padding:0}
