html,body,#root{width:100%;height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-tertiary:#e9ecef;--text-primary:#212529;--text-secondary:#6c757d;--border-color:#dee2e6;--accent-color:#6366f1;--accent-hover:#4f46e5;--accent-light:#eef2ff;--success-color:#10b981;--error-color:#ef4444;--shadow:0 2px 8px #00000014;--radius:8px}.app{background:var(--bg-secondary);height:100vh;color:var(--text-primary);flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;display:flex;overflow:hidden}.header{background:var(--bg-primary);border-bottom:1px solid var(--border-color);text-align:center;flex-shrink:0;padding:16px 24px}.header-top{justify-content:center;align-items:center;gap:16px;margin-bottom:4px;display:flex;position:relative}.logo{align-items:center;gap:10px;display:flex}.language-selector{background:var(--bg-secondary);border:1px solid var(--border-color);cursor:pointer;border-radius:6px;align-items:center;gap:2px;padding:6px 10px;font-size:12px;font-weight:500;transition:all .15s;display:flex;position:absolute;right:0}.language-selector:hover{border-color:var(--accent-color)}.language-selector span{color:var(--text-secondary)}.language-selector span.active{color:var(--accent-color);font-weight:600}.lang-divider{color:var(--border-color);margin:0 2px}@media (width<=600px){.header-top{justify-content:space-between;padding:0 4px}.language-selector{padding:4px 8px;font-size:11px;position:static}}.logo-icon{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-family:SF Mono,Consolas,monospace;font-size:18px;font-weight:700;display:flex}.header h1{color:var(--text-primary);letter-spacing:-.5px;margin:0;font-size:clamp(20px,2.5vw,26px);font-weight:700}.subtitle{color:var(--text-secondary);font-size:clamp(12px,1.5vw,14px)}@media (width<=600px){.header{padding:12px 16px}.logo-icon{width:30px;height:30px;font-size:14px}.subtitle{display:none}}.toolbar{background:var(--bg-primary);border-bottom:1px solid var(--border-color);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:8px 24px;display:flex}@media (width<=600px){.toolbar{padding:8px 12px}}.toolbar-group{background:var(--bg-secondary);border-radius:10px;align-items:center;gap:2px;padding:4px;display:flex}.toolbar-divider{background:var(--border-color);width:1px;height:24px;margin:0 6px}.tool-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.tool-btn:hover{background:var(--bg-primary);color:var(--text-primary);box-shadow:0 1px 3px #00000014}.tool-btn:active{transform:scale(.97)}.tool-btn svg{flex-shrink:0}.tool-btn-danger:hover{color:var(--error-color)}.validation-indicator{align-items:center;display:flex}.status{border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:500;display:flex}.status-valid{color:#047857;background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.status-invalid{color:#dc2626;background:linear-gradient(135deg,#fee2e2,#fecaca)}@media (width<=600px){.tool-btn span{display:none}.tool-btn{padding:10px}}.main-content{flex:1;grid-template-columns:1fr 1fr;gap:16px;min-height:0;padding:16px 24px;display:grid;overflow:hidden}@media (width<=1200px){.main-content{gap:12px;padding:12px 16px}}@media (width<=900px){.main-content{grid-template-columns:1fr;overflow-y:auto}}.panel{background:var(--bg-primary);border-radius:var(--radius);border:1px solid var(--border-color);box-shadow:var(--shadow);flex-direction:column;min-height:300px;display:flex;overflow:hidden}@media (width<=900px){.panel{min-height:350px;max-height:50vh}}.panel-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);color:var(--text-secondary);padding:12px 16px;font-size:14px;font-weight:600}.editor-container{flex:1;min-height:400px}.tv-container{flex:1;padding:16px;font-family:SF Mono,Consolas,Monaco,monospace;font-size:13px;line-height:1.7;overflow:auto}.tv-container.tv-empty{color:var(--text-secondary);justify-content:center;align-items:center;display:flex}.tv-toolbar{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:12px;display:flex}.tv-info{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);font-size:11px}.tv-actions{gap:4px;display:flex}.tv-btn{background:var(--bg-secondary);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;border:none;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:flex}.tv-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.tv-node{-webkit-user-select:none;user-select:none}.tv-row{cursor:pointer;border-radius:4px;align-items:center;padding:4px 6px;transition:background .1s;display:flex}.tv-row:hover{background:var(--bg-secondary)}.tv-arrow{width:16px;color:var(--text-secondary);font-size:14px;display:inline-block}.tv-arrow.open{transform:rotate(90deg)}.tv-arrow-space{width:16px}.tv-key{color:#5a5a5a}.tv-colon{color:var(--text-secondary);margin:0 6px 0 2px}.tv-preview{color:var(--text-secondary);font-size:12px}.tv-str{color:#22863a}.tv-num{color:#005cc5}.tv-bool{color:#d73a49}.tv-null{color:#6a737d;font-style:italic}.tv-children{border-left:1px solid var(--border-color);margin-left:16px;padding-left:12px}.ad-banner{background:var(--bg-primary);border-top:1px solid var(--border-color);flex-shrink:0;padding:10px 24px}.ad-mock{color:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;display:flex;position:relative;overflow:hidden}.ad-mock:before{content:"";background:linear-gradient(90deg,#0000 0%,#ffffff1a 50%,#0000 100%);animation:3s infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.ad-mock-content{z-index:1;flex:1;align-items:center;gap:12px;display:flex}.ad-mock-icon{font-size:24px}.ad-mock-text{flex-direction:column;gap:2px;display:flex}.ad-mock-text strong{font-size:14px;font-weight:600}.ad-mock-text span{opacity:.9;font-size:12px}.ad-mock-cta{color:#fff;cursor:pointer;z-index:1;white-space:nowrap;background:#fff3;border:1px solid #ffffff4d;border-radius:6px;padding:8px 16px;font-size:12px;font-weight:600;transition:all .15s}.ad-mock-cta:hover{background:#ffffff4d}.ad-mock-dots{z-index:1;gap:6px;display:flex;position:absolute;bottom:6px;right:12px}.ad-dot{cursor:pointer;background:#fff6;border-radius:50%;width:6px;height:6px;transition:all .15s}.ad-dot:hover{background:#fff9}.ad-dot-active{background:#fff;border-radius:3px;width:16px}@media (width<=600px){.ad-banner{padding:8px 12px}.ad-mock{flex-direction:column;align-items:flex-start;gap:10px;padding:12px 16px 20px}.ad-mock-content{width:100%}.ad-mock-cta{text-align:center;width:100%}.ad-mock-dots{bottom:8px;left:50%;right:auto;transform:translate(-50%)}}.error-panel{flex:1;padding:16px;overflow:auto}.error-header{color:var(--error-color);align-items:center;gap:8px;margin-bottom:16px;font-size:15px;font-weight:600;display:flex}.error-body{flex-direction:column;gap:12px;display:flex}.error-message{color:#991b1b;word-break:break-word;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:12px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px}.error-location{flex-wrap:wrap;gap:8px;display:flex}.error-badge{background:var(--bg-tertiary);color:var(--text-primary);border-radius:4px;padding:4px 10px;font-size:12px;font-weight:500}.error-context{background:var(--bg-secondary);border-radius:6px;padding:12px;overflow-x:auto}.error-context code{color:var(--text-primary);white-space:pre;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;display:block}.error-pointer{color:var(--error-color);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;font-weight:700}.error-suggestion{color:#854d0e;background:#fef9c3;border:1px solid #fde047;border-radius:6px;padding:12px;font-size:13px;line-height:1.5}.error-suggestion strong{color:#713f12}.footer{background:var(--bg-primary);border-top:1px solid var(--border-color);text-align:center;flex-shrink:0;padding:12px 24px}.footer p{color:var(--text-secondary);margin-bottom:6px;font-size:12px}.footer-links{justify-content:center;align-items:center;gap:8px;display:flex}.footer-links button{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px}.footer-links button:hover{color:var(--accent-color);text-decoration:underline}.footer-divider{color:var(--border-color);font-size:12px}@media (width<=600px){.footer{padding:10px 12px}.footer p{font-size:11px}}.toast{z-index:1000;border-radius:8px;align-items:center;gap:8px;padding:12px 20px;font-size:14px;font-weight:500;animation:.3s slideUp;display:flex;position:fixed;bottom:100px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #00000026}@keyframes slideUp{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.toast-success{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6)}.toast-error{color:#fff;background:#ef4444}.search-panel{background:var(--bg-primary);border-bottom:1px solid var(--border-color);padding:8px 24px}.search-input-wrapper{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;align-items:center;gap:10px;padding:8px 12px;display:flex}.search-input-wrapper svg{color:var(--text-secondary);flex-shrink:0}.search-input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:14px}.search-input::placeholder{color:var(--text-secondary)}.search-count{color:var(--text-secondary);white-space:nowrap;font-size:12px}.search-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:flex}.search-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--bg-primary);border-radius:12px;width:100%;max-width:600px;max-height:80vh;animation:.2s modalIn;overflow:hidden;box-shadow:0 20px 60px #0003}@keyframes modalIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h2{color:var(--text-primary);margin:0;font-size:18px;font-weight:600}.modal-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:flex}.modal-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.modal-body{max-height:calc(80vh - 70px);padding:20px;overflow-y:auto}.examples-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;display:grid}.example-card{background:var(--bg-secondary);border:1px solid var(--border-color);text-align:left;cursor:pointer;border-radius:8px;padding:16px;transition:all .15s}.example-card:hover{border-color:var(--accent-color);box-shadow:0 2px 8px #6366f133}.example-card h3{color:var(--text-primary);margin:0 0 6px;font-size:14px;font-weight:600}.example-card p{color:var(--text-secondary);margin:0;font-size:12px}.toolbar-groups{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.tool-btn:disabled{opacity:.4;cursor:not-allowed}.tool-btn:disabled:hover{color:var(--text-secondary);box-shadow:none;background:0 0}@media (width<=900px){.toolbar-groups{gap:2px}.toolbar-divider{display:none}}@media (width<=600px){.search-panel{padding:8px 12px}}.modal-sm{max-width:400px}.shortcuts-list{flex-direction:column;gap:12px;display:flex}.shortcut-item{background:var(--bg-secondary);border-radius:8px;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.shortcut-keys{align-items:center;gap:4px;display:flex}.shortcut-keys kbd{color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;padding:4px 8px;font-family:inherit;font-size:12px;font-weight:600;display:inline-block;box-shadow:0 1px 2px #0000000d}.key-plus{color:var(--text-secondary);margin:0 2px;font-size:12px}.shortcut-action{color:var(--text-secondary);font-size:13px}.modal-legal{max-width:650px}.legal-content{line-height:1.7}.legal-content h3{color:var(--text-primary);margin:20px 0 10px;font-size:15px;font-weight:600}.legal-content h3:first-of-type{margin-top:10px}.legal-content p{color:var(--text-secondary);margin:0 0 10px;font-size:14px}.legal-content ul{margin:10px 0;padding-left:20px}.legal-content li{color:var(--text-secondary);margin-bottom:6px;font-size:14px}.legal-content a{color:var(--accent-color);text-decoration:none}.legal-content a:hover{text-decoration:underline}.legal-date{color:var(--text-secondary);border-bottom:1px solid var(--border-color);margin-bottom:16px;padding-bottom:12px;font-size:12px;font-style:italic}.modal-lg{max-width:900px}.modal-xl{max-width:1100px}.url-input-group{gap:10px;margin-bottom:16px;display:flex}.url-input{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:8px;outline:none;flex:1;padding:12px 16px;font-size:14px;transition:border-color .15s}.url-input:focus{border-color:var(--accent-color)}.url-input::placeholder{color:var(--text-secondary)}.btn-primary{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:500;transition:all .15s;display:flex}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.btn-secondary:hover{background:var(--bg-tertiary);border-color:var(--accent-color)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.modal-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;align-items:flex-start;gap:10px;margin-top:12px;padding:12px 16px;font-size:13px;display:flex}.modal-error svg{flex-shrink:0;margin-top:1px}.format-selector{align-items:center;gap:12px;margin-bottom:16px;display:flex}.format-selector label{color:var(--text-secondary);font-size:14px;font-weight:500}.format-select{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236c757d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-radius:8px;outline:none;padding:10px 40px 10px 16px;font-size:14px}.format-select:focus{border-color:var(--accent-color)}.input-group{align-items:center;gap:12px;margin-bottom:16px;display:flex}.input-group label{color:var(--text-secondary);white-space:nowrap;font-size:14px;font-weight:500}.input-text{border:1px solid var(--border-color);background:var(--bg-secondary);max-width:200px;color:var(--text-primary);border-radius:8px;outline:none;flex:1;padding:10px 14px;font-size:14px}.input-text:focus{border-color:var(--accent-color)}.preview-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.preview-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.preview-header span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.preview-actions{gap:8px;display:flex}.preview-content{max-height:400px;padding:16px;overflow:auto}.preview-content pre{color:var(--text-primary);white-space:pre-wrap;word-break:break-word;margin:0;font-family:SF Mono,Consolas,Monaco,monospace;font-size:13px;line-height:1.6}.preview-content pre .keyword{color:#d73a49}.preview-content pre .string{color:#22863a}.preview-content pre .type{color:#6f42c1}.preview-content pre .comment{color:var(--text-secondary);font-style:italic}.note-box{color:#854d0e;background:#fef9c3;border:1px solid #fde047;border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 16px;font-size:13px;display:flex}.note-box svg{flex-shrink:0;margin-top:1px}.diff-container{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}@media (width<=768px){.diff-container{grid-template-columns:1fr}}.diff-panel{flex-direction:column;display:flex}.diff-panel-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.diff-panel-header span{color:var(--text-primary);font-size:14px;font-weight:600}.diff-textarea{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;min-height:200px;color:var(--text-primary);resize:vertical;border-radius:8px;outline:none;padding:12px;font-family:SF Mono,Consolas,Monaco,monospace;font-size:13px;line-height:1.5}.diff-textarea:focus{border-color:var(--accent-color)}.diff-actions{justify-content:center;margin-bottom:16px;display:flex}.diff-result{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.diff-result-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.diff-result-header span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.diff-legend{gap:16px;display:flex}.diff-legend-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:12px;display:flex}.diff-legend-color{border-radius:3px;width:12px;height:12px}.diff-legend-color.added{background:#d1fae5;border:1px solid #10b981}.diff-legend-color.removed{background:#fee2e2;border:1px solid #ef4444}.diff-legend-color.modified{background:#fef3c7;border:1px solid #f59e0b}.diff-result-content{max-height:300px;padding:16px;overflow:auto}.diff-no-changes{color:var(--success-color);justify-content:center;align-items:center;gap:8px;padding:24px;font-size:14px;font-weight:500;display:flex}.diff-line{border-radius:4px;margin:2px 0;padding:4px 8px;font-family:SF Mono,Consolas,Monaco,monospace;font-size:13px;display:flex}.diff-line.added{color:#047857;background:#d1fae5}.diff-line.added:before{content:"+";margin-right:8px;font-weight:600}.diff-line.removed{color:#dc2626;background:#fee2e2}.diff-line.removed:before{content:"-";margin-right:8px;font-weight:600}.diff-line.modified{color:#b45309;background:#fef3c7}.diff-line.modified:before{content:"~";margin-right:8px;font-weight:600}.diff-path{color:var(--text-secondary);margin-right:8px}.diff-value{font-weight:500}.diff-summary{background:var(--bg-secondary);text-align:center;border-radius:8px;margin-bottom:16px;padding:20px}.diff-summary-equal{color:var(--success-color);justify-content:center;align-items:center;gap:12px;font-size:18px;font-weight:600;display:flex}.diff-summary-title{color:var(--text-primary);margin-bottom:16px;font-size:16px;font-weight:600}.diff-summary-badges{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.diff-badge{border-radius:20px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:600;display:flex}.diff-badge-added{color:#047857;background:#d1fae5}.diff-badge-removed{color:#dc2626;background:#fee2e2}.diff-badge-modified{color:#b45309;background:#fef3c7}.diff-changes{flex-direction:column;gap:16px;display:flex}.diff-group{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.diff-group-header{align-items:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.diff-group-added{color:#047857;background:#d1fae5}.diff-group-removed{color:#dc2626;background:#fee2e2}.diff-group-modified{color:#b45309;background:#fef3c7}.diff-group-items{padding:8px}.diff-item{border-radius:6px;align-items:flex-start;gap:12px;margin-bottom:4px;padding:10px 12px;display:flex}.diff-item:last-child{margin-bottom:0}.diff-item-added{background:#d1fae54d}.diff-item-removed{background:#fee2e24d}.diff-item-modified{background:#fef3c74d}.diff-item-path{background:var(--bg-tertiary);color:var(--text-primary);border-radius:4px;flex-shrink:0;padding:4px 8px;font-family:SF Mono,Consolas,monospace;font-size:12px}.diff-item-value{color:var(--text-primary);word-break:break-all;font-family:SF Mono,Consolas,monospace;font-size:13px}.diff-item-change{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.diff-old-value{color:#dc2626;background:#fee2e280;border-radius:4px;padding:2px 6px;font-family:SF Mono,Consolas,monospace;font-size:13px;text-decoration:line-through}.diff-new-value{color:#047857;background:#d1fae580;border-radius:4px;padding:2px 6px;font-family:SF Mono,Consolas,monospace;font-size:13px}.diff-item-change svg{color:var(--text-secondary);flex-shrink:0}.curl-modal{max-width:700px}.curl-modal-title{color:#f59e0b;align-items:center;gap:10px;display:flex}.curl-modal-title h2{color:var(--text-primary);margin:0;font-size:18px;font-weight:600}.curl-modal-body{max-height:70vh;padding:0;overflow-y:auto}.curl-input-section{background:var(--bg-secondary);border:none;border-bottom:1px solid var(--border-color);border-radius:0;overflow:hidden}.curl-input-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);color:var(--text-primary);justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.curl-input-actions{gap:8px;display:flex}.curl-format-btn,.curl-example-btn{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:6px 10px;font-size:12px;font-weight:500;transition:all .15s;display:flex}.curl-format-btn:hover:not(:disabled),.curl-example-btn:hover{border-color:var(--accent-color);color:var(--accent-color)}.curl-format-btn:disabled{opacity:.5;cursor:not-allowed}.curl-editor-wrapper{border-top:1px solid var(--border-color);background:var(--bg-primary)}.curl-input{background:var(--bg-primary);width:100%;min-height:100px;color:var(--text-primary);resize:vertical;border:none;outline:none;padding:12px 16px;font-family:SF Mono,Consolas,Monaco,monospace;font-size:13px;line-height:1.5}.curl-input::placeholder{color:var(--text-secondary)}.curl-parsed-info{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:16px}.curl-parsed-item{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.curl-method{text-transform:uppercase;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:700}.curl-method-get{color:#047857;background:#d1fae5}.curl-method-post{color:#1d4ed8;background:#dbeafe}.curl-method-put,.curl-method-patch{color:#b45309;background:#fef3c7}.curl-method-delete{color:#dc2626;background:#fee2e2}.curl-url{color:var(--accent-color);word-break:break-all;font-family:SF Mono,Consolas,monospace;font-size:13px}.curl-parsed-headers{border-top:1px dashed var(--border-color);margin-top:12px;padding-top:12px}.curl-header-item{gap:8px;margin-bottom:4px;font-size:12px;display:flex}.curl-header-key{color:var(--text-secondary);font-weight:500}.curl-header-value{color:var(--text-primary);word-break:break-all;font-family:SF Mono,Consolas,monospace}.curl-parsed-body{border-top:1px dashed var(--border-color);margin-top:12px;padding-top:12px;font-size:12px}.curl-body-label{color:var(--text-secondary);margin-right:8px;font-weight:500}.curl-parsed-body code{color:var(--text-primary);background:var(--bg-tertiary);border-radius:4px;padding:2px 6px;font-family:SF Mono,Consolas,monospace}.curl-execute-section{border-top:1px solid var(--border-color);justify-content:center;padding:16px;display:flex}.curl-execute-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 24px;font-size:14px;font-weight:600;transition:all .15s;display:flex;box-shadow:0 2px 8px #f59e0b4d}.curl-execute-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #f59e0b66}.curl-execute-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.curl-error{color:#dc2626;background:#fee2e2;border-bottom:1px solid #fecaca;align-items:flex-start;gap:10px;padding:12px 16px;font-size:13px;display:flex}.curl-response-section{background:var(--bg-primary);border:none;border-radius:0;overflow:hidden}.curl-response-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.curl-response-status{align-items:center;gap:10px;display:flex}.curl-status-badge{border-radius:8px;padding:6px 14px;font-size:14px;font-weight:600}.curl-status-success{color:#047857;background:#d1fae5}.curl-status-error{color:#dc2626;background:#fee2e2}.curl-json-badge{color:#1d4ed8;background:#dbeafe;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600}.curl-response-actions{gap:8px;display:flex}.curl-use-btn{background:var(--accent-color);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.curl-use-btn:hover{background:var(--accent-hover)}.curl-response-headers{border-bottom:1px solid var(--border-color);padding:12px 16px;font-size:14px}.curl-response-headers summary{cursor:pointer;color:var(--text-secondary);font-weight:500}.curl-response-headers summary:hover{color:var(--text-primary)}.curl-headers-list{border-top:1px dashed var(--border-color);margin-top:12px;padding-top:12px}.curl-response-body-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);color:var(--text-primary);padding:12px 16px;font-size:14px;font-weight:600}.curl-response-content{color:var(--text-primary);background:var(--bg-secondary);white-space:pre-wrap;word-break:break-word;max-height:200px;margin:0;padding:12px 16px;font-family:SF Mono,Consolas,Monaco,monospace;font-size:12px;line-height:1.5;overflow:auto}@media (width<=600px){.curl-response-header,.curl-proxy-section{flex-direction:column;align-items:flex-start}}.diff-fullscreen{background:var(--bg-secondary);z-index:1000;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.diff-fullscreen-header{background:var(--bg-primary);border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.diff-fullscreen-title{color:var(--accent-color);align-items:center;gap:12px;display:flex}.diff-fullscreen-title h1{color:var(--text-primary);margin:0;font-size:20px;font-weight:600}.diff-fullscreen-close{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.diff-fullscreen-close:hover{color:#dc2626;background:#fee2e2;border-color:#fecaca}.diff-fullscreen-content{flex:1;padding:24px;overflow-y:auto}.diff-editors{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;display:grid}.diff-editor-panel{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.diff-editor-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.diff-editor-title{align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}.diff-editor-badge{color:#fff;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:flex}.diff-editor-badge-1{background:linear-gradient(135deg,#ef4444,#dc2626)}.diff-editor-badge-2{background:linear-gradient(135deg,#10b981,#059669)}.diff-editor-error-badge{color:#dc2626;background:#fee2e2;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.diff-editor-valid-badge{color:#047857;background:#d1fae5;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:600}.diff-editor-actions{align-items:center;gap:8px;display:flex}.diff-editor-btn{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s;display:flex}.diff-editor-btn:hover:not(:disabled){border-color:var(--accent-color);color:var(--accent-color)}.diff-editor-btn:disabled{opacity:.5;cursor:not-allowed}.diff-editor-btn-primary{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.diff-editor-btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.diff-editor-wrapper{border-left:3px solid #0000;flex:1;height:350px;min-height:350px;transition:border-color .15s;position:relative;overflow:hidden}.diff-editor-wrapper.diff-editor-valid{border-left-color:var(--success-color)}.diff-editor-wrapper.diff-editor-invalid{border-left-color:var(--error-color)}.diff-compare-section{justify-content:center;margin-bottom:24px;display:flex}.diff-compare-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:12px;align-items:center;gap:10px;padding:14px 32px;font-size:16px;font-weight:600;transition:all .15s;display:flex;box-shadow:0 4px 12px #6366f14d}.diff-compare-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #6366f166}.diff-compare-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.diff-error-message{color:#dc2626;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;justify-content:center;align-items:center;gap:10px;margin-bottom:24px;padding:12px 20px;font-size:14px;display:flex}.diff-results{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.diff-results-summary{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);text-align:center;padding:24px}.diff-results-title{color:var(--text-primary);margin-bottom:16px;font-size:18px;font-weight:600}.diff-results-badges{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.diff-no-changes{color:var(--success-color);justify-content:center;align-items:center;gap:12px;font-size:18px;font-weight:600;display:flex}.diff-changes-grid{background:var(--border-color);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1px;display:grid}.diff-change-group{background:var(--bg-primary)}.diff-change-group-header{align-items:center;gap:10px;padding:14px 20px;font-size:14px;font-weight:600;display:flex}.diff-change-group-added{color:#047857;background:#d1fae5}.diff-change-group-removed{color:#dc2626;background:#fee2e2}.diff-change-group-modified{color:#b45309;background:#fef3c7}.diff-change-items{max-height:400px;padding:12px;overflow-y:auto}.diff-change-item{cursor:pointer;border-radius:8px;align-items:flex-start;gap:12px;margin-bottom:8px;padding:12px;transition:all .15s;display:flex}.diff-change-item:last-child{margin-bottom:0}.diff-change-item:hover{transform:translate(4px)}.diff-change-item-added{background:#d1fae54d}.diff-change-item-added:hover{background:#d1fae599}.diff-change-item-removed{background:#fee2e24d}.diff-change-item-removed:hover{background:#fee2e299}.diff-change-item-modified{background:#fef3c74d}.diff-change-item-modified:hover{background:#fef3c799}.diff-change-item-selected{outline-offset:2px;outline:2px solid #0ea5e9}.diff-change-path{background:var(--bg-tertiary);color:var(--text-primary);border-radius:6px;flex-shrink:0;padding:4px 10px;font-family:SF Mono,Consolas,monospace;font-size:12px}.diff-change-value{color:var(--text-primary);word-break:break-word;font-family:SF Mono,Consolas,monospace;font-size:13px}.diff-change-values{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.diff-change-old{color:#dc2626;background:#fee2e280;border-radius:4px;padding:2px 6px;font-family:SF Mono,Consolas,monospace;font-size:13px;text-decoration:line-through}.diff-change-new{color:#047857;background:#d1fae580;border-radius:4px;padding:2px 6px;font-family:SF Mono,Consolas,monospace;font-size:13px}.diff-change-values svg{color:var(--text-secondary);flex-shrink:0}@media (width<=900px){.diff-editors{grid-template-columns:1fr}.diff-fullscreen-content{padding:16px}}@media (width<=600px){.diff-fullscreen-header{padding:12px 16px}.diff-fullscreen-title h1{font-size:16px}.diff-fullscreen-close span{display:none}.diff-changes-grid{grid-template-columns:1fr}.diff-change-item{flex-direction:column}.diff-change-values{flex-direction:column;align-items:flex-start}}.diff-detail-panel{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:2px solid #0ea5e9;border-radius:12px;margin-bottom:16px;animation:.2s slideDown;overflow:hidden}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.diff-detail-header{background:#0ea5e91a;border-bottom:1px solid #0ea5e933;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.diff-detail-title{color:#0369a1;align-items:center;gap:10px;font-weight:600;display:flex}.diff-detail-title code{color:#0c4a6e;background:#fff;border-radius:6px;padding:4px 10px;font-size:13px}.diff-detail-type{text-transform:uppercase;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:600}.diff-detail-type-added{color:#047857;background:#d1fae5}.diff-detail-type-removed{color:#dc2626;background:#fee2e2}.diff-detail-type-modified{color:#b45309;background:#fef3c7}.diff-detail-close{width:28px;height:28px;color:var(--text-secondary);cursor:pointer;background:#fff;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.diff-detail-close:hover{color:#dc2626;background:#fee2e2}.diff-detail-content{align-items:stretch;gap:16px;padding:16px;display:flex}.diff-detail-side{flex-direction:column;flex:1;display:flex}.diff-detail-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:8px;font-size:12px;font-weight:600}.diff-detail-json1 .diff-detail-label{color:#dc2626}.diff-detail-json2 .diff-detail-label{color:#047857}.diff-detail-preview{background:#fff;border-radius:8px;flex:1;padding:12px;overflow:auto}.diff-detail-code{white-space:pre-wrap;word-break:break-word;margin:0;font-family:SF Mono,Consolas,monospace;font-size:13px;line-height:1.6}.diff-detail-code-removed{color:#991b1b;background:#fee2e2;border-left:3px solid #dc2626;border-radius:6px;padding:8px 12px}.diff-detail-code-added{color:#065f46;background:#d1fae5;border-left:3px solid #10b981;border-radius:6px;padding:8px 12px}.diff-detail-key{color:#6366f1;font-weight:600}.diff-detail-not-exists{color:var(--text-secondary);justify-content:center;align-items:center;gap:8px;padding:24px;font-style:italic;display:flex}.diff-detail-arrow{color:#0ea5e9;justify-content:center;align-items:center;display:flex}.diff-item-clickable{cursor:pointer;transition:all .15s;position:relative}.diff-item-clickable:hover{transform:translate(4px);box-shadow:0 2px 8px #0000001a}.diff-item-selected{outline-offset:2px;outline:2px solid #0ea5e9}.diff-item-btn{background:var(--bg-tertiary);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;transition:all .15s;display:flex}.diff-item-clickable:hover .diff-item-btn{color:#fff;background:#0ea5e9}.diff-summary-hint{color:var(--text-secondary);margin-top:12px;font-size:12px;font-style:italic}@media (width<=768px){.diff-detail-content{flex-direction:column}.diff-detail-arrow{padding:8px 0;transform:rotate(90deg)}}@media (width<=600px){.diff-summary-badges{flex-direction:column}.diff-item{flex-direction:column;gap:8px}.diff-item-change{flex-direction:column;align-items:flex-start}.diff-item-btn{position:absolute;top:8px;right:8px}}.toolbar-group-tools{background:linear-gradient(135deg,#6366f11a,#8b5cf61a);border:1px solid #6366f133;border-radius:10px;align-items:center;gap:2px;padding:4px;display:flex}.tool-btn-accent{color:var(--accent-color)}.tool-btn-accent:hover{background:var(--accent-light);color:var(--accent-hover)}.tool-btn-curl{color:#f59e0b}.tool-btn-curl:hover{color:#d97706;background:#fef3c7}@media (width<=600px){.modal-lg,.modal-xl{max-width:100%}.diff-container{grid-template-columns:1fr}.format-selector{flex-direction:column;align-items:flex-start;gap:8px}.format-select{width:100%}.url-input-group{flex-direction:column}.btn-primary{width:100%}.input-group{flex-direction:column;align-items:flex-start;gap:8px}.input-text{width:100%;max-width:100%}}
