.page-wide{max-width:1400px}.jc-toggles-row{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-xl);align-items:center;gap:20px;padding:10px 16px;display:flex}.toggle-wrap{cursor:pointer;color:var(--text2);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:.84rem;font-weight:500;display:flex}.toggle-wrap:hover{color:var(--text)}.jc-private-badge{background:rgba(var(--blue-rgb), .06);border:1px solid rgba(var(--blue-rgb), .15);border-radius:var(--radius-pill);font-family:var(--font-mono);color:var(--blue);letter-spacing:.04em;align-items:center;gap:6px;padding:4px 12px;font-size:.68rem;font-weight:700;display:inline-flex}.jc-advanced{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-xl);overflow:hidden}.jc-advanced-toggle{cursor:pointer;width:100%;font-family:var(--font-mono);letter-spacing:.1em;color:var(--text3);text-transform:uppercase;background:0 0;border:none;justify-content:space-between;align-items:center;padding:12px 18px;font-size:.7rem;font-weight:700;transition:color .15s,background .15s;display:flex}.jc-advanced-toggle:hover{background:var(--bg3);color:var(--text)}.jc-advanced-body{border-top:1px solid var(--border);padding:16px 20px 20px}.jc-adv-field{flex-direction:column;gap:8px;display:flex}.jc-adv-field label{color:var(--text2);font-size:.82rem;font-weight:600}.jc-adv-hint{font-family:var(--font-mono);color:var(--text3);margin-left:6px;font-size:.65rem;font-weight:400}.jc-path-tags{flex-wrap:wrap;gap:6px;min-height:0;display:flex}.jc-path-tag{background:rgba(var(--accent-rgb), .08);border:1px solid rgba(var(--accent-rgb), .2);border-radius:var(--radius-pill);font-family:var(--font-mono);color:var(--accent);align-items:center;padding:2px 10px;font-size:.68rem;display:inline-flex}.jc-ignore-textarea{background:var(--bg3);border:1px solid var(--border2);border-radius:var(--radius-lg);color:var(--text);font-family:var(--font-mono);resize:vertical;box-sizing:border-box;outline:none;width:100%;padding:10px 14px;font-size:.8rem;line-height:1.6;transition:border-color .15s}.jc-ignore-textarea:focus{border-color:var(--accent)}.jc-ignore-textarea::placeholder{color:var(--text3)}.jc-status-row{align-items:center}.jc-status-row--detailed{align-items:flex-start}.jc-status-details{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:8px;width:100%;display:grid}.jc-status-detail{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg2);align-items:flex-start;gap:10px;min-width:0;padding:8px 12px;display:flex}.jc-status-detail-label{color:var(--text3);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-size:.66rem;font-weight:700}.jc-status-detail-text{color:var(--text2);overflow-wrap:anywhere;min-width:0}.jc-input-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.jc-input-pane{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-xl);flex-direction:column;display:flex;overflow:hidden}.pane-header{border-bottom:1px solid var(--border);background:var(--bg3);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.pane-label{color:var(--text);letter-spacing:-.01em;align-items:center;gap:8px;font-size:.8rem;font-weight:700;display:flex}.dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.jc-valid-badge{font-family:var(--font-mono);letter-spacing:.06em;color:var(--green);background:rgba(var(--green-rgb), .1);border:1px solid rgba(var(--green-rgb), .25);border-radius:var(--radius-pill);padding:1px 7px;font-size:.6rem;font-weight:800}.jc-invalid-badge{font-family:var(--font-mono);letter-spacing:.06em;color:var(--red);background:rgba(var(--red-rgb), .08);border:1px solid rgba(var(--red-rgb), .22);border-radius:var(--radius-pill);padding:1px 7px;font-size:.6rem;font-weight:800}.pane-actions{align-items:center;gap:4px;display:flex}.icon-btn{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text3);font-family:var(--font-mono);cursor:pointer;padding:4px 10px;font-size:.68rem;font-weight:600;transition:color .15s,border-color .15s,background .15s}.icon-btn:hover{color:var(--text);border-color:var(--border2);background:var(--bg3)}.jc-input-pane textarea{color:var(--text);font-family:var(--font-mono);resize:none;box-sizing:border-box;background:0 0;border:none;outline:none;flex:1;width:100%;min-height:340px;padding:14px 16px;font-size:.82rem;line-height:1.65;transition:box-shadow .15s}.jc-input-pane textarea::placeholder{color:var(--text3)}.jc-input-pane textarea.jc-textarea--invalid{box-shadow:inset 3px 0 0 var(--red)}.jc-controls-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.jc-controls-row--result{justify-content:flex-end;padding:0}.jc-filter-group{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.jc-filter-label{font-family:var(--font-mono);color:var(--text3);text-transform:uppercase;letter-spacing:.08em;margin-right:2px;font-size:.7rem;font-weight:700}.jc-ctrl-btn{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text2);cursor:pointer;align-items:center;padding:6px 14px;font-family:inherit;font-size:.78rem;font-weight:600;transition:all .15s;display:inline-flex}.jc-ctrl-btn:hover:not(:disabled){border-color:var(--border2);color:var(--text);background:var(--bg3)}.jc-ctrl-btn.active{background:rgba(var(--accent-rgb), .1);border-color:rgba(var(--accent-rgb), .35);color:var(--accent)}.jc-ctrl-btn:disabled{opacity:.4;cursor:not-allowed}.jc-divider{background:var(--border);width:1px;height:20px;margin:0 4px}.jc-legend{align-items:center;gap:14px;display:flex}.jc-legend-item{color:var(--text3);align-items:center;gap:6px;font-size:.75rem;font-weight:600;display:flex}.jc-legend-dot{border-radius:var(--radius-xs);flex-shrink:0;width:8px;height:8px;display:inline-block}.jc-ld--added{background:rgba(var(--green-rgb), .7)}.jc-ld--removed{background:rgba(var(--red-rgb), .7)}.jc-ld--changed{background:rgba(var(--yellow-rgb), .7)}.jc-ld--same{background:var(--border2)}.jc-filter-tabs{scrollbar-width:none;flex-shrink:0;align-items:stretch;display:flex;overflow-x:auto}.jc-filter-tabs::-webkit-scrollbar{display:none}.jc-filter-tab{border:none;border-right:1px solid var(--border);height:100%;color:var(--text2);cursor:pointer;white-space:nowrap;background:0 0;align-items:center;gap:6px;padding:0 14px;font-size:.76rem;font-weight:500;transition:background .15s,color .15s;display:flex}.jc-filter-tab:hover:not(:disabled){background:var(--bg3);color:var(--text)}.jc-filter-tab.active{background:rgba(var(--accent-rgb), .08);color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent)}.jc-filter-tab:disabled{opacity:.45;cursor:not-allowed}.jc-filter-tab-label{font-family:inherit;font-size:.72rem}.jc-count{font-family:var(--font-mono);font-size:.88rem;font-weight:800;line-height:1}.jc-count--added{color:var(--green)}.jc-count--removed{color:var(--red)}.jc-count--changed{color:var(--yellow)}.jc-count--same{color:var(--text3)}.jc-count--all{color:var(--blue)}.jc-count--diff{color:var(--accent)}.jc-result-card{background:linear-gradient(180deg, rgba(var(--blue-rgb), .055), transparent 170px), var(--bg2);border:1px solid var(--border);border-radius:var(--radius-2xl);flex-direction:column;gap:14px;padding:16px;display:flex;position:relative;overflow:hidden}.jc-result-topbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.jc-result-heading{flex-direction:column;gap:2px;min-width:0;display:flex}.jc-result-kicker{font-family:var(--font-mono);color:var(--text3);letter-spacing:.14em;text-transform:uppercase;font-size:.64rem}.jc-result-heading strong{color:var(--text);letter-spacing:-.02em;font-size:1.05rem}.jc-result-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.jc-result-card .jc-summary-bar{background:#ffffff05}.jc-diff-output.pane--expanded{flex-direction:column;flex:auto;min-height:0;display:flex;max-height:none!important}.jc-diff-output.pane--expanded .jc-diff-toolbar,.jc-diff-output.pane--expanded .jc-diff-header{flex:none}.jc-diff-output.pane--expanded .jc-diff-body{flex:auto;min-height:0;max-height:none}.jc-diff-output{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-xl);flex-direction:column;max-height:60vh;display:flex;overflow:hidden}.jc-diff-toolbar{background:linear-gradient(90deg, rgba(var(--blue-rgb), .05), transparent 40%), var(--bg3);border-bottom:1px solid var(--border);align-items:stretch;min-height:40px;display:flex;overflow:hidden}.jc-diff-toolbar-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text3);align-items:center;padding:0 16px;font-size:.65rem;font-weight:700;display:flex}.jc-toolbar-right{border-left:1px solid var(--border);flex-shrink:0;align-items:center;gap:4px;margin-left:auto;padding:0 10px;display:flex}.jc-toolbar-sep{background:var(--border);flex-shrink:0;width:1px;height:18px;margin:0 4px}.jc-diff-header{background:var(--bg3);border-bottom:1px solid var(--border);grid-template-columns:36% 32% 32%;display:grid}.jc-diff-col-key,.jc-diff-col-val{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text3);border-right:1px solid var(--border);align-items:center;gap:8px;padding:6px 14px;font-size:.65rem;font-weight:700;display:flex}.jc-diff-col-val:last-child{border-right:none}.jc-col-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.jc-diff-body{scrollbar-width:auto;scrollbar-color:var(--border2) var(--bg);flex:auto;min-height:0;overflow-y:auto}.jc-diff-body::-webkit-scrollbar{width:14px;height:14px}.jc-diff-body::-webkit-scrollbar-thumb{background:var(--border2);border:3px solid var(--bg);border-radius:var(--radius-pill)}.jc-diff-body::-webkit-scrollbar-thumb:hover{background:var(--text3)}.jc-diff-body::-webkit-scrollbar-track{background:var(--bg)}.jc-diff-body::-webkit-scrollbar-corner{background:var(--bg)}.jc-placeholder{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 32px;display:flex}.jc-placeholder-icon{opacity:.6;margin-bottom:4px;font-size:2.8rem;line-height:1}.jc-placeholder p{color:var(--text2);margin:0;font-size:.92rem}.jc-placeholder span{font-family:var(--font-mono);color:var(--text3);font-size:.72rem}.jc-placeholder--compact{min-height:220px;padding:42px 24px}.jc-placeholder--compact .jc-placeholder-icon{font-size:2rem}.jc-row{border-bottom:1px solid var(--border);grid-template-columns:36% 32% 32%;transition:background .1s;display:grid}.jc-row:last-child{border-bottom:none}.jc-row:hover{background:#ffffff05}.jc-row--added{background:rgba(var(--green-rgb), .04)}.jc-row--removed{background:rgba(var(--red-rgb), .04)}.jc-row--changed{background:rgba(var(--blue-rgb), .04)}.jc-row--same{background:0 0}.jc-row--ignored{opacity:.5}.jc-row--added:hover{background:rgba(var(--green-rgb), .08)}.jc-row--removed:hover{background:rgba(var(--red-rgb), .08)}.jc-row--changed:hover{background:rgba(var(--blue-rgb), .08)}.jc-cell{border-right:1px solid var(--border);align-items:center;gap:6px;min-width:0;padding:7px 12px;font-size:.82rem;display:flex}.jc-cell:last-child{border-right:none}.jc-cell--absent{background:repeating-linear-gradient(45deg,#0000,#0000 4px,#ffffff04 4px 8px)}.jc-key-cell{font-family:var(--font-mono);flex-wrap:nowrap}.jc-ln{text-align:right;width:36px;color:var(--text3);font-size:11px;font-family:var(--font-mono);-webkit-user-select:none;user-select:none;border-right:1px solid var(--border);flex-shrink:0;margin-right:6px;padding-right:8px}.jc-toggle{width:18px;height:18px;color:var(--text3);cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;font-size:.65rem;line-height:1;transition:color .15s;display:inline-flex}.jc-toggle--btn{border-radius:var(--radius-xs);font-size:13px;font-weight:700;font-family:var(--font-mono);border:none;margin-right:4px;padding:0}.jc-toggle--open{background:rgba(var(--green-rgb), .15);color:var(--green)}.jc-toggle--open:hover{background:rgba(var(--green-rgb), .3)}.jc-toggle--closed{background:rgba(var(--accent-rgb), .15);color:var(--accent)}.jc-toggle--closed:hover{background:rgba(var(--accent-rgb), .3)}.jc-toggle:hover{color:var(--accent)}.jc-toggle--leaf{cursor:default;background:0 0;border:none}.jc-key{font-family:var(--font-mono);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:600;overflow:hidden}.jc-key--added{color:var(--green)}.jc-key--removed{color:var(--red)}.jc-key--changed{color:var(--blue)}.jc-key--same{color:var(--text)}.jc-child-count{font-family:var(--font-mono);color:var(--text3);background:var(--bg3);border:1px solid var(--border);border-radius:var(--radius-xs);flex-shrink:0;padding:1px 5px;font-size:.65rem}.jc-badge{border-radius:var(--radius-pill);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;flex-shrink:0;align-items:center;padding:1px 7px;font-size:.55rem;font-weight:800;display:inline-flex}.jc-badge--added{color:var(--green);background:rgba(var(--green-rgb), .12);border:1px solid rgba(var(--green-rgb), .25)}.jc-badge--removed{color:var(--red);background:rgba(var(--red-rgb), .1);border:1px solid rgba(var(--red-rgb), .22)}.jc-badge--changed{color:var(--blue);background:rgba(var(--blue-rgb), .1);border:1px solid rgba(var(--blue-rgb), .22)}.jc-badge--ignored{color:var(--text3);background:var(--bg3);border:1px solid var(--border)}.jc-struct-badge{font-family:var(--font-mono);color:var(--text3);font-size:.65rem;font-style:italic}.jc-val-cell{font-family:var(--font-mono);font-size:.8rem}.jc-absent{color:var(--text3);font-style:italic}.jc-null{color:var(--text3)}.jc-boolean{color:var(--blue);font-weight:700}.jc-number{color:#79c0ff}.jc-string{color:#a5d6ff}.jc-bracket{color:var(--text3);font-style:italic}.jc-row--same .jc-val-cell,.jc-row--same .jc-val-cell span{color:var(--text);font-weight:400}.jc-row--added .jc-val--b,.jc-row--added .jc-val--b span{color:var(--green);font-weight:800}.jc-row--changed .jc-val-cell,.jc-row--changed .jc-val-cell span:not(.jc-diff-del):not(.jc-diff-ins):not(.jc-diff-ctx){color:var(--blue);font-weight:800}.jc-row--changed .jc-string--diff{color:var(--text2);font-weight:400}.jc-row--removed .jc-val--a,.jc-row--removed .jc-val--a span{color:var(--red);font-weight:800}.jc-row--added .jc-val--b{border-left:2px solid var(--green)!important}.jc-row--removed .jc-val--a{border-left:2px solid var(--red)!important}.jc-row--changed .jc-val--a,.jc-row--changed .jc-val--b{border-left:2px solid var(--blue)!important}.jc-string--diff{font-weight:400!important}.jc-diff-del,.jc-diff-ins{border-radius:var(--radius-xs);color:inherit;padding:0 2px;font-weight:700!important}.jc-diff-del{background:rgba(var(--red-rgb), .22);text-decoration:line-through;-webkit-text-decoration-color:rgba(var(--red-rgb), .6);text-decoration-color:rgba(var(--red-rgb), .6);color:#ff8080!important}.jc-diff-ins{background:rgba(var(--green-rgb), .18);color:#7ee787!important}.jc-diff-ctx{color:var(--text3);font-weight:400!important}[data-theme=light] .jc-diff-del{background:#cf222e1f;text-decoration-color:#cf222e80;color:#b91c1c!important}[data-theme=light] .jc-diff-ins{background:#1f883d1f;color:#15803d!important}[data-theme=light] .jc-diff-output{background:#f6f8fa;border-color:#cfd8e3}[data-theme=light] .jc-diff-header{background:#e9eef4;border-bottom-color:#c9d3df}[data-theme=light] .jc-diff-col-key,[data-theme=light] .jc-diff-col-val{color:#6b7787;border-right-color:#c9d3df}[data-theme=light] .jc-row{border-bottom-color:#ccd6e2}[data-theme=light] .jc-row:hover{background:#eef3f8}[data-theme=light] .jc-row--added{background:#edf8f1}[data-theme=light] .jc-row--removed{background:#fff1ef}[data-theme=light] .jc-row--changed{background:#eef6ff}[data-theme=light] .jc-cell{color:#24292f;border-right-color:#ccd6e2}[data-theme=light] .jc-ln{color:#6f7d8c;border-right-color:#cbd5e1}[data-theme=light] .jc-key--same{color:#1f2328}[data-theme=light] .jc-key--changed{color:#0969da}[data-theme=light] .jc-key--added{color:#116329}[data-theme=light] .jc-key--removed{color:#cf222e}[data-theme=light] .jc-string{color:#0969da;font-weight:650}[data-theme=light] .jc-number{color:#0550ae;font-weight:650}[data-theme=light] .jc-boolean{color:#8250df}[data-theme=light] .jc-null,[data-theme=light] .jc-absent,[data-theme=light] .jc-bracket,[data-theme=light] .jc-struct-badge{color:#57606a}[data-theme=light] .jc-row--same .jc-val-cell,[data-theme=light] .jc-row--same .jc-val-cell span{color:#1f2328;font-weight:400}[data-theme=light] .jc-row--added .jc-val--b,[data-theme=light] .jc-row--added .jc-val--b span{color:#116329;font-weight:800}[data-theme=light] .jc-row--changed .jc-val-cell,[data-theme=light] .jc-row--changed .jc-val-cell span:not(.jc-diff-del):not(.jc-diff-ins):not(.jc-diff-ctx){color:#0969da;font-weight:800}[data-theme=light] .jc-row--changed .jc-string--diff{color:var(--text2);font-weight:400}[data-theme=light] .jc-row--removed .jc-val--a,[data-theme=light] .jc-row--removed .jc-val--a span{color:#cf222e;font-weight:800}[data-theme=light] .jc-child-count{color:#57606a;background:#eef3f8;border-color:#cbd5e1}[data-theme=light] .jc-badge--changed{color:#0969da;background:#ddf4ff;border-color:#8cc8ff}[data-theme=light] .jc-badge--added{color:#116329;background:#dafbe1;border-color:#8bd6a4}[data-theme=light] .jc-badge--removed{color:#cf222e;background:#ffebe9;border-color:#ffaba8}[data-theme=light] .jc-toggle--open{color:#116329;background:#dafbe1}[data-theme=light] .jc-toggle--closed{color:#bc4c00;background:#ffebe9}@media (width<=900px){.jc-input-grid,.jc-result-topbar{grid-template-columns:1fr}.jc-result-tools{justify-content:flex-start}}@media (width<=700px){.jc-controls-row{flex-direction:column;align-items:flex-start}.jc-legend{flex-wrap:wrap;gap:8px}.jc-diff-toolbar{min-height:unset;flex-wrap:wrap}.jc-filter-tabs{border-bottom:1px solid var(--border);width:100%;overflow-x:auto}.jc-toolbar-right{border-left:none;flex-wrap:wrap;gap:8px;margin-left:0;padding:6px 10px}.jc-filter-tab-label,.jc-diff-header{display:none}.jc-diff-output{max-height:55vh}.jc-row{border-bottom:1px solid var(--border);grid-template-columns:1fr}.jc-cell{border-right:none;border-bottom:1px solid var(--border)}.jc-cell:last-child{border-bottom:none}.jc-result-card{border-radius:var(--radius-xl);padding:12px}}
