:root{--bg:#fbfbfd;--surface:#fff;--border:#e3e5ea;--text:#16181d;--muted:#6b7280;--accent:#2563eb;--accent-text:#fff;--danger:#b42318;--warn-bg:#fff7e6;--warn-border:#f0c36d;--changed:#fff9e0;--modified-accent:#b8860b;--modified-text:#7a5901;--branch-bg:#f3f5f9;--chunk-removed:#ffc9c4;--chunk-added:#aee6b8;--added:#eaf7ee;--removed:#fdeceb;--same:transparent;--mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--radius:8px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1115;--surface:#161a21;--border:#2a2f3a;--text:#e6e8ec;--muted:#9aa3b2;--accent:#5b8cff;--accent-text:#0f1115;--danger:#ff6b5e;--warn-bg:#2a2313;--warn-border:#6b5518;--changed:#2b2712;--added:#12261a;--removed:#2a1615;--modified-accent:#e3b341;--modified-text:#e3b341;--branch-bg:#1a1f28;--chunk-removed:#5e2a26;--chunk-added:#1f4d2c}}:root[data-theme=dark]{--modified-accent:#e3b341;--modified-text:#e3b341;--branch-bg:#1a1f28;--chunk-removed:#5e2a26;--chunk-added:#1f4d2c;--bg:#0f1115;--surface:#161a21;--border:#2a2f3a;--text:#e6e8ec;--muted:#9aa3b2;--accent:#5b8cff;--accent-text:#0f1115;--danger:#ff6b5e;--warn-bg:#2a2313;--warn-border:#6b5518;--changed:#2b2712;--added:#12261a;--removed:#2a1615}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:14px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.mono{font-family:var(--mono);font-size:12.5px}.muted{color:var(--muted)}.center{text-align:center}.right{text-align:right}.signin{place-items:center;min-height:100vh;padding:16px;display:grid}.signin-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:420px;padding:32px}.signin-card h1{margin:0 0 8px;font-size:20px}.gsi-button{justify-content:center;margin:20px 0 12px;display:flex}.hint{color:var(--muted);font-size:12px}.app{flex-direction:column;height:100vh;display:flex}header{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:10px 16px;display:flex}.brand{align-items:baseline;gap:12px;display:flex}.who{flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.tier{border:1px solid var(--border);border-radius:999px;padding:2px 7px;font-size:11px}.tier.prod{border-color:var(--danger);color:var(--danger)}.layout{flex:1;grid-template-columns:280px 1fr;min-height:0;display:grid;overflow:hidden}aside{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;gap:10px;min-height:0;padding:12px;display:flex}.field{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.field select,.filter,input,select{border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;border-radius:6px;width:100%;padding:7px 9px}.charts{flex:1;min-height:120px;margin:0;padding:0;list-style:none;overflow-y:auto}.charts button{text-align:left;width:100%;color:var(--text);cursor:pointer;font-family:var(--mono);background:0 0;border:0;border-radius:6px;padding:6px 8px;font-size:12.5px}.charts button:hover{background:var(--bg)}.charts button.active{background:var(--accent);color:var(--accent-text)}.charts button.modified{color:var(--modified-text);box-shadow:inset 2px 0 0 var(--modified-accent);font-weight:600}.charts button.modified.active{color:var(--accent-text);box-shadow:inset 2px 0 0 var(--modified-accent)}.charts button{justify-content:space-between;align-items:center;gap:6px;display:flex}.charts .dot{background:var(--modified-accent);border-radius:50%;flex:none;width:7px;height:7px}.charts .empty{padding:8px;font-size:12.5px}.save-all{border-top:1px solid var(--border);flex-direction:column;gap:6px;margin-top:4px;padding-top:10px;font-size:12px;display:flex}.save-all button{width:100%}main{min-width:0;padding:16px;overflow:auto}.tabs{flex-wrap:wrap;gap:4px;margin-bottom:14px;display:flex}.tabs button{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:6px;padding:7px 13px}.tabs button.active{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}button{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;font:inherit;border-radius:6px;padding:7px 12px}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}button.link{color:var(--accent);background:0 0;border:0;padding:2px 6px}button.link.danger{color:var(--danger)}.editor-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.editor-head h2{font-size:16px;font-family:var(--mono);margin:0 0 2px}.editor-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.editor-actions .filter{width:180px}table.values{border-collapse:collapse;width:100%;margin-top:12px}table.values td.value-cell,.diff-table td{overflow-wrap:anywhere}table.values th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);border-bottom:1px solid var(--border);padding:6px 8px;font-size:11px;font-weight:600}table.values{table-layout:fixed}table.values td{border-bottom:1px solid var(--border);vertical-align:top;padding:5px 8px}col.col-key{width:34%;min-width:240px}col.col-line{width:56px}col.col-actions{width:132px}table.values td.key{padding-right:14px}table.values.tree td{padding-top:2px;padding-bottom:2px}table.values.tree td.key .seg{overflow-wrap:anywhere;max-width:100%;display:inline-block}table.values.tree td.key{vertical-align:top;padding-top:7px}tr.branch td{background:var(--branch-bg);border-bottom:1px solid var(--border);padding-top:5px;padding-bottom:5px}.twisty{cursor:pointer;color:var(--text);background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.caret{color:var(--muted);width:10px;font-size:11px;display:inline-block}.seg{font-size:12.5px}tr.branch .seg{font-weight:600}.seg.index{color:var(--muted)}.count{border:1px solid var(--border);border-radius:999px;margin-left:8px;padding:0 6px;font-size:10.5px}.add-here{opacity:0;margin-left:10px;font-size:11.5px;transition:opacity .1s}tr.branch:hover .add-here,tr.branch:focus-within .add-here{opacity:1}tr.branch.has-changes td{box-shadow:inset 2px 0 0 var(--modified-accent)}table.values.tree td.key,table.values.tree tr.branch td{background-image:linear-gradient(var(--border), var(--border));background-position:3px 0;background-repeat:no-repeat;background-size:1px 100%}tr.branch td{background-position:3px 0}.insert-row td{background:var(--added)}.insert-form{align-items:center;gap:8px;padding:4px 0 4px 24px;display:flex}.insert-form input{flex:1;min-width:110px}.insert-form button{flex:none}.add-root{margin-top:10px;font-size:12.5px}.pad{padding:18px}td.line{font-size:11px}.keypath{text-indent:-1.2em;word-break:normal;overflow-wrap:break-word;max-width:100%;padding-left:1.2em;line-height:1.45;display:inline-block}.keypath-dot{color:var(--muted)}tr.changed{background:var(--changed)}tr.added{background:var(--added)}tr.removed{background:var(--removed);opacity:.75;text-decoration:line-through}.value-input{width:100%}.row-actions{white-space:nowrap}.tag{background:var(--accent);color:var(--accent-text);border-radius:999px;padding:1px 5px;font-size:10px}.masked{letter-spacing:2px;align-items:center;gap:8px;display:inline-flex}.pending-edit{letter-spacing:0;color:var(--modified-text);border:1px solid var(--modified-accent);border-radius:999px;padding:0 6px;font-size:10.5px;font-weight:600}.hash{letter-spacing:0;color:var(--muted);font-size:11px}.absent{color:var(--muted);font-style:italic}.add-row{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.add-row input{flex:1;min-width:140px}.diff-controls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.diff-controls select{width:auto;min-width:150px}.check{align-items:center;gap:6px;font-size:13px;display:flex}.check input{width:auto}.diff-summary{flex-wrap:wrap;gap:8px;margin:14px 0 4px;display:flex}.pill{border:1px solid var(--border);border-radius:999px;padding:3px 9px;font-size:12px}.pill.different{background:var(--changed)}.pill.only-left,.pill.only-right{background:var(--removed)}.diff-table tr.different td{background:var(--changed)}.chunk{border-radius:3px;padding:0 1px}.chunk.removed{background:var(--chunk-removed)}.chunk.added{background:var(--chunk-added)}.diff-table tr.onlyleft td,.diff-table tr.onlyright td{background:var(--removed)}.pending-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px;padding:12px;display:flex}.pending-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.panel{padding:16px}.error{color:var(--danger);border:1px solid var(--danger);border-radius:6px;margin:10px 0;padding:9px 12px}.warning{background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:6px;margin:10px 0;padding:9px 12px}.notice{border:1px solid var(--border);color:var(--muted);border-radius:6px;margin:10px 0;padding:9px 12px}.toast{z-index:10;background:var(--surface);border:1px solid var(--accent);border-radius:var(--radius);overflow-wrap:anywhere;max-width:460px;padding:11px 14px;position:fixed;bottom:16px;right:16px;box-shadow:0 6px 24px #00000024}.toast.warn{border-color:var(--warn-border);background:var(--warn-bg)}@media (width<=860px){.app{height:auto;min-height:100vh}.layout{grid-template-columns:1fr;overflow:visible}aside{border-right:0;border-bottom:1px solid var(--border)}.charts{max-height:240px}main{padding:16px}}
