:root{--color-bg-base:#f7f9fb;--color-bg-panel:#fff;--color-bg-elevated:#fff;--color-header-bg:#1e3a5f;--color-primary-50:#ebf4ff;--color-primary-100:#d1e7ff;--color-primary-300:#8dbaff;--color-primary-500:#5b9fff;--color-primary-600:#3d85e6;--color-primary-700:#2b6bbf;--color-neutral-50:#fafbfc;--color-neutral-100:#f5f6f7;--color-neutral-200:#e8eaed;--color-neutral-300:#dadce0;--color-neutral-400:#bdc1c6;--color-neutral-500:#888;--color-neutral-600:#5f6368;--color-neutral-700:#3c4043;--color-neutral-800:#202124;--color-neutral-900:#000;--color-success:#4caf50;--color-warning:#ffc107;--color-error:#f44336;--color-info:#2196f3;--color-text-primary:#202124;--color-text-secondary:#5f6368;--color-text-tertiary:#888;--color-text-disabled:#bdc1c6;--color-text-inverse:#fff;--color-text-link:#5b9fff;--color-border-light:#e8eaed;--color-border-medium:#dadce0;--color-border-dark:#bdc1c6;--color-border-focus:#5b9fff;--font-family-primary:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-family-mono:"SF Mono","Roboto Mono","Courier New",monospace;--font-size-xs:11px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:16px;--font-size-lg:18px;--font-size-xl:20px;--font-size-2xl:24px;--font-size-3xl:30px;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-xs:16px;--line-height-sm:18px;--line-height-base:20px;--line-height-md:24px;--line-height-lg:28px;--line-height-xl:28px;--line-height-2xl:32px;--line-height-3xl:36px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:12px;--spacing-base:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--spacing-3xl:64px;--radius-none:0px;--radius-sm:3px;--radius-base:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--border-none:0px;--border-thin:1px;--border-medium:2px;--border-thick:4px;--shadow-none:none;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-base:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.chart-empty-state,.panel-empty,.panel-error{align-items:center;display:flex;flex-direction:column;gap:8px;justify-content:center;opacity:.65;padding:40px 20px;text-align:center}.empty-icon{font-size:36px}.empty-sub{font-size:12px}.retry-btn{background:none;border:none;color:#5b9fff;color:var(--color-primary-500,#5b9fff);cursor:pointer;font-size:inherit;text-decoration:underline}#root,body,html{height:100%;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg-base);color:var(--color-text-primary);font-family:var(--font-family-primary);font-size:var(--font-size-base);line-height:var(--line-height-base)}button,input,select,textarea{font-family:inherit}.skeleton-container{display:flex;flex-direction:column;gap:8px}.skeleton-bar{animation:skeleton-shimmer 1.5s infinite;background:linear-gradient(90deg,#ffffff0f 25%,#ffffff1f 50%,#ffffff0f 75%);background-size:200% 100%;border-radius:6px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.stat-summary{background:var(--color-bg-panel);border:1px solid var(--color-border-light);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:var(--font-family-primary);font-size:var(--font-size-xs);padding:var(--spacing-sm) var(--spacing-md)}.stat-summary-grid{grid-column-gap:var(--spacing-base);grid-row-gap:2px;align-items:center;column-gap:var(--spacing-base);display:grid;grid-template-columns:repeat(3,auto) auto;grid-template-rows:auto auto;row-gap:2px}.stat-cell{align-items:baseline;display:flex;gap:var(--spacing-xs);white-space:nowrap}.stat-label{color:var(--color-text-secondary);font-size:var(--font-size-xs);letter-spacing:.3px;text-transform:uppercase}.stat-value{font-feature-settings:"tnum";color:var(--color-text-primary);font-variant-numeric:tabular-nums;font-weight:var(--font-weight-medium)}.stat-nstar{align-self:center;border-left:1px solid var(--color-border-light);grid-column:4;grid-row:1/span 2;padding-left:var(--spacing-md)}.stat-nstar .stat-label,.stat-nstar .stat-value{color:var(--color-primary-500);font-weight:var(--font-weight-bold)}.stat-nstar .stat-value{font-size:var(--font-size-md)}.stat-lowconf,.stat-repeat{border-top:1px solid var(--color-border-light);color:var(--color-text-secondary);font-size:var(--font-size-xs);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm)}.stat-lowconf-notice{align-items:flex-start;background:#f59e0b1a;border-left:3px solid var(--color-warning);border-radius:var(--radius-base);display:flex;gap:var(--spacing-sm);justify-content:space-between;margin-top:var(--spacing-xs);padding:var(--spacing-sm)}.stat-dismiss{background:none;border:none;cursor:pointer;font-size:var(--font-size-md);line-height:1;opacity:.7}.perf-view{padding:16px}.perf-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.perf-title{font-size:16px;font-weight:600}.perf-chart-picker{display:flex;flex-wrap:wrap;gap:8px}.perf-pick-btn{background:#0000;border:1px solid #fff3;border-radius:6px;cursor:pointer;font-size:13px;padding:6px 12px;transition:all .2s}.perf-pick-btn:hover{background:#3b82f61a}.perf-pick-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.perf-chart-container{position:relative}.perf-chart-actions{display:flex;gap:8px;margin-bottom:12px}.perf-chart-actions button{background:#0000;border:1px solid #fff3;border-radius:6px;cursor:pointer;font-size:13px;padding:6px 12px;transition:background .2s}.perf-chart-actions button:hover{background:#3b82f61a}.perf-stats-box{font-size:12px;margin-bottom:8px;opacity:.8}.perf-error,.perf-loading{opacity:.7;padding:20px;text-align:center}.perf-error{background-color:#fee2e2;border-radius:6px;color:#991b1b}@media print{.perf-chart-actions,.perf-header{display:none!important}}.dockable-panel{background:#fff;border:1px solid #e8eaed;border-radius:8px;color:#3c4043;display:flex;flex-direction:column;overflow:hidden}.dockable-panel--docked{height:100%;width:100%}.dockable-panel--collapsed{flex:0 0 auto}.dockable-panel--floating{box-shadow:0 12px 30px #3c404338;max-height:90vh;max-width:95vw;min-height:120px;min-width:280px;position:fixed;resize:both;z-index:1000}.dockable-panel-header{align-items:center;background:#f7f9fb;border-bottom:1px solid #e8eaed;display:flex;flex-shrink:0;gap:8px;justify-content:space-between;min-height:34px;padding:5px 8px;-webkit-user-select:none;user-select:none}.dockable-panel--floating .dockable-panel-header{cursor:grab}.dockable-panel-header:active{cursor:grabbing}.dockable-panel-title{color:#3c4043;flex:1 1;font-size:12px;font-weight:600;letter-spacing:.5px;line-height:1.3;min-width:0;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.dockable-panel-controls{align-items:center;display:flex;flex-shrink:0;gap:4px}.dockable-panel-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:4px;color:#3c4043;cursor:pointer;display:flex;font-size:13px;height:22px;justify-content:center;line-height:1;padding:0;width:22px}.dockable-panel-btn:hover{background:#eef2f6;border-color:#d6dbe1}.dockable-panel-btn:focus-visible{outline:2px solid #1a73e8;outline-offset:1px}.dockable-panel-body{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow-y:auto}.toast{animation:toast-in .2s ease;border-radius:8px;bottom:24px;box-shadow:0 4px 16px #0006;font-size:14px;padding:12px 20px;position:fixed;right:24px;z-index:9999}.toast-success{background:#10b981;color:#fff}.toast-error{background:#ef4444;color:#fff}.toast-info{background:#3b82f6;color:#fff}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.stats-overlay{align-items:center;background:#000000b3;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.stats-modal{background:#1e2533;border-radius:12px;box-shadow:0 20px 60px #00000080;color:#fff;display:flex;flex-direction:column;max-height:85vh;max-width:700px;width:90vw}.stats-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:16px 20px}.stats-header h2{font-size:16px;margin:0;outline:none}.stats-header-sub{font-size:12px;margin-top:4px;opacity:.7}.stats-close{background:none;border:none;color:#fff;cursor:pointer;font-size:24px;opacity:.7}.stats-close:hover{opacity:1}.stats-body{display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-y:auto;padding:20px}.stats-test-name{background:#ffffff0f;border-radius:8px;font-size:14px;font-weight:600;opacity:.9;padding:8px 12px}.stats-result-row{align-items:center;display:flex;font-size:13px;gap:12px;padding:6px 0}.stats-result-label{min-width:100px;opacity:.7}.stats-result-value{font-family:SF Mono,Fira Code,monospace;font-weight:600}.stats-badge{border-radius:4px;display:inline-block;font-size:11px;font-weight:700;padding:2px 8px}.stats-badge-strong{background:#10b98140;color:#34d399}.stats-badge-medium{background:#3b82f640;color:#93c5fd}.stats-badge-weak{background:#f59e0b40;color:#fbbf24}.stats-badge-none{background:#ef444426;color:#fca5a5}.stats-group-table{border-collapse:collapse;font-size:12px;width:100%}.stats-group-table th{border-bottom:1px solid #ffffff26;font-weight:600;opacity:.7;padding:6px 10px;text-align:left}.stats-group-table td{border-bottom:1px solid #ffffff0f;padding:6px 10px}.stats-pairwise-section{margin-top:8px}.stats-pairwise-section h3{font-size:13px;font-weight:600;margin:0 0 8px;opacity:.8}.stats-small-n{align-items:flex-start;background:#f59e0b1f;border:1px solid #f59e0b4d;border-radius:8px;color:#fbbf24;display:flex;font-size:12px;gap:8px;padding:10px 12px}.stats-small-n-dismiss{background:none;border:none;color:#fbbf24;cursor:pointer;font-size:16px;margin-left:auto;opacity:.7;padding:0}.stats-small-n-dismiss:hover{opacity:1}.stats-no-test{font-size:13px;opacity:.6;padding:40px 20px;text-align:center}.stats-footer{align-items:center;border-top:1px solid #ffffff1a;display:flex;justify-content:flex-end;padding:12px 20px}.stats-close-btn{background:#0000;border:1px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;padding:8px 20px}.stats-close-btn:hover{background:#ffffff1a}.stats-tab{background:#fff;color:#3c4043;display:flex;flex:1 1;flex-direction:column;overflow:auto;padding:16px}.stats-tab-header{margin-bottom:16px}.stats-tab-header h2{color:#3c4043;font-size:16px;font-weight:600;margin:0 0 4px}.stats-tab-config{align-items:center;background:#f8f9fa;border:1px solid #dadce0;border-radius:8px;display:flex;flex-wrap:wrap;gap:12px 20px;margin-bottom:16px;padding:12px}.stats-tab-config label{color:#3c4043;font-size:13px;font-weight:600;margin-right:8px}.stats-tab-config select{background:#fff;border:1px solid #dadce0;border-radius:6px;color:#3c4043;font-size:13px;min-width:220px;padding:6px 8px}.stats-tab-config-note{color:#5f6368;font-size:12px}.stats-tab .stats-header-sub{color:#5f6368;opacity:1}.stats-tab-body{background:#fff;border:1px solid #dadce0;border-radius:8px;color:#3c4043;padding:16px}.stats-tab .stats-test-name{background:#f1f3f4;color:#202124;opacity:1}.stats-tab .stats-result-label{color:#5f6368;opacity:1}.stats-tab .stats-group-table th{border-bottom-color:#dadce0;color:#5f6368;opacity:1}.stats-tab .stats-group-table td{border-bottom-color:#e8eaed}.stats-tab .stats-no-test{color:#5f6368;opacity:1}.mapper-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.mapper-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000002e;color:#202124;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:85vh;max-height:780px;max-width:1200px;width:94vw}.mapper-modal--panel{border-radius:0;box-shadow:none;height:100%;max-height:none;max-width:none;min-height:0;width:100%}.mapper-header{align-items:center;background:#fff;border-bottom:1px solid #e8eaed;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.mapper-header h2{color:#202124;font-size:18px;font-weight:600;margin:0;outline:none}.mapper-close{background:none;border:none;color:#5f6368;cursor:pointer;font-size:22px;padding:0 4px}.mapper-close:hover{color:#202124}.mapper-map-name{background:#0000;border:none;border-bottom:1px solid #dadce0;color:#202124;flex:1 1;font-size:16px;font-weight:600;margin-right:16px;outline:none;padding:4px 0}.mapper-map-name:focus{border-bottom-color:#5b9fff}.mapper-map-name::placeholder{color:#bdc1c6}.mapper-loading{align-items:center;color:#5f6368;display:flex;flex:1 1;font-size:14px;justify-content:center}.mapper-body{display:flex;flex:1 1;overflow:hidden}.mapper-sidebar{background:#fafbfc;border-right:1px solid #e8eaed;flex-shrink:0;min-width:220px;overflow-y:auto;padding:12px 0;width:220px}.mapper-sidebar-title{color:#5f6368;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 16px 8px;text-transform:uppercase}.mapper-sidebar-item{align-items:center;background:#0000;border:none;color:#202124;cursor:pointer;display:flex;font-size:13px;justify-content:space-between;padding:8px 16px;text-align:left;transition:background .15s;width:100%}.mapper-sidebar-item:hover:not(:disabled){background:#f5f6f7}.mapper-sidebar-selected{background:#ebf4ff;border-left:3px solid #5b9fff;color:#2b6bbf;font-weight:500}.mapper-sidebar-disabled{color:#bdc1c6;cursor:default}.mapper-sidebar-label{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mapper-sidebar-badge{color:#5f6368;flex-shrink:0;font-size:12px;margin-left:6px}.mapper-sidebar-empty{color:#bdc1c6;font-size:12px;padding:16px;text-align:center}.mapper-editor{grid-gap:0;display:grid;flex:1 1;gap:0;grid-template-columns:1fr 1.6fr .9fr;overflow:hidden}.mapper-editor-title{color:#5f6368;font-size:13px;font-weight:600;grid-column:1/-1;padding:12px 16px 0}.mapper-empty-state{align-items:center;color:#bdc1c6;display:flex;flex:1 1;flex-direction:column;font-size:14px;justify-content:center;padding:40px;text-align:center}.mapper-col{background:#fff;border-right:1px solid #e8eaed;overflow-y:auto;padding:16px}.mapper-col:last-child{border-right:none}.mapper-col h3{color:#5f6368;font-size:13px;font-weight:600;margin:0 0 12px}.mapper-col-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.mapper-col-header h3{margin:0}.mapper-add-btn{background:#fff;border:1px solid #dadce0;border-radius:6px;color:#202124;cursor:pointer;font-size:13px;font-weight:500;padding:6px 14px;white-space:nowrap}.mapper-add-btn:hover{background:#f5f6f7}.mapper-add-rule-btn{background:#fafbfc;border:1px dashed #dadce0;border-radius:6px;color:#5f6368;cursor:pointer;font-size:12px;margin-top:6px;padding:4px 10px}.mapper-add-rule-btn:hover{background:#ebf4ff;border-color:#5b9fff;color:#2b6bbf}.mapper-value-list{display:flex;flex-direction:column;gap:4px}.mapper-value-item{background:#fafbfc;border:1px solid #e8eaed;border-radius:6px;cursor:grab;display:flex;flex-direction:column;font-size:12px;gap:2px;padding:6px 8px;position:relative;transition:background .15s,border-color .15s}.mapper-value-item:hover{background:#f5f6f7;border-color:#dadce0}.mapper-value-item:active{cursor:grabbing}.mapper-value-item:focus{outline:2px solid #5b9fff;outline-offset:-2px}.mapper-value-item.mapper-dragging{opacity:.4}.mapper-value-row{align-items:center;display:flex;gap:6px}.mapper-value-text{color:#202124;flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mapper-value-count{color:#5f6368;flex-shrink:0;font-size:11px}.mapper-value-reason{color:#888;font-size:10px;font-style:italic}.mapper-assign-trigger{background:none;border:none;color:#5f6368;cursor:pointer;flex-shrink:0;font-size:14px;padding:0 4px}.mapper-assign-trigger:hover{color:#2b6bbf}.mapper-popover{background:#fff;border:1px solid #dadce0;border-radius:8px;box-shadow:0 8px 24px #0000001f;display:flex;flex-direction:column;gap:4px;left:8px;min-width:160px;padding:8px;position:absolute;top:100%;z-index:10}.mapper-popover-title{color:#5f6368;font-size:11px;padding:2px 4px}.mapper-popover-btn{background:#ebf4ff;border:1px solid #dadce0;border-radius:4px;color:#2b6bbf;cursor:pointer;font-size:12px;padding:6px 10px;text-align:left}.mapper-popover-btn:hover{background:#d1e7ff}.mapper-popover-btn:focus{outline:2px solid #5b9fff}.mapper-popover-empty{color:#bdc1c6;font-size:11px;padding:4px}.mapper-group-card{background:#fff;border:1px dashed #dadce0;border-radius:8px;margin-bottom:12px;min-height:60px;padding:10px 12px;transition:border-color .15s,background .15s}.mapper-group-card:hover{border-color:#bdc1c6}.mapper-group-card.mapper-drop-hover{background:#ebf4ff;border-color:#5b9fff}.mapper-group-header{align-items:center;display:flex;gap:8px;margin-bottom:8px}.mapper-group-name{background:#0000;border:none;border-bottom:1px solid #dadce0;color:#202124;flex:1 1;font-size:13px;font-weight:600;padding:2px 0}.mapper-group-name:focus{border-bottom-color:#5b9fff;outline:none}.mapper-group-delete{background:none;border:none;color:#bdc1c6;cursor:pointer;font-size:16px;padding:0}.mapper-group-delete:hover{color:#f44336}.mapper-rule-row{align-items:center;border-bottom:1px solid #f5f6f7;display:flex;flex-wrap:wrap;font-size:12px;gap:4px;padding:4px 0}.mapper-rule-predicate{background:#fafbfc;min-width:100px}.mapper-rule-predicate,.mapper-rule-value{border:1px solid #dadce0;border-radius:4px;color:#202124;font-size:11px;padding:4px 8px}.mapper-rule-value{background:#fff;flex:1 1;min-width:80px}.mapper-rule-value:focus{border-color:#5b9fff;outline:none}.mapper-rule-lang{background:#fafbfc;border:1px solid #dadce0;border-radius:4px;color:#202124;font-size:10px;padding:4px 6px;width:60px}.mapper-rule-match-count{background:#ebf4ff;border-radius:99px;color:#2b6bbf;font-size:10px;font-weight:600;min-width:20px;padding:2px 6px;text-align:center}.mapper-rule-delete{background:none;border:none;color:#bdc1c6;cursor:pointer;font-size:14px;padding:0 2px}.mapper-rule-delete:hover{color:#f44336}.mapper-rule-helper{color:#888;font-size:10px;font-style:italic;margin-top:-2px;padding-left:4px;width:100%}.mapper-implicit-section{border-top:1px solid #f5f6f7;margin-top:8px;padding-top:6px}.mapper-implicit-label{color:#888;font-size:10px;font-style:italic;margin-bottom:4px}.mapper-group-values{display:flex;flex-wrap:wrap;gap:4px;min-height:24px}.mapper-tag{align-items:center;background:#d1e7ff;border-radius:99px;color:#2b6bbf;display:flex;font-size:11px;gap:4px;padding:3px 8px}.mapper-tag-implicit{background:#ebf4ff;cursor:grab;font-style:italic}.mapper-tag-implicit.mapper-dragging{opacity:.4}.mapper-tag button{background:none;border:none;color:#2b6bbf;cursor:pointer;font-size:14px;padding:0}.mapper-tag button:hover{color:#1e3a5f}.mapper-drop-hint{color:#bdc1c6;font-size:11px;font-style:italic}.mapper-residual.mapper-drop-hover{background:#ebf4ff}.mapper-other-desc{color:#5f6368;font-size:11px;margin-bottom:8px}.mapper-other-count{color:#202124;font-size:12px;font-weight:600;margin-bottom:8px}.mapper-other-list{pointer-events:none}.mapper-other-item{color:#5f6368;font-size:11px;overflow:hidden;padding:3px 0;text-overflow:ellipsis;white-space:nowrap}.mapper-empty{color:#bdc1c6;font-size:12px;padding:20px;text-align:center}.mapper-delete-confirm{background:#fce8e6;border:1px solid #f44336;border-radius:6px;color:#991b1b;font-size:12px;margin:8px 0;padding:10px 12px}.mapper-delete-confirm p{margin:0 0 8px}.mapper-delete-actions{display:flex;gap:8px}.mapper-delete-actions button{border:1px solid #dadce0;border-radius:4px;cursor:pointer;font-size:12px;padding:4px 12px}.mapper-delete-actions button:first-child{background:#f44336;border-color:#f44336;color:#fff}.mapper-delete-actions button:last-child{background:#fff;color:#202124}.mapper-footer{align-items:center;background:#fafbfc;border-top:1px solid #e8eaed;display:flex;flex-shrink:0;justify-content:space-between;padding:12px 20px}.mapper-counts{color:#5f6368;font-size:13px}.mapper-footer-actions{display:flex;gap:8px}.mapper-cancel,.mapper-save{border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;padding:6px 16px}.mapper-cancel{background:#fff;border:1px solid #dadce0;color:#202124}.mapper-cancel:hover{background:#f5f6f7}.mapper-save{background:#5b9fff;border:none;color:#fff}.mapper-save:hover{background:#3d85e6}.mapper-save:disabled{cursor:not-allowed;opacity:.5}.mapper-modal--panel .mapper-header{padding:12px 16px}.mapper-modal--panel .mapper-map-name{font-size:14px;margin-right:10px}.mapper-modal--panel .mapper-body{flex-direction:column;overflow-y:auto}.mapper-modal--panel .mapper-sidebar{border-bottom:1px solid #e8eaed;border-right:none;display:block;max-height:140px;min-width:0;padding:8px 0;width:100%}.mapper-modal--panel .mapper-sidebar-item{padding:7px 12px}.mapper-modal--panel .mapper-empty-state{min-height:180px;padding:24px}.mapper-modal--panel .mapper-editor{display:flex;flex:none;flex-direction:column;overflow:visible}.mapper-modal--panel .mapper-editor-title{padding:10px 16px 0}.mapper-modal--panel .mapper-col{border-bottom:1px solid #e8eaed;border-right:none;overflow:visible;padding:12px 16px}.mapper-modal--panel .mapper-col:last-child{border-bottom:none}.mapper-modal--panel .mapper-col-header{align-items:flex-start;flex-direction:column;gap:8px}.mapper-modal--panel .mapper-rule-row{align-items:stretch;flex-direction:column}.mapper-modal--panel .mapper-rule-lang,.mapper-modal--panel .mapper-rule-predicate{width:100%}.mapper-modal--panel .mapper-footer{align-items:stretch;flex-direction:column;gap:8px;padding:12px 16px}.mapper-modal--panel .mapper-footer-actions{justify-content:flex-end}.mapper-banner{align-items:center;background:#8b5cf626;border-left:3px solid #8b5cf6;border-radius:4px;display:flex;font-size:13px;gap:8px;margin:8px 16px;padding:8px 14px}.mapper-banner-btn{background:none;border:none;color:#8b5cf6;cursor:pointer;font-size:13px;padding:0;text-decoration:underline}.mapper-banner-btn:hover{color:#7c3aed}.export-menu{background:#1e2533;border:1px solid #ffffff26;border-radius:8px;box-shadow:0 8px 24px #0006;margin-top:4px;min-width:180px;padding:4px;position:absolute;right:0;top:100%;z-index:100}.export-menu button{background:#0000;border:none;border-radius:4px;color:#fff;cursor:pointer;display:block;font-size:13px;padding:8px 12px;text-align:left;width:100%}.export-menu button:hover{background:#ffffff14}.settings-popover{background:#1e2533;border:1px solid #ffffff26;border-radius:10px;box-shadow:0 8px 32px #00000080;margin-top:4px;min-width:280px;padding:12px;position:absolute;right:0;top:100%;z-index:200}.settings-popover-header{align-items:center;color:#fff;display:flex;font-weight:600;justify-content:space-between;margin-bottom:10px}.settings-popover-header button{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;opacity:.7;padding:0;width:24px}.settings-popover-header button:hover{opacity:1}.settings-popover-actions{margin-bottom:8px}.settings-save-btn{background:#0000;border:1px dashed #fff3;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;padding:8px;width:100%}.settings-save-btn:hover{background:#ffffff0d;border-color:#ffffff4d}.settings-empty{color:#fff;font-size:12px;opacity:.5;padding:12px;text-align:center}.settings-config-row{align-items:center;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:4px;padding:8px}.settings-config-row:hover{background:#ffffff0d}.settings-config-name{color:#fff;font-size:13px;font-weight:500}.settings-config-date{color:#fff;font-size:11px;opacity:.5}.settings-config-actions{display:flex;gap:6px}.settings-config-actions button{background:#0000;border:1px solid #fff3;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:4px 10px}.settings-config-actions button:hover{background:#ffffff14;border-color:#ffffff4d}
/*# sourceMappingURL=main.87b82797.css.map*/