:root{--primary:var(--primary-color,#1374d6);--primary-dark:color-mix(in srgb,var(--primary-color,#0f5cb8)80%,black);--primary-light:color-mix(in srgb,var(--primary-color,#e8f4fd)15%,white);--success:#10b981;--success-light:#d1fae5;--danger:#ef4444;--danger-light:#fee2e2;--warning:#f59e0b;--warning-light:#fef3c7;--purple:var(--primary-color,#1374d6);--purple-light:var(--primary-light,#e8f4fd);--purple-border:color-mix(in srgb,var(--primary-color,#7eb8f0)50%,white);--source-btn-bg:var(--primary-light,#e8f4fd);--source-btn-border:var(--purple-border,#7eb8f0);--source-btn-color:var(--primary-dark,#0f5cb8);--teal:#0d9488;--teal-light:#ccfbf1;--teal-border:#5eead4;--orange:#ea580c;--orange-light:#ffedd5;--orange-border:#fdba74;--cyan:#0891b2;--cyan-light:#cffafe;--cyan-border:#67e8f9;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--font-mono:"SF Mono",Monaco,Consolas,monospace}.json-mapper-container *{box-sizing:border-box}.json-mapper-container{color:var(--gray-800);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}.json-mapper-container .app{flex-direction:column;height:100vh;display:flex;overflow:hidden}.json-mapper-container .header{color:var(--gray-800);border-bottom:1px solid var(--gray-200);background:#fff;flex-shrink:0;align-items:center;gap:16px;padding:12px 20px;display:flex;box-shadow:0 2px 8px #00000014}.json-mapper-container .logo{color:var(--primary);align-items:center;gap:8px;font-size:18px;font-weight:700;display:flex}.json-mapper-container .logo i{color:var(--primary)}.json-mapper-container .version-badge{background:var(--primary-light);color:var(--primary);border-radius:4px;padding:2px 8px;font-size:10px;font-weight:600}.json-mapper-container .header-input{border:1px solid var(--gray-300);color:var(--gray-800);background:#fff;border-radius:6px;width:280px;padding:8px 14px;font-size:14px;font-weight:600}.json-mapper-container .header-input::placeholder{color:var(--gray-400)}.json-mapper-container .header-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light);outline:none}.json-mapper-container .header-actions{gap:8px;margin-left:auto;display:flex}.json-mapper-container .main{flex:1;display:flex;overflow:hidden}.json-mapper-container .left-panel{border-right:1px solid var(--gray-200);background:#fff;flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.json-mapper-container .panel-header{color:var(--gray-800);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--gray-200);background:#fff;align-items:center;gap:10px;padding:14px 16px;font-size:13px;font-weight:700;display:flex}.json-mapper-container .panel-header i{color:var(--primary);font-size:16px}.json-mapper-container .panel-header-actions{gap:6px;margin-left:auto;display:flex}.json-mapper-container .panel-header-btn{background:var(--gray-100);border:1px solid var(--gray-300);color:var(--gray-700);cursor:pointer;border-radius:4px;padding:6px 10px;font-size:11px;font-weight:600}.json-mapper-container .panel-header-btn:hover{background:var(--primary-light);color:var(--primary);border-color:var(--primary)}.json-mapper-container .accordion{border-bottom:1px solid var(--gray-200)}.json-mapper-container .accordion-header{background:var(--gray-50);cursor:pointer;color:var(--gray-700);border-bottom:1px solid var(--gray-200);align-items:center;gap:10px;padding:12px 16px;font-size:13px;font-weight:600;transition:background .15s;display:flex}.json-mapper-container .accordion-header:hover{background:var(--gray-100)}.json-mapper-container .accordion-header i.toggle{color:var(--gray-400);margin-left:auto;font-size:10px;transition:transform .2s}.json-mapper-container .accordion-header.open i.toggle{transform:rotate(180deg)}.json-mapper-container .accordion-content{background:var(--gray-50);border-bottom:1px solid var(--gray-200);padding:12px;display:none}.json-mapper-container .accordion-content.open{display:block}.json-mapper-container .json-input{width:100%;height:120px;font-family:var(--font-mono);border:1px solid var(--gray-300);resize:vertical;background:#fff;border-radius:6px;padding:10px;font-size:12px}.json-mapper-container .json-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light);outline:none}.json-mapper-container .json-input.error{border-color:var(--danger);background:var(--danger-light)}.json-mapper-container .json-error{color:var(--danger);margin-top:6px;font-size:11px}.json-mapper-container .source-tree{flex:1;padding:12px;overflow:auto}.json-mapper-container .source-group{margin-bottom:8px}.json-mapper-container .source-group-header{background:linear-gradient(135deg,var(--primary-light)0%,#d4e8fc 100%);border:1px solid var(--source-btn-border);cursor:pointer;color:var(--primary-dark);border-radius:8px;align-items:center;gap:8px;margin-bottom:4px;padding:10px 12px;font-size:13px;font-weight:700;display:flex}.json-mapper-container .source-group-header:hover{background:linear-gradient(135deg,#d4e8fc 0%,#b8d9fa 100%)}.json-mapper-container .source-group-header i.toggle{color:var(--primary);margin-left:auto;font-size:10px}.json-mapper-container .source-group-header .source-icon{background:var(--primary);color:#fff;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;display:flex}.json-mapper-container .source-group-content{border-left:2px solid var(--gray-200);margin-left:12px;padding-left:12px}.json-mapper-container .tree-node{cursor:grab;border-radius:5px;align-items:center;gap:6px;margin:2px 0;padding:6px 10px;font-size:13px;display:flex}.json-mapper-container .tree-node:hover{background:var(--primary-light)}.json-mapper-container .tree-node.dragging{opacity:.5}.json-mapper-container .tree-node-children{border-left:2px solid var(--gray-200);margin-left:14px;padding-left:10px}.json-mapper-container .tree-expand{width:16px;height:16px;color:var(--gray-400);justify-content:center;align-items:center;font-size:9px;display:flex}.json-mapper-container .type-tag{text-transform:uppercase;border-radius:3px;padding:2px 6px;font-size:9px;font-weight:700}.json-mapper-container .type-tag.str{color:#166534;background:#dcfce7}.json-mapper-container .type-tag.num{color:#1e40af;background:#dbeafe}.json-mapper-container .type-tag.boo{color:#92400e;background:#fef3c7}.json-mapper-container .type-tag.obj{color:#be185d;background:#fce7f3}.json-mapper-container .type-tag.arr{color:#7c3aed;background:#e9d5ff}.json-mapper-container .type-tag.nul{color:#6b7280;background:#f3f4f6}.json-mapper-container .tree-key{font-family:var(--font-mono);font-size:13px;font-weight:600}.json-mapper-container .tree-val{color:var(--gray-400);text-overflow:ellipsis;white-space:nowrap;max-width:80px;font-size:11px;font-family:var(--font-mono);margin-left:auto;overflow:hidden}.json-mapper-container .tree-copy{opacity:0;background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:3px;padding:3px 8px;font-size:10px}.tree-node:hover .tree-copy{opacity:1}.json-mapper-container .center-panel{background:var(--gray-100);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.json-mapper-container .canvas-header{border-bottom:1px solid var(--gray-200);background:#fff;flex-shrink:0;align-items:center;gap:12px;padding:14px 20px;display:flex}.json-mapper-container .canvas-title{color:var(--gray-800);align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.json-mapper-container .canvas-title i{color:var(--primary)}.json-mapper-container .canvas-actions{gap:8px;margin-left:auto;display:flex}.json-mapper-container .canvas-hint{color:var(--gray-500);align-items:center;gap:6px;font-size:12px;display:flex}.json-mapper-container .lookups-section{background:var(--cyan-light);border-bottom:1px solid var(--cyan-border)}.json-mapper-container .lookups-header{cursor:pointer;align-items:center;gap:8px;padding:12px 16px;display:flex}.json-mapper-container .lookups-header:hover{background:#0891b21a}.json-mapper-container .lookups-title{color:var(--cyan);align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.json-mapper-container .lookups-toggle{color:var(--cyan);margin-left:auto;font-size:10px;transition:transform .2s}.json-mapper-container .lookups-toggle.open{transform:rotate(180deg)}.json-mapper-container .lookups-actions{gap:6px;margin-left:auto;display:flex}.json-mapper-container .lookups-body{padding:0 16px 12px;display:none}.json-mapper-container .lookups-body.open{display:block}.json-mapper-container .lookup-card{border:1px solid var(--cyan-border);background:#fff;border-radius:8px;margin-bottom:8px;padding:12px}.json-mapper-container .lookup-card-header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.json-mapper-container .lookup-name{font-family:var(--font-mono);color:var(--cyan);font-size:14px;font-weight:700}.json-mapper-container .lookup-access{color:var(--gray-500);background:var(--gray-100);font-size:11px;font-family:var(--font-mono);border-radius:4px;padding:3px 8px}.json-mapper-container .lookup-meta{color:var(--gray-600);gap:12px;font-size:12px;display:flex}.json-mapper-container .lookup-meta-item{align-items:center;gap:4px;display:flex}.json-mapper-container .lookup-meta-item i{color:var(--gray-400);font-size:11px}.json-mapper-container .lookup-buttons{gap:4px;margin-left:auto;display:flex}.json-mapper-container .lookup-remove{color:var(--gray-400);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px}.json-mapper-container .lookup-remove:hover{background:var(--danger-light);color:var(--danger)}.json-mapper-container .lookup-edit{color:var(--gray-400);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px}.json-mapper-container .lookup-edit:hover{background:var(--cyan-light);color:var(--cyan)}.json-mapper-container .mapping-area{scroll-behavior:smooth;flex:1;padding:16px;overflow:auto}.json-mapper-container .mapping-row{border:1px solid var(--gray-200);background:#fff;border-radius:8px;align-items:center;gap:10px;margin-bottom:6px;padding:12px 14px;transition:all .15s;display:flex}.json-mapper-container .mapping-row:hover{border-color:var(--primary);box-shadow:0 2px 8px #6366f11a}.json-mapper-container .mapping-row.highlight{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light);background:var(--primary-light);animation:1s highlightPulse}@keyframes highlightPulse{0%,to{box-shadow:0 0 0 3px var(--primary-light)}50%{box-shadow:0 0 0 6px #6366f133}}.json-mapper-container .mapping-row.lookup-row{background:var(--cyan-light);border-color:var(--cyan-border)}.json-mapper-container .mapping-target{align-items:center;gap:6px;min-width:160px;display:flex}.json-mapper-container .lookup-preview-code{font-family:var(--font-mono);color:var(--cyan);font-size:13px;font-weight:600}.json-mapper-container .mapping-arrow{color:var(--gray-400);font-size:11px}.json-mapper-container .mapping-source{flex:1;gap:6px;display:flex}.json-mapper-container .mapping-input{font-family:var(--font-mono);border:1px solid var(--gray-300);border-radius:6px;flex:1;padding:8px 12px;font-size:13px}.json-mapper-container .mapping-input:focus{border-color:var(--primary);outline:none}.json-mapper-container .mapping-input.has-value{background:var(--success-light);border-color:var(--success)}.json-mapper-container .mapping-input.lookup-input{background:var(--cyan-light);border-color:var(--cyan-border)}.json-mapper-container .mapping-btn{border:1px solid var(--gray-300);cursor:pointer;color:var(--gray-600);background:#fff;border-radius:6px;padding:8px 10px;font-size:12px}.json-mapper-container .mapping-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.json-mapper-container .mapping-toggle{cursor:pointer;width:24px;height:24px;color:var(--gray-400);background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-right:4px;font-size:11px;display:flex}.json-mapper-container .mapping-toggle:hover{background:var(--gray-100);color:var(--primary)}.json-mapper-container .mapping-toggle-spacer{flex-shrink:0;width:28px}.json-mapper-container .mapping-children-badge{color:var(--gray-500);background:var(--gray-100);border-radius:10px;align-items:center;margin-left:6px;padding:2px 8px;font-size:10px;display:flex}.json-mapper-container .template-editor{background:var(--primary-light);border:2px solid var(--primary);border-radius:10px;margin:6px 0 6px 28px;overflow:hidden;box-shadow:0 2px 8px #1374d626}.json-mapper-container .template-header{background:var(--primary);color:#fff;align-items:center;gap:10px;padding:12px 16px;display:flex;box-shadow:0 2px 4px #0000001a}.json-mapper-container .template-header i{font-size:14px}.json-mapper-container .template-header-title{font-size:13px;font-weight:700}.json-mapper-container .template-name-input{color:#fff;font-family:var(--font-mono);background:#fff3;border:1px solid #ffffff4d;border-radius:5px;width:140px;margin-left:8px;padding:5px 10px;font-size:13px;font-weight:600}.json-mapper-container .template-name-input::placeholder{color:#ffffffb3}.json-mapper-container .template-hint{opacity:.9;margin-left:auto;font-size:11px}.json-mapper-container .template-body{padding:14px}.json-mapper-container .template-context{background:#1374d614;border-radius:6px;flex-wrap:wrap;gap:6px;margin-bottom:12px;padding:10px;display:flex}.json-mapper-container .template-context-label{color:var(--primary);text-transform:uppercase;width:100%;margin-bottom:4px;font-size:10px;font-weight:700}.json-mapper-container .context-chip{border:1px solid var(--primary);font-family:var(--font-mono);cursor:pointer;color:var(--primary);background:#fff;border-radius:5px;padding:5px 10px;font-size:11px;transition:all .15s}.json-mapper-container .context-chip:hover{background:var(--primary);color:#fff}.json-mapper-container .context-chip.special{background:var(--warning-light);color:#92400e;border-color:#fcd34d}.json-mapper-container .context-chip.special:hover{background:var(--warning);color:#fff}.json-mapper-container .template-fields{flex-direction:column;gap:8px;display:flex}.json-mapper-container .template-field{border:1px solid var(--gray-200);background:#fff;border-radius:6px;align-items:center;gap:8px;padding:10px 12px;display:flex}.json-mapper-container .template-field-name{font-family:var(--font-mono);border:1px solid var(--gray-300);background:var(--gray-50);border-radius:5px;min-width:100px;padding:6px 10px;font-size:13px;font-weight:600}.json-mapper-container .template-field-sep{color:var(--gray-400);font-weight:700}.json-mapper-container .template-field-expr{font-family:var(--font-mono);border:1px solid var(--gray-300);border-radius:5px;flex:1;padding:6px 10px;font-size:13px}.json-mapper-container .template-field-expr:focus{border-color:var(--primary);outline:none}.json-mapper-container .template-field-expr.has-value{background:var(--success-light);border-color:var(--success)}.json-mapper-container .template-btn{border:1px solid var(--gray-300);cursor:pointer;color:var(--gray-600);background:#fff;border-radius:5px;padding:6px 8px;font-size:11px}.json-mapper-container .template-btn:hover{border-color:var(--primary);color:var(--primary)}.template-btn.danger:hover{border-color:var(--danger);color:var(--danger)}.json-mapper-container .template-add-field{border:2px dashed var(--purple-border);background:#7c3aed0d;border-radius:6px;gap:6px;margin-top:10px;padding:10px;display:flex}.json-mapper-container .template-add-field input{border:1px solid var(--gray-300);background:#fff;border-radius:5px;flex:1;padding:6px 10px;font-size:13px}.json-mapper-container .right-panel{border-left:1px solid var(--gray-200);background:#fff;flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.json-mapper-container .stats-panel{background:var(--gray-50);border-bottom:1px solid var(--gray-200);padding:12px}.json-mapper-container .stats-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.json-mapper-container .stat-card{border:1px solid var(--gray-200);text-align:center;background:#fff;border-radius:6px;padding:10px 8px}.json-mapper-container .stat-val{font-size:20px;font-weight:700;line-height:1}.json-mapper-container .stat-val.success{color:var(--success)}.json-mapper-container .stat-val.warning{color:var(--warning)}.json-mapper-container .stat-val.purple{color:var(--purple)}.json-mapper-container .stat-val.cyan{color:var(--cyan)}.json-mapper-container .stat-label{color:var(--gray-500);text-transform:uppercase;margin-top:4px;font-size:9px;font-weight:600}.json-mapper-container .target-tree{flex:1;padding:12px;overflow:auto}.json-mapper-container .target-node{cursor:pointer;border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;margin:2px 0;padding:8px 12px;font-size:13px;transition:all .15s;display:flex}.json-mapper-container .target-node:hover{background:var(--primary-light);border-color:var(--primary)}.json-mapper-container .target-node.mapped{background:var(--success-light);border-color:var(--success)}.target-node.mapped:hover{background:#a7f3d0}.json-mapper-container .target-node.selected{background:var(--primary);color:#fff;border-color:var(--primary-dark)}.target-node.selected .target-key{color:#fff}.target-node.selected .type-tag{color:#fff;background:#ffffff4d}.json-mapper-container .target-node-children{border-left:2px solid var(--gray-200);margin-left:16px;padding-left:12px}.json-mapper-container .target-key{font-family:var(--font-mono);font-size:13px;font-weight:600}.json-mapper-container .target-mapped-icon{color:var(--success);margin-left:auto;font-size:12px}.target-node.selected .target-mapped-icon{color:#fff}.json-mapper-container .preview-toggle{background:var(--gray-50);border-top:1px solid var(--gray-200);cursor:pointer;color:var(--gray-600);flex-shrink:0;align-items:center;gap:8px;padding:10px 16px;font-size:12px;font-weight:600;display:flex}.json-mapper-container .preview-toggle:hover{background:var(--gray-100)}.preview-toggle i.toggle{margin-left:auto;font-size:10px;transition:transform .2s}.preview-toggle.open i.toggle{transform:rotate(180deg)}.json-mapper-container .preview-content{background:var(--gray-900);flex-shrink:0;display:none;overflow:auto}.json-mapper-container .preview-content.open{display:block}.json-mapper-container .preview-code{color:#e2e8f0;font-family:var(--font-mono);white-space:pre-wrap;margin:0;padding:12px;font-size:11px;line-height:1.6}.json-mapper-container .json-key{color:#7dd3fc}.json-mapper-container .json-string{color:#fca5a5}.json-mapper-container .json-number{color:#86efac}.json-mapper-container .json-boolean{color:#c4b5fd}.json-mapper-container .json-null{color:#9ca3af}.json-mapper-container .btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:10px 16px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.json-mapper-container .btn-primary{background:var(--primary);color:#fff}.json-mapper-container .btn-primary:hover{background:var(--primary-dark)}.json-mapper-container .btn-secondary{color:var(--gray-600);border:1px solid var(--gray-300);background:#fff}.json-mapper-container .btn-secondary:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.json-mapper-container .btn-success{background:var(--success);color:#fff}.json-mapper-container .btn-success:hover{background:#059669}.json-mapper-container .btn-cyan{background:var(--cyan);color:#fff}.json-mapper-container .btn-cyan:hover{background:#0e7490}.json-mapper-container .btn-sm{padding:8px 12px;font-size:12px}.json-mapper-container .btn-xs{padding:5px 8px;font-size:11px}.json-mapper-container .btn:disabled{opacity:.5;cursor:not-allowed}.json-mapper-container .split-btn{border-radius:6px;display:inline-flex;overflow:hidden}.split-btn .btn-main{border-right:1px solid #fff3;border-radius:6px 0 0 6px}.split-btn .btn-dropdown{border-left:none;border-radius:0 6px 6px 0;align-items:center;padding:8px 10px;display:flex}.json-mapper-container .split-btn-menu{border:1px solid var(--gray-200);z-index:100;background:#fff;border-radius:8px;min-width:180px;margin-top:4px;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 10px 25px #00000026}.json-mapper-container .split-btn-item{cursor:pointer;color:var(--gray-700);text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:10px 14px;font-size:13px;display:flex}.json-mapper-container .split-btn-item:hover{background:var(--primary-light);color:var(--primary)}.json-mapper-container .split-btn-item i{width:18px;font-size:14px}.json-mapper-container .source-panel-btn{background:var(--source-btn-bg);border:1px solid var(--source-btn-border);color:var(--source-btn-color);cursor:pointer;border-radius:4px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;display:flex}.json-mapper-container .source-panel-btn:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.json-mapper-container .fullpage-overlay{z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.json-mapper-container .fullpage-view{background:var(--gray-50);border-radius:12px;flex-direction:column;width:100%;max-width:calc(100vw - 40px);height:100%;max-height:calc(100vh - 40px);animation:.2s modalIn;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #0006}@keyframes modalIn{0%{opacity:0;transform:scale(.95)translateY(10px)}}.json-mapper-container .fullpage-header{border-bottom:1px solid var(--gray-200);background:#fff;flex-shrink:0;align-items:center;gap:14px;padding:16px 24px;display:flex}.json-mapper-container .back-btn{background:var(--gray-100);border:1px solid var(--gray-300);cursor:pointer;color:var(--gray-700);border-radius:6px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;display:flex}.json-mapper-container .back-btn:hover{background:var(--gray-200)}.json-mapper-container .fullpage-title{color:var(--gray-800);align-items:center;gap:10px;font-size:18px;font-weight:700;display:flex}.json-mapper-container .fullpage-title i{color:var(--primary);font-size:20px}.json-mapper-container .fullpage-actions{gap:10px;margin-left:auto;display:flex}.json-mapper-container .fullpage-body{flex:1;gap:20px;padding:20px;display:flex;overflow:auto}.json-mapper-container .expr-source-panel{border-right:1px solid var(--gray-200);background:#fff;border-radius:8px 0 0 8px;flex-direction:column;width:280px;display:flex;overflow:hidden}.json-mapper-container .expr-source-header{color:var(--gray-700);background:var(--gray-50);border-bottom:1px solid var(--gray-200);align-items:center;gap:8px;padding:14px 16px;font-size:14px;font-weight:700;display:flex}.json-mapper-container .expr-source-tree{flex:1;padding:12px;font-size:13px;overflow:auto}.json-mapper-container .expr-tree-node{cursor:pointer;border-radius:5px;align-items:center;gap:6px;padding:6px 10px;display:flex}.json-mapper-container .expr-tree-node:hover{background:var(--primary-light)}.json-mapper-container .expr-tree-expand{width:16px;color:var(--gray-400);font-size:9px}.json-mapper-container .expr-tree-key{font-family:var(--font-mono);font-size:13px}.json-mapper-container .expr-tree-children{border-left:2px solid var(--gray-200);margin-left:14px;padding-left:10px}.json-mapper-container .expr-main-panel{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex;overflow:auto}.json-mapper-container .expr-target{background:var(--gray-50);border-radius:8px;align-items:center;gap:12px;padding:14px 18px;display:flex}.json-mapper-container .expr-target-label{color:var(--gray-500);font-size:13px}.json-mapper-container .expr-target-name{font-size:16px;font-weight:700}.json-mapper-container .expr-target-path{font-family:var(--font-mono);color:var(--gray-400);background:var(--gray-100);border-radius:4px;margin-left:auto;padding:4px 10px;font-size:12px}.json-mapper-container .expr-preview{background:linear-gradient(135deg,var(--gray-800),var(--gray-900));color:#a5f3fc;font-family:var(--font-mono);word-break:break-all;border-radius:8px;min-height:60px;padding:16px 20px;font-size:16px;line-height:1.5}.json-mapper-container .expr-preview.empty{color:var(--gray-500)}.json-mapper-container .expr-context-section{background:var(--warning-light);border:1px solid #fcd34d;border-radius:8px;padding:12px}.json-mapper-container .expr-context-title{color:#92400e;align-items:center;gap:6px;margin-bottom:8px;font-size:11px;font-weight:700;display:flex}.json-mapper-container .expr-context-chips{flex-wrap:wrap;gap:6px;display:flex}.json-mapper-container .expr-lookup-section{background:var(--cyan-light);border:1px solid var(--cyan-border);border-radius:8px;padding:12px}.json-mapper-container .expr-lookup-title{color:var(--cyan);align-items:center;gap:6px;margin-bottom:8px;font-size:11px;font-weight:700;display:flex}.json-mapper-container .expr-func-section{background:var(--gray-50);border-radius:8px;padding:14px}.json-mapper-container .expr-label{color:var(--gray-600);align-items:center;gap:6px;margin-bottom:10px;font-size:13px;font-weight:700;display:flex}.json-mapper-container .expr-func-tabs{flex-wrap:wrap;gap:4px;margin-bottom:12px;display:flex}.json-mapper-container .expr-func-chips{flex-wrap:wrap;gap:6px;display:flex}.json-mapper-container .expr-chip{cursor:pointer;border-radius:6px;padding:8px 14px;font-size:13px;font-weight:600}.json-mapper-container .expr-chip.func{background:var(--primary-light);color:var(--primary);border:1px solid var(--primary)}.expr-chip.func:hover{background:var(--primary);color:#fff}.json-mapper-container .expr-chip.func.selected{background:var(--warning);color:#fff;border-color:var(--warning)}.json-mapper-container .expr-chip.context{color:#92400e;font-family:var(--font-mono);background:#fff;border:1px solid #fcd34d;font-size:12px}.expr-chip.context:hover{background:var(--warning);color:#fff}.json-mapper-container .expr-chip.lookup{color:var(--cyan);border:1px solid var(--cyan-border);font-family:var(--font-mono);background:#fff;font-size:12px}.expr-chip.lookup:hover{background:var(--cyan);color:#fff}.json-mapper-container .expr-input-section{margin-top:auto}.json-mapper-container .expr-input{width:100%;font-family:var(--font-mono);border:2px solid var(--gray-300);border-radius:8px;padding:14px 18px;font-size:16px}.json-mapper-container .expr-input:focus{border-color:var(--primary);outline:none}.json-mapper-container .expr-hint{color:var(--gray-500);align-items:center;gap:6px;margin-top:8px;font-size:12px;display:flex}.json-mapper-container .func-help-panel{border-left:1px solid var(--gray-200);background:#fff;border-radius:0 8px 8px 0;flex-direction:column;flex-shrink:0;width:320px;transition:none;display:flex;overflow:hidden}.json-mapper-container .func-help-panel.collapsed{width:40px}.json-mapper-container .func-help-header{color:#fff;background:var(--primary);border-bottom:none;align-items:center;gap:10px;padding:14px 18px;font-size:14px;font-weight:700;display:flex}.json-mapper-container .func-help-toggle{cursor:pointer;color:#fff;background:#fff3;border:1px solid #ffffff4d;border-radius:6px;margin-left:auto;padding:6px 10px;font-size:12px}.json-mapper-container .func-help-toggle:hover{background:#ffffff4d}.json-mapper-container .func-help-body{background:var(--gray-50);flex:1;padding:16px;overflow:auto}.json-mapper-container .func-help-empty{text-align:center;color:var(--gray-400);padding:40px 20px}.json-mapper-container .func-help-empty i{color:var(--gray-300);margin-bottom:14px;font-size:48px;display:block}.json-mapper-container .panel-splitter{background:var(--gray-200);cursor:col-resize;flex-shrink:0;justify-content:center;align-items:center;width:6px;transition:background .15s;display:flex}.json-mapper-container .panel-splitter:hover,.json-mapper-container .panel-splitter.dragging{background:var(--primary)}.json-mapper-container .panel-splitter-handle{background:var(--gray-400);border-radius:2px;width:4px;height:40px}.panel-splitter:hover .panel-splitter-handle,.panel-splitter.dragging .panel-splitter-handle{background:#fff}.json-mapper-container .panel-splitter-h{background:var(--gray-200);cursor:row-resize;flex-shrink:0;justify-content:center;align-items:center;height:6px;transition:background .15s;display:flex}.json-mapper-container .panel-splitter-h:hover,.json-mapper-container .panel-splitter-h.dragging{background:var(--primary)}.panel-splitter-h .panel-splitter-handle{background:var(--gray-400);border-radius:2px;width:40px;height:4px}.panel-splitter-h:hover .panel-splitter-handle,.panel-splitter-h.dragging .panel-splitter-handle{background:#fff}.json-mapper-container .func-detail-name{font-family:var(--font-mono);color:var(--primary);margin-bottom:10px;font-size:24px;font-weight:700}.json-mapper-container .func-detail-syntax{font-family:var(--font-mono);border:1px solid var(--gray-200);border-left:4px solid var(--primary);background:#fff;border-radius:6px;margin-bottom:14px;padding:12px 16px;font-size:13px}.json-mapper-container .func-detail-desc{color:var(--gray-700);margin-bottom:20px;font-size:14px;line-height:1.6}.json-mapper-container .func-examples-header{color:var(--gray-600);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--gray-200);align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;font-size:12px;font-weight:700;display:flex}.json-mapper-container .func-examples-header i{color:var(--gray-400)}.json-mapper-container .func-example{border:1px solid var(--gray-200);background:#fff;border-radius:10px;margin-bottom:14px;padding:16px;box-shadow:0 1px 3px #0000000d}.json-mapper-container .func-example-title{color:var(--gray-800);align-items:center;gap:8px;margin-bottom:14px;font-size:14px;font-weight:700;display:flex}.json-mapper-container .func-example-title i{color:var(--success);font-size:16px}.json-mapper-container .func-example-row{align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.json-mapper-container .func-example-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.3px;min-width:80px;padding-top:8px;font-size:11px;font-weight:700}.json-mapper-container .func-example-value{font-family:var(--font-mono);background:var(--gray-50);border:1px solid var(--gray-200);word-break:break-all;border-radius:6px;flex:1;padding:10px 14px;font-size:12px;line-height:1.4}.json-mapper-container .func-example-value.expression{color:#92400e;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border-color:#fcd34d;font-weight:600}.json-mapper-container .func-example-value.result{color:#1e40af;background:linear-gradient(135deg,#dbeafe 0%,#bfdbfe 100%);border-color:#93c5fd;font-weight:600}.json-mapper-container .func-example-use{margin-top:14px}.json-mapper-container .func-example-use button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;gap:8px;width:100%;padding:10px 16px;font-size:13px;font-weight:700;transition:all .15s;display:flex}.func-example-use button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.json-mapper-container .modal-overlay{z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.json-mapper-container .modal{background:#fff;border-radius:12px;flex-direction:column;max-width:95vw;max-height:92vh;animation:.2s modalIn;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.json-mapper-container .modal-header{background:var(--gray-50);border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.json-mapper-container .modal-title{align-items:center;gap:10px;font-size:18px;font-weight:700;display:flex}.json-mapper-container .modal-title i{color:var(--primary)}.json-mapper-container .modal-close{cursor:pointer;width:36px;height:36px;color:var(--gray-500);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:18px;display:flex}.json-mapper-container .modal-close:hover{background:var(--danger-light);color:var(--danger)}.json-mapper-container .modal-body{flex:1;padding:20px;overflow:auto}.json-mapper-container .modal-footer{border-top:1px solid var(--gray-200);background:var(--gray-50);justify-content:flex-end;gap:10px;padding:16px 20px;display:flex}.json-mapper-container .lookup-modal{width:600px}.json-mapper-container .lookup-form{flex-direction:column;gap:16px;display:flex}.json-mapper-container .lookup-form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.json-mapper-container .lookup-form-row.full{grid-template-columns:1fr}.json-mapper-container .lookup-form-group{flex-direction:column;gap:6px;display:flex}.json-mapper-container .lookup-form-label{color:var(--gray-600);text-transform:uppercase;align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.json-mapper-container .lookup-form-label i{color:var(--gray-400);font-size:11px}.json-mapper-container .lookup-form-input{border:1px solid var(--gray-300);border-radius:6px;padding:10px 14px;font-size:14px}.json-mapper-container .lookup-form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light);outline:none}.json-mapper-container .lookup-form-input.mono{font-family:var(--font-mono)}.json-mapper-container .lookup-form-select{border:1px solid var(--gray-300);background:#fff;border-radius:6px;padding:10px 14px;font-size:14px}.json-mapper-container .lookup-form-hint{color:var(--gray-500);font-size:11px}.json-mapper-container .lookup-form-section{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:8px;padding:14px}.json-mapper-container .lookup-form-section-title{color:var(--gray-700);align-items:center;gap:6px;margin-bottom:12px;font-size:12px;font-weight:700;display:flex}.json-mapper-container .lookup-preview{background:var(--cyan-light);border:1px solid var(--cyan-border);border-radius:8px;margin-top:16px;padding:14px}.json-mapper-container .lookup-preview-title{color:var(--cyan);margin-bottom:8px;font-size:11px;font-weight:700}.json-mapper-container .lookup-preview-code{font-family:var(--font-mono);color:var(--gray-700);background:#fff;border-radius:6px;padding:10px 12px;font-size:12px}.json-mapper-container .form-group{margin-bottom:16px}.json-mapper-container .form-label{color:var(--gray-700);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.json-mapper-container .form-input{border:1px solid var(--gray-300);border-radius:6px;width:100%;padding:10px 14px;font-size:14px}.json-mapper-container .form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light);outline:none}.json-mapper-container .form-hint{color:var(--gray-500);margin-top:4px;font-size:12px}.json-mapper-container .test-config{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.json-mapper-container .test-config.full{grid-template-columns:1fr}.json-mapper-container .test-field{flex-direction:column;gap:6px;display:flex}.json-mapper-container .test-field label{color:var(--gray-600);text-transform:uppercase;font-size:12px;font-weight:600}.json-mapper-container .test-field input{border:1px solid var(--gray-300);font-size:14px;font-family:var(--font-mono);border-radius:6px;padding:10px 14px}.json-mapper-container .test-results{flex:1;grid-template-columns:1fr 1fr;gap:16px;display:grid}.json-mapper-container .test-result-panel{border:1px solid var(--gray-200);background:#fff;border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.json-mapper-container .test-result-label{color:var(--gray-600);background:var(--gray-50);border-bottom:1px solid var(--gray-200);text-transform:uppercase;padding:12px 16px;font-size:12px;font-weight:700}.json-mapper-container .test-result-content{background:var(--gray-900);color:#e2e8f0;font-family:var(--font-mono);white-space:pre-wrap;flex:1;padding:14px;font-size:12px;overflow:auto}.json-mapper-container .test-status{border-radius:8px;align-items:center;gap:10px;margin-bottom:16px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.json-mapper-container .test-status.success{background:var(--success-light);color:#065f46}.json-mapper-container .test-status.error{background:var(--danger-light);color:#991b1b}.json-mapper-container .test-status.loading{background:var(--primary-light);color:var(--primary)}.json-mapper-container .import-tabs{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.json-mapper-container .import-tab{border:1px solid var(--gray-300);background:var(--gray-50);cursor:pointer;color:var(--gray-600);border-radius:6px;padding:10px 16px;font-size:13px;font-weight:600}.json-mapper-container .import-tab:hover{border-color:var(--primary);color:var(--primary)}.json-mapper-container .import-tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.json-mapper-container .split-btn-container{display:flex;position:relative}.json-mapper-container .import-tab.split-main{border-right:none;border-radius:6px 0 0 6px}.json-mapper-container .import-tab.split-dropdown{border-left:1px solid var(--gray-200);border-radius:0 6px 6px 0;padding:10px 8px}.import-tab.split-main.active+.import-tab.split-dropdown.active{border-left-color:#ffffff4d}.json-mapper-container .split-dropdown-menu{border:1px solid var(--gray-200);z-index:100;background:#fff;border-radius:6px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow:hidden;box-shadow:0 4px 12px #00000026}.json-mapper-container .split-dropdown-menu button{text-align:left;cursor:pointer;width:100%;color:var(--gray-700);background:#fff;border:none;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:500;display:flex}.split-dropdown-menu button:hover{background:var(--primary-light);color:var(--primary)}.json-mapper-container .split-dropdown-menu button i{font-size:14px}.json-mapper-container .import-textarea{width:100%;height:300px;font-family:var(--font-mono);border:1px solid var(--gray-300);resize:vertical;border-radius:8px;padding:14px;font-size:13px}.json-mapper-container .import-error{background:var(--danger-light);color:var(--danger);border-radius:6px;align-items:center;gap:8px;margin-top:12px;padding:12px;font-size:13px;display:flex}.json-mapper-container .empty{text-align:center;color:var(--gray-400);padding:32px}.json-mapper-container .empty i{margin-bottom:12px;font-size:36px;display:block}.json-mapper-container .toast{z-index:2000;border-radius:10px;align-items:center;gap:10px;padding:14px 22px;font-size:14px;font-weight:600;animation:.3s toastIn;display:flex;position:fixed;bottom:20px;right:20px}.json-mapper-container .toast.success{background:var(--success);color:#fff}.json-mapper-container .toast.error{background:var(--danger);color:#fff}@keyframes toastIn{0%{opacity:0;transform:translateY(20px)}}
.react-datetimerange-picker{display:inline-flex;position:relative}.react-datetimerange-picker,.react-datetimerange-picker *,.react-datetimerange-picker :before,.react-datetimerange-picker :after{box-sizing:border-box}.react-datetimerange-picker--disabled{color:#6d6d6d;background-color:#f0f0f0}.react-datetimerange-picker__wrapper{border:thin solid gray;flex-grow:1;flex-shrink:0;align-items:center;display:flex}.react-datetimerange-picker__inputGroup{flex-grow:1;min-width:calc(16px + 3.674em);height:100%;padding:0 2px}.react-datetimerange-picker__inputGroup__divider{padding:1px 0}.react-datetimerange-picker__inputGroup__divider,.react-datetimerange-picker__inputGroup__leadingZero{font:inherit;display:inline-block}.react-datetimerange-picker__inputGroup__input{color:currentColor;min-width:.54em;height:calc(100% - 2px);font:inherit;box-sizing:content-box;appearance:textfield;background:0 0;border:0;padding:1px;position:relative}.react-datetimerange-picker__inputGroup__input::-webkit-outer-spin-button{appearance:none;margin:0}.react-datetimerange-picker__inputGroup__input::-webkit-inner-spin-button{appearance:none;margin:0}.react-datetimerange-picker__inputGroup__input:invalid{background:#ff00001a}.react-datetimerange-picker__inputGroup__input--hasLeadingZero{margin-left:-.54em;padding-left:calc(1px + .54em)}.react-datetimerange-picker__inputGroup__amPm{font:inherit;appearance:menulist}.react-datetimerange-picker__button{background:0 0;border:0;padding:4px 6px}.react-datetimerange-picker__button:enabled{cursor:pointer}.react-datetimerange-picker__button:enabled:hover .react-datetimerange-picker__button__icon,.react-datetimerange-picker__button:enabled:focus .react-datetimerange-picker__button__icon{stroke:#0078d7}.react-datetimerange-picker__button:disabled .react-datetimerange-picker__button__icon{stroke:#6d6d6d}.react-datetimerange-picker__button svg{display:inherit}.react-datetimerange-picker__calendar,.react-datetimerange-picker__clock{z-index:1}.react-datetimerange-picker__calendar--closed,.react-datetimerange-picker__clock--closed{display:none}.react-datetimerange-picker__calendar{width:350px;max-width:100vw}.react-datetimerange-picker__calendar .react-calendar{border-width:thin}.react-datetimerange-picker__clock{background-color:#fff;border:thin solid #a0a096;width:200px;max-width:100vw;height:200px;padding:25px}
.react-datepicker__navigation-icon:before,.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{content:"";border:3px solid #ccc;border-width:3px 3px 0 0;width:9px;height:9px;display:block;position:absolute;top:6px}.react-datepicker__sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.react-datepicker-wrapper{border:0;padding:0;display:inline-block}.react-datepicker{color:#000;font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;line-height:initial;background-color:#fff;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-right-radius:.3rem;border-bottom-left-radius:.3rem}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{margin:0 15px;display:inline-block}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{color:#000;margin-top:0;font-size:.944rem;font-weight:700}h2.react-datepicker__current-month{margin:0;padding:0}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{text-align:center;cursor:pointer;z-index:1;text-indent:-999em;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex;position:absolute;top:2px;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{margin-left:auto;margin-right:auto;display:block;position:relative;top:0}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover :before{border-color:#a6a6a6}.react-datepicker__navigation-icon{width:0;font-size:20px;position:relative;top:-1px}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{left:-7px;transform:rotate(45deg)}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{right:-7px;transform:rotate(225deg)}.react-datepicker__month-container{float:left}.react-datepicker__year{text-align:center;margin:.4rem}.react-datepicker__year-wrapper{flex-wrap:wrap;max-width:180px;display:flex}.react-datepicker__year .react-datepicker__year-text{width:4rem;margin:2px;display:inline-block}.react-datepicker__month{text-align:center;margin:.4rem}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{width:4rem;margin:2px;display:inline-block}.react-datepicker__input-time-container{clear:both;float:left;text-align:left;width:100%;margin:5px 0 10px 15px}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{margin-left:10px;display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{border:1px solid #aeaeae;border-radius:.3rem;display:inline;position:absolute;top:0;right:-87px}.react-datepicker__time-container .react-datepicker__time{background:#fff;border-bottom-right-radius:.3rem;position:relative}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{text-align:center;border-bottom-right-radius:.3rem;width:85px;margin:0 auto;overflow-x:hidden}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{box-sizing:content-box;width:100%;height:calc(195px + .85rem);margin:0;padding-left:0;padding-right:0;list-style:none;overflow-y:scroll}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{white-space:nowrap;height:30px;padding:5px 10px}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{color:#fff;background-color:#216ba5;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:#0000}.react-datepicker__week-number{color:#ccc;text-align:center;width:1.7rem;margin:.166rem;line-height:1.7rem;display:inline-block}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__week-number--selected{color:#fff;background-color:#216ba5;border-radius:.3rem}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__day-names{text-align:center;white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;text-align:center;width:1.7rem;margin:.166rem;line-height:1.7rem;display:inline-block}.react-datepicker__day-name--disabled,.react-datepicker__day--disabled,.react-datepicker__time-name--disabled{cursor:default;color:#ccc}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:not([aria-disabled=true]):hover,.react-datepicker__month-text:not([aria-disabled=true]):hover,.react-datepicker__quarter-text:not([aria-disabled=true]):hover,.react-datepicker__year-text:not([aria-disabled=true]):hover{background-color:#f0f0f0;border-radius:.3rem}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{color:#fff;background-color:#3dcc4a;border-radius:.3rem}.react-datepicker__day--highlighted:not([aria-disabled=true]):hover,.react-datepicker__month-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--highlighted:not([aria-disabled=true]):hover,.react-datepicker__year-text--highlighted:not([aria-disabled=true]):hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{color:#fff;background-color:#ff6803;border-radius:.3rem;position:relative}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{color:#fff;white-space:nowrap;visibility:hidden;opacity:0;background-color:#333;border-radius:4px;padding:4px;transition:visibility,opacity .3s ease-in-out;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.react-datepicker__day--holidays:not([aria-disabled=true]):hover,.react-datepicker__month-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--holidays:not([aria-disabled=true]):hover,.react-datepicker__year-text--holidays:not([aria-disabled=true]):hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{color:#fff;background-color:#216ba5;border-radius:.3rem}.react-datepicker__day--selected:not([aria-disabled=true]):hover,.react-datepicker__day--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__day--in-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__month-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--in-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-selecting-range:not([aria-disabled=true]):hover,.react-datepicker__year-text--in-range:not([aria-disabled=true]):hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{color:#000;background-color:#bad9f1;border-radius:.3rem}.react-datepicker__day--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__month-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__quarter-text--keyboard-selected:not([aria-disabled=true]):hover,.react-datepicker__year-text--keyboard-selected:not([aria-disabled=true]):hover{color:#fff;background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){color:#000;background-color:#f0f0f0}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{color:#fff;white-space:nowrap;visibility:hidden;opacity:0;background-color:#333;border-radius:4px;padding:4px;transition:visibility,opacity .3s ease-in-out;position:absolute;bottom:70%;left:50%;transform:translate(-50%)}.react-datepicker__input-container{width:100%;display:inline-block;position:relative}.react-datepicker__input-container .react-datepicker__calendar-icon{box-sizing:content-box;padding:.5rem;position:absolute}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid #0000;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{top:0;right:-16px;transform:rotate(135deg)}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{z-index:1;text-align:center;background-color:#f0f0f0;border:1px solid #aeaeae;border-radius:.3rem;width:50%;position:absolute;top:30px;left:25%}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{width:100%;margin-left:auto;margin-right:auto;line-height:20px;display:block}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;user-select:none;border-bottom-right-radius:.3rem;border-bottom-left-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;vertical-align:middle;background-color:#0000;border:0;outline:0;height:100%;padding:0 6px 0 0;display:table-cell;position:absolute;top:0;right:0}.react-datepicker__close-icon:after{cursor:pointer;color:#fff;text-align:center;vertical-align:middle;content:"×";background-color:#216ba5;border-radius:50%;width:16px;height:16px;padding:2px;font-size:12px;line-height:1;display:table-cell}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{cursor:pointer;text-align:center;clear:left;background:#f0f0f0;border-top:1px solid #aeaeae;padding:5px 0;font-weight:700}.react-datepicker__portal{z-index:2147483647;background-color:#000c;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media (max-width:400px),(max-height:550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;height:auto;margin:.4rem;padding-left:.2rem;padding-right:.2rem}.react-datepicker__aria-live{clip-path:circle(0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.react-datepicker__calendar-icon{vertical-align:-.125em;width:1em;height:1em}
.ot-tree-panel{background:var(--surface-0);flex-direction:column;width:100%;height:100%;min-height:0;display:flex;overflow:hidden}.ot-tree-panel__header{border-bottom:1px solid var(--surface-border);background:linear-gradient(180deg,var(--surface-50,#f8fafc)0%,var(--surface-0)100%);flex-shrink:0;align-items:center;gap:.625rem;padding:.875rem 1rem;display:flex}.ot-tree-panel__icon{width:32px;height:32px;color:var(--primary-color);background:#3b82f61f;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ot-tree-panel__title{letter-spacing:.2px;color:var(--text-color);flex:1;min-width:0;margin:0;font-size:1rem;font-weight:700;line-height:1.3}.ot-tree-panel__count{min-width:28px;height:22px;color:var(--primary-color);font-variant-numeric:tabular-nums;background:#3b82f61f;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0 .5rem;font-size:.75rem;font-weight:700;display:inline-flex}.ot-tree-panel__body{flex:1;min-height:0;padding:.5rem .5rem .75rem;overflow:hidden auto}.ot-tree-panel__body::-webkit-scrollbar{width:6px}.ot-tree-panel__body::-webkit-scrollbar-thumb{background:var(--surface-300);border-radius:3px}.ot-tree-panel__body::-webkit-scrollbar-thumb:hover{background:var(--surface-400)}.ot-tree.p-tree{background:0 0!important;border:none!important;padding:0!important}.ot-tree .p-tree-container{gap:2px!important}.ot-tree .p-treenode-content{border-radius:8px!important;padding:.375rem .5rem!important;transition:background-color .15s!important}.ot-tree .p-treenode-content:hover{background:var(--surface-100)!important}.ot-tree .p-treenode-content.p-highlight{position:relative;color:var(--primary-color)!important;background:#3b82f61f!important}.ot-tree .p-treenode-content.p-highlight:before{content:"";background:var(--primary-color);border-radius:0 3px 3px 0;width:3px;height:22px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.ot-tree .p-treenode-content:focus{box-shadow:none!important;outline:none!important}.ot-tree .p-treenode-content .p-tree-toggler{width:24px!important;height:24px!important;color:var(--text-color-secondary)!important;margin-right:.25rem!important}.ot-tree .p-treenode-content .p-tree-toggler:hover{background:var(--surface-200)!important;color:var(--text-color)!important}.ot-tree .p-treenode-label{flex:1;min-width:0}.ot-node{justify-content:space-between;align-items:center;gap:.5rem;width:100%;min-width:0;display:flex}.ot-node__label{color:var(--text-color);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.875rem;font-weight:600;overflow:hidden}.p-treenode-content.p-highlight .ot-node__label{color:var(--primary-color)}.ot-node__meta{flex-shrink:0;align-items:center;gap:.375rem;display:inline-flex}.ot-node__user{background:var(--surface-200);height:22px;color:var(--text-color);letter-spacing:.2px;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;justify-content:center;align-items:center;max-width:80px;padding:0 .5rem;font-size:.75rem;font-weight:600;display:inline-flex;overflow:hidden}.ot-node__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 0 2px #ffffffb3}.ot-node__status{text-transform:uppercase;letter-spacing:.4px;color:#fff;white-space:nowrap;border-radius:999px;align-items:center;height:22px;padding:0 .625rem;font-size:.6875rem;font-weight:700;line-height:1;display:inline-flex;box-shadow:inset 0 -1px #0000001f}.ot-node__exceptions{background:var(--red-500,#ef4444);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 .4375rem;font-size:.6875rem;font-weight:700;display:inline-flex;box-shadow:0 1px 3px #ef444466}.ot-tree-panel__empty{text-align:center;color:var(--text-color-secondary);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:3rem 1rem;font-size:.875rem;font-weight:500;display:flex}
