@import"https://fonts.googleapis.com/css2?family=Archivo:wght@400;600;800&display=swap";:root{--color-bg: #f3f2f2;--color-surface: #eae9e9;--color-text: #201e1d;--color-accent: #ec3013;--color-divider: color-mix(in srgb, #201e1d 40%, transparent);--color-neutral-100: #f8f4f4;--color-neutral-200: #eae7e7;--color-neutral-300: #d7d3d3;--color-neutral-400: #bab6b6;--color-neutral-500: #9b9797;--color-neutral-600: #7d7979;--color-neutral-700: #605d5d;--color-neutral-800: #444141;--color-neutral-900: #2d2b2b;--color-ok-100: #e4efe0;--color-ok-400: #6f9455;--color-ok-800: #2c4d1c;--color-wait-100: #faf0d8;--color-wait-400: #c8973f;--color-wait-800: #6a4a10;--color-accent-100: #fff2ef;--color-accent-200: #ffe0d9;--color-accent-700: #ae1800;--color-accent-800: #7c1405;--band-plain: #f8f8f8;--band-alt: #e3dfdf;--band-head: #606060;--font-heading: "Archivo", system-ui, sans-serif;--font-body: "Archivo", system-ui, sans-serif;--font-mono: ui-monospace, "Cascadia Mono", "Segoe UI Mono", Menlo, monospace;--radius-md: 0;--shadow-sm: 0 1px 2px color-mix(in srgb, #2d2b2b 14%, transparent);--shadow-lg: 0 12px 32px color-mix(in srgb, #2d2b2b 22%, transparent);--hover: rgba(32, 30, 29, .06);--hover-strong: rgba(32, 30, 29, .07);--backdrop: rgba(32, 30, 29, .42)}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:13px;-webkit-font-smoothing:antialiased}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}button:disabled{cursor:default;opacity:.4}.label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-neutral-700)}.mono{font-family:var(--font-mono)}.btn{font-family:var(--font-heading);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.04em;padding:7px 11px;border:1px solid var(--color-divider);display:inline-flex;align-items:center;gap:7px;border-radius:var(--radius-md)}.btn-primary{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.btn-primary:hover:not(:disabled){background:var(--color-accent-700);border-color:var(--color-accent-700)}.btn-ghost{border-color:transparent}.btn-ghost:hover{background:var(--hover);border-color:var(--color-divider)}.btn:not(.btn-primary):not(.btn-ghost):hover:not(:disabled){background:var(--hover)}.input{width:100%;font-family:var(--font-body);font-size:13px;padding:7px 9px;border:1px solid var(--color-divider);background:#fff;color:var(--color-text);border-radius:var(--radius-md);resize:vertical;field-sizing:content;min-height:2.4em;max-height:30em}.input:focus{outline:none;border-color:var(--color-accent)}.input.edited{background:var(--color-accent-100)}.setting-switch{flex-direction:row;align-items:center;gap:8px;cursor:pointer}.setting-switch input{margin:0;accent-color:var(--color-accent)}.setting-switch .label.edited-label{background:var(--color-accent-100);padding:1px 4px}.input:disabled{background:var(--color-neutral-200);color:var(--color-neutral-700)}.panel .input{flex:none}.shell{height:100vh;display:grid;grid-template-rows:56px minmax(0,1fr) 36px;overflow:hidden}.middle{display:grid;grid-template-columns:minmax(430px,1fr) minmax(200px,330px);min-height:0}.header{display:flex;align-items:center;gap:14px;padding:0 14px;border-bottom:2px solid var(--color-divider)}.brand{display:flex;align-items:center;gap:9px;flex:none}.brand-tile{display:block;flex:none}.brand-name{font-family:var(--font-heading);font-weight:800;font-size:17px;letter-spacing:.06em;white-space:nowrap}.brand-dot{color:var(--color-accent);padding:0 .3em}.rule-v{width:2px;height:22px;background:var(--color-divider)}.source-btn{background:transparent;border:1px solid var(--color-neutral-400);padding:4px 6px;text-align:left;display:block;min-width:0;overflow:hidden}.source-btn .site,.source-btn .where{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.source-btn:hover{background:var(--hover);border-color:var(--color-neutral-700)}.source-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.source-btn .site-line{display:flex;align-items:baseline;gap:12px}.source-btn .site{font-family:var(--font-heading);font-weight:800;font-size:13px}.source-btn .site-state{margin-left:auto;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;white-space:nowrap}.source-btn.site-match{background:var(--color-ok-100);border-color:var(--color-ok-400)}.source-btn.site-match .site-state{color:var(--color-ok-800)}.source-btn.site-pending,.source-btn.site-behind{background:var(--color-wait-100);border-color:var(--color-wait-400)}.source-btn.site-pending .site-state,.source-btn.site-behind .site-state{color:var(--color-wait-800)}.source-btn.site-unchecked .site-state{color:var(--color-neutral-700)}.source-btn .where{font-size:11px;color:var(--color-neutral-700);font-family:var(--font-mono)}.pill{font-size:11px;text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--color-divider);padding:3px 7px}.badge{font-size:11px;padding:1px 6px;background:#ffffff3d}.status-square{width:8px;height:8px;background:var(--color-text)}.status-square.off{background:var(--color-accent)}.card{border-left:2px solid var(--color-accent);background:var(--color-accent-100);color:var(--color-accent-800);padding:8px 10px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}.card.warn{border-left:2px solid var(--color-neutral-800);background:var(--color-neutral-200);color:var(--color-neutral-900)}.unseen{list-style:none;display:flex;flex-direction:column;gap:7px;margin-top:6px}.unseen li{border-top:1px solid var(--color-neutral-400);padding-top:6px}.unseen b{font-family:var(--font-heading);font-weight:800}.unseen .how{color:var(--color-neutral-700);margin-top:2px}.card-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;font-family:var(--font-heading)}.card-body{font-size:12px;line-height:1.45}.card .btn{font-size:12px;padding:5px 9px}.centre{display:flex;flex-direction:column;min-width:0;min-height:0;container-type:inline-size}.toolbar{height:44px;flex:none;display:flex;align-items:center;gap:10px;padding:0 10px;overflow:hidden;border-bottom:2px solid var(--color-divider)}.toolbar .path{font-size:12px;font-family:var(--font-mono);flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar .note{font-size:11px;color:var(--color-neutral-700);flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar .spacer{flex:1 1 8px}.seg{display:flex;border:1px solid var(--color-divider);flex:none}.seg button{font-family:var(--font-heading);font-weight:800;font-size:11px;text-transform:uppercase;padding:6px 9px;border-left:1px solid var(--color-divider)}.seg button:first-child{border-left:0}.seg button.on{background:var(--color-accent);color:#fff}.seg button:not(.on):hover{background:var(--hover)}.seg.dark button.on{background:var(--color-text);color:var(--color-bg)}.panes{display:flex;flex:1 1 0;min-height:0;flex-wrap:nowrap;overflow:hidden}@container (max-width: 860px){.panes.split{flex-direction:column}.panes.split>*{flex:1 1 50%;min-height:0;min-width:0}.panes.split .code-view{border-left:0;border-top:2px solid var(--color-divider)}}.page-view{display:flex;flex-direction:column;flex:1 1 430px;min-width:0;min-height:0;padding:10px;gap:8px}.viewbar{display:flex;align-items:center;gap:8px;flex:none;flex-wrap:wrap}.icon-btn{padding:6px 9px;display:inline-flex;align-items:center}.zoom{display:flex;align-items:center;border:1px solid var(--color-divider)}.zoom .readout{min-width:52px;text-align:center;font-family:var(--font-heading);font-weight:800;font-size:11px;font-variant-numeric:tabular-nums;border-left:1px solid var(--color-divider);border-right:1px solid var(--color-divider);padding:6px 4px}.zoom button.on{background:var(--color-accent);color:#fff}.render-box{flex:1 1 0;min-height:200px;overflow:auto;border:1px solid var(--color-divider);box-shadow:var(--shadow-sm);background:var(--color-neutral-200)}.render-box iframe{border:0;display:block}.code-view{flex:1 1 380px;min-width:320px;padding:14px 12px;background:#fff;overflow:auto;min-height:0}.panes.split .code-view{border-left:2px solid var(--color-divider)}.warn{border-left:2px solid var(--color-accent);background:var(--color-accent-100);color:var(--color-accent-800);font-size:12px;padding:8px 10px;margin-bottom:10px;line-height:1.45}.code-line{display:flex;gap:12px;font-family:var(--font-mono);font-size:12px;line-height:1.75}.code-line .gutter{width:34px;flex:none;text-align:right;color:var(--color-neutral-700);user-select:none}.code-line .content{white-space:normal;word-break:break-word;min-height:20px}.code-line.sel{background:var(--color-accent-100);box-shadow:inset 2px 0 0 var(--color-accent)}.t-punct{color:var(--color-neutral-700)}.t-tag{color:var(--color-accent-700)}.t-attr{color:var(--color-neutral-700)}.t-str{color:var(--color-neutral-900)}.t-text{color:var(--color-text)}.right{border-left:2px solid var(--color-divider);display:flex;flex-direction:column;min-width:0;min-height:0}.tabs{height:44px;flex:none;display:flex;border-bottom:2px solid var(--color-divider)}.tabs button{flex:1;font-family:var(--font-heading);font-weight:800;font-size:12px;text-transform:uppercase;min-width:0;padding:0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tabs button.on{background:var(--color-text);color:var(--color-bg)}.tabs button:not(.on):hover{background:var(--hover-strong)}.panel{overflow:auto;padding:12px;display:flex;flex-direction:column;gap:12px;min-height:0}.field{display:flex;flex-direction:column;gap:5px}.field-head{display:flex;align-items:baseline;gap:8px}.field-head .tag{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--color-neutral-700)}.pic-row{display:flex;gap:10px;align-items:center;padding:6px;border:2px solid transparent;text-align:left;width:100%}.pic-row:hover{background:var(--hover)}.pic-row.on{border-color:var(--color-accent)}.pic-row img{width:64px;height:46px;object-fit:cover;flex:none;background:var(--color-neutral-200)}.pic-row .name{font-family:var(--font-mono);font-size:12px;word-break:break-all}.pic-row .meta{font-size:11px;color:var(--color-neutral-700)}.pic-row .use{font-size:11px;color:var(--color-accent-700)}.proptable{width:100%;border-collapse:collapse}.proptable td{border-top:1px solid var(--color-divider);padding:6px 0;font-size:12px;vertical-align:top}.proptable td:first-child{width:78px}.proptable .k{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--color-neutral-700)}.was{background:var(--color-neutral-200);padding:7px 9px;font-size:12px;line-height:1.45}.empty{font-size:12px;color:var(--color-neutral-700);line-height:1.5}.footer{display:flex;align-items:center;gap:12px;padding:0 14px;border-top:2px solid var(--color-divider);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--color-neutral-700);overflow:hidden;white-space:nowrap}.chip{border:1px solid var(--color-divider);padding:3px 7px}.chip.dirty{border-color:var(--color-accent);background:var(--color-accent-100);color:var(--color-accent-800)}.chip.status-match{border-color:var(--color-ok-400);background:var(--color-ok-100);color:var(--color-ok-800)}.chip.status-waiting{border-color:var(--color-wait-400);background:var(--color-wait-100);color:var(--color-wait-800)}.chip.status-unknown{border-color:var(--color-neutral-400);color:var(--color-neutral-700)}.chip.switched{border-color:var(--color-neutral-800);background:var(--color-neutral-100);color:var(--color-neutral-900)}.backdrop{position:fixed;inset:0;background:var(--backdrop);display:flex;align-items:center;justify-content:center;padding:24px;z-index:40}.dialog{background:var(--color-bg);border:2px solid var(--color-text);box-shadow:var(--shadow-lg);padding:22px;max-height:88vh;overflow:auto;width:100%}.dialog h2{font-family:var(--font-heading);font-weight:800;font-size:19px;letter-spacing:-.01em}.dialog h3{font-family:var(--font-heading);font-weight:800;font-size:16px}.dialog p{font-size:13px;line-height:1.5}.dialog .actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.dialog.tight{padding:16px 18px}.dialog.tight h2{font-size:16px}.dialog.tight .stack{gap:9px}.dialog.tight .actions{margin-top:12px}.dialog.tight p{font-size:13px}.drift{display:flex;flex-direction:column;gap:9px;max-height:44vh;overflow:auto}.drift-row{display:flex;flex-direction:column;gap:3px;padding-top:8px;border-top:1px solid var(--color-divider)}.drift-head{display:flex;gap:8px;align-items:baseline}.drift-tag{font-family:var(--font-mono);font-size:11px;color:var(--color-neutral-700)}.drift-label{font-family:var(--font-heading);font-weight:800;font-size:12px}.drift-mine{background:var(--color-wait-100);color:var(--color-wait-800);padding:5px 8px;font-size:12px}.drift-side{display:inline-block;min-width:78px;margin-right:8px;font-family:var(--font-heading);font-weight:800;font-size:10px;text-transform:uppercase;letter-spacing:.06em;opacity:.75}.drift-theirs{background:var(--color-neutral-200);padding:5px 8px;font-size:12px}.stack{display:flex;flex-direction:column;gap:14px}.cols3{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:2px solid var(--color-text)}.cols3>div{padding:14px 12px 4px;border-left:1px solid var(--color-divider);display:flex;flex-direction:column;gap:5px}.cols3>div:first-child{border-left:0;padding-left:0}.numbered{display:flex;gap:12px;padding-top:14px;border-top:1px solid var(--color-divider)}.numbered .n{font-family:var(--font-heading);font-weight:800;font-size:13px;color:var(--color-neutral-700);flex:none}.change{display:flex;flex-direction:column;gap:4px;padding-top:10px;border-top:1px solid var(--color-divider)}.change .head{display:flex;gap:8px;align-items:baseline}.change .from{background:var(--color-neutral-200);color:var(--color-neutral-700);padding:6px 8px;font-size:12px}.change .to{background:var(--color-wait-100);color:var(--color-wait-800);padding:6px 8px;font-size:12px}.change .side{display:inline-block;min-width:56px;margin-right:8px;font-family:var(--font-heading);font-weight:800;font-size:10px;text-transform:uppercase;letter-spacing:.06em;opacity:.75}.step{display:flex;gap:10px;align-items:baseline;padding:7px 0}.step .mark{width:10px;height:10px;flex:none;background:var(--color-neutral-300);position:relative;top:2px}.step.done .mark{background:var(--color-text)}.step.active .mark,.step.failed .mark{background:var(--color-accent)}.step .txt{font-size:13px}.step .note{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--color-neutral-700);text-align:right}.step.failed .note{color:var(--color-accent-700)}.banner-err{border-left:2px solid var(--color-accent);background:var(--color-accent-100);color:var(--color-accent-800);padding:10px 12px;font-size:12px;line-height:1.5}.swatch{width:26px;height:26px;flex:none;border:1px solid var(--color-divider);position:relative;overflow:hidden;cursor:pointer}.swatch input[type=color]{position:absolute;inset:-4px;width:calc(100% + 8px);height:calc(100% + 8px);border:0;padding:0;opacity:0;cursor:pointer}.titlebar{display:none}.shell.wco{grid-template-rows:env(titlebar-area-height,33px) 56px minmax(0,1fr) 36px}.shell.wco .titlebar{display:flex;align-items:center;gap:9px;background:var(--color-accent);color:#fff;height:env(titlebar-area-height,33px);margin-left:env(titlebar-area-x,0px);width:env(titlebar-area-width,100%);padding:0 12px;overflow:hidden;-webkit-app-region:drag;app-region:drag}.shell.wco .titlebar .mark{font-family:var(--font-heading);font-weight:800;font-size:13px;letter-spacing:.06em;white-space:nowrap}.shell.wco .titlebar .mark .brand-dot{color:#fff}.shell.wco .titlebar .tile{width:20px;height:20px;display:block;flex:none}.dest{display:grid;gap:8px}.dest-opt{display:grid;gap:3px;text-align:left;padding:10px 12px;border:1px solid var(--color-divider);background:var(--color-neutral-100);cursor:pointer;font:inherit;color:inherit}.dest-opt:hover{border-color:var(--color-neutral-600)}.dest-opt.on{border-color:var(--color-accent);background:var(--color-accent-100)}.dest-name{font-size:13px;font-weight:600}.dest-name em{font-style:normal;font-weight:400;color:var(--color-neutral-700)}.dest-url{font-family:var(--font-mono);font-size:11px;color:var(--color-neutral-700)}.dest-why{font-size:12px;line-height:1.4;color:var(--color-neutral-800)}.panel-banded{padding:12px 0;gap:0}.panel-banded>.label{padding:0 12px 10px}.band{background:var(--band-plain);display:flex;flex-direction:column;gap:12px;padding:10px 12px 14px;border-top:1px solid var(--color-divider)}.band.alt{background:var(--band-alt)}.band:last-child{border-bottom:1px solid var(--color-divider)}.band-head{position:sticky;top:-10px;z-index:1;display:flex;align-items:baseline;gap:8px;margin:-10px 0 0;padding:8px 12px;background:inherit;border:0;font:inherit;text-align:left;cursor:pointer}.band-head:hover .band-name{color:#fff}.band-head:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.band.shut{padding-bottom:0}.band.shut .band-head{margin-bottom:0}.band-mark{font-family:var(--font-mono);font-size:12px;line-height:1;width:9px;flex:none;color:#ffffffb8}.band-head,.band.alt .band-head{background:var(--band-head);border-bottom:1px solid var(--color-divider)}.band-name{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.band-count{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:#ffffffb8}.band-note{margin:0;font-size:12px;line-height:1.45;color:var(--color-neutral-700)}.not-drawn{display:flex;flex-direction:column;gap:2px;padding:8px 12px;background:var(--color-neutral-200);border-bottom:1px solid var(--color-divider);font-size:12px;line-height:1.4}.not-drawn b{font-size:11px;text-transform:uppercase;letter-spacing:.06em}.not-drawn span{color:var(--color-neutral-800)}.trail{display:flex;flex-wrap:wrap;align-items:center;gap:2px 4px;padding-bottom:8px;border-bottom:1px solid var(--color-divider);line-height:1.6}.trail .sep{font-style:normal;color:var(--color-neutral-500);padding:0 1px}.crumb{font-family:var(--font-mono);font-size:11px;padding:1px 5px;border:1px solid transparent;background:none;color:var(--color-neutral-800);cursor:pointer}.crumb:hover:not(:disabled){border-color:var(--color-divider);background:var(--color-neutral-100)}.crumb.on{color:var(--color-accent-800);background:var(--color-accent-100);border-color:var(--color-accent-200);cursor:default}.crumb.dim:not(.on){color:var(--color-neutral-600)}.clump{display:flex;flex-direction:column;gap:12px;padding:9px;border:1px solid var(--color-neutral-400)}.clump-head{display:flex;align-items:baseline;gap:7px;padding:0;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.clump-head:hover .clump-preview{color:var(--color-text)}.clump-head:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.clump-kind{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-neutral-800);flex:none}.clump-preview{font-size:12px;color:var(--color-neutral-700);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clump-count{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--color-neutral-600);flex:none}.ver{display:flex;align-items:center;gap:12px;padding:9px 0;border-top:1px solid var(--color-divider)}.ver-main{min-width:0;flex:1}.ver-msg{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ver-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-top:2px;font-size:11px;color:var(--color-neutral-700)}.ver-tag{text-transform:uppercase;letter-spacing:.06em;font-size:10px;padding:1px 5px;border:1px solid var(--color-divider)}.ver.on .ver-msg{font-weight:600}.ver.on .ver-tag{border-color:var(--color-accent);color:var(--color-accent-800)}.ver-tag.dim{color:var(--color-neutral-600)}.why{margin-left:auto;padding:0 5px;border:1px solid var(--color-divider);background:none;font-family:var(--font-mono);font-size:10px;color:var(--color-neutral-700);cursor:pointer}.why:hover{border-color:var(--color-neutral-600);color:var(--color-text)}.trace{display:flex;flex-direction:column;gap:4px;padding:7px 9px;background:var(--color-neutral-100);border-left:2px solid var(--color-neutral-400);font-size:11px;line-height:1.45}.trace-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}.trace-line.dim{color:var(--color-neutral-600)}.trace-line.dim .mono{text-decoration:line-through}.trace-key{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--color-neutral-700);flex:none}.trace-from{color:var(--color-neutral-700)}.trace-warn{color:var(--color-accent-800)}.panel-select,.band .clump{background:var(--band-alt)}.band.alt .clump{background:var(--band-plain)}.notices{display:flex;flex-direction:column;gap:10px;padding:10px 12px;background:var(--band-plain);border-bottom:1px solid var(--color-divider)}
