:root{--wx-brand-slate:#364a5e;--wx-brand-accent:#5b9bd5;--color-primary:#667eea;--color-primary-dark:#5a67d8;--color-primary-light:#7c3aed;--color-secondary:#764ba2;--color-secondary-dark:#6b42a0;--color-secondary-light:#8b5acd;--color-link:#2563eb;--color-link-hover:#1d4ed8;--color-white:#fff;--color-black:#000;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-danger:#ef4444;--color-info:#3b82f6;--color-text:#1f2937;--color-text-secondary:#6b7280;--color-background:#fff;--color-bg-primary:#fff;--color-bg-secondary:#f9fafb;--color-border:#e5e7eb}:root{--font-sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625}:root{--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--container-narrow:672px;--container-form:896px;--container-main:1280px}:root{--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1);--transition-fast:.15s ease-in-out;--transition-base:.2s ease-in-out;--transition-slow:.3s ease-in-out;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070}:root{--badge-default-bg:#f3f4f6;--badge-default-text:#374151;--badge-success-bg:#d1fae5;--badge-success-text:#065f46;--badge-error-bg:#fee2e2;--badge-error-text:#991b1b;--badge-warning-bg:#fef3c7;--badge-warning-text:#92400e;--badge-info-bg:#dbeafe;--badge-info-text:#1e40af;--tag-default-bg:#f3f4f6;--tag-default-text:#374151;--tag-default-border:#d1d5db;--tag-success-bg:#d1fae5;--tag-success-text:#065f46;--tag-success-border:#a7f3d0;--tag-error-bg:#fee2e2;--tag-error-text:#991b1b;--tag-error-border:#fecaca;--tag-warning-bg:#fef3c7;--tag-warning-text:#92400e;--tag-warning-border:#fde68a;--tag-info-bg:#dbeafe;--tag-info-text:#1e40af;--tag-info-border:#bfdbfe;--alert-success-bg:#d1fae5;--alert-success-text:#065f46;--alert-success-border:#a7f3d0;--alert-error-bg:#fee2e2;--alert-error-text:#991b1b;--alert-error-border:#fecaca;--alert-warning-bg:#fef3c7;--alert-warning-text:#92400e;--alert-warning-border:#fde68a;--alert-info-bg:#dbeafe;--alert-info-text:#1e40af;--alert-info-border:#bfdbfe;--button-primary-bg:#667eea;--button-primary-hover:#5a67d8;--button-primary-text:#fff;--button-secondary-bg:#f3f4f6;--button-secondary-hover:#e5e7eb;--button-secondary-text:#374151;--button-outline-border:#667eea;--button-outline-text:#667eea;--button-outline-hover-bg:#667eea;--button-outline-hover-text:#fff;--button-danger-bg:#ef4444;--button-danger-hover:#dc2626;--button-danger-text:#fff;--button-success-bg:#10b981;--button-success-hover:#059669;--button-success-text:#fff;--button-warning-bg:#f59e0b;--button-warning-hover:#d97706;--button-warning-text:#fff;--button-info-bg:#14b8a6;--button-info-hover:#0d9488;--button-info-text:#fff;--button-action-bg:#6366f1;--button-action-hover:#4f46e5;--button-action-text:#fff;--button-intranet-bg:#475569;--button-intranet-hover:#334155;--button-intranet-text:#fff;--card-bg:#fff;--card-border:#e5e7eb;--card-title-text:#111827;--card-footer-bg:#f9fafb;--input-bg:#fff;--input-border:#d1d5db;--input-border-hover:#9ca3af;--input-border-focus:#667eea;--input-text:#1f2937;--input-placeholder:#9ca3af;--input-disabled-bg:#f3f4f6;--input-label-text:#374151;--input-required-bg:#dbeafe;--input-required-border:#93c5fd;--input-editable-bg:#fef3c7;--input-editable-border:#fcd34d;--input-error-bg:#fee2e2;--input-error-border:#ef4444;--modal-bg:#fff;--modal-overlay-bg:rgba(0,0,0,.5);--modal-border:#e5e7eb;--toast-bg:#fff;--toast-border:#e5e7eb;--toast-text:#111827;--toast-shadow:0 10px 15px -3px rgba(0,0,0,.1);--toast-success-border:#a7f3d0;--toast-error-border:#fecaca;--toast-warning-border:#fde68a;--toast-info-border:#bfdbfe;--dropdown-bg:#fff;--dropdown-border:#e5e7eb;--dropdown-item-hover-bg:#f9fafb;--dropdown-item-text:#374151;--dropdown-item-hover-text:#111827;--dropdown-item-danger-hover-bg:#fee2e2;--table-border:#e5e7eb;--table-header-bg:#f9fafb;--table-header-text:#374151;--table-row-hover-bg:#f9fafb;--table-stripe-bg:#f9fafb;--progress-bg:#e5e7eb;--progress-bar-primary:#667eea;--progress-bar-success:#10b981;--progress-bar-warning:#f59e0b;--progress-bar-error:#ef4444}.dark,.dark-mode{--color-text:#f9fafb;--color-text-secondary:#d1d5db;--color-background:#111827;--color-bg-primary:#1f2937;--color-bg-secondary:#111827;--color-border:#374151;--color-gray-50:#1f2937;--color-gray-100:#374151;--color-gray-200:#4b5563;--color-gray-300:#6b7280;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.3);--shadow-md:0 4px 6px -1px rgba(0,0,0,.4);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.5);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.6);--badge-default-bg:#374151;--badge-default-text:#e5e7eb;--badge-success-bg:#065f46;--badge-success-text:#d1fae5;--badge-error-bg:#991b1b;--badge-error-text:#fee2e2;--badge-warning-bg:#92400e;--badge-warning-text:#fef3c7;--badge-info-bg:#1e40af;--badge-info-text:#dbeafe;--tag-default-bg:#374151;--tag-default-text:#e5e7eb;--tag-default-border:#4b5563;--tag-success-bg:#065f46;--tag-success-text:#d1fae5;--tag-success-border:#047857;--tag-error-bg:#991b1b;--tag-error-text:#fee2e2;--tag-error-border:#b91c1c;--tag-warning-bg:#92400e;--tag-warning-text:#fef3c7;--tag-warning-border:#b45309;--tag-info-bg:#1e40af;--tag-info-text:#dbeafe;--tag-info-border:#1e3a8a;--alert-success-bg:#064e3b;--alert-success-text:#d1fae5;--alert-success-border:#065f46;--alert-error-bg:#7f1d1d;--alert-error-text:#fee2e2;--alert-error-border:#991b1b;--alert-warning-bg:#78350f;--alert-warning-text:#fef3c7;--alert-warning-border:#92400e;--alert-info-bg:#1e3a8a;--alert-info-text:#dbeafe;--alert-info-border:#1e40af;--button-primary-bg:#7c3aed;--button-primary-hover:#6d28d9;--button-secondary-bg:#374151;--button-secondary-hover:#4b5563;--button-secondary-text:#e5e7eb;--button-outline-border:#7c3aed;--button-outline-text:#a78bfa;--button-outline-hover-bg:#7c3aed;--button-danger-bg:#dc2626;--button-danger-hover:#b91c1c;--button-success-bg:#059669;--button-success-hover:#047857;--button-warning-bg:#d97706;--button-warning-hover:#b45309;--button-info-bg:#0d9488;--button-info-hover:#0f766e;--button-action-bg:#4f46e5;--button-action-hover:#4338ca;--card-bg:#1f2937;--card-border:#374151;--card-title-text:#f9fafb;--card-footer-bg:#111827;--input-bg:#1f2937;--input-border:#4b5563;--input-border-hover:#6b7280;--input-border-focus:#7c3aed;--input-text:#f9fafb;--input-placeholder:#6b7280;--input-disabled-bg:#374151;--input-label-text:#e5e7eb;--input-required-bg:#1e3a8a;--input-required-border:#3b82f6;--input-editable-bg:#78350f;--input-editable-border:#f59e0b;--input-error-bg:#7f1d1d;--input-error-border:#dc2626;--modal-bg:#1f2937;--modal-overlay-bg:rgba(0,0,0,.75);--modal-border:#374151;--toast-bg:#1f2937;--toast-border:#374151;--toast-text:#f9fafb;--toast-shadow:0 10px 15px -3px rgba(0,0,0,.5);--toast-success-border:#065f46;--toast-error-border:#991b1b;--toast-warning-border:#92400e;--toast-info-border:#1e40af;--dropdown-bg:#1f2937;--dropdown-border:#374151;--dropdown-item-hover-bg:#374151;--dropdown-item-text:#e5e7eb;--dropdown-item-hover-text:#f9fafb;--dropdown-item-danger-hover-bg:#7f1d1d;--table-border:#374151;--table-header-bg:#111827;--table-header-text:#e5e7eb;--table-row-hover-bg:#374151;--table-stripe-bg:#1a202c;--progress-bg:#374151;--progress-bar-primary:#7c3aed;--progress-bar-success:#059669;--progress-bar-warning:#d97706;--progress-bar-error:#dc2626}*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f9fafb;--bg2:#f3f4f6;--surface:#fff;--surface2:#f9fafb;--surface3:#f3f4f6;--border:#e5e7eb;--border2:#d1d5db;--accent:#667eea;--accent2:#764ba2;--accent-glow:rgba(102,126,234,.18);--accent-hv:#5a67d8;--success:#10b981;--success-bg:#d1fae5;--error:#ef4444;--error-bg:#fee2e2;--warn:#f59e0b;--text:#1f2937;--text-2:#6b7280;--text-3:#9ca3af;--font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;--radius-sm:6px;--radius:8px;--radius-lg:12px;--radius-full:9999px;--sidebar-w:280px;--header-h:96px;--transition:.18s ease;--wx-brand-slate:#364a5e;--wx-link:#2563eb;--wx-link-bg:#dbeafe;--shadow-md:0 4px 6px -1px rgba(0,0,0,.1)}html.dark{--bg:#111827;--bg2:#1f2937;--surface:#1f2937;--surface2:#111827;--surface3:#374151;--border:#374151;--border2:#4b5563;--accent:#7c3aed;--accent2:#8b5acd;--accent-glow:rgba(124,58,237,.22);--accent-hv:#6d28d9;--success-bg:rgba(16,185,129,.16);--error-bg:rgba(239,68,68,.16);--text:#f9fafb;--text-2:#d1d5db;--text-3:#9ca3af;--wx-link:#60a5fa;--wx-link-bg:#1f2937;--shadow-md:0 4px 6px -1px rgba(0,0,0,.4)}body,html{height:100%;font-family:var(--font);background:var(--bg);color:var(--text);font-size:18px;line-height:1.55;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--surface3);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--border2)}header{position:fixed;inset:0 0 auto;z-index:200;height:var(--header-h);background:var(--surface);border-bottom:2px solid var(--border);box-shadow:var(--shadow-md)}.header-inner{max-width:var(--container-main,1280px);margin:0 auto;height:100%;gap:20px;padding:0 20px}.header-inner,.header-left{display:flex;align-items:center}.header-left{gap:12px;flex-shrink:0}.nav-link{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:var(--radius-sm);font-size:.8rem;font-weight:500;text-decoration:none;color:var(--text-2);border:1px solid var(--border);background:var(--surface2);transition:color var(--transition),background var(--transition),border-color var(--transition)}.nav-link:hover{color:var(--text);background:var(--surface3);border-color:var(--border2)}.header-titles{display:flex;flex-direction:column;gap:1px}.header-titles h1{font-size:1.1rem;font-weight:700;letter-spacing:-.01em;color:var(--text)}.header-sub{font-size:.85rem;color:var(--text-3);font-weight:400}.wx-logo{height:30px;width:auto;display:block}html.dark .wx-logo{filter:brightness(0) invert(1)}.url-badge{display:flex;align-items:center;gap:7px;padding:5px 6px 5px 12px;border-radius:99px;background:var(--surface2);border:1px solid var(--border);font-family:var(--mono);font-size:.72rem;color:var(--text-2);max-width:480px}.url-badge svg{flex-shrink:0;color:var(--accent)}.url-badge-endpoint{padding:4px 10px;opacity:.75;border-color:#7c3aed59}.url-badge-endpoint svg{color:var(--accent2)}.url-display{color:var(--text-2);font-family:var(--mono);font-size:.72rem;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reload-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;background:transparent;border:none;cursor:pointer;color:var(--text-3);border-radius:50%;transition:background var(--transition),color var(--transition)}.reload-btn:hover{background:var(--surface3);color:var(--accent)}.url-badge.url-locked{border-color:#fbbf2466;background:#fbbf240d}.url-badge.url-locked .reload-btn{opacity:.4;pointer-events:none}.status-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 13px;border-radius:99px;font-size:.78rem;font-weight:500;border:1px solid var(--border);transition:background var(--transition),border-color var(--transition)}.status-chip.loading{background:#fbbf2414;border-color:#fbbf2440;color:var(--warn)}.status-chip.ok{background:var(--success-bg);border-color:#34d3994d;color:var(--success)}.status-chip.error{background:var(--error-bg);border-color:#f871714d;color:var(--error)}.chip-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex-shrink:0}.status-chip.loading .chip-dot{animation:blink 1.1s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.2}}.layout{margin-top:var(--header-h);height:calc(100vh - var(--header-h))}#sidebar,.layout{display:flex;overflow:hidden}#sidebar{width:var(--sidebar-w);flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);flex-direction:column}.sidebar-header{padding:14px 12px 10px;border-bottom:1px solid var(--border)}.search-box{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:10px;color:var(--text-3);pointer-events:none}#op-search{width:100%;padding:8px 10px 8px 32px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font);font-size:.83rem;outline:none;transition:border-color var(--transition),box-shadow var(--transition)}#op-search:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}#op-search::-moz-placeholder{color:var(--text-3)}#op-search::placeholder{color:var(--text-3)}.op-count{margin-top:7px;font-size:.72rem;color:var(--text-3);padding-left:2px}#op-list{list-style:none;overflow-y:auto;flex:1;padding:8px 8px 16px}#op-list li{padding:8px 11px;border-radius:var(--radius-sm);cursor:pointer;font-size:.83rem;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background var(--transition),color var(--transition),transform .1s;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}#op-list li:hover{background:var(--surface2);color:var(--text)}#op-list li:active{transform:scale(.98)}#op-list li.active{background:linear-gradient(90deg,#4f8ef72e,#7c3aed1a);color:var(--accent);font-weight:600}#op-list li.active:before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:3px;background:linear-gradient(180deg,var(--accent),var(--accent2));border-radius:2px}#op-list li.hidden-op{display:none}#main{flex:1;overflow-y:auto;padding:28px 28px 40px;background:var(--bg2)}.panel{max-width:1160px;margin:0 auto}.panel.hidden{display:none!important}#welcome{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - var(--header-h) - 80px)}.welcome-inner{text-align:center;max-width:400px}.welcome-icon{display:flex;justify-content:center;margin-bottom:24px;filter:drop-shadow(0 0 30px rgba(79,142,247,.35));animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.welcome-inner h2{font-size:1.5rem;font-weight:700;margin-bottom:10px;background:linear-gradient(135deg,var(--text),var(--text-2));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.welcome-inner p{color:var(--text-2);font-size:.9rem;margin-bottom:28px}.welcome-tips{display:flex;flex-direction:column;gap:8px;text-align:left}.tip{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:9px 14px;font-size:.82rem;color:var(--text-2)}.tip-key{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-weight:600;font-size:.72rem;padding:2px 8px;border-radius:4px;letter-spacing:.03em;flex-shrink:0}.op-header{justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap}.op-header,.op-header-left{display:flex;align-items:flex-start}.op-header-left{gap:12px}.op-header-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.op-badge{padding:3px 9px;border-radius:5px;background:linear-gradient(135deg,#4f8ef733,#7c3aed33);border:1px solid rgba(79,142,247,.3);color:var(--accent);font-size:.68rem;font-weight:700;letter-spacing:.08em;margin-top:4px;flex-shrink:0}#op-title{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;background:linear-gradient(135deg,var(--text),#a5b4fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.op-path{font-family:var(--mono);font-size:.72rem;color:var(--text-3);margin-top:3px}.btn{padding:8px 16px;font-family:var(--font);font-size:.82rem;border:1px solid var(--border2);transition:background var(--transition),border-color var(--transition),box-shadow var(--transition),transform .1s;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.4;transform:none!important}.btn-ghost:hover{background:var(--surface3);color:var(--text)}.btn-primary{box-shadow:0 4px 16px #4f8ef74d}.btn-primary:hover{box-shadow:0 4px 24px #4f8ef773;filter:brightness(1.08)}.btn-sm{padding:6px 12px}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}@media(max-width:860px){.editor-grid{grid-template-columns:1fr}}.editor-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:border-color var(--transition)}.editor-card:focus-within{border-color:#4f8ef766;box-shadow:0 0 0 3px var(--accent-glow)}.card-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px 9px;border-bottom:1px solid var(--border);background:#ffffff05}.card-title{font-size:.78rem;font-weight:600;color:var(--text-2);letter-spacing:.04em;text-transform:uppercase}.card-tag{font-size:.67rem;font-weight:700;letter-spacing:.07em;padding:2px 7px;border-radius:4px;background:var(--surface3);border:1px solid var(--border);color:var(--text-3)}.textarea-wrap{flex:1}#input-editor{width:100%;min-height:220px;resize:vertical;background:transparent;border:none;outline:none;padding:14px 16px;color:var(--text);font-family:var(--mono);font-size:.82rem;line-height:1.65;-moz-tab-size:2;-o-tab-size:2;tab-size:2}.code-scroll{flex:1;overflow:auto;max-height:300px}#schema-view{padding:14px 16px;margin:0;font-family:var(--mono);font-size:.78rem;line-height:1.65;color:var(--text-2);white-space:pre;min-height:100%}.error-banner{display:flex;align-items:flex-start;gap:10px;background:var(--error-bg);border:1px solid rgba(248,113,113,.3);border-radius:var(--radius);padding:12px 16px;color:var(--error);font-size:.83rem;margin-bottom:16px;animation:slideIn .2s ease}.error-banner.hidden{display:none}.error-banner svg{flex-shrink:0;margin-top:1px}@keyframes slideIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.response-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;animation:slideIn .22s ease}.response-section.hidden{display:none}.section-title{font-size:.78rem;font-weight:600;color:var(--text-2);text-transform:uppercase;letter-spacing:.04em}.tabs{display:flex;gap:4px}.tab{padding:5px 13px;border-radius:6px;background:transparent;border:1px solid transparent;color:var(--text-3);font-size:.78rem;font-weight:500;cursor:pointer;font-family:var(--font);transition:background var(--transition),color var(--transition),border-color var(--transition)}.tab:hover{background:var(--surface2);color:var(--text-2);border-color:var(--border)}.tab.active{background:linear-gradient(135deg,#4f8ef72e,#7c3aed1f);border-color:#4f8ef74d;color:var(--accent);font-weight:600}.response-body{overflow:hidden}.tab-pane{display:block}.tab-pane.hidden{display:none}.code-block{padding:16px 20px;margin:0;font-family:var(--mono);font-size:.8rem;line-height:1.7;color:var(--text);white-space:pre-wrap;word-break:break-word;overflow:auto;max-height:440px}.json-key{color:#0369a1}.json-str{color:#15803d}.json-num{color:#b45309}.json-bool{color:#7c3aed}.json-null,.json-punct{color:var(--text-3)}html.dark .json-key{color:#7dd3fc}html.dark .json-str{color:#86efac}html.dark .json-num{color:#fdba74}html.dark .json-bool{color:#c084fc}html.dark .json-null{color:#94a3b8}.loading-overlay{position:fixed;inset:0;z-index:500;background:var(--bg);display:flex;align-items:center;justify-content:center;transition:opacity .35s ease}.loading-overlay.done{opacity:0;pointer-events:none}.loading-overlay.overlay-hidden{display:none}.loading-card{display:flex;flex-direction:column;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:36px 44px;box-shadow:0 24px 80px #0009;min-width:340px;max-width:540px;width:100%}.loading-card p{color:var(--text-2);font-size:.9rem}.loading-url{font-family:var(--mono);font-size:.7rem;color:var(--text-3);word-break:break-all;text-align:center;max-width:460px}.loading-log{list-style:none;width:100%;max-height:130px;overflow-y:auto;display:flex;flex-direction:column;gap:4px;border-top:1px solid var(--border);padding-top:10px;margin-top:2px}.loading-log li{font-family:var(--mono);font-size:.72rem;color:var(--text-3);line-height:1.4}.loading-log .log-success{color:var(--success)}.loading-log .log-error{color:var(--error)}.spinner{width:40px;height:40px;border-radius:50%;border:3px solid var(--surface3);border-top-color:var(--accent);animation:spin .7s linear infinite}.mode-toggle{display:flex;gap:2px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px}.mode-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:4px;background:transparent;border:none;cursor:pointer;color:var(--text-3);font-family:var(--font);font-size:.72rem;font-weight:500;transition:background var(--transition),color var(--transition);white-space:nowrap}.mode-btn:hover{color:var(--text-2)}.mode-btn.active{background:linear-gradient(135deg,#4f8ef738,#7c3aed26);color:var(--accent);font-weight:600}.input-form{padding:14px 16px;overflow-y:auto;min-height:120px;max-height:340px;display:flex;flex-direction:column;gap:10px}.form-empty{display:flex;align-items:center;gap:8px;color:var(--text-3);font-size:.8rem;font-style:italic;padding:16px 0}.form-empty-sm{font-size:.75rem;padding:8px 0}.form-group{display:grid;grid-template-columns:minmax(120px,160px) minmax(0,1fr);align-items:center;gap:12px}.form-label{font-size:.8rem;font-weight:500;color:var(--text-2);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.form-input{min-width:0;width:100%;padding:7px 11px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--mono);font-size:.8rem;outline:none;transition:border-color var(--transition),box-shadow var(--transition)}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.form-input::-moz-placeholder{color:var(--text-3)}.form-input::placeholder{color:var(--text-3)}.form-input[type=number]{-moz-appearance:textfield}.form-input[type=number]::-webkit-inner-spin-button,.form-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.type-badge{font-family:var(--mono);font-size:.65rem;font-weight:600;padding:2px 6px;border-radius:4px;letter-spacing:.04em;background:var(--surface3);border:1px solid var(--border);color:var(--text-3);flex-shrink:0}.type-badge.type-string{background:#86efac1a;border-color:#86efac40;color:#86efac}.type-badge.type-decimal,.type-badge.type-integer{background:#fdba741a;border-color:#fdba7440;color:#fdba74}.type-badge.type-boolean{background:#c084fc1a;border-color:#c084fc40;color:#c084fc}.type-badge.type-date{background:#7dd3fc1a;border-color:#7dd3fc40;color:#7dd3fc}.type-badge.type-object{background:#94a3b814;border-color:#94a3b833;color:var(--text-3)}.toggle-wrap{position:relative;display:inline-flex;align-items:center;width:40px;height:22px;cursor:pointer;flex-shrink:0}.toggle-input{position:absolute;opacity:0;width:0;height:0}.toggle-slider{position:absolute;inset:0;border-radius:11px;background:var(--surface3);border:1px solid var(--border);transition:background var(--transition),border-color var(--transition)}.toggle-slider:before{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:var(--text-3);transition:transform var(--transition),background var(--transition)}.toggle-input:checked+.toggle-slider{background:linear-gradient(135deg,var(--accent),var(--accent2));border-color:transparent}.toggle-input:checked+.toggle-slider:before{transform:translate(18px);background:#fff}.toggle-input:focus-visible+.toggle-slider{box-shadow:0 0 0 3px var(--accent-glow)}.form-nested{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:border-color var(--transition)}.form-nested-deep{background:#ffffff04;border-color:#ffffff0d}.form-nested-header{display:flex;align-items:center;gap:8px;padding:9px 14px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:#ffffff05;border-bottom:1px solid var(--border);transition:background var(--transition)}.form-nested-header:hover{background:#ffffff0a}.nested-arrow{color:var(--text-3);transition:transform var(--transition);flex-shrink:0}.form-nested.collapsed .nested-arrow{transform:rotate(-90deg)}.form-nested-body{padding:12px 14px;display:flex;flex-direction:column;gap:10px;overflow:hidden;transition:max-height .25s ease}.form-nested.collapsed .form-nested-body{display:none}.op-group-header{padding:10px 11px 4px;font-size:.67rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);cursor:default!important;-webkit-user-select:none;-moz-user-select:none;user-select:none}.op-group-header:hover{background:transparent!important;color:var(--text-3)!important}.response-header{justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);background:#ffffff05}.response-header,.response-header-left{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.response-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;animation:fadeIn .2s ease}.response-meta.hidden{display:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.res-status-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:99px;font-size:.72rem;font-weight:600;background:var(--surface2);border:1px solid var(--border);color:var(--text-3);transition:all var(--transition)}.res-status-chip .res-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.res-status-chip.success{background:var(--success-bg);border-color:#34d3994d;color:var(--success)}.res-status-chip.error{background:var(--error-bg);border-color:#f871714d;color:var(--error)}.res-method-badge{font-family:var(--mono);font-size:.72rem;color:var(--accent);background:#4f8ef71a;border:1px solid rgba(79,142,247,.2);padding:2px 8px;border-radius:4px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.res-timing{font-family:var(--mono);font-size:.72rem;color:var(--text-3)}.res-session-badge,.res-timing{display:inline-flex;align-items:center;gap:4px}.res-session-badge{padding:2px 8px;border-radius:4px;font-size:.68rem;font-weight:600;letter-spacing:.02em;background:#fbbf241f;border:1px solid rgba(251,191,36,.35);color:#fbbf24}.res-session-badge.hidden{display:none}.code-toolbar{display:flex;justify-content:flex-end;padding:6px 12px 0;background:#ffffff03}.copy-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:5px;background:var(--surface2);border:1px solid var(--border);color:var(--text-3);font-family:var(--font);font-size:.72rem;cursor:pointer;transition:background var(--transition),color var(--transition),border-color var(--transition)}.copy-btn:hover{background:var(--surface3);color:var(--text-2);border-color:var(--border2)}.copy-btn.copied{color:var(--success);border-color:#34d3994d;background:var(--success-bg)}.data-page{padding-top:var(--header-h);min-height:100vh;display:flex;flex-direction:column}.data-container{max-width:1200px;margin:0 auto;padding:28px 20px 60px;width:100%}.section-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:24px}.section-tab{padding:10px 18px;font-size:.85rem;font-weight:500;color:var(--text-2);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color var(--transition),border-color var(--transition);margin-bottom:-1px}.section-tab:hover{color:var(--text)}.section-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.section-panel{display:none}.section-panel.active{display:block}.sub-tabs{display:flex;gap:2px;margin-bottom:16px}.sub-tab{padding:6px 14px;font-size:.82rem;font-weight:500;color:var(--text-2);background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--transition),background var(--transition),border-color var(--transition)}.sub-tab:hover{color:var(--text);background:var(--surface3)}.sub-tab.active{color:var(--accent);background:#4f8ef71a;border-color:#4f8ef74d}.sub-panel{display:none}.sub-panel.active{display:block}.data-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 24px;margin-bottom:20px}.data-card-title{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-bottom:14px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;margin-bottom:20px}.kpi-card{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;display:flex;flex-direction:column;gap:4px}.kpi-label{font-size:.72rem;font-weight:500;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em}.kpi-value{font-size:1.6rem;font-weight:700;color:var(--text);line-height:1.2;font-variant-numeric:tabular-nums}.kpi-value.accent{color:var(--accent)}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;font-size:.75rem;font-weight:600;letter-spacing:.02em}.status-badge:before{content:"";display:block;width:7px;height:7px;border-radius:50%;background:currentColor}.status-badge.idle{color:var(--text-3);background:#64748b1f}.status-badge.running{color:var(--warn);background:#fbbf241f}.status-badge.running:before{animation:pulse 1s ease-in-out infinite}.status-badge.completed{color:var(--success);background:var(--success-bg)}.status-badge.failed{color:var(--error);background:var(--error-bg)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.import-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:16px}.btn{display:inline-flex;align-items:center;gap:7px;padding:8px 18px;border-radius:var(--radius-sm);font-size:.83rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background var(--transition),opacity var(--transition),box-shadow var(--transition)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-color:transparent;box-shadow:0 2px 12px #4f8ef740}.btn-primary:hover:not(:disabled){box-shadow:0 4px 20px #4f8ef766;filter:brightness(1.08)}.btn-ghost{background:var(--surface2);color:var(--text-2);border-color:var(--border)}.btn-ghost:hover:not(:disabled){background:var(--surface3);color:var(--text);border-color:var(--border2)}.import-stats{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:16px}.stat-item{display:flex;align-items:center;gap:5px;font-size:.78rem;color:var(--text-3)}.stat-item strong{color:var(--text-2);font-variant-numeric:tabular-nums}.stat-item.errors strong{color:var(--error)}.stat-item.warnings strong{color:var(--warn)}.stat-errors-btn{background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:5px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-underline-offset:2px}.stat-errors-btn strong,.stat-errors-btn:hover{color:var(--error)}.modal-overlay{position:fixed;inset:0;background:#0000008c;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.modal-box{background:var(--surface);border:1px solid var(--border2);border-radius:var(--radius-lg);width:100%;max-width:720px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 40px #00000073}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);flex-shrink:0}.modal-title{font-size:.9rem;font-weight:600;color:var(--text)}.modal-close{background:none;border:none;cursor:pointer;color:var(--text-3);font-size:1rem;padding:4px 8px;border-radius:var(--radius-sm);line-height:1;transition:color var(--transition),background var(--transition)}.modal-close:hover{color:var(--text);background:var(--surface2)}.modal-body{overflow-y:auto;padding:16px 20px;flex:1}.error-report-list{display:flex;flex-direction:column;gap:8px;font-family:var(--mono);font-size:.75rem}.error-report-row{display:flex;gap:8px;flex-wrap:wrap;align-items:baseline;padding:8px 10px;background:var(--bg2);border:1px solid var(--border);border-left:3px solid var(--error);border-radius:var(--radius-sm);line-height:1.5}.error-report-ts{color:var(--text-3);flex-shrink:0}.error-report-entity{color:var(--accent);flex-shrink:0}.error-report-msg{color:var(--text);word-break:break-word;flex:1;min-width:0}.log-panel{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);min-height:360px;overflow-y:auto;padding:12px 14px;font-family:var(--mono);font-size:.75rem;line-height:1.7}.log-panel .log-empty{color:var(--text-3);font-style:italic}.log-line{display:flex;gap:8px;padding:1px 0;border-bottom:1px solid hsla(0,0%,100%,.025)}.log-level{flex-shrink:0;width:38px;font-weight:600;font-size:.68rem;text-transform:uppercase}.log-level.info{color:var(--accent)}.log-level.warn{color:var(--warn)}.log-level.error{color:var(--error)}.log-level.soap{color:var(--text-3);opacity:.7}.log-msg{color:var(--text-2);word-break:break-word}.log-duration,.log-entity{color:var(--text-3);flex-shrink:0}.log-duration{font-size:.68rem;margin-left:auto}.last-run-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.last-run-item{display:flex;flex-direction:column;gap:2px}.last-run-label{font-size:.7rem;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em}.last-run-value{font-size:.85rem;color:var(--text-2);font-variant-numeric:tabular-nums}.runs-table-row:hover td{background:#4f8ef70f}.modal-box-lg{max-width:900px}.run-detail-body{display:flex;flex-direction:column;gap:0}.run-detail-grid{margin-bottom:20px}.run-detail-log-title{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-bottom:10px}.run-detail-log{min-height:200px;max-height:400px;overflow-y:auto}.table-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.search-input{flex:1;min-width:180px;padding:7px 12px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font);font-size:.83rem;outline:none;transition:border-color var(--transition)}.search-input:focus{border-color:var(--border2)}.search-input::-moz-placeholder{color:var(--text-3)}.search-input::placeholder{color:var(--text-3)}.filter-select{padding:7px 10px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font);font-size:.83rem;outline:none;cursor:pointer;transition:border-color var(--transition)}.filter-select:focus{border-color:var(--border2)}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius)}table.data-table{width:100%;border-collapse:collapse;font-size:.82rem}.data-table thead th{padding:10px 14px;background:var(--surface2);text-align:left;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);border-bottom:1px solid var(--border);white-space:nowrap}.data-table tbody tr{border-bottom:1px solid var(--border);transition:background var(--transition)}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:nth-child(2n){background:#ffffff05}.data-table tbody tr:hover{background:#4f8ef70f}.data-table td{padding:9px 14px;color:var(--text-2);vertical-align:top}.data-table td.mono{font-family:var(--mono);font-size:.75rem}.data-table td.truncate{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-empty{padding:32px;text-align:center;color:var(--text-3);font-size:.85rem}.pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;flex-wrap:wrap}.pagination-info{font-size:.78rem;color:var(--text-3)}.pagination-btns{display:flex;gap:6px}.page-btn{padding:5px 12px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-2);font-size:.8rem;cursor:pointer;transition:background var(--transition),color var(--transition)}.page-btn:hover:not(:disabled){background:var(--surface3);color:var(--text)}.page-btn:disabled{opacity:.35;cursor:not-allowed}.page-btn.active{color:var(--accent);border-color:#4f8ef759;background:#4f8ef714}.progress-section{margin-top:4px}.progress-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}.progress-label{font-size:.78rem;color:var(--text-3);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-pct{font-size:.75rem;font-weight:600;color:var(--text-2);font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:8px}.progress-track{height:6px;background:var(--surface3,hsla(0,0%,100%,.06));border-radius:99px;overflow:hidden;margin-bottom:2px}.progress-bar{height:100%;border-radius:99px;transition:width .4s ease}.progress-bar.step{background:linear-gradient(90deg,var(--accent),var(--accent2,#7c3aed))}.progress-bar.overall{background:linear-gradient(90deg,var(--success,#22c55e),var(--accent))}@media(max-width:640px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.import-stats{gap:10px}.data-container{padding:16px 12px 40px}}.role-card-no-users{font-size:.8rem;color:var(--text-3);font-style:italic}.role-users-table{width:100%;border-collapse:collapse;font-size:.82rem}.role-users-table thead th{text-align:left;padding:4px 8px;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);border-bottom:1px solid var(--border,hsla(0,0%,100%,.08))}.role-users-table tbody tr:hover{background:#4f8ef70f}.role-users-table td{padding:5px 8px;color:var(--text-2);vertical-align:middle;border-bottom:1px solid var(--border,hsla(0,0%,100%,.04))}.role-users-table tbody tr:last-child td{border-bottom:none}.role-users-table td.mono{font-family:var(--mono);font-size:.75rem}.role-users-table td.truncate{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-item mark{background:#fac83259;color:inherit;border-radius:2px;padding:0 1px}.data-table tbody tr.clickable-row{cursor:pointer}.data-table tbody tr.clickable-row:hover td{background:#4f8ef71a}.data-table tbody tr.clickable-row:focus{outline:2px solid var(--accent);outline-offset:-2px}.btn-sm{padding:5px 12px;font-size:.78rem}.node-deps-breadcrumb{display:flex;align-items:center;gap:4px;flex:1;min-width:0;overflow:hidden}.deps-crumb{font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.deps-crumb-current{color:var(--text);font-weight:600}.deps-crumb-link{background:none;border:none;padding:0;cursor:pointer;color:var(--accent);font-family:inherit;font-size:.82rem}.deps-crumb-link:hover{text-decoration:underline}.deps-crumb-sep{color:var(--text-3);font-size:.78rem;flex-shrink:0}.deps-node-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.deps-node-type-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:99px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;background:#4f8ef71f;color:var(--accent)}.deps-node-name{font-size:1.05rem;font-weight:600;color:var(--text);word-break:break-word}.deps-node-meta{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border)}.deps-meta-item{display:flex;flex-direction:column;gap:2px;min-width:0}.deps-meta-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-3)}.deps-meta-val{font-size:.8rem;color:var(--text-2);word-break:break-all}.deps-section{margin-bottom:20px}.deps-section-title{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);margin-bottom:10px;display:flex;align-items:center;gap:8px}.deps-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 6px;border-radius:99px;background:var(--surface3);color:var(--text-2);font-size:.7rem;font-weight:700;letter-spacing:0;text-transform:none}.deps-children-grid{display:flex;flex-direction:column;gap:4px}.deps-node-link{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;text-align:left;width:100%;font-family:inherit;font-size:.83rem;color:var(--text-2);transition:background var(--transition),border-color var(--transition),color var(--transition)}.deps-node-link:hover{background:var(--surface3);border-color:#4f8ef74d;color:var(--text)}.deps-node-link>span:first-of-type{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deps-node-link-type{font-size:.7rem;background:var(--surface3);padding:1px 6px;border-radius:99px}.deps-icon,.deps-node-link-type{flex-shrink:0;color:var(--text-3)}.deps-icon{width:16px;height:16px}.deps-assignments-table{width:100%;border-collapse:collapse;font-size:.82rem;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.deps-assignments-table thead th{padding:8px 12px;background:var(--surface2);text-align:left;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);border-bottom:1px solid var(--border)}.deps-assignments-table tbody tr{border-bottom:1px solid var(--border);transition:background var(--transition)}.deps-assignments-table tbody tr:last-child{border-bottom:none}.deps-assignments-table tbody tr:hover{background:#4f8ef70f}.deps-assignments-table td{padding:8px 12px;color:var(--text-2)}.deps-responsible{display:flex;gap:8px;font-size:.85rem}.deps-perm-chip,.deps-responsible{align-items:center;color:var(--text-2)}.deps-perm-chip{display:inline-flex;gap:4px;margin:2px 4px 2px 0;padding:2px 8px;font-size:.74rem;border-radius:var(--radius-sm);background:#4f8ef71f;border:1px solid var(--border)}.deps-perm-chip-inherited{background:var(--surface2);color:var(--text-3);font-style:italic}.deps-image-preview{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}.deps-image{max-width:220px;max-height:160px;-o-object-fit:contain;object-fit:contain;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface2)}.deps-image-meta{display:flex;flex-direction:column;gap:6px;font-size:.82rem;color:var(--text-2)}.deps-image-author{color:var(--text-3)}.deps-actions{padding-top:14px;border-top:1px solid var(--border);display:flex;gap:10px;flex-wrap:wrap}.viewer-page{padding-top:var(--header-h);min-height:100vh;display:flex;flex-direction:column}.viewer-container{max-width:1200px;margin:0 auto;padding:28px 20px 60px;width:100%}.viewer-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-bottom:18px;font-size:.82rem}.viewer-crumb{color:var(--text-3)}.viewer-crumb-link{background:none;border:none;padding:2px 4px;border-radius:var(--radius-sm);color:var(--accent);cursor:pointer;font-size:.82rem;font-family:var(--font);transition:background var(--transition)}.viewer-crumb-link:hover{background:#4f8ef71a}.viewer-crumb-current{color:var(--text);font-weight:500}.viewer-crumb-sep{color:var(--text-3);font-size:.75rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.viewer-folder-header{display:flex;align-items:center;gap:12px;padding:14px 20px;border:2px solid var(--accent);border-radius:var(--radius-lg);background:var(--surface);margin-bottom:20px}.viewer-folder-header-icon{color:var(--accent);flex-shrink:0;display:flex;align-items:center}.viewer-folder-name{font-size:1rem;font-weight:600;color:var(--text)}.viewer-status{font-size:.85rem;color:var(--text-3);margin-bottom:12px;min-height:1.2em}.viewer-status.loading{color:var(--text-2)}.viewer-status.error{color:var(--error)}.viewer-folder-list{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.viewer-folder-card{display:flex;align-items:center;gap:14px;padding:16px 20px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);cursor:pointer;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition);outline:none}.viewer-folder-card:focus-visible,.viewer-folder-card:hover{border-color:var(--border2);background:var(--surface2);box-shadow:0 2px 12px #0000002e}.viewer-folder-card-icon{color:var(--text-3);flex-shrink:0;display:flex;align-items:center}.viewer-folder-card-name{font-size:.92rem;font-weight:500;color:var(--text)}.viewer-text-list{display:flex;flex-direction:column;gap:20px}.viewer-text-card{padding:22px 26px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.viewer-text-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.viewer-text-card-title{font-size:1rem;font-weight:700;color:var(--text)}.viewer-text-card-divider{border:none;border-top:1px solid var(--border);margin:12px 0 16px}.viewer-text-body{color:var(--text-2);font-size:.88rem;line-height:1.7;overflow-wrap:break-word;word-break:break-word}.viewer-text-body h1,.viewer-text-body h2,.viewer-text-body h3,.viewer-text-body h4{color:var(--text);margin:1em 0 .4em;font-weight:700;line-height:1.3}.viewer-text-body h1{font-size:1.3em}.viewer-text-body h2{font-size:1.15em}.viewer-text-body h3{font-size:1.05em}.viewer-text-body p{margin:.6em 0}.viewer-text-body ol,.viewer-text-body ul{padding-left:1.4em;margin:.5em 0}.viewer-text-body a{color:var(--accent);text-decoration:underline}.viewer-text-body a:hover{opacity:.8}.viewer-image,.viewer-text-body img{max-width:100%;height:auto;border-radius:var(--radius);margin:10px 0;display:block}.viewer-text-body table{width:100%;border-collapse:collapse;font-size:.85em;margin:.8em 0}.viewer-text-body td,.viewer-text-body th{padding:7px 12px;border:1px solid var(--border);text-align:left;vertical-align:top}.viewer-text-body th{background:var(--surface2);font-weight:600;color:var(--text)}.viewer-text-body .section-header,.viewer-text-body [class*=sectionHeader]{background:var(--accent);color:#fff;padding:8px 16px;font-weight:700;border-radius:var(--radius-sm);margin:1.2em 0 .6em}.viewer-text-empty{color:var(--text-3);font-style:italic;font-size:.85rem}@media(max-width:640px){.viewer-container{padding:16px 12px 40px}.viewer-folder-card{padding:12px 14px}.viewer-text-card{padding:16px 14px}}.page-nav{display:flex;flex-shrink:0}.page-nav,.page-nav-link{align-items:center;gap:6px}.page-nav-link{display:inline-flex;padding:6px 14px;border-radius:var(--radius-sm);font-size:1rem;font-weight:500;color:var(--text-2);text-decoration:none;border:1px solid transparent;transition:color var(--transition),background var(--transition),border-color var(--transition)}.page-nav-link:hover{color:var(--text);background:var(--surface2);border-color:var(--border)}.page-nav-link.active{color:var(--wx-link);background:var(--wx-link-bg);border-color:transparent;font-weight:600}.search-page{padding-top:var(--header-h);min-height:100vh;display:flex;flex-direction:column}.search-container{max-width:860px;margin:0 auto;padding:40px 20px 80px;width:100%}.search-hero{text-align:center;margin-bottom:36px}.search-hero-title{font-size:1.5rem;font-weight:700;color:var(--text);margin-bottom:6px;letter-spacing:-.01em}.search-hero-sub{font-size:.85rem;color:var(--text-3);margin-bottom:24px}.search-input-wrap{position:relative;max-width:560px;margin:0 auto}.search-input-wrap .search-icon{left:16px;pointer-events:none;flex-shrink:0}.search-input-wrap .clear-btn,.search-input-wrap .search-icon{position:absolute;top:50%;transform:translateY(-50%);color:var(--text-3)}.search-input-wrap .clear-btn{right:14px;background:none;border:none;cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:none;line-height:1;font-size:1rem;transition:color var(--transition)}.search-input-wrap .clear-btn:hover{color:var(--text)}.search-input-wrap.has-query .clear-btn{display:flex;align-items:center}.search-main-input{width:100%;padding:14px 48px;background:var(--surface);border:1px solid var(--border2);border-radius:var(--radius-lg);color:var(--text);font-family:var(--font);font-size:1rem;outline:none;transition:border-color var(--transition),box-shadow var(--transition)}.search-main-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.search-main-input::-moz-placeholder{color:var(--text-3)}.search-main-input::placeholder{color:var(--text-3)}.filter-chips{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:14px}.filter-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:99px;font-size:.78rem;font-weight:500;cursor:pointer;border:1px solid var(--border2);background:var(--surface2);color:var(--text-2);transition:color var(--transition),background var(--transition),border-color var(--transition);-webkit-user-select:none;-moz-user-select:none;user-select:none}.filter-chip:hover{color:var(--text);background:var(--surface3)}.filter-chip.active{color:var(--accent);background:#4f8ef71f;border-color:#4f8ef759}.filter-chip-dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7}.search-status{text-align:center;font-size:.82rem;color:var(--text-3);min-height:22px;margin-bottom:20px}.search-status.error{color:var(--error)}.results-section{margin-bottom:32px}.results-section-header{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border)}.results-section-icon{font-size:1rem}.results-section-title{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);flex:1}.results-section-count{font-size:.75rem;font-weight:600;color:var(--text-3);background:var(--surface2);border:1px solid var(--border);border-radius:99px;padding:2px 9px}.result-list{display:flex;flex-direction:column;gap:8px}.result-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 18px;cursor:pointer;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition);text-decoration:none;display:block}.result-card:hover{border-color:var(--border2);background:var(--surface2);box-shadow:0 2px 12px #00000040}.result-card-top{display:flex;align-items:flex-start;gap:10px}.result-card-icon{font-size:1rem;flex-shrink:0;margin-top:1px}.result-card-body{flex:1;min-width:0}.result-card-title{font-size:.9rem;font-weight:600;color:var(--text);margin-bottom:3px}.result-card-path,.result-card-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-card-path{font-size:.75rem;color:var(--text-3);font-family:var(--mono)}.result-card-snippet{margin-top:8px;font-size:.8rem;color:var(--text-2);line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.result-card-meta{margin-top:6px;display:flex;gap:8px;flex-wrap:wrap}.result-meta-tag{font-size:.72rem;padding:2px 8px;border-radius:99px;background:var(--surface3);color:var(--text-3);border:1px solid var(--border)}mark{background:#4f8ef747;color:var(--accent);border-radius:2px;padding:0 1px;font-style:normal}.search-empty{text-align:center;padding:60px 20px;color:var(--text-3)}.search-empty-icon{font-size:3rem;margin-bottom:12px;opacity:.5}.search-empty-title{font-size:1rem;font-weight:600;color:var(--text-2);margin-bottom:6px}.search-empty-sub{font-size:.83rem}.search-spinner{display:flex;justify-content:center;padding:40px 0}.spinner-ring{width:32px;height:32px;border:2px solid var(--border2);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.no-db-notice{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px 32px;text-align:center;margin-top:24px}.no-db-notice-icon{font-size:2rem;margin-bottom:12px}.no-db-notice-title{font-size:.95rem;font-weight:600;color:var(--text);margin-bottom:6px}.no-db-notice-sub{font-size:.82rem;color:var(--text-3)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-sm);background:transparent;border:1px solid var(--border2);color:var(--text-2);cursor:pointer;flex-shrink:0;transition:background var(--transition),color var(--transition),border-color var(--transition)}.theme-toggle:hover{background:var(--surface2);color:var(--text);border-color:var(--border2)}.theme-toggle svg{display:block;flex-shrink:0}
