.ui-dialog{width:min(var(--ui-dialog-width, 440px),calc(100vw - 32px));max-height:min(88vh,760px);padding:0;border:1px solid var(--line-strong);border-radius:var(--radius-lg);background:var(--surface);color:var(--text);box-shadow:var(--shadow-lg);overflow:auto}.ui-dialog::backdrop{background:#0f172a6b}.ui-dialog[open]{animation:ui-dialog-in .14s ease-out}.ui-dialog[open]::backdrop{animation:ui-fade-in .14s ease-out}.ui-dialog-body{display:grid;gap:14px;padding:20px 20px 16px}.ui-dialog-head{display:flex;align-items:flex-start;gap:12px}.ui-dialog-head>div{min-width:0;flex:1}.ui-dialog-head strong{display:block;font-size:16px;line-height:1.4}.ui-dialog-message{margin:4px 0 0;color:var(--muted-strong);font-size:14px;line-height:1.6;white-space:pre-line}.ui-dialog-icon{flex:none;width:34px;height:34px;display:grid;place-items:center;border-radius:var(--radius-md);color:var(--primary-strong);background:var(--primary-soft);border:1px solid var(--primary-border)}.ui-dialog-icon.tone-danger{color:var(--red);background:var(--red-soft);border-color:#fecaca}.ui-dialog-icon.tone-warning{color:var(--amber);background:var(--amber-soft);border-color:#fde68a}.ui-dialog-details{margin:0;padding:10px 12px 10px 28px;display:grid;gap:4px;border-radius:var(--radius-md);background:var(--surface-strong);border:1px solid var(--line);color:var(--muted-strong);font-size:13px}.ui-dialog .ui-dialog-close{flex:none;width:30px;height:30px;padding:0;display:grid;place-items:center;border-radius:var(--radius-md);color:var(--muted);background:var(--surface-strong);box-shadow:none}.ui-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;padding-top:2px}.ui-dialog .ui-dialog-actions button{min-width:88px;height:36px;padding:0 14px;border-radius:var(--radius-md);font-size:14px;font-weight:600}.ui-dialog .ui-dialog-actions .ui-btn-primary{color:#fff;background:var(--primary);border-color:var(--primary)}.ui-dialog .ui-dialog-actions .ui-btn-primary:hover{background:var(--primary-strong);border-color:var(--primary-strong)}.ui-dialog .ui-dialog-actions .ui-btn-danger{color:#fff;background:var(--red);border-color:var(--red)}.ui-dialog .ui-dialog-actions .ui-btn-danger:hover{background:#b91c1c;border-color:#b91c1c}.ui-toast-region{position:fixed;left:50%;bottom:40px;z-index:1500;display:grid;gap:8px;width:min(580px,calc(100vw - 32px));transform:translate(-50%);pointer-events:none}.ui-toast{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 10px 8px 14px;border-radius:var(--radius-lg);background:#1f2937;color:#f9fafb;font-size:13.5px;box-shadow:var(--shadow-lg);pointer-events:auto;animation:ui-toast-in .16s ease-out}.ui-toast-icon{flex:none;color:#cbd5e1}.ui-toast-icon.is-spin{color:#60a5fa;animation:ui-toast-spin .9s linear infinite}@keyframes ui-toast-spin{to{transform:rotate(360deg)}}.ui-toast.tone-success .ui-toast-icon{color:#86efac}.ui-toast.tone-warning .ui-toast-icon{color:#fcd34d}.ui-toast.tone-whitelist{background:#fff;color:#1e293b;border:1.5px solid #cbd5e1;box-shadow:0 12px 32px #0f172a24}.ui-toast.tone-whitelist .ui-toast-icon{color:#1e293b}.ui-toast.tone-whitelist .ui-toast-action{background:#f1f5f9;color:#1e293b;border:1px solid #cbd5e1}.ui-toast.tone-whitelist .ui-toast-action:hover{background:#e2e8f0;color:#0f172a}.ui-toast.tone-whitelist .ui-toast-close{color:#64748b}.ui-toast.tone-whitelist .ui-toast-close:hover{background:#f1f5f9;color:#0f172a}.ui-toast.tone-blacklist{background:#334155;color:#fff;border:1.5px solid #475569;box-shadow:0 12px 32px #0f172a3d}.ui-toast.tone-blacklist .ui-toast-icon{color:#fff}.ui-toast.tone-blacklist .ui-toast-action{background:#ffffff29;color:#fff}.ui-toast.tone-blacklist .ui-toast-action:hover{background:#ffffff42;color:#fff}.ui-toast.tone-blacklist .ui-toast-close{color:#cbd5e1}.ui-toast.tone-blacklist .ui-toast-close:hover{background:#ffffff29;color:#fff}.ui-toast-message{flex:1;min-width:0;line-height:1.45;overflow-wrap:anywhere}.ui-toast .ui-toast-action{flex:none;height:28px;padding:0 10px;border:0;border-radius:var(--radius-sm);background:#ffffff24;color:#e5e7eb;font-weight:600;box-shadow:none}.ui-toast .ui-toast-action:hover{background:#ffffff3d;color:#fff}.ui-toast .ui-toast-close{flex:none;width:28px;height:28px;padding:0;display:grid;place-items:center;border:0;border-radius:var(--radius-sm);background:transparent;color:#9ca3af;box-shadow:none}.ui-toast .ui-toast-close:hover{background:#ffffff24;color:#fff}.ui-kbd{display:inline-block;min-width:22px;padding:1px 6px;border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:var(--radius-sm);background:var(--surface-strong);color:var(--muted-strong);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.5;text-align:center}.ui-kbd-or{margin:0 5px;color:var(--muted);font-size:12px}.ui-shortcut-group h3{margin:0 0 6px;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.04em}.ui-shortcut-group dl{margin:0;display:grid;gap:2px}.ui-shortcut-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:6px 2px;border-bottom:1px solid var(--line)}.ui-shortcut-row:last-child{border-bottom:0}.ui-shortcut-row dt{flex:none;display:flex;align-items:center}.ui-shortcut-row dd{margin:0;color:var(--text);font-size:14px;text-align:right}.ui-tooltip{position:fixed;z-index:1400;max-width:min(360px,calc(100vw - 16px));padding:5px 9px;border-radius:6px;background:#18181beb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#f4f4f5;font-size:11.5px;font-weight:500;line-height:1.42;letter-spacing:.01em;white-space:pre-line;word-break:break-all;box-shadow:0 4px 12px #0f172a29,inset 0 0 0 .5px #ffffff24;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;transform:translateY(2px) scale(.98);transition:opacity .11s ease-out,transform .11s ease-out}.ui-tooltip.is-ready{opacity:1;transform:none}@keyframes ui-dialog-in{0%{opacity:0;transform:translateY(6px) scale(.985)}to{opacity:1;transform:none}}@keyframes ui-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ui-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.ui-dialog[open],.ui-dialog[open]::backdrop,.ui-toast{animation:none}}.result-panel.rr-panel{grid-template-rows:auto auto minmax(0,1fr) auto}.rr-panel>.pane-head{border-bottom:0}.rr-panel .rr-tools{display:flex;flex-direction:column;gap:8px;padding:0 12px 10px;border-bottom:1px solid var(--line)}.rr-search{display:flex;align-items:center;gap:6px;height:32px;padding:0 6px 0 10px;border:1px solid transparent;border-radius:var(--radius-md);background:#f1f1f3;color:var(--muted);cursor:text;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease}.rr-search:focus-within{border-color:var(--primary);background:var(--surface);box-shadow:var(--focus-ring)}.rr-panel .rr-search .result-search.result-search,.rr-panel .rr-search .result-search.result-search:focus-visible{flex:1 1 auto;height:100%;min-width:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;outline:0;color:var(--text);font-size:13px}.rr-search .result-search::placeholder{color:var(--muted)}.rr-search .result-search::-webkit-search-cancel-button,.rr-search .result-search::-webkit-search-decoration,.rr-search .result-search::-webkit-contacts-auto-fill-button,.rr-search .result-search::-webkit-credentials-auto-fill-button{-webkit-appearance:none;appearance:none;display:none;visibility:hidden;pointer-events:none}.rr-search kbd{flex:0 0 auto;min-width:18px;padding:0 5px;border:1px solid var(--line-strong);border-radius:4px;background:var(--surface);color:var(--muted);font-family:inherit;font-size:11px;line-height:16px;text-align:center}.rr-search button{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:0;border-radius:50%;background:transparent;color:var(--muted);cursor:pointer}.rr-search button:hover{background:var(--line);color:var(--text)}.rr-panel .rr-views{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:0;border:0;border-radius:0;background:transparent}.rr-panel .rr-views button{height:26px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:var(--muted-strong);font-size:12px;font-weight:600;box-shadow:none;cursor:pointer}.rr-panel .rr-views button:hover:not(:disabled):not(.active){border:0;background:#0f172a0d;color:var(--text);box-shadow:none}.rr-panel .rr-views button.active{border:0;background:var(--primary-soft, #eef4ff);color:var(--primary-strong, #0051b3);box-shadow:none}.rr-panel .rr-views button.active em{color:currentColor}.rr-panel .rr-views button.is-removed.active{background:#fef3c7;color:#b45309;box-shadow:none}.rr-panel .rr-views button.is-removed.active em{color:#b45309}.rr-panel .rr-views button.is-whitelist.active{background:#fff;color:#1e293b;box-shadow:0 1px 3px #0f172a1f}.rr-panel .rr-views button.is-whitelist.active em{color:#475569}.rr-panel .rr-views button.is-blacklist.active{background:#334155;color:#fff;box-shadow:none}.rr-panel .rr-views button.is-blacklist.active em{color:#ffffffd9}.rr-panel .rr-views em{font-style:normal;margin-left:4px;color:var(--muted);font-variant-numeric:tabular-nums}.rr-panel .rr-list{min-height:0;overflow:auto;padding:0 0 12px}.rr-panel .empty-results{margin:28px 16px;padding:0;border:0;color:var(--muted);font-size:12px;text-align:center}.rr-bucket+.rr-bucket{border-top:1px solid var(--line)}.rr-bucket-head{position:sticky;top:0;z-index:1;width:100%;display:flex;align-items:center;gap:8px;border:0;background:var(--surface);padding:10px 14px 4px 12px;cursor:pointer;text-align:left}.rr-bucket-head.collapsed{padding-bottom:10px}.rr-tag{display:inline-flex;align-items:center;height:24px;padding:0 9px;margin-right:auto;border-radius:6px;background:var(--token-bg, #ececef);color:var(--token-accent, var(--muted-strong));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--token-border, transparent) 55%,transparent);font-size:13px;font-weight:600;white-space:nowrap}.rr-panel .rr-bucket-action{flex:0 0 auto;display:inline-flex;align-items:center;gap:3px;height:20px;padding:0 7px;border:1px solid #fca5a5;border-radius:var(--radius-pill);background:#fee2e2;color:#dc2626;font-size:11px;font-weight:600;white-space:nowrap;cursor:pointer;box-shadow:none;transition:background .12s ease,border-color .12s ease,color .12s ease}.rr-panel .rr-bucket-action svg{flex:0 0 auto;opacity:.9}.rr-panel .rr-bucket-action:hover:not(:disabled){border-color:#f87171;background:#fecaca;color:#b91c1c;box-shadow:none;transform:none}.rr-panel .rr-bucket-action.is-restore{border-color:var(--primary-border, #a9c8ee);background:var(--primary-soft, #eef4ff);color:var(--primary-strong, #0051b3)}.rr-panel .rr-bucket-action.is-restore:hover:not(:disabled){border-color:var(--primary);background:#d6e7fb;color:var(--primary-strong, #0051b3)}.rr-bucket-count{color:var(--muted-strong);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.rr-bucket-count span{color:var(--muted)}.rr-bucket-regions.has-pending{margin:4px 8px 8px;padding:2px 0 4px;border:1px solid rgba(217,119,6,.35);border-radius:var(--radius-sm);background:#fef3c740}.rr-bucket-count.pending{padding:1px 7px;border-radius:var(--radius-pill);background:#f59e0b24;color:#b45309;font-weight:600}.rr-bucket-head .rr-chevron{flex:0 0 auto;color:var(--muted);transition:transform .12s ease,color .12s ease}.rr-bucket-head:hover .rr-chevron{color:var(--text)}.rr-bucket-head.collapsed .rr-chevron{transform:rotate(-90deg)}.rr-swatch{width:8px;height:8px;flex:0 0 auto;border-radius:2px;background:var(--token-bg, #e6e6ea);box-shadow:inset 0 0 0 1px var(--token-border, #cfcfd6)}.rr-row{margin:0 8px;border-radius:var(--radius-sm)}.rr-row.active{background:color-mix(in srgb,var(--token-bg, var(--primary-soft)) 70%,#fff);box-shadow:inset 2px 0 0 var(--token-accent, var(--primary))}.rr-bucket-body{margin:2px 8px 6px 22px;border-left:1px solid var(--line)}.rr-bucket-body>.rr-row{margin:0 0 0 -1px;border-radius:0 var(--radius-sm) var(--radius-sm) 0}.rr-bucket-body .rr-line{min-height:30px}.rr-bucket-body .rr-main{padding:5px 8px 5px 13px;color:var(--muted-strong);font-size:12.5px}.rr-bucket-body .rr-row:hover .rr-main,.rr-bucket-body .rr-row.active .rr-main{color:var(--text)}.rr-line{display:flex;align-items:center;min-height:32px}.rr-main{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:8px;border:0;background:transparent;padding:6px 8px 6px 12px;text-align:left;cursor:pointer;color:var(--text);font-size:13px;font-weight:400}.rr-main.static{cursor:default}.rr-row:not(.active):hover{background:color-mix(in srgb,var(--token-bg, #ececef) 35%,#fff)}.rr-panel .rr-main:hover:not(:disabled),.rr-panel .rr-main:active:not(:disabled){border-color:transparent;background:transparent;box-shadow:none;transform:none}.rr-panel .rr-bucket-head:hover:not(:disabled),.rr-panel .rr-bucket-head:active:not(:disabled){background:var(--surface);box-shadow:none;transform:none}.rr-row.active .rr-text{font-weight:600}.rr-row.expanded .rr-line,.rr-row.expanded .rr-main{align-items:flex-start}.rr-row.expanded .rr-text{flex:0 1 auto;white-space:normal;line-height:20px}.rr-row.expanded .rr-tail{height:20px}.rr-row.expanded .rr-occ{height:20px;margin-top:5px}.rr-row.expanded .rr-fold{margin-top:2px}.rr-tail{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px}.rr-token{flex:0 0 auto;display:inline-flex;align-items:center;gap:2px;color:var(--token-accent, var(--muted-strong));font-size:12px;font-weight:500}.rr-restore-token{height:18px;padding:0 6px;border-radius:999px;background:color-mix(in srgb,var(--token-bg, #f1f5f9) 80%,#fff);color:var(--token-accent, var(--muted-strong));font-size:11px;font-weight:600;line-height:18px}.rr-row.readonly .rr-occ{margin-right:6px}.rr-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rr-more{flex:0 0 auto;color:var(--muted);font-size:11px}.rr-src{flex:0 0 auto;height:16px;padding:0 4px;border-radius:4px;background:#f0f0f2;color:#85858e;font-size:10.5px;font-weight:500;line-height:16px}.rr-src.model{background:#eaf2ff;color:#2f6bd8}.rr-src.manual{background:#e6f5ec;color:#11804a}.rr-src.blacklist{background:#334155;color:#fff}.rr-src.whitelist-override{background:#fff;color:#1e293b;box-shadow:inset 0 0 0 1px #94a3b8}.rr-src.status-normal{background:var(--green-soft, #ecfdf5);color:var(--green-strong, #047857);box-shadow:inset 0 0 0 1px #6ee7b7;font-weight:600}.rr-src.status-override{background:#fef3c7;color:#b45309;box-shadow:inset 0 0 0 1px #f59e0b;font-weight:600}.rr-count{flex:0 0 auto;margin-left:auto;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.rr-row.suggested .rr-text{color:var(--muted-strong);font-style:italic}.rr-icon{flex:0 0 auto;display:inline-flex;align-items:center;gap:3px;height:26px;min-width:26px;justify-content:center;margin-right:3px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted);cursor:pointer;opacity:0}.rr-icon.text{opacity:1;padding:0 8px;font-size:12px;color:var(--primary)}.rr-row:hover .rr-icon,.rr-row.active .rr-icon,.rr-icon:focus-visible{opacity:1}.rr-icon:hover{background:var(--red-soft);color:var(--red)}.rr-icon.rr-fold{color:var(--muted-strong)}.rr-icon.rr-fold svg{transition:transform .12s ease}.rr-row:not(.expanded) .rr-fold svg{transform:rotate(-90deg)}.rr-icon.rr-fold:hover{background:#1018280f;color:var(--text)}.rr-icon.text:hover{background:var(--primary-soft);color:var(--primary-strong)}.rr-toggle{flex:0 0 auto;height:22px;margin-right:2px;padding:0 8px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--muted-strong);font-size:11px;cursor:pointer}.rr-toggle.on{border-color:var(--green);background:var(--green-soft);color:var(--green-strong)}.rr-toggle.pending{border-color:#d97706;background:#fef3c7;color:#b45309;font-weight:600}.rr-detail{display:flex;flex-direction:column;gap:6px;margin:0 4px 8px 19px;padding:2px 0 2px 10px;border-left:1px solid var(--token-border, var(--line-strong))}.rr-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;color:var(--muted);font-size:12px}.rr-occ{flex:0 0 auto;display:inline-flex;align-items:center;gap:1px;color:var(--muted-strong);font-size:12px;font-variant-numeric:tabular-nums}.rr-occ button{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:0;border-radius:4px;background:transparent;color:var(--muted-strong);cursor:pointer}.rr-occ button:hover{background:var(--surface);color:var(--text)}.rr-actions{display:flex;flex-wrap:wrap;align-items:center;gap:2px 4px}.rr-actions .rr-type .type-menu-trigger{height:22px;gap:2px;padding:0 4px 0 7px;border:0;border-radius:6px;background:var(--surface);color:var(--token-accent, var(--muted-strong));box-shadow:inset 0 0 0 1px var(--token-border, var(--line-strong));font-size:12px;font-weight:600}.rr-actions .rr-type .type-menu-trigger:hover:not(:disabled),.rr-actions .rr-type .type-menu-trigger[aria-expanded=true]{background:var(--token-bg, #ececef);color:var(--token-accent, var(--text));box-shadow:inset 0 0 0 1px var(--token-accent, var(--line-strong))}.rr-actions .rr-type .type-menu-trigger strong{color:inherit;font-weight:500}.rr-type.type-menu-list button,.rr-type .type-menu-list button{font-weight:500}.rr-type.type-menu-list button.active,.rr-type .type-menu-list button.active{font-weight:600}.rr-act{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 5px;border:0;border-radius:6px;background:transparent;color:var(--muted-strong);font-size:12px;font-weight:500;white-space:nowrap;cursor:pointer}.rr-act svg{flex:0 0 auto;opacity:.8}.rr-act:hover{background:#1018280f;color:var(--text)}.rr-act-danger{padding:0 7px;border:1px solid #fca5a5;background:#fee2e2;color:#dc2626}.rr-act-danger:hover{border-color:#f87171;background:#fecaca;color:#b91c1c}.rr-act-danger-soft{padding:0 7px;border:1px solid #f59e0b;background:#fef3c7;color:#b45309}.rr-act-danger-soft:hover{border-color:#d97706;background:#fde68a;color:#92400e}.rr-act.rr-act-whitelist{padding:0 7px;border:1px solid #94a3b8;background:#fff;color:#1e293b}.rr-act.rr-act-whitelist:hover{border-color:#334155;background:#f1f5f9;color:#0f172a}.rr-act.rr-act-blacklist{padding:0 7px;border:1px solid #334155;background:#334155;color:#fff}.rr-act.rr-act-blacklist:hover{border-color:#1e293b;background:#1e293b;color:#fff}.rr-act.rr-act-enable{padding:0 7px;border:1px solid #6ee7b7;background:var(--green-soft, #ecfdf5);color:var(--green-strong, #047857)}.rr-act.rr-act-enable:hover{border-color:#10b981;background:#d1fae5;color:#065f46}.rr-panel .rr-add{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:10px 12px;border-top:1px solid var(--line);background:var(--surface);font-size:12px}.rr-panel .rr-add small{color:var(--muted);font-size:12px;line-height:1.5}.rr-panel .rr-add>button{display:inline-flex;align-items:center;gap:4px;height:28px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface);color:var(--text);font-size:12px;padding:0 10px;cursor:pointer}.rr-panel .rr-add>button.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-strong)}.rr-panel .rr-add button.link{border:0;background:none;padding:0 2px;color:var(--primary);font-size:12px;cursor:pointer}.rr-panel .rr-add button.link:disabled{color:var(--muted);cursor:default}.rr-bucket-body.rr-whitelist{margin-top:4px}.rr-dict-hit-row{padding-bottom:2px}.rr-dict-detail{margin:0 4px 6px 13px;padding:2px 0 2px 8px}.rr-whitelist .rr-act{margin-right:2px;opacity:1}.rr-whitelist .rr-row:hover .rr-act,.rr-whitelist .rr-act:focus-visible{opacity:1}.rr-whitelist .rr-count{margin-left:8px}.rr-whitelist-foot{margin:10px 14px;color:var(--muted);font-size:12px;line-height:1.6}.rr-whitelist-foot .link{padding:0;border:0;background:none;color:var(--primary);font-size:12px;font-weight:500;cursor:pointer}.rr-whitelist-foot .link:hover{background:none;text-decoration:underline}.selection-toolbar{position:fixed;z-index:var(--z-overlay);transform:translate(-50%);display:flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-pop);font-size:12px}.selection-toolbar>button{height:28px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:12px;padding:0 8px;cursor:pointer}.selection-toolbar>button{display:inline-flex;align-items:center;gap:4px}.selection-toolbar>button.primary{border-color:var(--primary);background:var(--primary);color:#fff;font-weight:600}.selection-toolbar>button.primary:hover{border-color:var(--primary-strong, #0051b3);background:var(--primary-strong, #0051b3)}.selection-toolbar>button.secondary{border-color:var(--primary-border, #a9c8ee);background:var(--primary-soft, #eef4ff);color:var(--primary-strong, #0051b3);font-weight:600}.selection-toolbar>button.secondary:hover{border-color:var(--primary);background:#d6e7fb}.selection-toolbar>button.danger{border-color:#fca5a5;background:#fee2e2;color:#dc2626;font-weight:600}.selection-toolbar>button.danger:hover{border-color:#f87171;background:#fecaca;color:#b91c1c}.selection-toolbar>button.danger-soft{border-color:#f59e0b;background:#fef3c7;color:#b45309;font-weight:600}.selection-toolbar>button.danger-soft:hover{border-color:#d97706;background:#fde68a;color:#92400e}.selection-toolbar>button.blacklist-action{border-color:#334155;background:#334155;color:#fff;font-weight:600}.selection-toolbar>button.blacklist-action:hover{border-color:#1e293b;background:#1e293b;color:#fff}.selection-toolbar>button.whitelist-action{border-color:#94a3b8;background:#fff;color:#1e293b;font-weight:600}.selection-toolbar>button.whitelist-action:hover{border-color:#334155;background:#f1f5f9;color:#0f172a}.toolbar-dict-status{display:inline-flex;align-items:center;height:24px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.toolbar-dict-status.is-bl{background:#334155;color:#fff;border:1px solid #334155}.toolbar-dict-status.is-wl{background:#fff;color:#1e293b;border:1px solid #94a3b8}.type-menu{position:relative;flex:0 0 auto}.type-menu .type-menu-trigger{height:28px;border-color:var(--line-strong);background:var(--surface);color:var(--text);font-weight:600}.type-menu .type-menu-trigger span{color:var(--muted);font-weight:600}.type-menu .type-menu-trigger:hover:not(:disabled),.type-menu .type-menu-trigger[aria-expanded=true]{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-strong)}.type-menu.compact .type-menu-trigger{height:26px}.type-menu-list,.type-menu .type-menu-list{left:0;right:auto;min-width:220px;max-height:340px;display:flex;flex-direction:column;padding:6px;gap:4px;overflow:hidden;border:1px solid var(--line-strong, #cbd5e1);border-radius:var(--radius-md, 10px);background:#fff;box-shadow:0 12px 32px #0f172a29;z-index:2200}.type-menu-list.upward,.type-menu .type-menu-list.upward{top:auto;bottom:calc(100% + 6px)}.type-menu-search{position:relative;display:flex;align-items:center;flex:0 0 auto;padding-bottom:4px;border-bottom:1px solid var(--line)}.type-menu-search-icon{position:absolute;left:8px;color:var(--muted);pointer-events:none}.type-menu-search input{width:100%;height:28px;padding:0 8px 0 26px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#fff;color:var(--text);font-size:12px;outline:none}.type-menu-search input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-soft)}.type-menu-scroll{flex:1 1 auto;max-height:210px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.type-menu-section{display:flex;flex-direction:column;gap:2px}.type-menu-group-label{display:inline-flex;align-items:center;gap:4px;padding:4px 8px 2px;color:var(--primary-strong, #0051b3);font-size:11px;font-weight:700}.type-menu-divider{height:1px;margin:4px 2px;background:var(--line)}.type-menu-checkbox{width:14px;height:14px;flex:0 0 14px;border-radius:4px;border:1.5px solid #cbd5e1;background:#fff;display:inline-grid;place-items:center;transition:all .12s ease}.type-menu-checkbox svg{opacity:0!important;color:#fff!important}.type-menu-checkbox.is-checked{border-color:var(--primary, #2563eb);background:var(--primary, #2563eb)}.type-menu-checkbox.is-checked svg{opacity:1!important;color:#fff!important}.type-menu-option-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.type-menu-trigger-count{flex:0 0 auto;min-width:16px;height:16px;padding:0 5px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-style:normal;font-size:10.5px;font-weight:700;line-height:16px;text-align:center}.type-menu-rec-badge,.type-menu-custom-badge,.type-menu-count-badge{margin-left:auto;padding:0 6px;border-radius:999px;font-style:normal;font-size:10.5px;font-weight:600;line-height:16px}.type-menu-count-badge{background:#f1f5f9;color:#64748b}.type-menu-list button.active .type-menu-count-badge{background:#dbeafe;color:#1d4ed8}.type-menu-rec-badge{background:#eef4ff;color:#0051b3}.type-menu-custom-badge{background:#f3e8ff;color:#6b21a8}.type-menu-empty{padding:12px 8px;color:var(--muted);font-size:12px;text-align:center}.type-menu-create{flex:0 0 auto;display:flex;align-items:center;gap:6px;width:100%;margin-top:2px;padding:6px 8px!important;border-top:1px dashed var(--line-strong)!important;border-radius:var(--radius-sm);background:#f8fafc;color:var(--primary-strong, #0051b3)!important;font-size:12px;font-weight:600;text-align:left;cursor:pointer}.type-menu-create:hover:not(:disabled){background:var(--primary-soft, #eef4ff)!important}:root{color:#18181b;background:#f5f5f6;--bg: #f5f5f6;--surface: #ffffff;--surface-muted: #ffffff;--surface-strong: #f8f8f9;--line: #e8e8eb;--line-strong: #d9d9de;--text: #18181b;--muted: #6b6b73;--muted-strong: #44444c;--primary: #1a73e8;--primary-strong: #1456b8;--primary-soft: #e8f1fd;--primary-border: #b8d4f8;--green: #12a150;--green-strong: #0e7c3d;--green-soft: #ecfaf1;--blue: #1a73e8;--blue-soft: #e8f1fd;--amber: #c26a05;--amber-soft: #fff6e5;--red: #d92d3a;--red-soft: #fff0f1;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .05);--shadow-md: 0 4px 16px rgba(16, 24, 40, .08);--shadow-card: 0 1px 2px rgba(16, 24, 40, .04), 0 1px 3px rgba(16, 24, 40, .06);--shadow-lg: 0 24px 56px rgba(16, 24, 40, .22);--shadow-pop: 0 8px 24px rgba(16, 24, 40, .12);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-pill: 999px;--focus-ring: 0 0 0 3px rgba(26, 115, 232, .26);--z-overlay: 80;--z-toast: 120;font-family:PingFang SC,Hiragino Sans GB,Noto Sans SC,Microsoft YaHei,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.5}*{box-sizing:border-box}html,body,#root{height:100%;min-width:1280px;-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow:hidden}body{margin:0;background:var(--bg)}button,input,select,textarea{font:inherit}button{border:1px solid var(--line-strong);background:var(--surface);color:var(--text);cursor:pointer;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease,color .12s ease,transform .12s ease}button:hover{border-color:#bfd0e4;background:var(--surface-strong);box-shadow:var(--shadow-sm)}button:disabled{cursor:not-allowed;opacity:.65}:where(button,a,summary,[role=tab],[tabindex]):focus-visible{outline:2px solid var(--primary);outline-offset:2px}:where(input,select,textarea):focus-visible{outline:none;border-color:var(--primary);box-shadow:var(--focus-ring)}.shell{height:100vh;max-height:100vh;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.topbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:10px 16px;border-bottom:1px solid var(--line);background:#fff;box-shadow:none}.brand{display:flex;align-items:center;gap:11px;min-width:206px}.brand-mark{display:grid;place-items:center;flex:0 0 auto}.brand-copy{display:grid}.brand strong{font-size:16px;letter-spacing:0;color:var(--text)}.brand span,small{color:var(--muted);font-size:12px}.meta-row{flex:1 1 360px;min-width:min(360px,100%);display:flex;align-items:stretch;flex-wrap:wrap;gap:8px}.document-meta,.library-meta{min-height:42px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm)}.document-meta{flex:1 1 200px;min-width:168px;display:flex;align-items:center;gap:12px;padding:6px 12px}.library-meta{flex:0 0 auto;display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:4px;padding:6px 10px}.meta-main{min-width:0;display:grid;gap:4px}.meta-file{display:inline-block;justify-self:start;max-width:300px;min-width:0;padding:2px 9px;border:1px solid var(--line);border-radius:6px;background:#f8fafceb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#18181b;font-size:12.5px;font-weight:700;line-height:1.4}.status-pill{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;border:1px solid #b8d4f8;border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary-strong);padding:6px 14px;font-size:13px;font-weight:800;line-height:1}.status-pill.running{border-color:#fcd34d;background:var(--amber-soft);color:#b45309}.status-pill-spin{flex:0 0 auto;animation:redact-spin .8s linear infinite}.toolbar{display:flex;align-items:center;gap:6px;flex:0 0 auto}.settings-menu{position:relative}.toolbar button{min-width:64px;height:36px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 9px;font-size:13px;font-weight:700}.toolbar .primary-action{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 6px 14px #1a73e838}.toolbar .primary-action:hover{border-color:var(--primary-strong);background:var(--primary-strong)}.settings-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:20;width:min(440px,calc(100vw - 24px));max-height:min(80vh,640px);overflow:auto;display:grid;gap:12px;padding:12px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);box-shadow:0 18px 42px #1720332e}.settings-popover-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid #e5e5e8}.settings-popover-head div{display:grid;gap:1px}.settings-popover-head strong{color:var(--text);font-size:14px}.settings-popover .icon-button{min-width:30px;width:30px;height:30px;padding:0;color:#6b6b73;background:var(--surface-muted)}.settings-popover .switch-row,.settings-popover .field-row{margin:0}.settings-popover .field-row select{width:100%}.settings-popover .setting-note{margin-top:-8px;color:var(--muted);line-height:1.35}.settings-section-title{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em}.settings-divider{height:1px;background:var(--line)}.settings-whitelist{display:grid;gap:9px}.settings-whitelist-head,.settings-whitelist-head>div,.settings-whitelist-bulk{display:flex;align-items:center}.settings-whitelist-head{justify-content:space-between;gap:10px}.settings-whitelist-head>div{gap:7px;color:var(--text)}.settings-whitelist-head small,.settings-whitelist p,.settings-whitelist-bulk small{color:var(--muted)}.settings-whitelist p{margin:0;font-size:12px;line-height:1.45}.settings-whitelist-add{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:7px}.settings-whitelist textarea,.settings-whitelist-search{width:100%;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#fff;color:var(--text)}.settings-whitelist textarea{min-height:64px;padding:8px 9px;resize:vertical}.settings-whitelist-search{height:34px;padding:0 9px}.settings-whitelist-bulk{justify-content:flex-end;gap:5px}.settings-whitelist-bulk small{margin-right:auto}.settings-whitelist-list{max-height:210px;overflow:auto;display:grid;border:1px solid var(--line);border-radius:var(--radius-sm)}.settings-whitelist-row{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:7px;min-height:38px;padding:5px 7px;border-bottom:1px solid var(--line)}.settings-whitelist-row:last-child{border-bottom:0}.settings-whitelist-row>input{width:auto}.settings-whitelist-row>span{overflow:hidden;color:var(--text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.toolbar .settings-whitelist button{min-width:0;height:30px;padding:0 8px;font-size:12px}.toolbar .settings-whitelist .icon-button{width:30px;padding:0}.settings-whitelist-empty{padding:22px 10px;color:var(--muted);font-size:12px;text-align:center}.top-export,.top-restore{flex:0 0 auto;display:flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);padding:5px 6px 5px 9px;box-shadow:var(--shadow-sm)}.export-title,.restore-title{display:grid;min-width:58px;padding-right:2px}.export-title span,.restore-title span{color:#18181b;font-size:12px;font-weight:800}.export-title small,.restore-title small{color:#8a6a19;font-size:10px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-export button,.top-restore button{min-width:72px;height:28px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:0 7px;color:var(--primary-strong);background:var(--primary-soft);border-color:#b8d4f8;font-size:12px;font-weight:800}.top-restore button:last-child{min-width:86px}.top-export button:disabled,.top-restore button:disabled{color:#7b8794;background:#f1f4f7;border-color:#d4dce5;cursor:not-allowed}.hidden-input{display:none}.workspace-frame{display:flex;align-items:stretch;gap:8px;height:100%;min-height:0;overflow:hidden;padding:12px 14px}.workspace{flex:1;display:flex;min-width:0;min-height:0;height:100%;overflow:hidden;gap:12px}.workspace>.workspace-panel{min-height:0;overflow:hidden}.workspace-side-left{flex:0 0 clamp(200px,14%,280px)}.workspace-side-right{flex:0 0 clamp(280px,20%,380px)}.workspace-main{flex:1 1 0}.side-dock{flex:0 0 36px;width:36px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:14px 0;color:var(--muted-strong)}.side-dock span{writing-mode:vertical-rl;letter-spacing:.16em;font-size:13px;font-weight:700}.side-dock small{min-width:18px;height:18px;border-radius:var(--radius-pill);display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-strong);font-size:10px;font-weight:800}.side-dock.has-pending{border-color:var(--amber);color:var(--amber)}.side-dock-pending{writing-mode:vertical-rl;font-style:normal;font-size:11px;font-weight:800;letter-spacing:.08em;padding:6px 2px;border-radius:var(--radius-pill);background:var(--amber-soft);color:var(--amber)}.side-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.side-toolbar span{font-size:13px;font-weight:700;color:#18181b}.panel-collapse{width:28px;height:28px;min-width:28px;padding:0;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;color:var(--muted-strong)}.workspace-panel,.editor-panel{min-width:0;min-height:0;height:100%}.sidebar,.result-panel,.doc-pane{height:100%}.sidebar,.result-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);padding:14px;overflow:auto;box-shadow:var(--shadow-sm)}.sidebar{display:flex;flex-direction:column;min-width:0;min-height:0}.result-panel{padding:0;display:grid;grid-template-rows:auto auto auto minmax(0,1fr);height:100%;min-height:0;overflow:hidden}.result-body{min-height:0;display:flex;flex-direction:column;overflow:hidden}.result-list-box{flex:1 1 auto;min-height:0;margin:0 12px 12px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);overflow:auto;box-shadow:inset 0 1px #ffffffb3}.pane-head span{font-weight:700;color:#18181b;white-space:nowrap}.side-section{margin-bottom:14px;min-width:0}.file-chip{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-sm);padding:10px;color:#2b3a4d;overflow-wrap:anywhere}.file-chip span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-chip.muted{color:var(--muted)}.file-list{display:grid;gap:2px;min-width:0;width:100%}.file-item{display:flex;align-items:stretch;gap:4px;min-width:0;max-width:100%;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}.file-item.active{border-color:#b8d4f8;background:var(--primary-soft);box-shadow:inset 3px 0 0 var(--primary)}.file-item-main{flex:1;min-width:0;border:0;background:transparent;box-shadow:none;display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px;padding:3px 8px;text-align:left}.file-item-main>svg,.file-type-icon{flex:0 0 auto}.file-type-icon{position:relative;display:inline-grid;place-items:center}.file-type-icon svg{display:block}.file-type-icon svg path:first-child{fill:currentColor}.file-type-icon .file-type-fold{fill:#ffffff47;stroke:none}.file-type-icon b{position:absolute;left:1px;right:1px;bottom:1px;height:6px;display:grid;place-items:center;color:#fff;font-size:5px;font-weight:800;letter-spacing:-.03em;line-height:1;background:#00000038;border-radius:0 0 1px 1px}.file-type-icon.kind-pdf{color:#e11d48}.file-type-icon.kind-docx{color:#2563eb}.file-type-icon.kind-xlsx{color:#15803d}.file-type-icon.kind-pptx{color:#c2410c}.file-type-icon.kind-image{color:#db2777}.file-type-icon.kind-text{color:#64748b}.file-index{flex:0 0 16px;color:var(--muted);font-size:11px;font-weight:800;text-align:right;line-height:1}.file-item-main .file-item-name{flex:1 1 64px;min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;word-break:break-all;font-size:12.5px;font-weight:700;line-height:1.25;color:#18181b}.file-item-main:disabled{opacity:1;cursor:default}.file-item.is-busy{background:#fffbeb}.file-item-main small{color:var(--muted);font-size:11px}.file-status{display:inline-flex;align-items:center;justify-content:center;gap:3px;flex:0 0 auto;width:max-content;max-width:none;height:20px;padding:0 7px;border-radius:var(--radius-pill);border:1px solid transparent;font-size:11px;font-weight:700;line-height:1;white-space:nowrap}.file-item-main .file-status{flex:0 0 auto;margin-left:auto;flex-shrink:0}.file-status.compact{height:18px;padding:0 6px;font-size:10px}.file-status.status-upload,.file-status.status-review{border-color:#fcd34d;background:var(--amber-soft);color:#b45309}.file-status.status-redact{border-color:#cbd5e1;background:#eff6ff;color:#1d4ed8}.file-status.status-done{border-color:#86efac;background:var(--green-soft);color:var(--green-strong)}.file-status.status-error{border-color:#f5c2c6;background:var(--red-soft);color:var(--red)}.file-status.status-wait{border-color:var(--line);background:#f8f8f9;color:var(--muted-strong)}.queue-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px}.section-queue{display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:4px;white-space:nowrap;min-width:0}.section-queue span{display:inline-flex;align-items:center;padding:1px 6px;border-radius:999px;background:#2563eb14;color:var(--primary);font-size:11px;line-height:1.4;white-space:nowrap}.file-item-remove{width:28px;min-width:28px;height:auto;padding:0;border:0;border-radius:0 7px 7px 0;background:transparent;box-shadow:none;color:var(--muted);display:grid;place-items:center}.confirm-overlay{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:24px;background:#0f172a52}.confirm-card{width:min(420px,100%);display:grid;gap:10px;padding:18px 18px 14px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line-strong);box-shadow:0 18px 40px #0f172a29}.confirm-card strong{font-size:16px;color:var(--text)}.confirm-card p{margin:0;color:var(--muted-strong);font-size:13px;line-height:1.6}.confirm-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.confirm-actions button{min-width:84px;height:34px;border-radius:var(--radius-md);font-size:13px;font-weight:700}.confirm-actions .danger{background:var(--red);border-color:var(--red);color:#fff}.section-kicker{margin-bottom:7px;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:6px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:0}.section-kicker-title{display:inline-flex;align-items:center;gap:5px;min-width:0;flex-shrink:0;white-space:nowrap}.section-collapse-toggle{display:inline-flex;align-items:center;gap:4px;min-width:0;flex-shrink:0;white-space:nowrap;height:auto;padding:2px 4px;margin-left:-4px;border:0;border-radius:var(--radius-sm);background:transparent;box-shadow:none;color:var(--muted-strong, #475569);font-size:11.5px;font-weight:800;line-height:1.2;cursor:pointer;transition:color .12s ease,background-color .12s ease}.section-collapse-toggle:hover{color:var(--text);background:#0f172a0a}.section-collapse-toggle svg{flex:0 0 auto;color:var(--muted)}.file-summary.is-collapsed{margin-bottom:10px;padding-bottom:8px;border-bottom:1px dashed var(--line)}.file-summary.is-collapsed .section-kicker{margin-bottom:0}.file-list-search{position:relative;display:flex;align-items:center;margin-bottom:7px;min-width:0}.file-list-search-icon{position:absolute;left:9px;color:var(--muted);pointer-events:none}.file-list-search-input{width:100%;height:28px;padding:0 26px 0 27px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface, #fff);color:var(--text);font-size:12px;line-height:1;transition:border-color .12s ease,box-shadow .12s ease}.file-list-search-input::placeholder{color:var(--muted)}.file-list-search-input:focus{outline:none;border-color:#93c5fd;box-shadow:0 0 0 2px #2563eb1a}.file-list-search-clear{position:absolute;right:4px;width:20px;min-width:20px;height:20px;padding:0;border:0;border-radius:4px;background:transparent;box-shadow:none;color:var(--muted);display:grid;place-items:center;cursor:pointer}.file-list-search-clear:hover{color:var(--text);background:#0f172a0f}.file-search-empty{justify-content:space-between;padding:8px 10px;font-size:12px}.file-search-reset{height:22px;min-width:0;padding:0 8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface, #fff);color:var(--primary);font-size:11px;font-weight:700;box-shadow:none}.file-pagination{margin-top:6px;padding:4px 6px;display:flex;align-items:center;justify-content:space-between;gap:6px;border-radius:var(--radius-sm);background:#f8fafcd9;border:1px solid var(--line);font-size:11px;color:var(--muted-strong, #64748b)}.file-pagination-info{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}.file-pagination-controls{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto}.file-page-num{min-width:32px;text-align:center;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.file-page-btn{width:22px;min-width:22px;height:22px;padding:0;border:1px solid var(--line);border-radius:5px;background:var(--surface, #fff);box-shadow:none;color:var(--text);display:grid;place-items:center;cursor:pointer}.file-page-btn:disabled{opacity:.4;cursor:not-allowed}.file-page-btn:not(:disabled):hover{border-color:#93c5fd;color:var(--primary)}.section-add{width:22px;min-width:22px;height:22px;padding:0;border-radius:var(--radius-sm);display:grid;place-items:center;color:var(--primary);background:var(--primary-soft);border:1px solid #b8d4f8;box-shadow:none}.section-add:hover{color:var(--primary-strong)}.section-kicker small{color:var(--primary);font-size:11px}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px}.metrics div{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);padding:10px 11px;box-shadow:var(--shadow-sm)}.metrics b{display:block;color:#18181b;font-size:23px;line-height:1}.metrics span,.map-row span{color:var(--muted);font-size:12px}.map-state{border-top:1px solid var(--line);padding-top:12px}.map-row{display:flex;justify-content:space-between;gap:10px;padding:7px 0}.map-row b{color:var(--primary);font-size:12px}.chat-panel{flex:1;min-height:220px;display:flex;flex-direction:column;border-top:1px solid var(--line);padding-top:12px;margin-bottom:0}.chat-thread{flex:1;min-height:120px;max-height:280px;overflow:auto;display:grid;align-content:start;gap:8px;padding:2px 0 8px}.chat-empty{display:flex;align-items:flex-start;gap:8px;color:var(--muted);font-size:12px;line-height:1.45}.chat-bubble{max-width:100%;border-radius:var(--radius-md);padding:7px 9px;font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.chat-bubble.user{justify-self:end;background:var(--primary-soft);color:#1d4ed8}.chat-bubble.assistant{background:var(--surface-strong);border:1px solid var(--line);color:#18181b}.chat-bubble.pending{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}.chat-error{margin-bottom:8px;color:var(--red);font-size:12px}.chat-composer{display:grid;grid-template-columns:minmax(0,1fr) 32px;gap:6px;align-items:end}.chat-composer textarea{min-height:52px;max-height:90px;resize:none;border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:7px 8px;font:inherit;font-size:12px}.chat-composer>button{width:32px;min-width:32px;height:32px;padding:0;display:grid;place-items:center}.activity-log{min-height:88px;border-top:1px solid var(--line);padding-top:12px}.log-list{display:grid;gap:6px;max-height:170px;overflow:auto}.log-list span{border-left:3px solid #cdcdd2;padding:4px 0 4px 8px;color:#6b6b73;font-size:12px;line-height:1.45}.switch-row{min-height:42px;display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);padding:9px 10px;color:#35445a;font-size:13px;box-shadow:var(--shadow-sm)}.switch-row input{width:16px;height:16px;accent-color:var(--primary)}.side-hint{display:block;margin-top:6px;font-size:11px;line-height:1.35;color:#5a6b82}.batch-panel{border-top:1px solid var(--line);padding-top:12px}.field-row{display:grid;gap:5px;color:#6b6b73;font-size:12px}.field-row input,.field-row select{width:100%;min-width:0;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:#18181b;padding:8px 9px;font-size:12px}.field-row select:disabled{color:#8a98aa;background:#f3f6f8}.batch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:8px}.batch-mode-row{margin-top:8px}.switch-row.compact{min-height:34px;padding:7px 8px;gap:6px}.switch-row.compact span{font-size:12px;font-weight:700}.batch-actions{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:7px;margin-top:8px}.batch-run,.batch-stop{min-height:36px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:800}.batch-run{border-color:var(--primary);background:var(--primary);color:#fff}.batch-run:hover{border-color:var(--primary-strong);background:var(--primary-strong)}.batch-stop{border-color:#e7c3c7;background:var(--red-soft);color:var(--red)}.batch-result{display:grid;gap:3px;margin-top:8px;border:1px solid #b8d4f8;border-radius:var(--radius-sm);background:var(--primary-soft);padding:8px}.batch-result b{color:var(--primary-strong);font-size:12px}.batch-result span{color:#6b6b73;font-size:11px;overflow-wrap:anywhere}.batch-result progress{width:100%;height:8px;accent-color:var(--primary)}.editor-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;min-height:0;background:transparent;height:100%}.editor-grid>.editor-panel{overflow:hidden}.doc-pane{position:relative;min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.preview-updating-overlay{position:absolute;inset:44px 0 0;z-index:18;display:flex;align-items:center;justify-content:center;background:#f4f6fac7;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.preview-updating-overlay .redact-progress{width:min(400px,86%);background:#fff;border:1px solid var(--line-strong);border-radius:var(--radius-lg);box-shadow:0 12px 32px #0f172a24}.pane-head{position:relative;z-index:5;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px;min-height:50px;padding:6px 14px;border-bottom:1px solid var(--line);background:#fff}.pane-head.single-pane-head{container-type:inline-size;flex-wrap:nowrap;gap:8px}.single-pane-head .pane-head-main{display:flex;flex-direction:row;align-items:center;gap:10px;min-width:0;overflow:hidden}.single-pane-head .pane-head-main>.view-switch{flex:0 0 auto}.single-pane-head .pane-head-main>small{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pending-region-pill{flex:0 0 auto;height:24px;padding:0 10px;border:1px solid #d97706;border-radius:999px;background:#fef3c7;color:#b45309;font-size:12px;font-weight:600;line-height:22px;cursor:pointer;white-space:nowrap;transition:background-color .12s ease,transform .12s ease}.pending-region-pill:hover{background:#fde68a}.workflow-badge{cursor:pointer}.single-pane-head .pane-head-actions{flex-wrap:nowrap;justify-content:flex-end;white-space:nowrap}.pane-head.single-pane-head>.pane-head-main{display:flex;flex-direction:row;align-items:center;flex:1 1 auto}.pane-head.single-pane-head>.pane-head-actions{flex:0 0 auto}@container (max-width: 720px){.single-pane-head .pane-head-main>small{display:none}}@container (max-width: 600px){.single-pane-head .pdf-mode-trigger>span,.single-pane-head .pdf-mode-trigger .mode-restore-tag{display:none}}@media(max-width:1360px){.single-pane-head .pane-head-main>small{display:none}}.pane-head:not(.single-pane-head)>div:first-child{display:grid;min-width:0;flex:1 1 96px}.pane-head small,.pane-head small span{display:block;min-width:0;color:var(--muted);font-weight:400}.preview-summary{position:relative;min-width:0;color:var(--muted);font-size:12px;font-weight:400}.preview-summary>summary{display:inline-flex;max-width:100%;align-items:center;gap:3px;list-style:none;cursor:pointer;white-space:nowrap}.preview-summary>summary::-webkit-details-marker{display:none}.preview-summary>summary span{min-width:0;overflow:hidden;color:var(--muted);font-weight:500;text-overflow:ellipsis}.preview-summary>summary svg{flex:0 0 auto;transition:transform .12s ease}.preview-summary[open]>summary svg{transform:rotate(180deg)}.preview-summary-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:20;width:min(300px,calc(100vw - 48px));padding:12px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-lg)}.preview-summary-popover>strong{color:#18181b;font-size:12px}.preview-summary-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:9px}.preview-summary-list>span{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;border-radius:var(--radius-sm);background:var(--surface);color:#334155;font-weight:500}.preview-summary-list b{min-width:0;overflow:hidden;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.preview-summary-list em{flex:0 0 auto;color:var(--primary);font-style:normal;font-weight:800}.pane-badge{border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);padding:5px 12px;color:var(--muted);font-size:12px;font-weight:800}.pane-badge.secure{border-color:#86efac;background:var(--green-soft);color:var(--green-strong)}.pane-badge.running{border-color:#fcd34d;background:var(--amber-soft);color:#b45309}.pane-badge.error{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.pane-head-actions{display:inline-flex!important;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px 8px;flex:0 1 auto;min-width:0}.entity-type-picker{position:relative;display:inline-flex!important}.entity-type-btn,.reredact-btn{height:28px;padding:0 10px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:var(--primary-strong);background:var(--primary-soft);border:1px solid #b8d4f8;transition:background .12s ease,border-color .12s ease,color .12s ease}.entity-type-btn{color:#4338ca;background:#eef2ff;border-color:#c7d2fe}.entity-type-btn:hover:not(:disabled){color:#3730a3;background:#e0e7ff;border-color:#818cf8}.source-mode-btn.is-highlight{color:#b45309;background:#fffbeb;border-color:#fcd34d}.source-mode-btn.is-highlight:hover:not(:disabled){color:#92400e;background:#fef3c7;border-color:#f59e0b}.source-mode-btn.is-edit{color:#0f766e;background:#f0fdfa;border-color:#99f6e4}.source-mode-btn.is-edit:hover:not(:disabled){color:#115e59;background:#ccfbf1;border-color:#2dd4bf}.region-mode-btn{color:#be123c;background:#fff1f2;border-color:#fecdd3}.region-mode-btn:hover:not(:disabled){color:#9f1239;background:#ffe4e6;border-color:#fda4af}.region-mode-btn.active,.region-mode-btn.active:hover:not(:disabled){color:#fff;background:#e11d48;border-color:#be123c;box-shadow:0 0 0 2px #e11d4833}.reredact-btn:not(.source-mode-btn):not(.region-mode-btn):hover:not(:disabled){background:#dbeafe;border-color:var(--primary)}.entity-type-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:60;width:360px;max-height:440px;overflow:auto;padding:6px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:0 12px 32px #0f172a1f;display:grid;align-content:start;gap:2px}.entity-type-menu.is-embedded{position:static;z-index:auto;flex:1 1 0;min-height:0;width:100%;max-height:none;border-radius:var(--radius-lg);box-shadow:none}.entity-type-search{display:flex;align-items:center;gap:6px;padding:4px 8px;margin-bottom:4px;border:1px solid var(--line-strong);border-radius:var(--radius-md);color:var(--muted);background:#fcfcfd}.entity-type-search input{flex:1;min-width:0;border:0;background:transparent;color:var(--text);font-size:12px}.entity-type-group{display:grid;gap:2px}.entity-type-group>small{margin:6px 6px 2px;color:var(--muted);font-size:11px;font-weight:700}.entity-group-toggle{width:100%;min-height:28px;margin:4px 0 2px;padding:2px 6px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted);display:inline-flex;align-items:center;gap:5px;text-align:left;cursor:pointer}.entity-group-toggle:hover{background:var(--surface-2, #f1f5f9);color:var(--text)}.entity-group-toggle>small{margin:0;color:inherit;font-size:11.5px;font-weight:700}.entity-group-chevron{flex:0 0 auto;color:var(--muted);transition:transform .16s ease}.entity-group-toggle.is-collapsed .entity-group-chevron{transform:rotate(-90deg)}.entity-group-count{font-style:normal;font-size:10px;font-weight:700;padding:0 6px;border-radius:var(--radius-pill);color:var(--muted);background:var(--surface-2, #f1f5f9)}.entity-region-group{display:grid;gap:6px;padding-bottom:6px;border-bottom:1px solid var(--line)}.entity-region-tool{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px;padding:6px 8px;border-radius:var(--radius-md);background:var(--red-soft)}.entity-region-tool>label{min-width:0;display:flex;align-items:center;gap:7px;cursor:pointer}.entity-type-menu input[type=checkbox]{appearance:none;-webkit-appearance:none;width:14px;height:14px;margin:0;flex:0 0 auto;border:1px solid #b8d4f8;border-radius:4px;background:#fff;box-shadow:none;cursor:pointer}.entity-type-menu input[type=checkbox]:checked{border-color:var(--primary);background-color:var(--primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5 6.5 11.5 12.5 4.5'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;background-size:10px 10px}.entity-region-tool input[type=checkbox]{border-color:#fca5a5}.entity-region-tool input[type=checkbox]:checked{border-color:#dc2626;background-color:#dc2626}.entity-region-tool>label>span{min-width:0;display:grid}.entity-region-tool strong{color:#991b1b;font-size:12px}.entity-region-tool small{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.entity-region-tool button{min-height:27px;display:inline-flex;align-items:center;gap:3px;padding:0 7px;border-radius:var(--radius-sm);font-size:11px;white-space:nowrap}.entity-region-tool button.active{border-color:#dc2626;color:#b91c1c;background:#fef2f2}.entity-type-block{display:grid;gap:2px}.entity-type-name{flex:1;min-width:0;display:inline-flex;align-items:center;gap:8px}.entity-type-option em{font-style:normal;font-size:10px;font-weight:700;color:var(--primary-strong);background:var(--primary-soft);border-radius:var(--radius-pill);padding:0 6px}.entity-type-more{height:22px;padding:0 6px;border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:600;display:inline-flex;align-items:center;gap:2px}.entity-type-more.open svg{transform:rotate(180deg)}.entity-extra-list{display:grid;gap:2px;margin:0 0 6px 22px;padding:4px 0 2px;border-left:1px solid var(--line)}.entity-extra-list>small{padding:0 6px 4px;color:var(--muted);font-size:11px;line-height:1.4}.entity-extra-option{display:flex;align-items:flex-start;gap:6px;padding:6px 8px;border-radius:var(--radius-md);font-size:11px;font-weight:600;color:var(--text)}.entity-extra-option:hover,.entity-extra-option:has(input:checked){background:var(--primary-soft);color:var(--primary-strong)}.entity-extra-option span{display:grid;gap:1px}.entity-extra-option b{margin-left:6px;font-size:10px;font-weight:700;color:#b45309}.entity-extra-option i{font-style:normal;font-weight:500;color:var(--muted);font-size:10px}.entity-extra-option.is-disabled{opacity:.5;cursor:not-allowed}.entity-custom-group{margin-top:2px;padding-bottom:6px;border-bottom:1px solid var(--line)}.entity-custom-group-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 2px 2px 0}.entity-custom-group-head .entity-group-toggle{width:auto;flex:1 1 auto;margin:0}.entity-custom-add-btn{height:24px;min-height:24px;display:inline-flex;align-items:center;gap:4px;padding:0 8px;border:1px solid #c7d2fe;border-radius:var(--radius-pill);color:#4338ca;background:#eef2ff;font-size:11px;font-weight:600;cursor:pointer}.entity-custom-add-btn:hover{background:#e0e7ff;border-color:#a5b4fc}.entity-custom-create-form{display:grid;gap:7px;margin:2px 4px 8px;padding:9px 10px;border:1px solid #c7d2fe;border-radius:var(--radius-md);background:#f8fafc}.entity-custom-inline-edit{display:grid;gap:6px;padding:4px 4px 6px;border-bottom:1px dashed var(--line)}.entity-custom-create-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:6px}.entity-custom-name-input,.entity-custom-note-input{width:100%;min-width:0;height:30px;padding:0 9px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;font-size:12px}.entity-custom-create-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.entity-custom-create-btns{display:inline-flex;align-items:center;gap:6px;margin-left:auto}.entity-type-menu .entity-custom-submit-btn,.entity-type-menu .entity-custom-cancel-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;height:28px;min-height:28px;padding:0 12px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;line-height:1;white-space:nowrap;box-shadow:none}.entity-custom-create-tip{display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px;color:var(--muted);font-size:11.5px;line-height:1.4}.entity-custom-create-tip.is-in-box{padding:0 4px 2px}.entity-custom-token-preview{display:inline-flex;align-items:center;padding:1px 6px;border:1px solid #c4b5fd;border-radius:5px;background:#f5f3ff;color:#6d28d9;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:700}.entity-custom-note-tag{font-style:normal;font-size:11px;font-weight:500;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-custom-edit-btn{width:22px;height:22px;min-height:22px;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted);display:inline-grid;place-items:center;cursor:pointer}.entity-custom-edit-btn:hover{color:var(--primary-strong);background:var(--primary-soft)}.entity-custom-empty{padding:8px 10px;border-radius:var(--radius-md);background:var(--surface-2, #f8fafc);color:var(--muted);font-size:11.5px;line-height:1.5}.entity-custom-delete-btn{width:22px;height:22px;min-height:22px;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted);display:inline-grid;place-items:center;cursor:pointer}.entity-custom-delete-btn:hover{color:var(--red);background:var(--red-soft)}.entity-custom-delete-btn.is-blocked{opacity:.45;cursor:not-allowed}.entity-custom-delete-btn.is-blocked:hover{color:var(--muted);background:#94a3b824}.entity-custom-terms-box{gap:6px;padding:6px 8px 8px}.entity-custom-terms-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:0 4px 2px}.entity-custom-terms-toolbar .entity-custom-create-tip.is-in-box{padding:0;margin-right:auto}.entity-custom-batch-bar{display:inline-flex;align-items:center;gap:8px;margin-left:auto}.entity-custom-select-all{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none}.entity-custom-select-all input{width:13px;height:13px;margin:0;cursor:pointer}.entity-custom-batch-delete-btn{height:22px;min-height:22px;display:inline-flex;align-items:center;gap:4px;padding:0 8px;border:1px solid #fecaca;border-radius:var(--radius-pill);background:#fef2f2;color:#dc2626;font-size:11px;font-weight:600;white-space:nowrap;cursor:pointer}.entity-custom-batch-delete-btn:hover:not(:disabled){background:#fee2e2;border-color:#fca5a5}.entity-custom-tags{display:flex;flex-wrap:wrap;gap:5px;padding:0 4px}.entity-custom-tag{display:inline-flex;align-items:center;gap:5px;padding:2px 7px;border:1px solid #bfdbfe;border-radius:var(--radius-pill);background:#eff6ff;color:#1d4ed8;font-size:11px;font-weight:600;transition:background .12s ease,border-color .12s ease}.entity-custom-tag.is-selected{border-color:#60a5fa;background:#dbeafe;color:#1e3a8a}.entity-custom-tag-check{width:12px;height:12px;margin:0;cursor:pointer;accent-color:#2563eb}.entity-custom-tag-text{cursor:pointer;-webkit-user-select:none;user-select:none}.entity-custom-tag button{width:15px;height:15px;min-height:15px;padding:0;border:0;border-radius:50%;background:transparent;color:#1d4ed8;display:inline-grid;place-items:center;cursor:pointer}.entity-custom-tag button:hover{background:#dbeafe;color:#dc2626}.entity-custom-term-input{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:2px 4px 0}.entity-custom-term-input input{height:28px;padding:0 8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;font-size:11.5px}.entity-custom-term-input button{height:28px;min-height:28px;display:inline-flex;align-items:center;gap:3px;padding:0 9px;border:1px solid #bfdbfe;border-radius:var(--radius-sm);background:#eff6ff;color:#1d4ed8;font-size:11px;font-weight:600;white-space:nowrap;cursor:pointer}.entity-custom-term-input button:hover:not(:disabled){background:#dbeafe}.entity-extra-option.is-disabled:hover{background:transparent;color:inherit}.entity-type-menu a{color:var(--primary-strong)}.entity-type-option{display:flex;align-items:center;gap:8px;min-height:32px;padding:6px 10px;border-radius:var(--radius-md);color:var(--text);font-size:12px;font-weight:600}.entity-type-option:hover,.entity-type-option:has(input:checked){background:var(--primary-soft);color:var(--primary-strong)}.entity-type-option.all{border-bottom:1px solid var(--line);margin-bottom:4px;padding-bottom:8px}.entity-type-menu p{margin:6px 6px 2px;color:var(--muted);font-size:11px;line-height:1.4}.reredact-btn:disabled{opacity:.5}.redact-progress-host{min-height:100%;height:100%;display:flex;align-items:center;justify-content:center}.typed-preview.source-upload{display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#f8f8f9,#eef2f6)}.source-upload .redact-progress{width:min(420px,88%);gap:12px}.source-upload .redact-progress-spin{width:36px;height:36px}.redact-progress{width:min(360px,88%);display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;color:var(--muted-strong)}.redact-progress strong{font-size:16px;font-weight:800;color:var(--text)}.redact-progress span{font-size:13px;color:var(--muted)}.redact-progress small{font-size:12px;font-weight:800;color:var(--primary)}.redact-progress-spin{color:var(--primary);animation:redact-spin .8s linear infinite}.redact-progress-track{width:100%;height:8px;overflow:hidden;border-radius:var(--radius-pill);background:#e8edf3}.redact-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6b6b73,var(--primary));transition:width .24s ease-out}.redact-progress-track i.is-idle{width:28%;opacity:.45}.job-progress-inline,.job-note{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:2px 8px;border-radius:999px;font-size:12px;line-height:1.4}.job-progress-inline{background:#eff6ff;color:#1d4ed8}.job-note{background:#fff7ed;color:#9a3412}.job-progress-inline button,.job-note button,.job-cancel{height:22px;padding:0 8px;border-radius:999px;font-size:12px}.preview-updating-overlay{flex-direction:column;gap:10px}@keyframes redact-spin{to{transform:rotate(360deg)}}.spin{animation:redact-spin .8s linear infinite}.view-switch{display:inline-flex!important;align-items:center;border:1px solid #aebdcb;border-radius:var(--radius-md);overflow:hidden;background:var(--surface);box-shadow:0 1px 2px #1a263a14}.view-switch button{min-width:82px;height:32px;border:0;border-radius:0;background:transparent;color:#405066;font-size:13px;font-weight:800}.view-switch button.active{background:var(--primary);color:#fff}.view-switch button:disabled{cursor:not-allowed;color:#9aa7b5;background:#f3f3f5}textarea,.preview{width:100%;min-width:0;height:100%;margin:0;padding:22px 24px;border:0;outline:0;resize:none;overflow:auto;color:#18181b;background:var(--surface);white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:15px;line-height:1.9}.preview{font-family:inherit}.preview.muted{color:#8995a6}.source-review{font-family:inherit}.typed-preview{width:100%;min-width:0;height:100%;margin:0;overflow:auto;color:#18181b}.typed-preview.muted{color:#8995a6}.doc-pane-xlsx .typed-preview,.doc-pane-pptx .typed-preview,.doc-pane-image .typed-preview,.doc-pane-pdf .typed-preview:has(.xlsx-pdf-shell),.doc-pane-docx .typed-preview:has(.xlsx-pdf-shell),.doc-pane-docx .typed-preview:has(.office-preview-shell){position:relative;padding:0;overflow:hidden;background:#fff}.doc-pane-docx .typed-preview:has(.word-canvas),.doc-pane-pdf .typed-preview:has(.pdf-canvas){position:relative;padding:0;overflow:auto;background:#d7deea}.office-preview-shell,.image-preview-shell{position:absolute;inset:0;display:flex;flex-direction:column;background:#f5f5f6}.office-preview-frame{flex:1;width:100%;height:100%;border:0;background:#fff}.image-preview-shell{overflow:auto;align-items:center;justify-content:flex-start;padding:16px}.image-preview-page{max-width:100%;height:auto;box-shadow:0 8px 24px #141c1629;background:#fff}.doc-pane-xlsx .source-edit .xlsx-workbook,.doc-pane-xlsx .typed-preview .xlsx-workbook{height:100%}.doc-pane-text .typed-preview{padding:22px 24px;background:var(--surface);white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.9}.xlsx-pdf-shell{position:absolute;inset:0;display:flex;flex-direction:column;background:#f5f5f6}.pdf-preview-stack,.pdf-preview-layer{position:absolute;inset:0}.pdf-preview-layer{transition:opacity 80ms linear}.pdf-preview-layer.is-active{z-index:2;opacity:1}.pdf-preview-layer.is-standby{z-index:1;opacity:0;pointer-events:none}.xlsx-pdf-toolbar{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:6px 10px;border-bottom:1px solid var(--line);background:#fff;color:var(--muted-strong);font-size:12px;font-weight:700}.xlsx-pdf-toolbar button{min-width:28px;height:24px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#fff;color:inherit;cursor:pointer}.xlsx-pdf-toolbar button:disabled{opacity:.4;cursor:default}.pdf-page-indicator{margin-right:auto;padding:2px 8px;border-radius:var(--radius-sm);background:#f1f5f9;border:1px solid var(--line);color:var(--text);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.doc-page-toolbar{position:sticky;top:0;z-index:6;display:flex;align-items:center;justify-content:flex-start;width:100%;padding:6px 12px;margin-bottom:-8px;pointer-events:none}.doc-page-toolbar .pdf-page-indicator{pointer-events:auto;background:#fffffff0;box-shadow:0 2px 8px #0f172a1a}.pdf-slot-page-num{position:absolute;right:12px;bottom:8px;z-index:2;padding:1px 6px;border-radius:4px;background:#ffffffd9;color:#64748b;font-size:11px;font-variant-numeric:tabular-nums;pointer-events:none}.xlsx-pdf-pages{flex:1;overflow:auto;padding:16px 18px 24px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.xlsx-pdf-slot{position:relative;flex:0 0 auto;margin-inline:auto;box-shadow:0 8px 24px #141c1629;background:#fff}.xlsx-pdf-inner{position:relative;transform-origin:top left}.xlsx-pdf-page{display:block;width:100%;height:100%;background:#fff}.xlsx-pdf-page-loading{width:100%;height:100%;display:flex;flex-direction:column;background:#fff;box-shadow:inset 0 0 0 1px #0f172a0f;color:var(--muted);font-size:13px}.xlsx-pdf-page-loading.is-error{display:grid;place-items:center;padding:24px;text-align:center}.pdf-page-skeleton-lines{width:100%;padding:11% 12%;display:flex;flex-direction:column;gap:14px;box-sizing:border-box}.pdf-page-skeleton-lines>i{display:block;width:100%;height:11px;border-radius:5px;background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%;animation:pdf-page-shimmer 1.6s ease-in-out infinite}.pdf-page-skeleton-lines>i.is-title{width:48%;height:18px;border-radius:6px;margin-bottom:4px}.pdf-page-skeleton-lines>i.is-sub{width:28%;height:10px;margin-bottom:16px}.pdf-page-skeleton-lines>i.is-med{width:82%}.pdf-page-skeleton-lines>i.is-short{width:62%}.pdf-page-skeleton-lines>i.is-gap{height:12px;background:none;animation:none}@keyframes pdf-page-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.xlsx-pdf-overlay{position:absolute;inset:0}.xlsx-pdf-overlay.is-region-editing{cursor:crosshair;touch-action:none}.xlsx-pdf-overlay.is-text-selectable{cursor:text;touch-action:none}.pdf-text-selection-mark{position:absolute;z-index:2;pointer-events:none;border-radius:2px;background:#2563eb3d}.pdf-field-pick-draft{position:absolute;z-index:2;pointer-events:none;border:1.5px dashed #2563eb;background:#2563eb14}.pdf-live-redaction-mask{position:absolute;z-index:1;box-sizing:border-box;pointer-events:none;overflow:hidden;white-space:nowrap}.pdf-live-redaction-mask.is-region-layer{z-index:1}.pdf-live-redaction-mask.is-text-layer{z-index:3}.pdf-live-redaction-mask.is-blackout{background:#111827}.pdf-live-redaction-mask.is-asterisk,.pdf-live-redaction-mask.is-placeholder{display:flex;align-items:center;padding:0 2px;background:#fff;color:#111827;font:600 10px/1.1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.pdf-live-redaction-mask.is-region-placeholder,.pdf-live-redaction-mask.is-region-asterisk{display:flex;align-items:center;justify-content:center;padding:4px;border-radius:4px;border:1.5px dashed #94a3b8;background:#f8fafc;color:#475569;box-shadow:inset 0 0 0 2px #fff}.pdf-live-redaction-mask.is-region-placeholder.is-label-shifted,.pdf-live-redaction-mask.is-region-asterisk.is-label-shifted{align-items:flex-start;justify-content:flex-end;padding:5px 6px}.pdf-region-placeholder-text{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:2px 8px;border-radius:4px;background:#f1f5f9eb;color:#475569;font:600 12px/1.2 system-ui,-apple-system,sans-serif;letter-spacing:.02em}.pdf-region-mark,.pdf-region-draft{position:absolute;z-index:1;margin:0;padding:0;border-radius:2px;box-sizing:border-box}.pdf-region-mark{border:2px solid #dc2626;background:#dc26262e;transition:box-shadow .16s ease,outline-color .16s ease}.pdf-region-mark.is-confirmed{border-color:#dc2626;background:#dc262614}.pdf-region-mark.is-confirmed.is-light-masked{border:1.5px dashed #94a3b8;background:transparent}.pdf-region-mark.is-candidate{border:2.5px dashed #d97706;background:#f59e0b29;box-shadow:0 0 0 2px #f59e0b2e}.pdf-region-mark.active{z-index:2;outline:3px solid #2563eb;outline-offset:2px;box-shadow:0 0 0 6px #2563eb38}.pdf-region-badge{position:absolute;top:-22px;left:-2px;padding:1px 6px;border-radius:4px;background:#dc2626eb;color:#fff;font-size:11px;font-weight:600;line-height:17px;white-space:nowrap;pointer-events:none;box-shadow:0 2px 6px #0f172a2e}.pdf-region-mark.is-confirmed.is-light-masked .pdf-region-badge{background:#475569}.pdf-region-mark.is-candidate .pdf-region-badge{background:#d97706}.pdf-region-mark.active .pdf-region-badge{background:#2563eb}.pdf-region-mark.is-editable,.xlsx-pdf-mark.is-editable{cursor:move;touch-action:none}.pdf-region-draft{pointer-events:none;border:2px dashed #dc2626;background:#dc26261f}.pdf-field-pick-mark{position:absolute;z-index:2;margin:0;padding:0;border-radius:2px;box-sizing:border-box;pointer-events:none;border:2px solid #0f766e;background:#0f766e2e}.token-seal,.token-signature{--token-bg: #fee2e2;--token-border: #f87171;--token-accent: #b91c1c}.token-person{--token-bg: #fff3bf;--token-border: #e3cf72;--token-accent: #8d6b00}.token-organization{--token-bg: #ddebff;--token-border: #9ec5fe;--token-accent: #1d4ed8}.token-organization_abbr{--token-bg: #e0e7ff;--token-border: #a5b4fc;--token-accent: #4338ca}.token-project_name{--token-bg: #d5f3fc;--token-border: #7dd3fc;--token-accent: #0369a1}.token-honorific{--token-bg: #fff1f3;--token-border: #fecdd3;--token-accent: #9f1239}.token-job_title{--token-bg: #fae8ff;--token-border: #e879f9;--token-accent: #86198f}.token-file_name{--token-bg: #ecfccb;--token-border: #bef264;--token-accent: #3f6212}.token-legal_regulation{--token-bg: #fde6d8;--token-border: #f3b592;--token-accent: #9a3412}.token-policy_document{--token-bg: #fef3c7;--token-border: #fcd34d;--token-accent: #92400e}.token-phone{--token-bg: #d1fae5;--token-border: #6ee7b7;--token-accent: #047857}.token-email{--token-bg: #ffddd2;--token-border: #fca58d;--token-accent: #c2410c}.token-id_card{--token-bg: #ffe0ec;--token-border: #f9a8d4;--token-accent: #be185d}.token-bank_account{--token-bg: #dcf7f7;--token-border: #67e8f9;--token-accent: #0e7490}.token-social_credit_code{--token-bg: #ffedd5;--token-border: #fdba74;--token-accent: #b45309}.token-lawyer_license_number{--token-bg: #fce7f3;--token-border: #f472b6;--token-accent: #9d174d}.token-policy_document_number{--token-bg: #eadff7;--token-border: #c9b3df;--token-accent: #5b21b6}.token-other_number{--token-bg: #e0f2fe;--token-border: #7dd3fc;--token-accent: #075985}.token-location{--token-bg: #ccfbf1;--token-border: #5eead4;--token-accent: #0f766e}.token-date{--token-bg: #ede9fe;--token-border: #c4b5fd;--token-accent: #6d28d9}.token-time{--token-bg: #dff9f2;--token-border: #6ee7b7;--token-accent: #15803d}.token-money{--token-bg: #fef08a;--token-border: #facc15;--token-accent: #854d0e}.token-case_number{--token-bg: #f3e8ff;--token-border: #d8b4fe;--token-accent: #7e22ce}.token-stock_code{--token-bg: #dbeafe;--token-border: #93c5fd;--token-accent: #1e40af}.token-tax_id{--token-bg: #ffe5d9;--token-border: #fdba74;--token-accent: #965844}.token-ip{--token-bg: #e5e7ff;--token-border: #a5b4fc;--token-accent: #3730a3}.token-license_plate{--token-bg: #dcfce7;--token-border: #86efac;--token-accent: #166534}.token-wechat{--token-bg: #dff6e4;--token-border: #addbb8;--token-accent: #14532d}.token-qq{--token-bg: #e5f0ff;--token-border: #b7cfea;--token-accent: #1d3557}.token-imei{--token-bg: #e8eaf6;--token-border: #c3c7df;--token-accent: #312e81}.token-account{--token-bg: #ddf4f1;--token-border: #99f6e4;--token-accent: #115e59}.token-mac{--token-bg: #e1f0fb;--token-border: #93c5fd;--token-accent: #1e3a8a}.token-url{--token-bg: #f0e6ff;--token-border: #c4b5fd;--token-accent: #581c87}.token-postal_code{--token-bg: #f5ebe0;--token-border: #d6ccc2;--token-accent: #78350f}.token-other{--token-bg: #e9e9ec;--token-border: #c9c9cf;--token-accent: #52525b}[class*=token-custom_]{--token-bg: #f5d0fe;--token-border: #f0abfc;--token-accent: #701a75}.token-seal,.token-signature{--token-pdf-accent: #dc2626}.token-person{--token-pdf-accent: #d97706}.token-organization{--token-pdf-accent: #1d4ed8}.token-organization_abbr{--token-pdf-accent: #4f46e5}.token-date{--token-pdf-accent: #7c3aed}.token-money{--token-pdf-accent: #ca8a04}.token-stock_code{--token-pdf-accent: #2563eb}.token-policy_document{--token-pdf-accent: #b45309}.token-other_number,.token-other,.token-imei{--token-pdf-accent: #0284c7}.xlsx-pdf-mark{--pdf-mark-accent: var(--token-pdf-accent, var(--token-accent, #2563eb));position:absolute;z-index:4;padding:0;margin:0;border-radius:3px;box-sizing:border-box;color:transparent;background:color-mix(in srgb,var(--pdf-mark-accent) 22%,transparent);border:1.5px solid color-mix(in srgb,var(--pdf-mark-accent) 88%,transparent);box-shadow:inset 0 -1px 0 var(--pdf-mark-accent),0 0 0 1px #ffffffc7;opacity:1;mix-blend-mode:normal;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease}.xlsx-pdf-mark:hover{z-index:5;background:color-mix(in srgb,var(--pdf-mark-accent) 30%,transparent);border-color:var(--pdf-mark-accent);box-shadow:inset 0 -1px 0 var(--pdf-mark-accent),0 0 0 1.5px #ffffffe6,0 0 0 3px color-mix(in srgb,var(--pdf-mark-accent) 32%,transparent)}.xlsx-pdf-mark.active{z-index:6;background:color-mix(in srgb,var(--pdf-mark-accent) 32%,transparent);border:2px solid var(--pdf-mark-accent);box-shadow:inset 0 -1px 0 var(--pdf-mark-accent),0 0 0 1.5px #fff,0 0 0 3.5px var(--pdf-mark-accent);opacity:1}.xlsx-pdf-mark.is-redacted{border:1.5px solid color-mix(in srgb,var(--pdf-mark-accent) 85%,transparent);background:color-mix(in srgb,var(--pdf-mark-accent) 14%,transparent);box-shadow:0 0 0 1px #ffffffb8;opacity:1;mix-blend-mode:normal}.xlsx-pdf-mark.is-redacted.active{z-index:6;border:2px solid var(--pdf-mark-accent);background:color-mix(in srgb,var(--pdf-mark-accent) 22%,transparent);box-shadow:0 0 0 1.5px #fff,0 0 0 3.5px var(--pdf-mark-accent);opacity:1}.xlsx-preview-frame{position:absolute;inset:0;display:block;width:100%;height:100%;border:0;background:#fff}.xlsx-office-cover{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;color:var(--muted);background:#f5f5f6}.xlsx-office-cover .redact-progress{width:min(420px,88%);gap:12px}.xlsx-office-error{color:#9d1c28}.xlsx-workbook{height:100%;min-height:0;display:flex;flex-direction:column;padding:0;background:#f5f5f6}.xlsx-sheet-wrap{flex:1;min-height:0;display:flex;flex-direction:column}.xlsx-zoom-surface{display:inline-block;min-width:100%}.xlsx-sheet-tabs{display:flex;align-items:center;flex-wrap:nowrap;gap:6px;padding:0 8px 2px;min-height:42px;background:#f8f8f9;border-top:1px solid var(--line);overflow:hidden}.xlsx-sheet-select-wrap{display:inline-flex;align-items:center;flex-shrink:0}.xlsx-sheet-select{height:24px;max-width:190px;padding:0 22px 0 8px;border:1px solid var(--line);border-radius:5px;background-color:#fff;color:var(--ink);font-size:12px;font-weight:600;cursor:pointer}.xlsx-sheet-select:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.xlsx-sheet-tab-list{display:flex;flex-wrap:nowrap;align-items:stretch;gap:0;flex:1;min-width:0;overflow-x:scroll;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#64748b #e2e8f0}.xlsx-sheet-tab-list::-webkit-scrollbar{height:8px}.xlsx-sheet-tab-list::-webkit-scrollbar-track{background:#e2e8f0}.xlsx-sheet-tab-list::-webkit-scrollbar-thumb{background:#64748b;border-radius:4px}.xlsx-sheet-tab{display:inline-block;flex-shrink:0;white-space:nowrap;margin:0;border:1px solid transparent;border-top:0;border-radius:0 0 4px 4px;background:transparent;padding:5px 14px;color:var(--muted-strong);font-size:12px;font-weight:700}.xlsx-sheet-tab.active{background:#fff;border-color:var(--line);border-top-color:#fff}.xlsx-scroll{flex:1;overflow:auto;scrollbar-gutter:stable;background:#fff}.xlsx-scroll::-webkit-scrollbar{width:10px;height:10px}.xlsx-scroll::-webkit-scrollbar-track{background:#f1f5f9}.xlsx-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:5px;border:2px solid #f1f5f9}.xlsx-scroll::-webkit-scrollbar-thumb:hover{background:#94a3b8}.xlsx-grid{border-collapse:collapse;table-layout:fixed;font-family:Microsoft YaHei,PingFang SC,Noto Sans SC,sans-serif;font-size:12px;line-height:1.35}.xlsx-grid-native{min-width:max-content}.xlsx-grid th,.xlsx-grid td{border:1px solid #d4d4d4;padding:2px 6px;vertical-align:bottom;text-align:left;white-space:pre-wrap;overflow-wrap:break-word}.xlsx-grid tr.xlsx-gap td{padding:0;border:0}.xlsx-grid-native td.xlsx-cell{min-width:0;max-width:none;overflow:visible}.xlsx-grid td .source-token,.xlsx-grid td .redacted-token{display:inline;white-space:inherit}.xlsx-cell-vertical{writing-mode:vertical-rl;text-orientation:upright;white-space:nowrap;overflow:visible;letter-spacing:0;line-height:1.15}.office-preview-frame.is-booting{opacity:0;pointer-events:none}.office-preview-fallback{overflow:auto;background:#f5f5f6}.office-preview-fallback-note{margin:10px 14px 0;color:var(--muted);font-size:12px;font-weight:400}.xlsx-cell-pickable{cursor:pointer;-webkit-user-select:text;user-select:text}.xlsx-cell-pickable:hover{outline:1px solid var(--primary);outline-offset:-1px}.xlsx-cell-picked{outline:2px solid var(--primary);outline-offset:-2px;box-shadow:inset 0 0 0 999px #1a73e81a}.xlsx-corner,.xlsx-col-head,.xlsx-row-head{background:#f8f8f9;color:var(--muted);font-size:11px;font-weight:700;text-align:center;vertical-align:middle;white-space:nowrap;min-width:36px;max-width:none}.xlsx-row-head-col{width:36px}.xlsx-row-head{position:sticky;left:0;z-index:1}.xlsx-col-head{position:sticky;top:0;z-index:2}.xlsx-corner{position:sticky;top:0;left:0;z-index:3}.word-canvas,.pdf-canvas{display:flex;flex-direction:column;align-items:center;gap:16px;min-height:100%;padding:18px 18px 28px;background:#d7deea}.word-page,.pdf-page{width:min(820px,100%);min-height:0;margin:0;background:#fff;box-shadow:0 10px 28px #1c293e29}.word-page-num,.pdf-page-num{margin-top:28px;text-align:center;color:#7b8698;font-size:12px}.word-page{padding:40px 52px 48px}.pdf-page{padding:36px 40px 44px;outline:1px solid #c5cedb}.word-paragraph,.pdf-paragraph{margin:0 0 10px;color:#18181b;font-size:14px;line-height:1.8;white-space:pre-wrap;overflow-wrap:break-word}.word-break,.pdf-break{height:10px}.word-table,.pdf-table{width:100%;border-collapse:collapse;margin:12px 0 16px;font-size:13px}.word-table td,.pdf-table td{border:1px solid #c5ced8;padding:6px 8px;vertical-align:top;white-space:pre-wrap}.word-table tr:first-child td{background:#f5f5f6;font-weight:700}.source-token,.redacted-token,.active-token{border:1px solid var(--token-border, #c9c9cf);border-radius:4px;background:var(--token-bg, #e9e9ec);color:inherit;cursor:pointer;padding:1px 3px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.source-token:hover,.redacted-token:hover{filter:saturate(1.08) brightness(.99)}.source-token.active,.redacted-token.active-token,.active-token{border-color:var(--token-accent, #6b6b73);background:var(--token-bg, #e9e9ec);color:inherit;box-shadow:0 0 0 2px color-mix(in srgb,var(--token-accent, #6b6b73) 18%,transparent)}.result-actions{display:grid;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface)}.result-actions button,.inspector button{min-height:34px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:800}.manual-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.manual-add>button.active{border-color:#0f766e;color:#0f766e;background:#f0fdfa}.manual-add>button.field-box-action{border-color:#ea580c;background:#f97316;color:#fff;font-weight:800;box-shadow:0 1px 2px #ea580c47}.manual-add>button.field-box-action:hover:not(:disabled){border-color:#c2410c;background:#ea580c}.manual-add>button.field-box-action.active{border-color:#9a3412;background:#c2410c;color:#fff;box-shadow:inset 0 0 0 1px #ffffff2e}.manual-add>button.field-box-action:disabled{border-color:#fdba74;background:#fed7aa;color:#fff;opacity:.72;box-shadow:none}.manual-add-hint{grid-column:1 / -1;color:#6b7c6d;font-size:12px;line-height:1.4}.manual-add-panel{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-muted);padding:8px}.manual-add-panel summary{cursor:pointer;color:#6b6b73;font-size:12px;font-weight:800}.manual-add-panel[open] summary{margin-bottom:8px}.manual-add select,.inspector select{min-width:0;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:#18181b;padding:7px 9px}.result-toolbar{display:grid;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line);background:#fff}.status-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.status-tab{min-height:30px;border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--surface);color:var(--muted-strong);font-size:12px;font-weight:700}.status-tab.active{border-color:#b8d4f8;background:var(--primary-soft);color:var(--primary-strong)}.result-search,.result-type-filter{width:100%;min-width:0;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);color:#18181b;padding:8px 10px;font-size:12px}.items{display:grid;align-content:start;gap:10px;overflow:visible;min-height:0;padding:10px 10px 12px}.empty-results{padding:18px 10px;border:1px dashed #cdcdd2;border-radius:var(--radius-md);color:var(--muted);font-size:12px;text-align:center;background:var(--surface)}.entity-category{display:grid;gap:8px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.entity-category-head,.entity-group-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.entity-category-head{display:none}.entity-category-toggle,.entity-type-toggle{min-width:0;flex:1 1 120px;border:0;background:transparent;display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;column-gap:6px;row-gap:2px;text-align:left;padding:0;cursor:pointer}.entity-type-toggle span,.entity-type-toggle small{grid-column:2}.entity-type-chevron{grid-row:1 / span 2;flex:0 0 auto;color:var(--muted);transition:transform .15s ease}.entity-type-toggle:hover .entity-type-chevron,.region-result-head:hover .entity-type-chevron{color:var(--primary-strong)}.entity-type-toggle.collapsed .entity-type-chevron,.region-result-head.collapsed .entity-type-chevron{transform:rotate(-90deg)}.entity-category-toggle span,.entity-type-toggle span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#18181b;font-size:13px;font-weight:800}.entity-category-toggle small,.entity-type-toggle small{color:var(--muted);font-size:11px;font-weight:600}.entity-action,.entity-group-actions button{white-space:nowrap;min-height:28px;border-radius:var(--radius-pill);border:1px solid #b8d4f8;background:var(--primary-soft);color:var(--primary-strong);font-size:12px;font-weight:700;padding:4px 8px}.entity-action:disabled,.entity-group-actions button:disabled{border-color:#d7dee7;background:#f3f5f7;color:#98a2b3}.entity-group{display:grid;gap:8px;padding:7px;border-radius:var(--radius-md);background:var(--surface);border:1px solid rgba(215,222,232,.65)}.entity-group-head{position:sticky;top:0;z-index:2;margin:-7px -7px 0;padding:7px 7px 6px;border-bottom:1px solid var(--line);border-radius:8px 8px 0 0;background:var(--surface)}.entity-group-actions{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;margin-left:auto}.entity{width:100%;display:grid;gap:8px;text-align:left;border:1px solid var(--line);border-radius:var(--radius-sm);min-height:0;padding:8px;background:var(--surface);box-shadow:0 1px 1px #18212f08}.entity.active{border-color:#b8d4f8;background:var(--primary-soft);box-shadow:inset 3px 0 0 var(--primary),0 4px 12px #1a73e814}.entity.hint{border-color:#cdcdd2;background:#f6f6f7}.entity.hint span{color:#6b6b73}.entity-row{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-items:start}.entity-info{min-width:0;border:0;background:transparent;display:grid;grid-template-columns:1fr auto;gap:1px 8px;padding:0;text-align:left}.entity-info:hover{background:transparent;box-shadow:none}.entity span{font-size:12px;font-weight:700;color:var(--primary-strong);line-height:1.2}.entity strong{font-size:12px;color:var(--amber);line-height:1.2}.entity small{grid-column:1 / -1;overflow-wrap:anywhere;color:#2c3441;font-size:12px;line-height:1.35;display:-webkit-box;line-clamp:unset;-webkit-line-clamp:unset;-webkit-box-orient:vertical;overflow:hidden}.entity em{grid-column:1 / -1;color:var(--muted);font-size:11px;font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-inline-actions{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));gap:5px}.entity-inline-actions button{white-space:nowrap;min-height:26px;border-radius:var(--radius-sm);padding:3px 7px;font-size:11px;font-weight:800}.entity-inline-actions .danger{border-color:#e7c3c7;background:var(--red-soft);color:var(--red)}.entity-editor{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;border-top:1px solid #e5e5e8;padding-top:8px}.entity-editor label{display:grid;gap:4px;color:#6b6b73;font-size:11px;font-weight:700}.entity-editor select,.entity-editor input{min-width:0;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:#18181b;padding:6px 8px;font-size:12px}.inspector{flex-shrink:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px;max-height:none;overflow:hidden;padding:10px 12px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#f8f8f9)}.inspector-title{grid-column:1 / -1;display:grid;gap:2px;color:#18181b;font-weight:800;font-size:13px}.inspector-title small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.inspector label{display:grid;gap:3px;color:#6b6b73;font-size:12px}.inspector input{min-width:0;border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:6px 8px;color:#18181b}.inspector label:nth-of-type(2),.inspector-meta,.inspector-actions{grid-column:1 / -1}.inspector-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:11px}.inspector-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.inspector button:not(.danger){color:var(--primary-strong);background:var(--primary-soft);border-color:#b8d4f8}.danger{height:36px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--red);background:var(--red-soft);border-color:#e7c3c7}@media(max-width:1440px){.export-title small,.restore-title small{display:none}}@media(max-width:1180px){.topbar{height:auto;min-height:68px;flex-wrap:wrap;padding:10px 12px}.shell{grid-template-rows:auto minmax(0,1fr)}.top-export{order:4;flex:1 1 auto;justify-content:flex-start}.top-restore{order:5;flex:1 1 auto;justify-content:flex-start}.workspace-frame{min-height:0}.meta-row{order:3;flex:1 1 100%}}@media(max-width:760px){.shell{grid-template-rows:auto minmax(0,1fr)}.topbar{grid-template-columns:1fr}.topbar{display:grid;padding:12px}.meta-row,.document-meta,.library-meta{width:100%}.library-meta{align-items:flex-start}.toolbar{flex-wrap:wrap}.settings-menu{position:static}.settings-popover{left:12px;right:12px;width:auto}.toolbar button{min-width:68px}.workspace-frame{padding:10px;min-height:0}.doc-pane{min-height:320px}}.pdf-mode-select{position:relative;display:inline-flex!important}.pdf-mode-trigger{height:28px;padding:0 8px 0 10px;border-radius:var(--radius-pill);display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--primary-strong);background:var(--primary-soft);border:1px solid #b8d4f8;box-shadow:none}.pdf-mode-trigger span,.pdf-mode-trigger strong{white-space:nowrap}.pdf-mode-trigger strong{max-width:220px;overflow:hidden;text-overflow:ellipsis;font-weight:700}.mode-restore-tag{font-style:normal;font-weight:700}.mode-restore-tag.is-restorable{color:var(--green-strong)}.mode-restore-tag.is-irreversible{color:var(--red)}.pdf-mode-trigger svg{flex:0 0 auto}.pane-head-actions .pdf-mode-trigger{color:#334155;background:#f8fafc;border-color:#cbd5e1}.pane-head-actions .pdf-mode-trigger strong{color:#0f172a}.pane-head-actions .pdf-mode-trigger:hover:not(:disabled){border-color:#94a3b8;background:#f1f5f9;box-shadow:none}.pdf-mode-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:24;min-width:220px;padding:6px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm);display:grid;gap:2px}.pdf-mode-menu button{width:100%;display:flex;align-items:center;gap:8px;min-height:32px;padding:6px 10px;border:0;border-radius:var(--radius-md);background:transparent;box-shadow:none;color:var(--text);font-size:12px;font-weight:600;text-align:left}.pdf-mode-menu button svg{flex:0 0 auto;opacity:0;color:var(--primary)}.pdf-mode-menu button.active svg,.pdf-mode-menu button[aria-selected=true] svg{opacity:1}.pdf-mode-menu button:hover,.pdf-mode-menu button.active{background:var(--primary-soft);color:var(--primary-strong)}.reredact-btn.active{border-color:#dc2626;background:#fef2f2;color:#b91c1c}.upload-pdf-mode{display:grid;gap:8px}.upload-pdf-mode>strong{font-size:13px}.upload-pdf-mode>strong small{margin-left:8px;color:#b45309;font-size:11px;font-weight:600}.upload-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.upload-mode-grid label{display:flex;align-items:flex-start;gap:7px;min-width:0;padding:9px;border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer}.upload-mode-grid label.is-on{border-color:#b8d4f8;background:var(--primary-soft)}.upload-mode-grid input{margin-top:3px;accent-color:var(--primary)}.upload-mode-grid span,.upload-mode-grid small{display:block}.upload-mode-grid b{color:var(--text);font-size:12px}.upload-mode-grid small{margin-top:2px;color:var(--muted);font-size:11px;line-height:1.35}.region-result-section{margin:0;padding:8px;border:1px solid #fecaca;border-radius:var(--radius-md);background:snow}.region-result-head{width:100%;display:flex;align-items:center;gap:6px;margin-bottom:6px;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.region-result-head.collapsed{margin-bottom:0}.region-result-head strong{font-size:12px;color:#991b1b}.region-result-head small{margin-left:auto;color:var(--muted);font-size:10px}.region-result-row{display:block}.region-result-row.active{background:color-mix(in srgb,var(--token-bg, #fef2f2) 70%,#fff);box-shadow:inset 2px 0 0 var(--token-accent, #dc2626)}.region-result-actions{display:inline-flex;align-items:center;gap:5px}.region-result-actions button{min-height:28px;padding:0 7px;border-radius:var(--radius-sm);font-size:10px}@media(max-width:720px){.upload-mode-grid{grid-template-columns:1fr}}.audit-filters{display:grid;grid-template-columns:minmax(220px,1fr) 180px auto;gap:8px;align-items:center}.audit-filters input,.audit-filters select{height:36px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:#fff;padding:0 10px}.audit-filters span{color:var(--muted);font-size:12px}.audit-table{max-height:420px;overflow:auto;border:1px solid var(--line);border-radius:var(--radius-md)}.audit-table-row{display:grid;grid-template-columns:160px 130px 130px minmax(150px,.8fr) minmax(180px,1.2fr);gap:10px;align-items:center;min-width:820px;padding:9px 11px;border-bottom:1px solid var(--line);font-size:12px}.audit-table-row:last-child{border-bottom:0}.audit-table-row.head{position:sticky;top:0;z-index:1;color:var(--muted);font-weight:700;background:#f9f9fb}.audit-table-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;color:var(--muted);font-size:12px}.admin-pagination>div{display:flex;align-items:center;gap:7px}.admin-pagination strong{min-width:58px;color:var(--muted-strong);font-size:12px;text-align:center}.admin-pagination button{width:30px;height:30px;display:grid;place-items:center;padding:0;border-radius:var(--radius-sm);color:var(--muted-strong);background:var(--surface)}.admin-pagination button:hover:not(:disabled){border-color:#b8d4f8;color:var(--primary-strong);background:var(--primary-soft)}@media(max-width:720px){.audit-filters{grid-template-columns:1fr}.admin-pagination{flex-wrap:wrap}}.app-frame{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;background:var(--bg)}.app-frame .shell{height:100%;max-height:none}.workspace-stack{position:relative;min-height:0;height:100%;overflow:hidden}.workspace-keep{height:100%;min-height:0;overflow:hidden}.workspace-keep.is-idle{position:absolute;inset:0;visibility:hidden;pointer-events:none}.workspace-keep.is-active{position:relative;visibility:visible}.workspace-keep>.shell,.workspace-keep>.chat-workspace,.workspace-keep>.admin-workspace,.workspace-keep>.personal-settings{height:100%}.workspace-switch .nav-busy{font-size:11px;font-weight:600;color:#b45309}.workspace-switch .nav-queue{display:inline-flex;align-items:center;gap:4px;margin-left:2px}.workspace-switch .nav-queue em{font-style:normal;font-size:10px;font-weight:700;line-height:1;padding:3px 6px;border-radius:var(--radius-pill)}.workspace-switch .nav-queue .is-upload,.workspace-switch .nav-queue .is-redact{background:var(--amber-soft);color:#b45309}.workspace-switch .nav-queue .is-done{background:var(--green-soft);color:var(--green-strong)}.app-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 18px;border-bottom:1px solid var(--line);background:var(--surface);box-shadow:0 1px #0f172a05}.brand-copy{display:grid;gap:1px}.brand-copy strong{font-size:14px;color:var(--text)}.workspace-switch{display:flex;flex-wrap:wrap;padding:3px;border-radius:var(--radius-pill);background:#eef3f9;border:1px solid var(--line)}.workspace-switch a{min-width:96px;padding:7px 12px;border-radius:var(--radius-pill);color:var(--muted-strong);text-align:center;text-decoration:none;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:6px}.workspace-switch a:hover{color:var(--text)}.workspace-switch a.active{background:var(--surface);color:var(--primary-strong);box-shadow:var(--shadow-sm)}.app-user{display:flex;gap:8px;justify-content:flex-end;min-width:120px}.logout-btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:var(--radius-md);font-size:13px;color:var(--muted-strong)}a.site-link{border:1px solid transparent;text-decoration:none;white-space:nowrap}.primary-action{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 6px 14px #1a73e82e;border-radius:var(--radius-md);padding:10px 14px;font-weight:700}.primary-action:hover:not(:disabled){border-color:var(--primary-strong);background:var(--primary-strong)}.ghost-btn{height:32px;padding:0 10px;border-radius:var(--radius-md);font-size:12px;color:var(--muted-strong);background:var(--surface)}.personal-settings{min-height:0;display:flex;flex-direction:column;overflow:auto;padding:24px 32px 28px;background:radial-gradient(circle at top right,rgba(26,115,232,.07),transparent 30%),var(--bg)}.personal-settings-hero{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.personal-settings-kicker{margin-bottom:5px;color:var(--primary-strong);font-size:12px;font-weight:700;letter-spacing:.04em}.personal-settings-hero h1{margin:0;color:var(--text);font-size:28px}.personal-settings-hero p{margin:5px 0 0;color:var(--muted)}.personal-settings-hero-side{display:flex;align-items:stretch;gap:10px}.personal-account{min-width:220px;display:flex;align-items:center;gap:11px;padding:12px 16px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#ffffffdb;box-shadow:var(--shadow-sm)}.personal-account>svg{color:var(--primary-strong)}.personal-account>div{min-width:0;display:grid}.personal-account strong,.personal-account span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.personal-account span{color:var(--muted);font-size:12px}.personal-settings-save{min-width:112px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 16px;border-radius:var(--radius-lg)}.personal-settings-banner{width:100%;margin:16px 0 0;display:flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid #bbf7d0;border-radius:var(--radius-md);color:var(--green-strong);background:var(--green-soft);font-size:13px}.personal-settings-banner.error{border-color:#fecaca;color:var(--red);background:var(--red-soft)}.personal-settings-grid{flex:1 1 0;min-height:480px;width:100%;margin:20px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(0,1fr);align-items:stretch;gap:16px}.personal-settings-card{min-width:0;min-height:0;display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.personal-settings-card-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:11px}.personal-settings-card-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:var(--radius-md);color:var(--primary-strong);background:var(--primary-soft)}.personal-settings-card-head h2{margin:0 0 2px;font-size:17px}.personal-settings-card-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.personal-settings-card-head>span,.personal-settings-card-head-actions>span{padding:4px 8px;border-radius:var(--radius-pill);color:var(--primary-strong);background:var(--primary-soft);font-size:11px;font-weight:700;white-space:nowrap}.personal-settings-card-head-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.personal-settings-card-head-actions .personal-settings-save{height:32px;min-height:32px;min-width:108px;padding:0 12px;border-radius:var(--radius-md);font-size:12.5px}.personal-settings-card-toggle{min-height:29px;display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-color:transparent;border-radius:var(--radius-pill);color:var(--primary-strong);background:var(--primary-soft);font-size:11px;font-weight:700;white-space:nowrap}.personal-settings-card-toggle svg{transition:transform .16s ease}.personal-whitelist-card.is-open .personal-settings-card-toggle svg{transform:rotate(180deg)}.personal-whitelist-card.is-collapsed{align-self:start}.personal-whitelist-body{flex:1 1 0;min-height:0;display:flex;flex-direction:column;gap:14px}.personal-settings-actions{display:flex;justify-content:flex-end}.personal-settings-actions button,.personal-whitelist-add>button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 13px;border-radius:var(--radius-md)}.personal-settings-empty{padding:28px 14px;color:var(--muted);text-align:center;font-size:13px}.personal-whitelist-add{display:grid;grid-template-columns:minmax(180px,.75fr) minmax(280px,1.25fr);align-items:start;gap:10px}.personal-whitelist-add label,.personal-blacklist-type-field{min-width:0;display:grid;gap:6px;color:var(--muted-strong);font-size:12px;font-weight:600;white-space:nowrap}.personal-field-label{color:var(--muted-strong);font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.personal-blacklist-type-field .type-menu{width:100%;min-width:0}.personal-blacklist-type-field .type-menu .type-menu-trigger,.personal-blacklist-type-field .type-menu.compact .type-menu-trigger{width:100%;height:36px;min-height:36px;justify-content:space-between;padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:#fff;color:var(--text);font-size:13px;font-weight:600;box-sizing:border-box}.personal-blacklist-badge{display:inline-flex;align-items:center;margin-left:8px;padding:1px 7px;border-radius:999px;background:#334155;color:#fff;font-style:normal;font-size:11px;font-weight:600}.personal-blacklist-badge.is-whitelist-badge{background:#fff;color:#1e293b;border:1px solid #cbd5e1}.personal-blacklist-badge.is-blacklist-badge{background:#334155;color:#fff;border:1px solid #334155}.personal-whitelist-add textarea,.personal-whitelist-add input,.personal-whitelist-toolbar>input{width:100%;border:1px solid var(--line-strong);border-radius:var(--radius-md);color:var(--text);background:#fff;outline:none}.personal-whitelist-add textarea{min-height:82px;padding:9px 10px;resize:vertical}.personal-whitelist-add input,.personal-whitelist-toolbar>input{height:36px;padding:0 10px}.personal-whitelist-add textarea:focus,.personal-whitelist-add input:focus,.personal-whitelist-toolbar>input:focus{border-color:#b8d4f8;box-shadow:0 0 0 2px var(--primary-soft)}.personal-whitelist-add>button{grid-column:1 / -1;justify-self:start}.personal-whitelist-toolbar{min-height:36px;display:flex;align-items:center;gap:10px}.personal-whitelist-toolbar>input{flex:1;min-width:180px}.personal-whitelist-toolbar>div{display:flex;align-items:center;gap:5px}.personal-whitelist-toolbar button,.personal-whitelist-row>button,.personal-pagination button{min-height:30px;padding:0 9px;border-radius:var(--radius-sm);font-size:12px}.personal-whitelist-toolbar small{margin-right:4px}.personal-whitelist-list{flex:1 1 0;min-height:160px;max-height:none;display:grid;align-content:start;border:1px solid var(--line);border-radius:var(--radius-md);overflow:auto}.personal-whitelist-row{min-width:0;display:grid;grid-template-columns:16px minmax(0,1fr) auto auto auto auto auto;align-items:center;gap:8px;padding:9px 10px;border-bottom:1px solid var(--line)}.personal-convert-btn{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-weight:600}.personal-convert-btn.is-to-whitelist{background:#fff;color:#1e293b;border:1px solid #94a3b8}.personal-convert-btn.is-to-whitelist:hover:not(:disabled){background:#f1f5f9;color:#0f172a;border-color:#334155}.personal-convert-btn.is-to-blacklist{background:#334155;color:#fff;border:1px solid #334155}.personal-convert-btn.is-to-blacklist:hover:not(:disabled){background:#1e293b;color:#fff;border-color:#1e293b}.personal-enable-btn{background:var(--green-soft, #ecfdf5);color:var(--green-strong, #047857);border:1px solid #6ee7b7;font-weight:600}.personal-enable-btn:hover:not(:disabled){background:#d1fae5;color:#065f46;border-color:#10b981}.personal-disable-btn{background:#fef3c7;color:#b45309;border:1px solid #f59e0b;font-weight:600}.personal-disable-btn:hover:not(:disabled){background:#fde68a;color:#92400e;border-color:#d97706}.personal-whitelist-row.is-editing{grid-template-columns:16px minmax(0,1fr) auto auto;background:#f8fafce6}.personal-whitelist-row>.personal-inline-edit-fields,.personal-inline-edit-fields{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:nowrap}.personal-inline-edit-fields>input{flex:1 1 0;min-width:80px;height:32px;padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#fff;color:var(--text);font-size:12.5px;outline:none}.personal-inline-edit-fields>input:focus{border-color:#b8d4f8;box-shadow:0 0 0 2px var(--primary-soft)}.personal-inline-edit-fields>.rr-type,.personal-inline-edit-fields>.type-menu{flex:0 0 auto}.personal-inline-edit-fields>.type-menu .type-menu-trigger,.personal-inline-edit-fields>.type-menu.compact .type-menu-trigger{height:32px;min-height:32px;padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:#fff;color:var(--text);font-size:12.5px;font-weight:600}.personal-whitelist-row.is-editing>button{height:32px;min-height:32px;padding:0 10px;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.personal-whitelist-row:last-child{border-bottom:0}.personal-whitelist-row>div:not(.personal-inline-edit-fields){min-width:0;display:grid}.personal-whitelist-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.personal-whitelist-row strong{font-size:13px}.personal-whitelist-row small{overflow:hidden;display:-webkit-box;color:var(--muted);line-height:1.4;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.personal-whitelist-row>span{padding:3px 7px;border-radius:var(--radius-pill);font-size:11px;white-space:nowrap}.personal-whitelist-row>span.enabled{color:var(--green-strong, #047857);background:var(--green-soft, #ecfdf5);border:1px solid #a7f3d0;font-weight:600}.personal-whitelist-row>span.disabled{color:#b45309;background:#fef3c7;border:1px solid #fcd34d;font-weight:600}.personal-whitelist-row>.icon-button{width:30px;padding:0}.personal-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px;border:1px solid var(--line);border-radius:var(--radius-md);background:#f8fafcd9}.personal-pagination-info{font-size:12px;color:var(--muted-strong, #64748b);font-variant-numeric:tabular-nums}.personal-pagination-controls{display:inline-flex;align-items:center;gap:6px}.personal-pagination button{width:28px;min-width:28px;height:28px;min-height:28px;display:grid;place-items:center;padding:0}.personal-pagination span{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.personal-settings-card-icon.is-whitelist{color:#1e293b;background:#f1f5f9;border:0}.personal-settings-card-icon.is-blacklist{color:#fff;background:#334155;border:0}.personal-dict-head-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.personal-dict-tabs{display:inline-flex;align-items:center;gap:4px;padding:3px;border-radius:10px;background:#f1f5f9;border:0}.personal-dict-tab{min-height:30px;height:30px;padding:0 11px;border:0;border-radius:7px;background:transparent;box-shadow:none;color:#64748b;font-size:12.5px;font-weight:700;display:inline-flex;align-items:center;gap:5px;cursor:pointer;transition:background-color .14s ease,color .14s ease,box-shadow .14s ease}.personal-dict-tab:hover{border:0;background:#0f172a0a;box-shadow:none}.personal-dict-tab em{font-style:normal;font-size:11px;font-weight:700;padding:1px 6px;border-radius:999px;background:#0f172a12;color:#475569;font-variant-numeric:tabular-nums}.personal-dict-tab.is-wl.active,.personal-dict-tab.active,.personal-dict-tab.is-wl.active:hover,.personal-dict-tab.active:hover{background:#fff;color:#1e293b;border:0;box-shadow:0 1px 2px #0f172a0f}.personal-dict-tab.is-wl.active em,.personal-dict-tab.active em{background:#f1f5f9;color:#1e293b}.personal-dict-tab.is-bl.active,.personal-dict-tab.is-bl.active:hover{background:#334155;color:#fff;border:0;box-shadow:none}.personal-dict-tab.is-bl.active em{background:#fff3;color:#fff}.personal-dict-head-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.personal-dict-add-trigger{min-height:32px;height:32px;padding:0 13px;border:0;border-radius:var(--radius-pill);font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;cursor:pointer;transition:transform .12s ease,background-color .12s ease,color .12s ease,box-shadow .12s ease}.personal-dict-add-trigger.is-whitelist-btn,.personal-empty-add-btn.is-whitelist-btn{background:#f1f5f9;color:#1e293b;border:0;box-shadow:none}.personal-dict-add-trigger.is-whitelist-btn:hover,.personal-dict-add-trigger.is-whitelist-btn.is-active,.personal-empty-add-btn.is-whitelist-btn:hover{background:#e2e8f0;color:#0f172a;border:0;box-shadow:none}.personal-dict-add-trigger.is-blacklist-btn,.personal-empty-add-btn.is-blacklist-btn{background:#334155;color:#fff;border:0;box-shadow:none}.personal-dict-add-trigger.is-blacklist-btn:hover,.personal-dict-add-trigger.is-blacklist-btn.is-active,.personal-empty-add-btn.is-blacklist-btn:hover{background:#475569;color:#fff;border:0;box-shadow:none}.personal-dict-add-drawer,.personal-dict-add-drawer.is-blacklist-drawer{display:grid;gap:10px;padding:13px 14px;border-radius:var(--radius-md);border:1.5px solid #cbd5e1;background:#fff;color:#1e293b;box-shadow:0 6px 18px #0f172a0f}.personal-dict-add-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.personal-dict-add-drawer-title{display:inline-flex;align-items:center;gap:8px;min-width:0}.personal-dict-mode-pill{padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.personal-dict-mode-pill.is-wl{background:#f1f5f9;color:#1e293b;border:1px solid #cbd5e1}.personal-dict-mode-pill.is-bl{background:#334155;color:#fff;border:1px solid #334155}.personal-dict-add-drawer-head strong{font-size:13px;font-weight:700;color:inherit}.personal-dict-add-close{width:24px;min-width:24px;height:24px;min-height:24px;padding:0;border:0;border-radius:6px;background:transparent;box-shadow:none;color:inherit;opacity:.75;display:grid;place-items:center;cursor:pointer}.personal-dict-add-close:hover{opacity:1;background:#94a3b833}.personal-batch-cols-head{display:grid;grid-template-columns:22px minmax(0,1.25fr) minmax(110px,.78fr) minmax(0,1fr);align-items:center;gap:8px;font-size:11.5px;font-weight:700;color:#475569;padding:0 2px}.personal-batch-rows{display:grid;gap:8px;max-height:240px;overflow-y:auto;overflow-x:visible;padding-right:2px}.personal-batch-row{display:grid;grid-template-columns:22px minmax(0,1.25fr) minmax(110px,.78fr) minmax(0,1fr);align-items:center;gap:8px}.personal-batch-row.has-remove{grid-template-columns:22px minmax(0,1.25fr) minmax(110px,.78fr) minmax(0,1fr) 28px}.personal-batch-idx{font-style:normal;font-size:11.5px;font-weight:700;text-align:center;color:#64748b;font-variant-numeric:tabular-nums}.personal-batch-row>input{width:100%;min-width:0;height:34px;padding:0 10px;border:1px solid #cbd5e1;border-radius:var(--radius-md);background:#fff;color:#1e293b;font-size:12.5px;box-sizing:border-box;outline:none}.personal-batch-row>input:focus{border-color:#334155;box-shadow:0 0 0 2px #3341551f}.personal-batch-row .personal-blacklist-type-field .type-menu .type-menu-trigger,.personal-batch-row .personal-blacklist-type-field .type-menu.compact .type-menu-trigger{height:34px;min-height:34px;border-color:#cbd5e1}.personal-batch-row-remove{width:28px;min-width:28px;height:28px;min-height:28px;padding:0;border:0;border-radius:6px;background:transparent;color:inherit;opacity:.65;display:grid;place-items:center;cursor:pointer}.personal-batch-row-remove:hover{opacity:1;background:#ef444424;color:#ef4444}.personal-batch-row-group{display:flex;flex-direction:column;gap:5px}.personal-batch-row-feedback-list{display:flex;flex-direction:column;gap:4px;margin-left:30px}.personal-batch-row-feedback{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px;border-radius:var(--radius-md);font-size:12px;line-height:1.4;flex-wrap:wrap}.personal-batch-row-feedback.is-error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.personal-batch-row-feedback.is-warning{background:#fffbeb;border:1px solid #fde68a;color:#b45309}.personal-batch-row-feedback.is-ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857}.personal-batch-row-feedback.is-info{background:#f8fafc;border:1px solid #cbd5e1;color:#475569}.personal-batch-row-feedback-actions{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.personal-coexist-btn{height:26px;min-height:26px;padding:0 9px;border-radius:6px;border:1px solid #d97706;background:#fff;color:#b45309;font-size:11.5px;font-weight:700;display:inline-flex;align-items:center;gap:4px;cursor:pointer}.personal-coexist-btn:hover{background:#fef3c7}.personal-dict-conflict-text{display:inline-flex;align-items:center;gap:6px;font-weight:600;flex:1 1 260px}.personal-whitelist-row .personal-inline-edit-error,.personal-inline-edit-error{grid-column:2 / -1;flex-basis:100%;display:block;padding:4px 8px;border-radius:var(--radius-sm);border:1px solid #fecaca;background:#fef2f2;color:#dc2626;font-size:11.5px;font-weight:600;margin-top:2px}.personal-whitelist-row .personal-inline-edit-warning,.personal-inline-edit-warning{grid-column:2 / -1;flex-basis:100%;display:block;padding:4px 8px;border-radius:var(--radius-sm);border:1px solid #fde68a;background:#fffbeb;color:#b45309;font-size:11.5px;font-weight:600;margin-top:2px}.personal-dict-add-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:4px}.personal-batch-add-row-btn{height:32px;min-height:32px;padding:0 11px;border:1px dashed #94a3b8;border-radius:var(--radius-md);background:#f8fafc;color:#0f172a;font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:5px;cursor:pointer}.personal-batch-add-row-btn:hover{border-style:solid;border-color:#0f172a;background:#f1f5f9}.personal-dict-add-btns{display:inline-flex;align-items:center;gap:8px}.personal-dict-add-btns>button{height:34px;min-height:34px;padding:0 13px;border-radius:var(--radius-md);white-space:nowrap;display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:700;cursor:pointer}.personal-dict-cancel-btn{background:#fff;border:1px solid #cbd5e1;color:#475569}.personal-dict-submit-btn.is-wl{background:#fff;color:#0f172a;border:1.5px solid #0f172a}.personal-dict-submit-btn.is-wl:hover:not(:disabled){background:#0f172a;color:#fff}.personal-dict-submit-btn.is-bl{background:#334155;color:#fff;border:1.5px solid #334155}.personal-dict-submit-btn.is-bl:hover:not(:disabled){background:#1e293b;border-color:#1e293b;color:#fff}.personal-dict-submit-btn.is-bl em{background:#fff3;color:#fff}.personal-dict-submit-btn:disabled{opacity:.45;cursor:not-allowed}.personal-dict-submit-btn em{font-style:normal;font-size:11px;padding:0 6px;border-radius:999px;background:#0f172a1a;color:inherit}.personal-empty-add-btn{margin-top:10px;height:32px;min-height:32px;padding:0 12px;border-radius:var(--radius-md);font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:5px;cursor:pointer}.personal-whitelist-toolbar{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;min-width:0}.personal-select-all{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--muted-strong);white-space:nowrap;cursor:pointer}.personal-search-box{position:relative;flex:1 1 0;min-width:0;display:flex;align-items:center}.personal-search-icon{position:absolute;left:10px;color:var(--muted);pointer-events:none}.personal-search-box>input{width:100%;min-width:0;height:36px;padding:0 28px 0 30px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:#fff;color:var(--text);font-size:12.5px;box-sizing:border-box}.personal-search-box>input:focus{outline:none;border-color:#b8d4f8;box-shadow:0 0 0 2px var(--primary-soft)}.personal-search-clear{position:absolute;right:5px;width:22px;min-width:22px;height:22px;min-height:22px;padding:0;border:0;border-radius:4px;background:transparent;box-shadow:none;color:var(--muted);display:grid;place-items:center}.personal-search-clear:hover{color:var(--text);background:#0f172a0f}.personal-status-pills{flex:0 0 auto;display:inline-flex;align-items:center;gap:2px;padding:3px;height:36px;box-sizing:border-box;border-radius:var(--radius-md);background:#f1f5f9;border:1px solid var(--line)}.personal-status-pill{min-height:28px;height:28px;padding:0 8px;border:0;border-radius:6px;background:transparent;box-shadow:none;color:var(--muted-strong);font-size:11.5px;font-weight:600;white-space:nowrap}.personal-status-pill.active{background:#fff;color:var(--text);box-shadow:0 1px 2px #0f172a0f}.personal-type-filter{flex:0 0 auto;min-width:112px;max-width:196px}.personal-type-filter .type-menu{width:100%;min-width:0}.personal-type-filter .type-menu .type-menu-trigger,.personal-type-filter .type-menu.compact .type-menu-trigger{width:100%;height:36px;min-height:36px;justify-content:space-between;padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:#fff;color:var(--text);font-size:12px;font-weight:600;box-sizing:border-box}.personal-type-filter .type-menu .type-menu-trigger strong{max-width:152px;overflow:hidden;text-overflow:ellipsis;font-weight:600}.personal-type-filter.is-filtered .type-menu .type-menu-trigger{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.personal-type-filter .type-menu .type-menu-trigger:hover:not(:disabled),.personal-type-filter .type-menu .type-menu-trigger[aria-expanded=true]{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-strong)}.personal-bulk-actions{display:inline-flex;align-items:center;gap:5px;margin-left:auto}.admin-workspace{min-height:0;overflow:auto;padding:28px 32px 48px;background:radial-gradient(circle at top right,rgba(26,115,232,.08),transparent 36%),var(--bg)}.admin-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;padding-bottom:8px}.admin-kicker{display:inline-flex;margin-bottom:8px;padding:4px 10px;border-radius:var(--radius-pill);background:var(--primary-soft);color:var(--primary-strong);font-size:12px;font-weight:700}.admin-hero h1{margin:0 0 8px;font-size:28px;letter-spacing:-.02em}.admin-hero p,.admin-meta,.admin-card small{margin:0;color:var(--muted);line-height:1.55}.admin-card .field-hint{font-weight:400;font-size:12px}.admin-meta a{color:var(--primary-strong)}.admin-stat-strip{display:flex;gap:10px;flex-wrap:wrap}.admin-stat-strip>div{min-width:108px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);display:grid;gap:4px}.admin-stat-strip strong{font-size:18px;color:var(--text)}.admin-stat-strip span{font-size:12px;color:var(--muted)}.admin-banner{margin:16px 0 0;padding:11px 14px;border-radius:var(--radius-lg);background:var(--green-soft);color:var(--green-strong);border:1px solid #bbf7d0}.admin-banner.error{background:var(--red-soft);color:var(--red);border-color:#fecaca}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.admin-card{display:grid;align-content:start;gap:12px;padding:20px;border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow-sm)}.admin-card-wide{grid-column:1 / -1}.visibility-note{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.visibility-range{display:flex;gap:6px;margin-left:auto}.visibility-range button{height:32px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-pill);background:transparent;color:var(--muted-strong)}.visibility-range button.is-active{background:var(--primary);color:#fff;border-color:var(--primary)}.visibility-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.visibility-surface,.visibility-region{display:grid;gap:10px;align-content:start}.visibility-surface{padding-top:12px;border-top:1px solid var(--line)}.visibility-region{padding:12px;border:1px solid var(--line);border-radius:var(--radius-lg)}.visibility-surface h3,.visibility-region h4,.visibility-table-wrap h4{margin:0}.visibility-surface h3 small,.visibility-table-wrap h4 small{margin-left:8px;color:var(--muted);font-size:12px;font-weight:400}.visibility-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.visibility-stats div{display:grid;gap:2px;padding:10px 12px;border-radius:var(--radius-lg);background:#f4f6f8}.visibility-stats span,.admin-metric-table small{color:var(--muted);font-size:12px}.admin-metric-table{width:100%;border-collapse:collapse;font-size:13px}.admin-metric-table td{padding:6px 0;border-bottom:1px solid var(--line);vertical-align:top}.admin-metric-table td:last-child{text-align:right;white-space:nowrap}.admin-metric-table small{display:block}.visibility-queries{margin:0;padding-left:18px;color:var(--muted-strong);font-size:13px}.visibility-note code{font-size:12px}.ops-workspace{display:grid;align-content:start;gap:16px}.ops-workspace>.admin-card+.admin-card{margin-top:0}.ops-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ops-tabs{display:inline-flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.ops-tabs button{height:32px;padding:0 14px;border:0;border-radius:var(--radius-md);background:transparent;color:var(--muted-strong);font-size:14px}.ops-tabs button.is-active{background:var(--primary-soft);color:var(--primary-strong);font-weight:600}.ops-matrix th{padding:6px 0;border-bottom:1px solid var(--line-strong);color:var(--muted);font-size:12px;font-weight:500;text-align:right}.ops-matrix th:first-child{text-align:left}.ops-matrix td:not(:first-child){text-align:right;white-space:nowrap;width:88px}.ops-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.ops-form label{display:grid;gap:6px;font-size:13px;color:var(--muted-strong)}.ops-funnel{display:grid;gap:10px}.ops-funnel-row{display:grid;grid-template-columns:140px minmax(0,1fr) 48px 44px;align-items:center;gap:12px;font-size:14px}.ops-funnel-label{color:var(--muted-strong)}.ops-funnel-bar{height:12px;border-radius:var(--radius-pill);background:var(--surface-strong);overflow:hidden}.ops-funnel-bar i{display:block;height:100%;border-radius:var(--radius-pill);background:var(--primary)}.ops-funnel-row strong{text-align:right}.ops-funnel-row small{color:var(--muted);font-size:12px}.ops-filters{margin-left:auto;display:flex;gap:10px;flex-wrap:wrap}.ops-filters-inline{margin:0 0 10px}.ops-select{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted-strong);white-space:nowrap}.admin-card .ops-select select{width:auto;padding:5px 8px;font-size:13px}.ops-pager{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:10px;font-size:13px;color:var(--muted)}.ops-pager button,.ops-more{height:28px;padding:0 10px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--muted-strong);font-size:12px}.ops-pager button:disabled{opacity:.4}.ops-more{margin-top:6px}.ops-kind{display:inline-block;padding:1px 8px;border-radius:var(--radius-pill);font-size:12px;white-space:nowrap;background:var(--surface-strong);color:var(--muted-strong)}.ops-kind-human{background:var(--green-soft);color:var(--green-strong)}.ops-kind-bot{background:var(--amber-soft);color:var(--amber)}.ops-kind-admin{background:var(--primary-soft);color:var(--primary-strong)}.ops-kind-engaged{margin-left:4px;border:1px solid var(--green-soft);background:transparent;color:var(--green-strong)}.ops-check-verified{background:var(--green-soft);color:var(--green-strong)}.ops-check-fake{background:var(--amber-soft);color:var(--red)}.ops-kind-cell{max-width:220px}.ops-visitors .ops-network{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ops-visitors tr.is-muted-visit td{color:var(--muted)}.ops-engine-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ops-engine h4 small{margin-left:8px;color:var(--muted);font-size:12px;font-weight:400}.ops-engine-line{display:flex;gap:8px;align-items:baseline;font-size:13px}.ops-engine-line span{color:var(--muted)}.ops-engine-line em{color:var(--amber);font-style:normal}.ops-dashboard-link{font-size:13px}.ops-error{color:var(--red)}.ops-form .ops-form-wide{grid-column:1 / -1}.ops-form textarea{width:100%;padding:9px 11px;border:1px solid var(--line-strong);border-radius:var(--radius-md);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.ops-umami{margin-top:6px}.ops-visitors-wrap{overflow-x:auto}.ops-visitors{min-width:980px}.ops-visitors td,.ops-visitors th{padding-right:12px}.ops-visitors td:not(:first-child),.ops-visitors th:not(:first-child){text-align:left;width:auto;white-space:normal}.ops-visitors td small{display:block;color:var(--muted);font-size:12px}.ops-visitors .ops-ip{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.ops-visitors tr.is-admin-visit td{color:var(--muted)}.ops-links{margin:0;padding-left:18px;display:grid;gap:6px;font-size:14px}.visibility-reading{display:grid;gap:8px}.visibility-reading summary{cursor:pointer;color:var(--muted-strong);font-size:13px}.admin-select{position:relative;min-width:0;width:100%}.admin-select-trigger{width:100%;height:36px;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:#fcfcfd;color:var(--text);font-size:13px;font-weight:400;box-shadow:none}.admin-select-trigger>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.admin-select-trigger svg{flex:0 0 auto;color:var(--muted)}.admin-select-trigger:hover:not(:disabled){border-color:#b8d4f8;background:#fff;box-shadow:none}.admin-select.is-open .admin-select-trigger{border-color:#b8d4f8;box-shadow:0 0 0 3px #1a73e81f}.admin-select-menu{max-height:280px;overflow:auto;padding:6px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;box-shadow:0 12px 32px #0f172a1f}.admin-select-menu button{width:100%;display:flex;align-items:center;gap:8px;min-height:32px;padding:6px 10px;border:0;border-radius:var(--radius-md);background:transparent;box-shadow:none;color:var(--text);font-size:13px;text-align:left}.admin-select-menu button svg{flex:0 0 auto;opacity:0;color:var(--primary)}.admin-select-menu button.active svg,.admin-select-menu button[aria-selected=true] svg{opacity:1}.admin-select-menu button:hover,.admin-select-menu button.active{background:var(--primary-soft);color:var(--primary-strong)}.admin-select-menu button:disabled{opacity:.5;cursor:not-allowed}.admin-table-row .admin-select-trigger{height:32px;padding:0 8px;border-radius:var(--radius-md);font-size:12px}.admin-split-row{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:stretch}.admin-split-row .admin-card{min-width:0}.admin-split-row .admin-table,.admin-split-row .audit-table{overflow:auto}.admin-split-row .admin-table-row{grid-template-columns:minmax(88px,1fr) 88px 52px minmax(168px,1.3fr);gap:8px;padding:8px 10px}.admin-split-row .admin-actions{gap:6px}.admin-split-row .admin-actions input{width:96px;min-width:0;flex:1 1 88px}.admin-split-row .audit-filters{grid-template-columns:minmax(0,1fr) 118px auto}.admin-split-row .audit-table-row{grid-template-columns:118px 68px 72px minmax(64px,.7fr) minmax(80px,1fr);min-width:540px;gap:8px;padding:7px 9px}@media(max-width:1180px){.admin-split-row{grid-template-columns:1fr}}.admin-card-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:4px}.admin-add-user{margin-left:auto;height:34px;padding:0 12px;border-radius:var(--radius-md);display:inline-flex;align-items:center;gap:6px;font-size:13px}.admin-export-emails{margin-left:auto;height:34px;padding:0 12px;display:inline-flex;align-items:center;font-size:13px;text-decoration:none}.admin-export-emails,.admin-add-user{flex:0 0 auto;white-space:nowrap}.admin-export-emails+.admin-add-user{margin-left:8px}.admin-overlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px;background:#0f172a6b}.admin-dialog{width:min(440px,calc(100vw - 32px));display:grid;gap:12px;padding:20px 20px 16px;border-radius:var(--radius-xl);background:#fff;border:1px solid var(--line-strong);box-shadow:var(--shadow-lg)}.admin-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.admin-dialog-head strong{display:block;font-size:16px;color:var(--text)}.admin-dialog-head p{margin:4px 0 0;color:var(--muted-strong);font-size:13px}.admin-dialog label{display:grid;gap:6px;font-size:13px;color:var(--muted-strong)}.admin-dialog input,.admin-dialog select{height:38px;padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:#fff;color:var(--text)}.admin-dialog-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.admin-dialog-actions button{min-width:84px;height:36px;border-radius:var(--radius-md);font-size:13px;font-weight:700}.admin-card-icon{width:36px;height:36px;border-radius:var(--radius-md);display:grid;place-items:center;color:var(--primary-strong);background:var(--primary-soft);border:1px solid #b8d4f8;flex-shrink:0}.admin-card-head h2{margin:0 0 2px;font-size:16px}.admin-card>label:not(.switch-row){display:grid;gap:6px;font-size:13px;color:var(--muted-strong);font-weight:600}.admin-card input:not([type=checkbox]),.admin-card select,.admin-actions input{width:100%;padding:9px 11px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:#fcfcfd;color:var(--text);font-weight:400}.admin-card input:not([type=checkbox]):focus,.admin-card select:focus,.admin-actions input:focus,.auth-card input:focus,.chat-workspace .chat-composer textarea:focus{outline:none;border-color:#b8d4f8;box-shadow:0 0 0 3px #1a73e81f}.admin-toggles{display:grid;gap:8px;margin-top:2px}.admin-toggles .switch-row{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;min-height:44px;margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#f9f9fb;color:var(--text);font-size:13px;font-weight:600;line-height:1.4;cursor:pointer;white-space:normal;box-shadow:none}.admin-toggles .switch-row:hover{border-color:#b8d4f8;background:var(--primary-soft)}.admin-toggles .switch-row span{flex:1;min-width:0;text-align:left}.admin-toggles .switch-row input[type=checkbox]{appearance:auto;width:16px!important;height:16px!important;min-width:16px;max-width:16px;margin:0;padding:0;flex:0 0 16px;align-self:center;justify-self:start;accent-color:var(--primary)}.admin-status{margin:0;padding:10px 12px;border-radius:var(--radius-lg);font-size:13px;line-height:1.5}.admin-status.ok{background:var(--green-soft);color:var(--green-strong);border:1px solid #bbf7d0}.admin-status.warn{background:var(--amber-soft);color:#92400e;border:1px solid #fde68a}.admin-card-actions{display:flex;justify-content:flex-start}.admin-card-actions .primary-action{width:auto;min-width:132px}.model-catalog{display:grid;gap:8px}.model-catalog-label{font-size:12px;font-weight:700;color:var(--muted)}.model-catalog-list{display:grid;grid-template-columns:1fr;gap:8px}.model-option{display:flex;align-items:center;gap:10px;text-align:left;padding:10px 12px;border-radius:var(--radius-lg);border:1px solid var(--line);background:#f9f9fb;box-shadow:none}.model-copy{display:grid;gap:2px;min-width:0;flex:1}.model-option strong,.model-dropdown-copy strong{font-size:13px;color:var(--text)}.model-option small{color:var(--muted);font-size:11px;font-weight:500}.model-option.active{border-color:#b8d4f8;background:var(--primary-soft);box-shadow:inset 0 0 0 1px #1a73e81f}.model-option.is-unavailable{cursor:not-allowed;opacity:.58;background:#f6f6f7}.model-badge{flex:0 0 auto;padding:2px 8px;border-radius:var(--radius-pill);background:#fff;color:var(--muted-strong);border:1px solid var(--line-strong);font-size:11px;font-weight:700;white-space:nowrap}.model-option.active .model-badge{color:var(--primary-strong);border-color:#b8d4f8}.model-badge.is-ready{color:#0f766e;border-color:#99f6e4;background:#f0fdfa}.model-badge.is-down{color:#9ca3af;border-color:#e5e7eb;background:#f9fafb}.model-mark{width:28px;height:28px;border-radius:var(--radius-md);display:grid;place-items:center;font-size:11px;font-weight:800;letter-spacing:-.04em;color:#fff;flex:0 0 auto}.model-mark.deepseek{background:#0f766e}.model-mark.glm{background:#111827}.model-mark.qwen{background:#2563eb}.model-mark.hy{background:#0ea5e9}.model-mark.mimo{background:#f97316}.admin-table{display:grid;gap:0;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.admin-table-row{display:grid;grid-template-columns:1.2fr 140px 90px minmax(280px,1.5fr);gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--surface)}.admin-table-row:last-child{border-bottom:0}.admin-table-row.head{color:var(--muted);font-size:12px;font-weight:700;background:#f9f9fb}.admin-table-row strong,.admin-table-row small{display:block}.admin-table-row small{color:var(--muted);margin-top:2px}.admin-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-actions input{width:120px}.admin-account-action-buttons{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.admin-account-toggle.disable{border-color:#fecaca;color:var(--red);background:var(--red-soft)}.admin-account-toggle.enable{border-color:#bbf7d0;color:var(--green-strong);background:var(--green-soft)}.admin-shield{width:32px;height:32px;display:grid;place-items:center;color:var(--primary-strong);background:var(--primary-soft);border-radius:var(--radius-md)}.status-pill.ok{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:700;background:var(--green-soft);color:var(--green-strong);border-color:#86efac}.status-pill.danger{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:700;background:var(--red-soft);color:var(--red);border-color:#fecaca}.admin-head,.admin-user-row{display:flex;justify-content:space-between;align-items:center;gap:8px}.admin-users{display:grid;gap:8px}.admin-panel label,.auth-card label{display:grid;gap:6px;margin:8px 0}.inline-check{display:flex!important;align-items:center;justify-content:flex-start;gap:8px;font-weight:500!important;color:var(--text)!important}.inline-check input[type=checkbox]{width:16px;height:16px;min-width:16px;margin:0;flex:0 0 auto;accent-color:var(--primary)}.auth-opt-in{font-size:13px!important;font-weight:400!important;color:var(--muted-strong)!important}.auth-opt-in input[type=checkbox]{padding:0}.boot-screen,.auth-page{min-height:100%;display:grid;place-items:center;padding:24px;color:var(--text);background:radial-gradient(circle at 12% 18%,rgba(26,115,232,.14),transparent 34%),radial-gradient(circle at 88% 12%,rgba(14,165,233,.12),transparent 28%),linear-gradient(180deg,#f7fafc,#eeeef1)}.auth-stage{width:min(920px,100%);display:grid;grid-template-columns:1.05fr .95fr;gap:0;overflow:hidden;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:0 24px 60px #0f172a14}.auth-aside{padding:36px 32px;background:linear-gradient(160deg,#e8f3ff,#f5f9ff 48%,#fff);border-right:1px solid var(--line)}.auth-aside-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.auth-aside-brand strong{font-size:15px}.auth-aside h2{margin:0 0 10px;font-size:28px;line-height:1.25;letter-spacing:-.02em}.auth-aside p{margin:0 0 18px;color:var(--muted-strong);line-height:1.6}.auth-aside ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}.auth-aside li{position:relative;padding-left:18px;color:var(--muted-strong);font-size:14px}.auth-aside li:before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--primary)}.auth-card{width:auto;padding:40px 36px;border:0;border-radius:0;background:#fff}.auth-password{position:relative;display:block}.auth-password input{padding-right:42px}.auth-eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:32px;height:32px;padding:0;border:0;background:transparent;color:var(--muted);box-shadow:none;display:grid;place-items:center}.auth-eye:hover{background:transparent;color:var(--text);box-shadow:none}.auth-card-kicker,.auth-brand{color:var(--primary-strong);font-size:12px;font-weight:700;letter-spacing:.04em}.auth-card h1{margin:8px 0 0;font-size:28px;letter-spacing:-.02em}.auth-lead,.auth-card p,.auth-foot{color:var(--muted)}.auth-lead{margin:8px 0 18px;line-height:1.55}.auth-card label{font-size:13px;font-weight:600;color:var(--muted-strong)}.auth-card input{width:100%;padding:11px 12px;border-radius:var(--radius-md);border:1px solid var(--line-strong);background:#fcfcfd;color:var(--text);font-weight:400}.auth-submit{width:100%;margin-top:8px;height:44px}.auth-sso{display:flex;align-items:center;justify-content:center;text-decoration:none}.auth-divider{display:flex;align-items:center;gap:10px;margin:14px 0;color:var(--muted);font-size:12px}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:var(--line)}.auth-error{color:var(--red);background:var(--red-soft);border:1px solid #fecaca;border-radius:var(--radius-md);padding:9px 11px;font-size:13px}.auth-foot{margin-top:14px;text-align:center;font-size:13px}.auth-foot a,.linkish{color:var(--primary-strong);background:none;border:0;padding:0;font-weight:700;text-decoration:none}.auth-foot a:hover,.linkish:hover{text-decoration:underline}.chat-workspace{height:100%;min-height:0;display:grid;grid-template-columns:260px minmax(0,1fr);grid-template-rows:minmax(0,1fr);overflow:hidden;background:#f7f8fa;color:var(--text);position:relative}.chat-history-toggle{display:none}.chat-history{min-height:0;overflow:hidden;border-right:1px solid var(--line);padding:14px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;background:#f3f3f5}.new-chat-btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:40px;border-radius:var(--radius-lg);background:var(--primary);color:#fff;border-color:var(--primary);font-weight:700;box-shadow:0 8px 18px #1a73e82e}.new-chat-btn:hover:not(:disabled){background:var(--primary-strong);border-color:var(--primary-strong)}.chat-history-list{overflow:auto;display:grid;align-content:start;gap:6px}.history-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;border-radius:var(--radius-lg);border:1px solid transparent}.history-item:has(.history-rename){grid-template-columns:minmax(0,1fr) auto}.history-item button{background:transparent;border:0;color:var(--muted-strong);box-shadow:none;display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;padding:10px;border-radius:var(--radius-lg);min-width:0}.history-item button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-item button:hover{background:transparent;box-shadow:none}.history-item:hover{background:#eef5ff}.history-item.active{background:#e8f1fd;border-color:#b8d4f8}.history-item.active>button:first-child{color:var(--primary-strong);font-weight:700}.history-remove,.history-rename-btn{width:28px;height:28px;padding:0!important;display:grid;place-items:center;color:var(--muted)!important}.history-remove.is-confirm{width:auto;padding:0 8px!important;color:#c41d1d!important;font-size:12px;font-weight:700}.history-rename{display:flex;align-items:center;gap:4px;min-width:0;padding:4px 4px 4px 8px}.history-rename input{flex:1;min-width:0;height:30px;border-radius:var(--radius-md);border:1px solid var(--line-strong);padding:0 8px;font-size:13px}.chat-empty-side{padding:18px 10px;text-align:center;color:var(--muted);font-size:13px}.chat-main{--chat-column: min(920px, calc(100% - 48px) );min-width:0;min-height:0;overflow:hidden;display:grid;grid-template-rows:minmax(0,1fr) auto auto;padding:0 0 20px;background:#fff}.chat-hero{display:grid;place-content:center;text-align:center;gap:12px;width:var(--chat-column);max-width:none;margin:0 auto;min-height:0;overflow:auto}.chat-hero.chatgpt-style h1{margin:0;font-size:clamp(28px,4.2vw,36px);font-weight:600;letter-spacing:-.03em;color:var(--text)}.chat-hero p{color:var(--muted)}.chat-hero p{margin:0;line-height:1.65}.chat-suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:10px}.chat-suggestions button{border-radius:var(--radius-pill);padding:9px 14px;background:var(--surface);border:1px solid var(--line-strong);color:var(--muted-strong);font-size:13px;box-shadow:var(--shadow-sm)}.chat-suggestions button:hover{border-color:#b8d4f8;color:var(--primary-strong);background:var(--primary-soft)}.chat-thread-scroll{min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.chat-thread-wide{display:grid;align-content:start;gap:18px;padding:20px 0 24px;width:var(--chat-column);margin:0 auto}.chat-turn{position:relative;max-width:100%}.chat-turn.user{justify-self:end;max-width:min(780px,88%);display:grid;justify-items:end;gap:8px}.chat-turn-files{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.composer-file.is-sent{background:#eeeef1}.chat-turn.assistant{justify-self:stretch}.chat-answer-switch{display:inline-flex;align-items:center;flex-wrap:wrap;gap:2px;max-width:100%;margin-bottom:8px;padding:3px;border:1px solid var(--line);border-radius:9px;background:#f5f5f6}.chat-answer-switch button{min-height:28px;padding:0 10px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted-strong);box-shadow:none;font-size:12px;font-weight:700}.chat-answer-switch button.active{background:#fff;color:var(--primary-strong);box-shadow:0 1px 3px #0f172a1f}.chat-local-restore-note{display:flex;align-items:flex-start;gap:7px;margin-bottom:7px;padding:7px 10px;width:fit-content;max-width:100%;border:1px solid #b7ebc6;border-radius:var(--radius-md);background:#f0fff4;color:#237804;font-size:12px;line-height:1.5}.chat-local-restore-note svg{flex:0 0 auto;margin-top:1px}.chat-turn-body{white-space:pre-wrap;line-height:1.7;overflow-wrap:anywhere;font-size:15px}.chat-turn-body.is-md{white-space:normal}.chat-turn.user .chat-turn-body{padding:12px 16px;border-radius:22px;background:#eaf2ff;color:var(--text)}.chat-turn.assistant .chat-turn-body{padding:4px 2px;color:var(--text)}.chat-turn.busy .chat-turn-body,.chat-thinking{display:inline-flex;align-items:center;gap:8px;color:var(--muted)}.chat-thinking.is-follow{display:flex;margin-top:6px;font-size:12px}.chat-md-tail{white-space:pre-wrap;word-break:break-word}.chat-stream-caret{display:inline-block;margin-left:2px;color:var(--primary);animation:chat-caret 1s step-end infinite}@keyframes chat-caret{50%{opacity:0}}.chat-stop{height:24px;margin-top:8px;padding:0 8px;border-radius:var(--radius-pill);border:1px solid var(--line-strong);background:var(--surface);color:var(--muted-strong);font-size:12px;font-weight:700}.chat-md{display:grid;gap:10px}.chat-md>:first-child{margin-top:0}.chat-md>:last-child{margin-bottom:0}.chat-md p,.chat-md ul,.chat-md ol,.chat-md pre,.chat-md blockquote,.chat-md table{margin:0}.chat-md h1,.chat-md h2,.chat-md h3,.chat-md h4{margin:6px 0 0;font-weight:800;line-height:1.35;color:#1f2937}.chat-md h1{font-size:22px}.chat-md h2{font-size:18px}.chat-md h3,.chat-md h4{font-size:16px}.chat-md ul,.chat-md ol{padding-left:1.3em}.chat-md li+li{margin-top:4px}.chat-md strong{font-weight:800}.chat-md a{color:var(--primary-strong)}.chat-md blockquote{padding:2px 0 2px 12px;border-left:3px solid #dbe3ee;color:var(--muted-strong)}.chat-md hr{border:0;border-top:1px solid var(--line);margin:4px 0}.chat-md code{padding:1px 5px;border-radius:5px;background:#f1f5f9;font-size:.92em}.chat-md-pre,.chat-md pre{overflow:auto;padding:12px 14px;border-radius:var(--radius-md);background:#0f172a;color:#e5e5e8}.chat-md pre code{padding:0;background:transparent;color:inherit;font-size:13px}.chat-md table{width:100%;border-collapse:collapse;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md)}.chat-md th,.chat-md td{padding:6px 10px;border-bottom:1px solid var(--line);text-align:left}.chat-md th{background:#f8f8f9;font-size:13px}.chat-copy{margin-top:6px;width:30px;height:30px;padding:0;border-radius:var(--radius-md);display:inline-grid;place-items:center;color:var(--muted);border:0;background:transparent;box-shadow:none;opacity:0}.chat-turn:hover .chat-copy,.chat-copy:focus-visible{opacity:1}.chat-workspace .chat-error{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;color:var(--red);margin:0 auto 10px;width:var(--chat-column);background:var(--red-soft);border:1px solid #fecaca;border-radius:var(--radius-md);padding:9px 12px;font-size:13px}.chat-workspace .chat-error button{flex-shrink:0;width:24px;height:24px;padding:0;border:0;background:transparent;color:var(--red);display:grid;place-items:center}.chat-workspace .chat-handoff{align-items:center;color:var(--text);background:var(--primary-soft);border-color:#e5e7eb}.chat-workspace .chat-handoff span{flex:1}.chat-workspace .chat-handoff .chat-handoff-go{width:auto;height:28px;padding:0 12px;border-radius:var(--radius-md);background:var(--primary);color:#fff;font-weight:600;white-space:nowrap}.chat-workspace .chat-handoff .chat-handoff-alt{width:auto;height:28px;padding:0 12px;border:1px solid #e5e7eb;border-radius:var(--radius-md);background:#fff;color:var(--primary-strong);font-weight:600;white-space:nowrap}.chat-workspace .chat-handoff button:last-child{color:var(--muted)}.chat-workspace .chat-composer.chatgpt-composer{position:relative;width:var(--chat-column);justify-self:center;display:block;flex-shrink:0;align-self:end}.composer-shell{position:relative;display:block;border:1px solid var(--line-strong);border-radius:28px;background:var(--surface);box-shadow:0 10px 28px #0f172a14;padding:8px 10px}.composer-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:end}.chatgpt-composer textarea{resize:none;min-height:28px;max-height:180px;border:0;background:transparent;color:var(--text);outline:none;box-shadow:none;padding:10px 4px;font:inherit;line-height:1.5}.composer-right{display:inline-flex;align-items:center;gap:6px;padding-bottom:2px}.composer-plus,.composer-send{width:36px;height:36px;border-radius:50%;padding:0;display:grid;place-items:center;border:1px solid transparent;background:#f3f3f5;color:var(--muted-strong);box-shadow:none}.composer-plus.open,.composer-plus:hover{background:#eeeef1;color:var(--text)}.composer-send{background:var(--primary);color:#fff}.composer-send:disabled{opacity:.35}.composer-send.is-stop{background:#111827;border-color:#111827;color:#fff}.model-menu{position:relative}.model-trigger{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 10px;border-radius:var(--radius-pill);border:1px solid transparent;background:#f3f3f5;color:var(--muted-strong);font-size:13px;font-weight:600;box-shadow:none}.model-trigger .model-mark{width:18px;height:18px;border-radius:var(--radius-sm);font-size:8px}.model-trigger:hover{background:#f3f3f5;color:var(--text)}.model-dropdown{position:absolute;right:0;bottom:calc(100% + 10px);width:min(320px,78vw);padding:6px;border-radius:var(--radius-lg);border:1px solid var(--line);background:#fff;box-shadow:0 18px 40px #0f172a24;display:grid;gap:2px;z-index:8}.model-dropdown button{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:var(--radius-lg);background:transparent;box-shadow:none;text-align:left;color:var(--text)}.model-dropdown button .model-dropdown-copy{flex:1;min-width:0}.model-dropdown button svg{flex:0 0 auto;color:var(--primary)}.model-dropdown button:hover,.model-dropdown button.active{background:#f3f3f5}.model-dropdown button.is-unavailable,.model-dropdown button:disabled{opacity:.62;cursor:not-allowed}.model-dropdown button.is-unavailable:hover{background:transparent}.model-dropdown-copy{display:grid;gap:2px}.model-dropdown-copy strong{font-size:14px;font-weight:600}.model-dropdown-copy small{color:var(--muted);font-size:12px}.plus-menu{position:absolute;left:0;right:0;bottom:calc(100% + 10px);padding:8px;border-radius:var(--radius-xl);border:1px solid var(--line);background:#fff;box-shadow:0 18px 40px #0f172a24;display:grid;gap:2px;z-index:8}.plus-icon{width:36px;height:36px;border-radius:var(--radius-md);display:grid;place-items:center;background:#eeeef1;color:var(--muted-strong);flex:0 0 auto}.plus-icon.library{background:#e8f1fd;color:var(--primary-strong)}.plus-icon.redact{background:#f0fdf4;color:var(--green-strong)}.plus-menu svg{margin-top:0;color:inherit;flex:0 0 auto}.plus-menu button{display:flex;align-items:center;gap:12px;width:100%;padding:12px;border:0;border-radius:var(--radius-lg);background:transparent;box-shadow:none;text-align:left;color:var(--text)}.plus-menu button:hover{background:#f3f3f5}.plus-menu strong{display:block;font-size:14px;font-weight:600}.plus-menu small{display:block;margin-top:2px;color:var(--muted);font-size:12px}.composer-files{display:flex;flex-wrap:wrap;gap:8px;padding:6px 6px 2px}.composer-file{display:grid;grid-template-columns:32px minmax(0,1fr) 24px;align-items:center;gap:8px;min-width:180px;max-width:260px;padding:8px;border-radius:var(--radius-lg);background:#f3f3f5;border:1px solid var(--line);color:var(--text)}.composer-file i{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#e8f1fd;color:var(--primary-strong)}.composer-file span{min-width:0;display:grid;gap:2px}.composer-file strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700}.composer-file small{color:var(--muted);font-size:11px}.composer-file button{width:24px;height:24px;border:0;border-radius:var(--radius-md);background:transparent;box-shadow:none;padding:0;color:var(--muted);display:grid;place-items:center}.composer-file button:hover{background:#eeeef1;color:var(--text)}.file-picker{position:absolute;left:0;right:0;bottom:calc(100% + 10px);padding:14px 16px;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--line-strong);box-shadow:0 18px 40px #0f172a1f;display:flex;flex-direction:column;gap:12px;max-height:320px;z-index:5}.file-picker-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-shrink:0}.file-picker-head strong{font-size:14px;white-space:nowrap}.file-picker-actions{display:flex;align-items:center;gap:8px}.chat-composer .file-picker-done,.file-picker-done{height:32px;padding:0 12px;border-radius:var(--radius-pill);font-size:13px;font-weight:600;background:var(--surface);border:1px solid var(--line-strong);color:var(--text)}.chat-composer .file-picker-upload,.file-picker-upload{display:inline-flex;align-items:center;gap:6px;width:auto;min-width:max-content;height:32px;padding:0 12px;border-radius:var(--radius-pill);font-size:13px;white-space:nowrap;flex-shrink:0;background:var(--primary-soft);border:1px solid #b8d4f8;color:var(--primary-strong)}.file-picker-empty{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;border-radius:var(--radius-lg);background:var(--surface-strong)}.file-picker-empty p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.chat-composer .file-picker-link,.file-picker-link{display:inline-flex;align-items:center;width:auto;min-width:max-content;height:auto;padding:0;border:0;background:none;box-shadow:none;color:var(--primary);font-size:13px;font-weight:600;white-space:nowrap;flex-shrink:0}.chat-composer .file-picker-link:hover,.file-picker-link:hover{color:var(--primary-strong);text-decoration:underline}.file-picker-list{overflow:auto;display:grid;gap:4px;min-height:0}.file-picker label{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border-radius:var(--radius-md);border:1px solid transparent}.file-picker label:hover{background:#f5f9ff;border-color:var(--line)}.file-picker label span{display:grid;gap:2px;font-size:13px}.file-picker label small{color:var(--muted);font-size:12px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:860px){.auth-stage{grid-template-columns:1fr}.auth-aside{display:none}.auth-card{padding:28px 22px}.chat-workspace{grid-template-columns:1fr}.chat-history-toggle{display:inline-flex;align-items:center;gap:6px;position:absolute;top:10px;left:12px;z-index:6;height:34px;padding:0 12px;border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--line-strong);font-size:13px;font-weight:700;color:var(--muted-strong)}.chat-history{position:absolute;inset:0 auto 0 0;z-index:5;width:min(280px,86vw);display:grid;transform:translate(-105%);transition:transform .18s ease;box-shadow:8px 0 24px #0f172a14}.chat-workspace.history-open .chat-history{transform:translate(0)}.chat-main{padding-top:52px}.admin-hero{flex-direction:column;align-items:stretch}.admin-grid,.admin-split-row,.admin-table-row,.admin-table-row.head,.visibility-columns,.ops-form,.ops-engine-grid{grid-template-columns:1fr}}.upload-overlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px;background:#0f172a6b}.upload-dialog{width:min(760px,calc(100vw - 32px));max-height:min(92vh,880px);overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;gap:16px;padding:20px 20px 16px;border-radius:var(--radius-xl);background:#fff;border:1px solid var(--line-strong);box-shadow:var(--shadow-lg)}.upload-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.upload-dialog-head strong{display:block;font-size:17px;color:var(--text)}.upload-dialog-head p{margin:4px 0 0;color:var(--muted-strong);font-size:13px;line-height:1.5}.upload-close{width:30px;min-width:30px;height:30px;padding:0;border-radius:var(--radius-md);display:grid;place-items:center;color:var(--muted);background:#f3f3f5;box-shadow:none}.upload-dropzone{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:36px 20px 28px;border:1.5px dashed #d4d4d4;border-radius:var(--radius-lg);background:#fff;color:var(--muted-strong);text-align:center}.upload-dropzone.is-active{border-color:var(--primary);background:#f9f9fb}.upload-file-fan{position:relative;width:168px;height:88px}.fan-doc{position:absolute;left:50%;top:10px;width:46px;height:58px;margin-left:-23px;border-radius:var(--radius-md);display:grid;place-items:center;color:#fff;font-size:10px;font-weight:800;letter-spacing:.02em;box-shadow:0 8px 16px #0f172a1f}.fan-doc:after{content:"";position:absolute;top:0;right:0;width:12px;height:12px;background:#ffffff47;border-bottom-left-radius:6px}.fan-doc.is-word{background:#2b7de9;transform:translate(-52px,10px) rotate(-18deg)}.fan-doc.is-ppt{background:#f59e0b;transform:translate(-26px,4px) rotate(-8deg)}.fan-doc.is-pdf{width:52px;height:66px;margin-left:-26px;top:4px;background:#ef4444;font-size:11px;transform:translate(0);z-index:3}.fan-doc.is-xls{background:#22c55e;transform:translate(26px,4px) rotate(8deg)}.fan-doc.is-img{background:#0ea5e9;transform:translate(52px,10px) rotate(16deg)}.fan-doc.is-txt{background:#64748b;transform:translate(52px,10px) rotate(16deg)}.upload-restore-note{display:flex;align-items:flex-start;gap:10px;margin:0;padding:12px 14px;border:1px solid var(--primary-border);border-radius:var(--radius-lg);background:var(--primary-soft);color:var(--muted-strong);font-size:13px;line-height:1.6}.upload-restore-note svg{flex:0 0 auto;margin-top:2px;color:var(--primary)}.upload-restore-note b{display:block;color:var(--text);font-weight:600}.upload-restore-note.is-empty{border-color:var(--amber-border, #f3d9a8);background:var(--amber-soft, #fff6e5);color:#7c4102}.upload-restore-note.is-empty svg{color:var(--amber, #c26a05)}.upload-restore-note.is-empty b{color:#92400e}.upload-drop-actions{display:flex;align-items:center;justify-content:center;gap:12px}.upload-drop-actions button{min-width:118px;height:36px;padding:0 14px;border-radius:var(--radius-md);border:1px solid #e5e7eb;background:#fff;color:#374151;box-shadow:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:13px;font-weight:600}.upload-drop-actions button:hover{border-color:#d1d5db;background:#fafafa}.upload-file-list{margin:0;padding:0;display:grid;gap:6px;list-style:none}.upload-file-list li{display:grid;grid-template-columns:16px minmax(0,1fr) auto 28px;align-items:center;gap:8px;padding:8px 8px 8px 10px;border:1px solid var(--line);border-radius:var(--radius-md);background:#f8f8f9;color:var(--text);font-size:13px}.upload-file-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-file-list small{color:var(--muted);font-size:12px}.upload-type-block{display:grid;gap:10px}.upload-type-section{display:grid;gap:7px}.upload-type-section>small{color:var(--muted);font-size:12px;font-weight:600}.upload-type-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.upload-type-head strong{font-size:13px;color:var(--text)}.upload-type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.upload-type-grid label{display:flex;align-items:center;gap:6px;min-height:36px;padding:6px 8px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:var(--muted-strong);font-size:12px;line-height:1.3;cursor:pointer}.upload-type-grid label.is-on{border-color:#b8d4f8;background:var(--primary-soft);color:var(--primary-strong)}.upload-type-grid input{accent-color:var(--primary);flex:0 0 auto}.upload-more{justify-self:start;height:30px;padding:0 2px;border:0;background:transparent;box-shadow:none;color:var(--primary);font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:4px}.upload-more.is-open svg{transform:rotate(180deg)}.upload-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.upload-actions button{min-width:84px;height:36px;border-radius:var(--radius-md);font-size:13px;font-weight:700}.upload-actions .primary-action{min-width:148px;height:36px;padding:0 14px}.upload-actions .switch-redact-btn{padding:0 14px;border-color:var(--primary-border);background:var(--primary-soft);color:var(--primary-strong)}.upload-actions .switch-redact-btn:hover{border-color:var(--primary);background:#dbeafe}.paste-dialog{width:min(640px,calc(100vw - 32px))}.paste-field{display:grid;gap:6px;color:var(--muted-strong);font-size:12px;font-weight:700}.paste-field input,.paste-field select,.paste-dialog-text{width:100%;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:#fff;color:var(--text);font-weight:400}.paste-field input,.paste-field select{height:36px;padding:0 10px}.paste-dialog-text{min-height:220px;padding:10px 12px;resize:vertical;font-size:14px;line-height:1.6}@media(max-width:720px){.upload-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.entity-group-head{display:flex;flex-wrap:wrap;gap:6px}.entity-editor label>span{display:grid;gap:6px;min-width:0}.entity-editor [role=alert]{color:var(--red)}.annotation-note{padding:8px 12px;font-size:12px;color:var(--muted)}.redaction-config-page{height:100%;overflow:auto;padding:24px;background:var(--bg)}.config-hero,.config-panel{width:min(1120px,100%);margin:0 auto}.config-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:8px 0 20px}.config-hero small{color:var(--primary);font-weight:700}.config-hero h1,.config-panel h2{margin:4px 0}.config-hero p,.config-panel-head p,.config-row p{margin:0;color:var(--muted)}.config-stats{display:flex;gap:10px}.config-stats span{min-width:112px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fff;color:var(--muted);font-size:12px}.config-stats strong{display:block;color:var(--text);font-size:20px}.config-tabs{width:min(1120px,100%);margin:0 auto 14px;display:flex;gap:6px;border-bottom:1px solid var(--line)}.config-tabs button{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border:0;border-bottom:2px solid transparent;background:transparent;box-shadow:none;color:var(--muted)}.config-tabs button.active{border-bottom-color:var(--primary);color:var(--primary-strong);font-weight:700}.config-loading,.config-empty{width:min(1120px,100%);margin:0 auto;padding:40px 16px;color:var(--muted);text-align:center}.config-panel{padding:20px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff}.config-panel-head,.config-editor-head,.config-editor-actions,.config-row,.whitelist-toolbar,.whitelist-row{display:flex;align-items:center}.config-panel-head,.config-editor-head{justify-content:space-between;gap:16px}.config-panel-head .primary-action,.config-editor-actions .primary-action,.whitelist-add .primary-action{display:inline-flex;align-items:center;justify-content:center;gap:6px}.config-editor{margin:18px 0;padding:16px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:#f8f8f9}.config-form-grid{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.config-form-grid label,.whitelist-add label{display:grid;gap:6px;color:var(--muted-strong);font-size:12px;font-weight:700}.config-form-grid input,.config-form-grid select,.config-form-grid textarea,.whitelist-add textarea,.whitelist-toolbar input{width:100%;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:#fff;color:var(--text)}.config-form-grid input,.config-form-grid select,.whitelist-toolbar input{height:38px;padding:0 10px}.config-form-grid textarea,.whitelist-add textarea{min-height:86px;padding:9px 10px;resize:vertical}.config-form-grid .config-wide{grid-column:1 / -1}.config-form-grid small,.config-row small,.whitelist-row small{color:var(--muted);font-weight:400}.config-editor-actions{justify-content:flex-end;gap:8px;margin-top:14px}.config-category-editor{margin-top:16px;display:flex;gap:8px}.config-category-editor input{min-width:220px;flex:1;height:38px;padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:#fff}.config-groups{margin-top:18px;display:grid;gap:14px}.config-group{padding:14px;border:1px solid var(--line);border-radius:var(--radius-md);background:#fbfcfe}.config-group-head,.config-group-head>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.config-group-head h3{margin:0}.config-group-head small{color:var(--muted)}.config-group-head button{display:inline-flex;align-items:center;gap:5px}.config-list,.whitelist-list{display:grid;gap:8px;margin-top:18px}.config-row{justify-content:space-between;gap:18px;padding:14px;border:1px solid var(--line);border-radius:9px}.config-row-main{min-width:0;display:grid;gap:5px}.config-row-main>div{display:flex;align-items:center;gap:8px}.config-row-actions,.whitelist-toolbar,.config-editor-actions{display:flex}.config-row-actions{flex:0 0 auto;gap:6px}.config-row-actions button,.whitelist-toolbar button,.whitelist-row button,.config-editor-actions button{min-height:34px;padding:0 10px;border-radius:var(--radius-sm)}.whitelist-add{margin-top:18px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px}.whitelist-add .primary-action{height:38px}.whitelist-toolbar{gap:7px;margin-top:16px;padding:10px 0;border-bottom:1px solid var(--line)}.whitelist-toolbar input{min-width:180px;flex:1}.whitelist-toolbar span{color:var(--muted);font-size:12px}.whitelist-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;gap:10px;min-height:48px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-md)}.whitelist-row>div{min-width:0;display:grid}.whitelist-row strong{overflow-wrap:anywhere}@media(max-width:1100px){.personal-settings-grid{flex:none;min-height:0;grid-template-columns:1fr;grid-template-rows:auto}.personal-settings-card .entity-type-menu.is-embedded{flex:none;max-height:65vh}.personal-whitelist-list{flex:none;max-height:50vh}}@media(max-width:760px){.personal-settings{padding:16px 14px 32px}.personal-settings-hero{align-items:stretch;flex-direction:column}.personal-settings-hero-side{flex-direction:column}.personal-account{width:100%}.personal-settings-save{min-height:40px}.personal-settings-grid,.personal-whitelist-add{grid-template-columns:1fr}.personal-whitelist-toolbar{align-items:stretch;flex-direction:column}.personal-whitelist-toolbar>div{flex-wrap:wrap}.personal-whitelist-row{grid-template-columns:auto minmax(0,1fr) auto}.personal-whitelist-row>span{justify-self:end}.personal-whitelist-row>button{grid-column:auto}.redaction-config-page{padding:14px}.config-hero,.config-panel-head,.config-row{align-items:stretch;flex-direction:column}.config-stats{width:100%}.config-stats span{flex:1}.config-form-grid,.config-category-editor,.whitelist-add{grid-template-columns:1fr}.config-category-editor,.config-group-head{align-items:stretch;flex-direction:column}.whitelist-row{grid-template-columns:auto minmax(0,1fr) auto}.whitelist-row button{grid-column:auto}}.pdf-skeleton{display:grid;justify-items:center;gap:18px;padding:18px}.pdf-skeleton-page{width:calc(100% - 36px);max-width:820px;aspect-ratio:1 / 1.414;display:flex;flex-direction:column;border-radius:2px;background:#fff;box-shadow:var(--shadow-md);color:var(--muted);font-size:12px}@keyframes pdf-skeleton-sweep{0%{background-position:100% 0}to{background-position:0 0}}@media(prefers-reduced-motion:reduce){.pdf-skeleton-page{animation:none}}.app-frame.has-guest-banner{grid-template-rows:auto auto minmax(0,1fr)}.guest-banner{display:flex;align-items:center;justify-content:center;gap:12px;padding:6px 16px;background:#fff7e6;border-bottom:1px solid #ffe7ba;color:#874d00;font-size:13px}.guest-banner button{height:26px;padding:0 12px;border-radius:var(--radius-pill);border:1px solid #fa8c16;background:#fa8c16;color:#fff;font-size:12px;font-weight:700}.guest-register-btn{border-color:var(--primary);background:var(--primary);color:#fff}.account-gate-overlay{z-index:60}.account-gate-card{position:relative;width:min(400px,100%)}.account-gate-close{position:absolute;top:10px;right:10px;width:28px;height:28px;padding:0;display:grid;place-items:center;border:0;background:transparent;box-shadow:none;color:var(--muted)}.account-gate-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:3px;border-radius:var(--radius-md);background:var(--surface-muted, #f3f3f5)}.account-gate-tabs button{height:30px;border:0;border-radius:var(--radius-md);background:transparent;box-shadow:none;font-size:13px;color:var(--muted-strong)}.account-gate-tabs button.active{background:#fff;color:var(--primary-strong);font-weight:700;box-shadow:0 1px 3px #0f172a1f}.account-gate-card label{display:grid;gap:5px;font-size:13px;font-weight:600;color:var(--muted-strong)}.account-gate-card input{width:100%;padding:9px 11px;border-radius:var(--radius-md);border:1px solid var(--line-strong);background:#fcfcfd;color:var(--text);font-weight:400}.account-gate-card input:focus{outline:none;border-color:#b8d4f8;box-shadow:0 0 0 3px #1a73e81f}.guest-chat-gate{height:100%;display:grid;place-content:center;justify-items:center;gap:10px;padding:24px;text-align:center;color:var(--muted-strong)}.guest-chat-gate strong{font-size:18px;color:var(--text)}.guest-chat-gate p{max-width:360px;margin:0;line-height:1.6}.pane-head .pane-head-actions{display:flex;flex:none;align-items:center;gap:4px}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{color:var(--text)}h1,h2,h3{letter-spacing:-.01em}small{color:var(--muted)}*{scrollbar-width:thin;scrollbar-color:#d0d0d5 transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:var(--radius-pill);background:#d0d0d5;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:#a8a8b0;background-clip:padding-box}::selection{background:#1a73e833}button{border-color:var(--line-strong);border-radius:var(--radius-md);font-weight:600}button:hover:not(:disabled){border-color:#c4c4ca;background:var(--surface-strong);box-shadow:none}button:active:not(:disabled){transform:translateY(.5px)}.primary-action,.toolbar .primary-action{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 1px 2px #1456b859}.primary-action:hover:not(:disabled),.toolbar .primary-action:hover:not(:disabled){border-color:var(--primary-strong);background:var(--primary-strong);box-shadow:0 1px 2px #1456b859}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{border-radius:var(--radius-md);border-color:var(--line-strong);background:var(--surface);color:var(--text)}input::placeholder,textarea::placeholder{color:#9a9aa3}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}.app-topbar{padding:0 20px;min-height:56px;border-bottom:1px solid var(--line);background:#ffffffeb;-webkit-backdrop-filter:saturate(1.4) blur(8px);backdrop-filter:saturate(1.4) blur(8px);box-shadow:none}.brand-copy strong{font-size:15px;font-weight:700;letter-spacing:-.01em}.brand-copy span{font-size:12px;color:var(--muted)}.workspace-switch{gap:2px;padding:3px;border:0;border-radius:10px;background:#ececef}.workspace-switch a{min-width:88px;padding:6px 14px;border-radius:8px;font-weight:600;color:var(--muted-strong);transition:background .12s ease,color .12s ease,box-shadow .12s ease}.workspace-switch a:hover{color:var(--text);background:#ffffff8c}.workspace-switch a.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #1018281a,0 0 0 1px #1018280a}.logout-btn{height:32px;border-color:transparent;background:transparent;color:var(--muted-strong)}.logout-btn:hover:not(:disabled){border-color:transparent;background:#ececef;color:var(--text)}.guest-banner{background:var(--primary-soft);color:var(--primary-strong);border-bottom:1px solid var(--primary-border)}.topbar{gap:12px 18px;padding:10px 20px;border-bottom:1px solid var(--line);background:var(--surface)}.document-meta,.library-meta{min-height:0;border:0;background:transparent;box-shadow:none;padding:0}.document-meta{gap:10px}.meta-file{color:var(--text);font-size:15px;font-weight:700;letter-spacing:-.01em}.toolbar{gap:8px}.toolbar button{height:34px;padding:0 14px;border-radius:var(--radius-md);font-size:13px;font-weight:600}.workflow-track{display:flex;align-items:center;margin:0;padding:0;list-style:none}.workflow-step{position:relative;display:inline-flex;align-items:center;gap:6px;color:#9a9aa3;font-size:12px;font-weight:600;line-height:1}.workflow-step+.workflow-step{margin-left:22px}.workflow-step+.workflow-step:before{content:"";position:absolute;left:-18px;top:50%;width:14px;height:2px;border-radius:1px;background:#e1e1e5;transform:translateY(-50%)}.workflow-step.is-done+.workflow-step:before{background:var(--green)}.workflow-node{flex:none;width:18px;height:18px;display:grid;place-items:center;border:1.5px solid #d0d0d5;border-radius:50%;background:var(--surface);color:#9a9aa3;font-size:10px;font-weight:700;line-height:1}.workflow-step.is-done{color:var(--text)}.workflow-step.is-done .workflow-node{border-color:var(--green);background:var(--green);color:#fff}.workflow-step.is-current,.workflow-step.is-busy{color:var(--primary-strong)}.workflow-step.is-current .workflow-node,.workflow-step.is-busy .workflow-node{border-color:var(--primary);color:var(--primary);box-shadow:0 0 0 3px #1a73e824}.workflow-spin{animation:redact-spin .8s linear infinite}@media(prefers-reduced-motion:reduce){.workflow-spin{animation:none}}.status-pill,.file-status{border:0;border-radius:var(--radius-pill);font-weight:600}.status-pill{background:var(--primary-soft);color:var(--primary-strong);padding:5px 12px;font-size:12px}.file-status.status-review{background:var(--amber-soft);color:var(--amber)}.file-status.status-upload,.file-status.status-redact,.status-pill.running{background:var(--primary-soft);color:var(--primary-strong)}.file-status.status-done{background:var(--green-soft);color:var(--green-strong)}.file-status.status-error{background:var(--red-soft);color:var(--red)}.file-status.status-wait{background:#ececef;color:var(--muted-strong)}.workspace-frame{gap:12px;padding:14px 16px}.sidebar,.result-panel,.doc-pane{border:0;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-card)}.pane-head{min-height:50px;padding:8px 16px;border-bottom:1px solid var(--line);background:transparent}.pane-head>div:first-child>span:first-child{color:var(--text);font-size:14px;font-weight:700;letter-spacing:-.005em}.pane-head small{color:var(--muted);font-size:12px}.side-dock{border:0;border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.side-dock.has-pending{box-shadow:var(--shadow-card),inset 0 0 0 1px #f1d9a8;color:var(--amber)}.side-dock-pending{background:var(--amber-soft);color:var(--amber)}.workspace{gap:0}.workspace>.workspace-side-left{flex-shrink:1;min-width:200px}.workspace>.workspace-side-right{flex-shrink:1;min-width:300px}.workspace>.workspace-main{min-width:540px}.side-resizer{position:relative;flex:0 0 12px;cursor:col-resize;outline:0;touch-action:none}.side-resizer:before{content:"";position:absolute;left:5px;top:calc(50% - 18px);width:2px;height:36px;border-radius:var(--radius-pill);background:#d4d4d8;transition:background .12s ease,top .12s ease,height .12s ease}.side-resizer:hover:before,.side-resizer:focus-visible:before,.side-resizer.dragging:before{top:12px;height:calc(100% - 24px);background:var(--primary);box-shadow:0 0 0 3px #1a73e824}body.is-resizing-x{cursor:col-resize;-webkit-user-select:none;user-select:none}body.is-resizing-x iframe{pointer-events:none}.panel-collapse{border-color:transparent;background:transparent;color:var(--muted)}.panel-collapse:hover:not(:disabled){background:#ececef;color:var(--text)}.view-switch{padding:3px;gap:2px;border:0;border-radius:9px;background:#ececef}.view-switch button{border:0;border-radius:7px;background:transparent;color:var(--muted-strong);font-weight:600;box-shadow:none}.view-switch button:hover:not(:disabled):not(.active){background:#fff9}.view-switch button.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #1018281a}.source-token,.redacted-token,.active-token{border:0;border-radius:5px;padding:1px 4px;background:color-mix(in srgb,var(--token-bg, #e9e9ec) 78%,#fff);box-shadow:inset 0 -2px color-mix(in srgb,var(--token-accent, #6b6b73) 40%,transparent)}.source-token:hover,.redacted-token:hover{background:var(--token-bg, #e9e9ec)}.source-token.active,.redacted-token.active-token,.active-token{border:0;background:var(--token-bg, #e9e9ec);box-shadow:inset 0 -2px 0 var(--token-accent, #6b6b73),0 0 0 2px color-mix(in srgb,var(--token-accent, #6b6b73) 32%,transparent)}.result-toolbar,.result-actions{border-color:var(--line)}.status-tabs{display:flex;flex-wrap:wrap;gap:4px}.status-tab{flex:1 1 auto;min-height:0;height:28px;padding:0 10px;white-space:nowrap;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--muted-strong);font-size:13px;font-weight:600}.status-tab:hover:not(:disabled):not(.active){background:#ececef}.status-tab.active{background:var(--text);color:#fff}.items{gap:12px;padding:12px}.entity-group{gap:6px;padding:10px;border:0;border-radius:var(--radius-lg);background:var(--surface-strong)}.entity-group-head{margin:-10px -10px 0;padding:10px 10px 8px;border-bottom:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--surface-strong)}.entity-type-toggle span{color:var(--text);font-size:13px;font-weight:700}.entity-type-toggle small{color:var(--muted);font-size:12px;font-weight:500}.entity{gap:10px;padding:11px 12px;border:1px solid transparent;border-radius:10px;background:var(--surface);box-shadow:0 1px 2px #1018280d;transition:border-color .12s ease,box-shadow .12s ease,background .12s ease}.entity:hover{border-color:var(--line-strong)}.entity.active{border-color:var(--primary-border);background:var(--surface);box-shadow:0 0 0 3px #1a73e81f,0 1px 2px #1018280f}.entity.hint{border-color:transparent;background:var(--surface-strong);box-shadow:none}.entity span{color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.02em}.entity strong{color:var(--amber);font-size:12px;font-weight:600}.entity small{color:var(--text);font-size:13px;font-weight:500;line-height:1.45}.entity em{color:var(--muted);font-size:12px}.entity-inline-actions{display:flex;flex-wrap:wrap;gap:6px}.entity-editor{border-top:1px solid var(--line)}.entity-editor label{color:var(--muted);font-size:12px;font-weight:600}.entity-editor select,.entity-editor input{border-color:var(--line-strong);border-radius:var(--radius-md);padding:6px 10px;font-size:13px}.empty-results{border-color:var(--line-strong);border-radius:var(--radius-lg);background:transparent}.file-card,.file-item,.queue-item{border-radius:10px}.personal-settings,.admin-workspace{background:var(--bg)}.personal-settings-card,.admin-card,.personal-account,.admin-stat,.admin-metric{border:0;border-radius:14px;background:var(--surface);box-shadow:var(--shadow-card)}.personal-settings-card-icon,.admin-card-icon{border:0;border-radius:10px;background:var(--primary-soft);color:var(--primary)}.personal-settings-hero h1{font-size:26px;font-weight:700}.personal-settings-kicker{color:var(--primary);letter-spacing:.06em}.personal-settings-banner{border-radius:var(--radius-lg)}.chat-sidebar,.chat-history{background:var(--surface-strong)}.upload-dialog,.admin-dialog,.paste-dialog,.confirm-card{border:0;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.settings-popover,.entity-type-menu,.pdf-mode-menu,.plus-menu,.model-menu,.admin-select-menu,.preview-summary-popover{border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop)}.new-chat-btn{border-radius:10px;box-shadow:0 1px 2px #1456b859}:root{--green-border: #b9e3c9;--amber-border: #f3d9a8;--red-border: #f5c2c6;--ink: #18181b}.btn,.toolbar .btn,.top-export .btn,.top-restore .btn{height:34px;min-width:0;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--text);font-size:13px;font-weight:600;white-space:nowrap}.btn svg{flex:none}.btn:hover:not(:disabled){border-color:#c4c4ca;background:var(--surface-strong)}.btn:disabled{opacity:.5}.btn.btn-sm,.toolbar .btn.btn-sm{height:30px;padding:0 10px;font-size:12px}.btn.btn-primary,.toolbar .btn.btn-primary{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 1px 2px #1456b859}.btn.btn-primary:hover:not(:disabled){border-color:var(--primary-strong);background:var(--primary-strong)}.btn.btn-upload{border-color:var(--primary-border);background:var(--surface);color:var(--primary-strong)}.btn.btn-upload:hover:not(:disabled){border-color:var(--primary);background:var(--primary-soft)}.btn.btn-ai{border-color:var(--ink);color:var(--ink)}.btn.btn-ai:hover:not(:disabled){border-color:var(--ink);background:#f1f1f3}.btn.btn-ai:disabled{border-color:var(--line-strong);color:var(--muted)}.btn.btn-warn{border-color:var(--amber-border);background:var(--amber-soft);color:#9a5400}.btn.btn-warn:hover:not(:disabled){border-color:#e8c27e;background:#ffecc9}.btn-dot{width:7px;height:7px;border-radius:50%;background:#ffb020;box-shadow:0 0 0 2px #ffb02059}.workflow-badge{min-width:18px;height:18px;padding:0 5px;display:inline-grid;place-items:center;border-radius:9px;background:var(--amber-soft);color:var(--amber);font-size:11px;font-weight:700;line-height:1}.entity-inline-actions button{min-height:28px;padding:0 10px;border:0;border-radius:var(--radius-md);background:#f1f1f3;color:var(--muted-strong);font-size:12px;font-weight:600}.entity-inline-actions button:hover:not(:disabled){background:#e5e5e9;color:var(--text)}.entity-inline-actions .act-confirm{background:var(--green);color:#fff}.entity-inline-actions .act-confirm:hover:not(:disabled){background:var(--green-strong);color:#fff}.entity-inline-actions .act-warn{background:var(--amber-soft);color:#9a5400}.entity-inline-actions .act-warn:hover:not(:disabled){background:#ffecc9;color:#9a5400}.entity-inline-actions .danger{background:var(--red-soft);color:var(--red)}.entity-inline-actions .danger:hover:not(:disabled){background:#ffe1e3;color:var(--red)}.result-actions>button,.entity-action,.entity-group-actions button{border:1px solid var(--green-border);background:var(--green-soft);color:var(--green-strong);font-weight:700}.result-actions>button:hover:not(:disabled),.entity-action:hover:not(:disabled),.entity-group-actions button:hover:not(:disabled){border-color:#8fd0aa;background:#dcf5e6}.entity-action,.entity-group-actions button{min-height:26px;padding:3px 10px;border-radius:var(--radius-pill);font-weight:600}.result-actions>button:disabled,.entity-action:disabled,.entity-group-actions button:disabled{border-color:var(--line);background:#ececef;color:#a2a2aa}.topbar{align-items:center;gap:10px 12px;padding:10px 20px}.top-export,.top-restore{gap:8px;padding:6px 8px 6px 14px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:none}.export-title,.restore-title{display:flex;align-items:center;min-width:0;padding-right:4px}.export-title span,.restore-title span{display:inline-flex;align-items:center;gap:6px;color:var(--text);font-size:13px;font-weight:700;letter-spacing:0}.export-title span:before,.restore-title span:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--primary)}.restore-title span:before{background:#f5a524}.topbar{flex-wrap:wrap}.meta-row{order:0;flex:1 1 0;min-width:300px;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;row-gap:4px}.meta-row .document-meta,.meta-row .meta-main{display:contents}.meta-row .meta-file{grid-column:1;grid-row:1;justify-self:start;width:fit-content;max-width:min(320px,100%);min-width:0;margin:0;padding:2px 10px;border:1px solid var(--line);border-radius:999px;background:#f8fafcf5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:700;line-height:1.45}.meta-row .workflow-track{grid-column:1 / -1;grid-row:2;contain:inline-size}.top-actions{flex:none;margin-left:auto;display:flex;align-items:center;gap:12px}.top-actions .library-meta{white-space:nowrap}@media(max-width:760px){.top-actions{flex-wrap:wrap;margin-left:0}}.top-export,.top-restore{gap:6px;padding:6px 6px 6px 12px}.toolbar .btn,.top-export .btn,.top-restore .btn{padding:0 10px}.workflow-step{gap:4px}.workflow-step+.workflow-step{margin-left:14px}.workflow-step+.workflow-step:before{left:-11px;width:8px}.btn.btn-export{border-color:var(--primary-border);background:var(--primary-soft);color:var(--primary-strong)}.btn.btn-export svg{color:var(--primary)}.btn.btn-export:hover:not(:disabled){border-color:var(--primary);background:#d6e7fb}.btn.btn-export:disabled{border-color:var(--line);background:var(--surface-strong);color:var(--muted)}.pane-head>.pane-head-actions{flex:1 1 auto;max-width:100%;justify-content:flex-end}.pane-head-actions>*{max-width:100%;min-width:0}.pane-head-actions .pdf-mode-trigger,.pane-head-actions .entity-type-btn{max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.download-picker-all{display:flex;align-items:center;gap:8px;padding:0 4px;color:var(--text);font-size:13px;font-weight:600}.download-picker-all small{margin-left:auto;color:var(--muted);font-weight:400}.download-picker-list{max-height:min(48vh,360px);margin:0;padding:4px;overflow:auto;list-style:none;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-strong)}.download-picker-list li label{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer}.download-picker-list li.is-picked label{background:var(--primary-soft)}.download-picker-list li:not(.is-disabled) label:hover{background:#eef0f4}.download-picker-list li.is-picked label:hover{background:#dfeafc}.download-picker-list li.is-disabled label{cursor:not-allowed;opacity:.6}.download-picker-name{flex:1;min-width:0;overflow:hidden;color:var(--text);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.download-picker-name small{margin-left:6px;color:var(--muted);font-size:12px}.download-picker-tag,.download-picker-reason,.download-picker-review{flex:none;padding:1px 8px;border-radius:var(--radius-pill);font-size:11px;font-style:normal;font-weight:600}.download-picker-tag{background:var(--primary-soft);color:var(--primary-strong)}.download-picker-review{background:var(--amber-soft);color:var(--amber)}.download-picker-reason{background:#ececef;color:var(--muted-strong)}.download-picker-empty{padding:24px 12px;border:1px dashed var(--line-strong);border-radius:var(--radius-md);color:var(--muted);font-size:13px;text-align:center}.download-picker-error{margin:0;color:var(--red);font-size:13px}
