@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=DM+Mono:wght@400;500&display=swap";:root{--bg: #f2f4f7;--panel: #ffffff;--panel-2: #f8fafc;--line: #e3e7ee;--line-soft: #edf0f5;--ink: #101828;--ink-2: #4a5568;--ink-3: #8a94a6;--accent: #4f46e5;--accent-2: #6366f1;--accent-soft: #eef1ff;--accent-line: #d7dbff;--ok: #0b8a5f;--ok-soft: #e4f6ee;--ok-line: #bfe8d6;--warn: #b26a05;--warn-soft: #fdf3e0;--warn-line: #f3ddb2;--bad: #cf3049;--bad-soft: #fdeaee;--bad-line: #f7cbd4;--info: #1f6feb;--info-soft: #e8f1fe;--info-line: #c7dcfb;--r: 10px;--r-sm: 7px;--r-xs: 5px;--shadow: 0 1px 2px rgba(16, 24, 40, .05);--shadow-lift: 0 12px 34px rgba(16, 24, 40, .16);--mono: "DM Mono", ui-monospace, SFMono-Regular, Menlo, monospace;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:13px;color:var(--ink);font-synthesis:none;-webkit-font-smoothing:antialiased;font-feature-settings:"cv05" 1,"ss01" 1,"tnum" 0}*{box-sizing:border-box}body{margin:0;min-width:340px;background:var(--bg);overflow:hidden}h1,h2,h3,h4,p,figure{margin:0}code,.mono{font-family:var(--mono);font-size:.92em}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background:#d2d8e3;border:3px solid transparent;background-clip:content-box;border-radius:9px}::-webkit-scrollbar-thumb:hover{background:#b8c1d1;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:28px;padding:0 10px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--panel);color:var(--ink-2);font-size:12px;font-weight:600;white-space:nowrap;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.btn:hover:not(:disabled){background:var(--panel-2);border-color:#cfd6e2;color:var(--ink)}.btn:active:not(:disabled){transform:translateY(.5px)}.btn.primary{background:linear-gradient(180deg,var(--accent-2),var(--accent));border-color:transparent;color:#fff;box-shadow:0 1px 2px #4f46e559}.btn.primary:hover:not(:disabled){filter:brightness(1.07);color:#000}.btn.ghost{background:transparent;border-color:transparent}.btn.ghost:hover:not(:disabled){background:var(--panel-2);border-color:var(--line)}.btn.danger{color:var(--bad);background:var(--bad-soft);border-color:var(--bad-line)}.btn.danger:hover:not(:disabled){background:#fce0e5;color:var(--bad)}.btn.ok{color:var(--ok);background:var(--ok-soft);border-color:var(--ok-line)}.btn.ok:hover:not(:disabled){background:#d8f1e6;color:var(--ok)}.btn.tall{height:32px;padding:0 14px}.btn.mini{height:23px;padding:0 7px;font-size:11px;gap:4px}.btn.icon{width:28px;padding:0}.btn.icon.mini{width:23px}.link{border:0;background:none;padding:0;color:var(--accent);font-size:11.5px;font-weight:600}.link:hover{text-decoration:underline}input[type=text],input:not([type]),textarea,select{height:28px;padding:0 8px;border:1px solid var(--line);border-radius:var(--r-xs);background:var(--panel);font-size:12px;outline:none;max-width:100%}textarea{height:auto;padding:6px 8px;resize:vertical;line-height:1.45}select{padding-right:4px;cursor:pointer}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4f46e51f}.pill{display:inline-flex;align-items:center;gap:4px;height:19px;padding:0 7px;border-radius:999px;font-size:10.5px;font-weight:600;letter-spacing:.01em;white-space:nowrap;border:1px solid transparent}.pill.cap{text-transform:capitalize}.tone-ok{background:var(--ok-soft);color:var(--ok);border-color:var(--ok-line)}.tone-warn{background:var(--warn-soft);color:var(--warn);border-color:var(--warn-line)}.tone-bad{background:var(--bad-soft);color:var(--bad);border-color:var(--bad-line)}.tone-info{background:var(--info-soft);color:var(--info);border-color:var(--info-line)}.tone-accent{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-line)}.tone-idle{background:var(--panel-2);color:var(--ink-3);border-color:var(--line)}.chip{display:inline-flex;align-items:center;gap:4px;height:18px;padding:0 6px;border-radius:var(--r-xs);background:var(--panel-2);border:1px solid var(--line-soft);color:var(--ink-3);font-size:10.5px;font-weight:600;white-space:nowrap}.chip code{color:var(--ink-2)}.count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--accent);color:#fff;font-size:10px;font-weight:700}.count.muted{background:#dfe3ec;color:var(--ink-2)}.label{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3)}kbd{display:inline-block;min-width:15px;padding:1px 4px;border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;background:var(--panel-2);font-family:var(--mono);font-size:10px;color:var(--ink-2);text-align:center}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(320%)}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.72)}}@keyframes ring{0%{box-shadow:0 0 #4f46e559}70%{box-shadow:0 0 0 7px #4f46e500}to{box-shadow:0 0 #4f46e500}}@keyframes shimmer{0%{background-position:-220px 0}to{background-position:220px 0}}@keyframes rise{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes drawer-in{0%{transform:translate(18px);opacity:0}to{transform:none;opacity:1}}.spin{animation:spin .9s linear infinite}.livedot{width:6px;height:6px;border-radius:50%;background:var(--ok);flex:none}.livedot.working{background:var(--accent);animation:pulse-dot 1.1s ease-in-out infinite}.livedot.off{background:var(--ink-3)}.livedot.bad{background:var(--bad)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}.spin,.progressline i,.livedot.working{animation-duration:1.1s!important;animation-iteration-count:infinite!important}}.skeleton{height:9px;border-radius:4px;background:linear-gradient(90deg,#eceff4 25%,#f6f8fa,#eceff4 75%);background-size:440px 100%;animation:shimmer 1.3s linear infinite}.app{height:100dvh;display:flex;flex-direction:column;background:radial-gradient(900px 380px at 12% -8%,#eaeeff 0%,transparent 62%),radial-gradient(760px 320px at 92% -12%,#e6f5ef 0%,transparent 58%),var(--bg)}.topbar{flex:none;height:46px;display:flex;align-items:center;gap:10px;padding:0 10px 0 12px;background:#ffffffc7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:8px}.brand-mark{width:24px;height:24px;display:grid;place-items:center;border-radius:7px;background:linear-gradient(150deg,var(--accent-2),#7c3aed 65%,#0ea5e9);color:#fff;box-shadow:0 2px 6px #4f46e559}.brand b{font-size:13px;font-weight:700;letter-spacing:-.01em}.brand span{display:block;font-size:9.5px;color:var(--ink-3);font-weight:600;letter-spacing:.04em}.topbar-sep{width:1px;height:20px;background:var(--line);flex:none}.job-switch{display:flex;align-items:center;gap:6px;min-width:0}.job-switch select{height:26px;max-width:250px;border-color:transparent;background:var(--panel-2);font-weight:600;font-size:12px}.job-switch select:hover{border-color:var(--line)}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:6px}.state-chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px;border-radius:999px;border:1px solid var(--line);background:var(--panel);font-size:11.5px;font-weight:600;color:var(--ink-2)}.state-chip.live{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent)}.state-chip.off{border-color:var(--bad-line);background:var(--bad-soft);color:var(--bad)}.state-chip time{font-variant-numeric:tabular-nums;opacity:.75}.progressline{flex:none;height:2px;background:transparent;overflow:hidden}.progressline.on{background:var(--line-soft)}.progressline i{display:block;height:100%;width:26%;border-radius:2px;background:linear-gradient(90deg,transparent,var(--accent-2),var(--accent),transparent);animation:slide 1.15s cubic-bezier(.4,0,.2,1) infinite}.rail{flex:none;margin:8px 8px 0;padding:7px 10px;display:flex;align-items:center;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}.stages{display:flex;align-items:center;gap:2px;flex:1;min-width:0}.stage{display:flex;align-items:center;gap:7px;padding:3px 8px 3px 4px;border-radius:999px;min-width:0}.stage-dot{width:20px;height:20px;flex:none;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);background:var(--panel-2);color:var(--ink-3);font-size:10px;font-weight:700}.stage-text{min-width:0;line-height:1.15}.stage-text b{display:block;font-size:11.5px;font-weight:600;color:var(--ink-3);white-space:nowrap}.stage-text small{display:block;font-size:10px;color:var(--ink-3);opacity:.8;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stage.done .stage-dot{background:var(--ok-soft);border-color:var(--ok-line);color:var(--ok)}.stage.done .stage-text b{color:var(--ink-2)}.stage.active{background:var(--accent-soft)}.stage.active .stage-dot{background:var(--accent);border-color:var(--accent);color:#fff;animation:ring 1.6s ease-out infinite}.stage.active .stage-text b{color:var(--accent)}.stage.active .stage-text small{color:var(--accent);opacity:.85}.stage.blocked{background:var(--warn-soft)}.stage.blocked .stage-dot{background:var(--warn);border-color:var(--warn);color:#fff}.stage.blocked .stage-text b,.stage.blocked .stage-text small{color:var(--warn)}.stage.failed{background:var(--bad-soft)}.stage.failed .stage-dot{background:var(--bad);border-color:var(--bad);color:#fff}.stage.failed .stage-text b,.stage.failed .stage-text small{color:var(--bad)}.stage-link{width:14px;height:1px;background:var(--line);flex:none}.stage-link.filled{background:var(--ok-line)}.next-action{flex:none;display:flex;align-items:center;gap:9px;padding-left:10px;border-left:1px solid var(--line-soft)}.next-action .next-copy{text-align:right;line-height:1.2}.next-action .next-copy b{display:block;font-size:11.5px}.next-action .next-copy small{display:block;font-size:10px;color:var(--ink-3)}.body{flex:1;min-height:0;display:grid;grid-template-columns:236px minmax(0,1fr) 306px;gap:8px;padding:8px}.col{display:flex;flex-direction:column;gap:8px;min-height:0;min-width:0}.panel{display:flex;flex-direction:column;min-height:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden;position:relative}.panel.grow{flex:1}.panel-head{flex:none;min-height:33px;display:flex;align-items:center;gap:8px;padding:6px;border-bottom:1px solid var(--line-soft);background:linear-gradient(180deg,#fff,var(--panel-2))}.panel-head h2{font-size:11.5px;font-weight:700;letter-spacing:.02em;display:flex;align-items:center;gap:6px}.panel-head .head-right{margin-left:auto;display:flex;align-items:center;gap:6px}.panel-body{flex:1;min-height:0;overflow:auto}.panel-body.pad{padding:8px}.busy-bar{flex:none;display:flex;align-items:center;gap:6px;padding:4px 10px;background:var(--accent-soft);border-bottom:1px solid var(--accent-line);color:var(--accent);font-size:11px;font-weight:600}.offline-strip{display:flex;align-items:center;gap:6px;margin:8px 8px 0;padding:6px 10px;border-radius:var(--r-sm);background:var(--bad-soft);border:1px solid var(--bad-line);color:var(--bad);font-size:11.5px;font-weight:600}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182857;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);z-index:40;animation:rise .14s ease}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(600px,96vw);display:flex;flex-direction:column;background:var(--panel);border-left:1px solid var(--line);box-shadow:var(--shadow-lift);z-index:41;animation:drawer-in .17s cubic-bezier(.3,.8,.4,1)}.drawer>header{flex:none;display:flex;align-items:flex-start;gap:10px;padding:10px 10px 9px 12px;border-bottom:1px solid var(--line-soft);background:linear-gradient(180deg,#fff,var(--panel-2))}.drawer>header h2{font-size:13.5px;font-weight:650;line-height:1.35}.drawer>header .drawer-tags{display:flex;align-items:center;gap:5px;margin-bottom:4px}.drawer-body{flex:1;min-height:0;overflow:auto;padding:10px 12px 14px;display:flex;flex-direction:column;gap:10px}.drawer-foot{flex:none;display:flex;align-items:center;gap:6px;padding:8px 12px;border-top:1px solid var(--line-soft);background:var(--panel-2)}.drawer-foot .spacer{margin-left:auto}.toasts{position:fixed;right:12px;top:12px;z-index:60;display:flex;flex-direction:column;gap:6px;max-width:380px}.toast{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--r-sm);background:#101828;color:#f4f6fa;font-size:12px;font-weight:500;box-shadow:var(--shadow-lift);animation:rise .16s ease}.toast .ic{display:grid;place-items:center;flex:none}.toast.success .ic{color:#4ade80}.toast.error .ic{color:#fb7185}.toast.info .ic{color:#7dd3fc}.toast button{border:0;background:none;color:#94a3b8;padding:0 0 0 4px;display:grid;place-items:center}.toast button:hover{color:#fff}.dialog{position:fixed;z-index:61;top:50%;left:50%;transform:translate(-50%,-50%);width:min(400px,92vw);padding:14px;border-radius:var(--r);background:var(--panel);box-shadow:var(--shadow-lift);animation:rise .16s ease}.dialog h2{font-size:14px;margin-bottom:5px}.dialog p{font-size:12px;color:var(--ink-2);line-height:1.5}.dialog footer{display:flex;justify-content:flex-end;gap:6px;margin-top:12px}.dialog .dialog-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:var(--bad-soft);color:var(--bad);margin-bottom:8px}@media (max-width: 1420px){.stage-text small{max-width:150px}}@media (max-width: 1240px){.body{grid-template-columns:210px minmax(0,1fr) 268px}.stage-text small,.next-action .next-copy{display:none}}@media (max-width: 1080px){.stage:not(.active):not(.blocked):not(.failed) .stage-text{display:none}}@media (max-width: 980px){body{overflow:auto}.app{height:auto;min-height:100dvh}.topbar{position:sticky;top:0;z-index:30}.rail{flex-wrap:wrap;row-gap:6px}.stages{order:1;overflow-x:auto}.next-action{order:2;margin-left:auto;border-left:0;padding-left:0}.body{grid-template-columns:minmax(0,1fr)}.panel{max-height:78vh}.col-work .panel{min-height:60vh}.stats{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 620px){.stats{grid-template-columns:1fr 1fr}.brand div,.state-chip.model{display:none}}.dropzone{display:flex;flex-direction:column;align-items:center;gap:5px;padding:12px 10px;border:1px dashed #ccd4e2;border-radius:var(--r-sm);background:var(--panel-2);text-align:center;cursor:pointer;transition:border-color .15s ease,background .15s ease}.dropzone:hover{border-color:var(--accent);background:var(--accent-soft)}.dropzone.on{border-color:var(--accent);background:var(--accent-soft);transform:scale(1.01)}.dropzone.busy{cursor:progress;border-style:solid;border-color:var(--accent-line);background:var(--accent-soft)}.dz-ic{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:var(--panel);border:1px solid var(--line);color:var(--accent)}.dropzone b{font-size:11.5px}.dropzone small{font-size:10px;color:var(--ink-3);line-height:1.35}.dropzone input{display:none}.bar{height:3px;width:100%;border-radius:3px;background:var(--line-soft);overflow:hidden}.bar i{display:block;height:100%;border-radius:3px;background:var(--accent);transition:width .2s ease}.baseline{display:flex;flex-direction:column;gap:3px;margin-top:8px;padding:6px 7px;border-radius:var(--r-xs);background:var(--panel-2);border:1px solid var(--line-soft)}.baseline span{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}.baseline select{width:100%;height:25px;font-size:11px}.file-row{display:flex;align-items:center;gap:7px;padding:5px 6px;border-radius:var(--r-xs)}.file-row:hover{background:var(--panel-2)}.file-glyph{width:22px;height:22px;flex:none;display:grid;place-items:center;border-radius:6px;background:var(--info-soft);color:var(--info);border:1px solid var(--info-line)}.file-glyph.xlsx{background:var(--ok-soft);color:var(--ok);border-color:var(--ok-line)}.file-row div{min-width:0}.file-row b{display:block;font-size:11.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-row small{display:block;font-size:10px;color:var(--ink-3)}.rejected{margin-top:6px;font-size:10.5px;color:var(--bad);line-height:1.4}.stats{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:8px}.stat{padding:6px 8px 7px;border-radius:var(--r-xs);background:var(--panel-2);border:1px solid var(--line-soft)}.stat b{display:block;font-size:17px;font-weight:650;line-height:1.15;font-variant-numeric:tabular-nums}.stat span{display:block;font-size:9.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}.stat small{display:block;font-size:9.5px;color:var(--ink-3);margin-top:1px}.stat.hot{background:var(--warn-soft);border-color:var(--warn-line)}.stat.hot b,.stat.hot span{color:var(--warn)}.stat.good{background:var(--ok-soft);border-color:var(--ok-line)}.stat.good b,.stat.good span{color:var(--ok)}.delta-strip{display:flex;gap:6px;padding:0 8px 8px}.delta-strip div{flex:1;padding:4px 6px;border-radius:var(--r-xs);border:1px solid var(--line-soft);background:var(--panel-2);text-align:center}.delta-strip b{display:block;font-size:13px;font-weight:650}.delta-strip span{font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.segments{display:flex;gap:2px;padding:2px;border-radius:8px;background:var(--panel-2);border:1px solid var(--line)}.segment{display:flex;align-items:center;gap:5px;height:23px;padding:0 9px;border:0;border-radius:6px;background:transparent;color:var(--ink-3);font-size:11.5px;font-weight:600;transition:color .12s ease}.segment:hover{color:var(--ink-2)}.segment.active{background:var(--panel);color:var(--ink);box-shadow:var(--shadow)}.segment .count{transform:scale(.92)}.view{display:flex;flex-direction:column}.view-note{display:flex;align-items:center;gap:7px;padding:6px 10px;font-size:11px;color:var(--ink-2);background:var(--panel-2);border-bottom:1px solid var(--line-soft)}.view-note.warn{background:var(--warn-soft);border-color:var(--warn-line);color:var(--warn)}.view-note.ok{background:var(--ok-soft);border-color:var(--ok-line);color:var(--ok)}.view-note .spacer{margin-left:auto}.filters{display:flex;align-items:center;gap:4px;padding:6px 10px;border-bottom:1px solid var(--line-soft);flex-wrap:wrap}.filters button{height:21px;padding:0 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--ink-3);font-size:10.5px;font-weight:600;text-transform:capitalize}.filters button:hover{color:var(--ink-2);border-color:#cfd6e2}.filters button.active{background:var(--ink);border-color:var(--ink);color:#fff}.group-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:6px;padding:5px 10px;background:var(--panel-2);border-bottom:1px solid var(--line-soft);font-size:11px;font-weight:650}.group-head small{margin-left:auto;color:var(--ink-3);font-weight:600;font-size:10.5px}.map-row{display:grid;grid-template-columns:minmax(130px,1.5fr) 130px 130px minmax(134px,1.2fr) 96px;align-items:center;gap:8px;padding:6px 10px;border-bottom:1px solid var(--line-soft)}.map-row.head{padding:4px 10px;background:#fff;font-size:9.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}.map-row:hover:not(.head){background:var(--panel-2)}.map-row.todo{background:var(--warn-soft)}.map-row.todo:hover{background:#fcefda}.map-row select{height:26px;width:100%;font-size:11.5px}.map-src{min-width:0}.map-src code{font-size:11.5px;font-weight:500;color:var(--ink)}.map-src small{display:block;font-size:10px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conf{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}.conf .track{flex:1;min-width:36px;height:4px;border-radius:3px;background:var(--line-soft);overflow:hidden}.conf .track i{display:block;height:100%;border-radius:3px;background:var(--ok)}.conf .track i.mid{background:var(--warn)}.conf .track i.low{background:var(--bad)}.conf em{font-style:normal;font-size:10.5px;font-weight:650;font-variant-numeric:tabular-nums;color:var(--ink-2)}.by{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:600;color:var(--ink-3);white-space:nowrap;overflow:hidden}.by.human{color:var(--accent)}.esc-row{display:grid;grid-template-columns:3px 1fr auto;gap:9px;padding:8px 10px 8px 0;border-bottom:1px solid var(--line-soft);cursor:pointer}.esc-row:hover{background:var(--panel-2)}.esc-row.sel{background:var(--accent-soft)}.esc-row.resolved{opacity:.72;cursor:default}.esc-row .sev-bar{border-radius:0 3px 3px 0}.sev-high{background:var(--bad)}.sev-medium{background:var(--warn)}.sev-low{background:var(--info)}.esc-main{min-width:0;display:flex;flex-direction:column;gap:4px}.esc-top{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.esc-main h3{font-size:12.5px;font-weight:600;line-height:1.35}.esc-id{display:flex;align-items:center;gap:6px;font-size:10.5px;color:var(--ink-3);flex-wrap:wrap}.esc-id code{color:var(--ink-2)}.esc-side{display:flex;align-items:center;gap:6px;padding-right:10px}.esc-context{display:flex;flex-direction:column;gap:6px}.ctx-line{display:flex;gap:6px;align-items:flex-start;padding:6px 8px;border-radius:var(--r-xs);background:var(--panel-2);border:1px solid var(--line-soft);font-size:11.5px;line-height:1.45;color:var(--ink-2)}.ctx-line svg{flex:none;margin-top:1px;color:var(--ink-3)}.ctx-line.warn{background:var(--warn-soft);border-color:var(--warn-line);color:var(--warn)}.ctx-line.warn svg{color:var(--warn)}.ctx-line code{background:#fff;border:1px solid var(--line);border-radius:4px;padding:0 3px}.candidates{display:flex;gap:5px;flex-wrap:wrap}.candidate{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border-radius:999px;background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent);font-size:11px;font-weight:600}.candidate b{font-variant-numeric:tabular-nums;opacity:.75}.issue{display:grid;grid-template-columns:96px 1fr;gap:8px;padding:6px 8px;border-radius:var(--r-xs);border:1px solid var(--line-soft);background:var(--panel-2)}.issue>b{font-size:11px;font-weight:650;text-transform:capitalize;color:var(--ink-2)}.issue p{font-size:11.5px;color:var(--ink-2);line-height:1.4}.issue .val{display:inline-block;margin-top:3px;padding:1px 4px;border-radius:4px;background:#fff;border:1px solid var(--line);font-family:var(--mono);font-size:10.5px}.suggest{display:inline-flex;align-items:center;gap:4px;margin-top:4px;font-size:11px;color:var(--ok);font-weight:600}.conflict{padding:6px 8px;border-radius:var(--r-xs);border:1px solid var(--line-soft);background:var(--panel-2)}.conflict>span{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}.conflict-options{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}.conflict-options>div{padding:4px 7px;border-radius:var(--r-xs);background:#fff;border:1px solid var(--line)}.conflict-options b{display:block;font-size:11.5px}.conflict-options small{font-size:10px;color:var(--ink-3)}.repairs{padding:6px 8px;border-radius:var(--r-xs);background:var(--ok-soft);border:1px solid var(--ok-line)}.repairs>span{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ok)}.repairs p{font-size:11px;color:var(--ink-2);line-height:1.45;margin-top:2px}.repairs em{font-style:normal;font-weight:700;text-transform:capitalize}.block{padding:9px 10px;border-radius:var(--r-sm);border:1px solid var(--accent-line);background:var(--accent-soft);display:flex;flex-direction:column;gap:7px}.block h3{font-size:12px;font-weight:650;color:var(--ink)}.block p{font-size:11.5px;color:var(--ink-2);line-height:1.45}.block-row{display:flex;align-items:center;gap:6px}.block-row>span{flex:none;font-size:11px;font-weight:600;color:var(--ink-2);width:152px}.block-row input,.block-row select{flex:1;min-width:0}.block .options{display:flex;gap:6px;flex-wrap:wrap}.proposal{display:flex;align-items:center;gap:7px;padding:7px 9px;border-radius:var(--r-sm);background:var(--ok-soft);border:1px solid var(--ok-line);font-size:11.5px;color:var(--ok);font-weight:600}.proposal .spacer{margin-left:auto}.pick{display:flex;flex-direction:column;gap:5px;padding:8px 9px;border-radius:var(--r-sm);border:1px solid var(--line)}.pick>span{font-size:11.5px;color:var(--ink-2)}.pick-options{display:flex;gap:6px;flex-wrap:wrap}.pick-btn{padding:5px 9px;border-radius:var(--r-xs);border:1px solid var(--line);background:var(--panel);text-align:left;font-size:11.5px;font-weight:600}.pick-btn small{display:block;font-size:10px;font-weight:500;color:var(--ink-3)}.pick-btn:hover{border-color:var(--accent)}.pick-btn.picked{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.pick-btn.picked small{color:var(--accent)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.form-grid label{display:flex;flex-direction:column;gap:3px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.form-grid label.focus input{border-color:var(--warn);background:#fffdf7}.form-grid input{font-size:12px}.notes{display:flex;flex-direction:column;gap:3px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.notes textarea{min-height:52px;font-size:12px;text-transform:none;letter-spacing:0;font-weight:400;color:var(--ink)}.form-error{padding:7px 9px;border-radius:var(--r-sm);background:var(--bad-soft);border:1px solid var(--bad-line);color:var(--bad);font-size:11.5px;line-height:1.45}.rec-row{display:grid;grid-template-columns:minmax(150px,1.6fr) minmax(90px,1fr) 84px 92px minmax(96px,1fr) 120px 26px;align-items:center;gap:8px;padding:6px 10px;border-bottom:1px solid var(--line-soft);font-size:11.5px}.rec-row.head{position:sticky;top:0;z-index:2;background:var(--panel-2);font-size:9.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);padding:5px 10px}.rec-row:hover:not(.head){background:var(--panel-2)}.rec-row.dupe{opacity:.55}.rec-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rec-who{min-width:0}.rec-who b{display:block;font-size:11.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rec-who small{display:block;font-size:10px;color:var(--ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.num{font-variant-numeric:tabular-nums}.log-row{display:grid;grid-template-columns:20px minmax(140px,1.3fr) 146px minmax(130px,1.4fr) auto;align-items:center;gap:8px;padding:6px 10px;border-bottom:1px solid var(--line-soft);font-size:11.5px}.log-row:hover{background:var(--panel-2)}.log-ic{display:grid;place-items:center}.log-when{display:flex;align-items:center;gap:5px;white-space:nowrap}.log-when small{font-size:10px;color:var(--ink-3)}.log-ic.success{color:var(--ok)}.log-ic.failed{color:var(--bad)}.log-ic.skipped{color:var(--ink-3)}.log-ic.rolled_back{color:var(--warn)}.log-msg{color:var(--ink-3);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.log-row.failed .log-msg{color:var(--bad)}.log-actions{display:flex;align-items:center;gap:5px;justify-content:flex-end}.tgt-row{display:grid;grid-template-columns:86px minmax(120px,1.2fr) minmax(100px,1fr) 84px minmax(140px,1.3fr);gap:8px;padding:5px 10px;border-bottom:1px solid var(--line-soft);font-size:11.5px}.tgt-row>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tgt-row.head{background:var(--panel-2);font-size:9.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}.section-bar{display:flex;align-items:center;gap:7px;padding:6px 10px;background:var(--panel-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line-soft);font-size:11px;font-weight:650;cursor:pointer}.section-bar .spacer{margin-left:auto}.section-bar:hover{background:#f2f5f9}.act-item{display:grid;grid-template-columns:18px 1fr;gap:7px;padding:6px 9px;border-bottom:1px solid var(--line-soft);animation:rise .18s ease}.act-ic{width:18px;height:18px;display:grid;place-items:center;border-radius:5px;background:var(--panel-2);border:1px solid var(--line-soft);color:var(--ink-3)}.act-item.level-success .act-ic{background:var(--ok-soft);border-color:var(--ok-line);color:var(--ok)}.act-item.level-warn .act-ic,.act-item.level-escalate .act-ic{background:var(--warn-soft);border-color:var(--warn-line);color:var(--warn)}.act-item.level-error .act-ic{background:var(--bad-soft);border-color:var(--bad-line);color:var(--bad)}.act-text{min-width:0}.act-text p{font-size:11.5px;line-height:1.4;color:var(--ink-2);word-break:break-word}.act-meta{display:flex;align-items:center;gap:5px;margin-top:3px}.act-meta time{font-size:9.5px;color:var(--ink-3);font-variant-numeric:tabular-nums;margin-left:auto}.phase{padding:0 5px;height:15px;display:inline-flex;align-items:center;border-radius:4px;font-size:9.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;background:var(--panel-2);border:1px solid var(--line-soft);color:var(--ink-3)}.phase.map{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}.phase.clean{background:var(--info-soft);border-color:var(--info-line);color:var(--info)}.phase.reconcile,.phase.delta{background:#f3e8ff;border-color:#e2d0fb;color:#7c3aed}.phase.escalate,.phase.review{background:var(--warn-soft);border-color:var(--warn-line);color:var(--warn)}.phase.sync{background:var(--ok-soft);border-color:var(--ok-line);color:var(--ok)}.act-why{display:block;margin-top:3px;font-size:10.5px;color:var(--ink-3);line-height:1.4;font-style:italic}.act-working{display:flex;align-items:center;gap:7px;padding:8px 10px;font-size:11.5px;font-weight:600;color:var(--accent);background:var(--accent-soft);border-bottom:1px solid var(--accent-line);position:sticky;bottom:0}.tl{display:flex;flex-direction:column}.tl-item{display:grid;grid-template-columns:22px 1fr;gap:8px}.tl-rail{display:flex;flex-direction:column;align-items:center}.tl-rail span{width:20px;height:20px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--panel-2);border:1px solid var(--line);color:var(--ink-3)}.tl-rail i{flex:1;width:1px;background:var(--line)}.tl-item.actor-human .tl-rail span{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}.tl-item.actor-system .tl-rail span{background:var(--ok-soft);border-color:var(--ok-line);color:var(--ok)}.tl-card{padding:7px 9px 9px;border:1px solid var(--line-soft);border-radius:var(--r-sm);background:var(--panel-2);margin-bottom:8px;min-width:0}.tl-head{display:flex;align-items:center;gap:6px}.tl-head h3{font-size:12px;font-weight:650;text-transform:capitalize}.tl-head time{margin-left:auto;font-size:10px;color:var(--ink-3)}.tl-card>p{font-size:11.5px;color:var(--ink-2);line-height:1.45;margin-top:3px}.tl-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:6px}.tl-values div{padding:4px 6px;border-radius:var(--r-xs);background:#fff;border:1px solid var(--line-soft);min-width:0}.tl-values small{display:block;font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3)}.tl-values code{display:block;font-size:10.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diff{border:1px solid var(--line-soft);border-radius:var(--r-xs);overflow:hidden}.diff-row{display:grid;grid-template-columns:96px 1fr 14px 1fr;align-items:center;gap:7px;padding:5px 8px;border-bottom:1px solid var(--line-soft);font-size:11px}.diff-row:last-child{border-bottom:0}.diff-row.head{background:var(--panel-2);font-size:9.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}.diff-row b{font-weight:650;text-transform:capitalize}.diff-row code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diff-before{color:var(--ink-3);text-decoration:line-through}.diff-after{color:var(--ok);font-weight:500}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:26px 18px;text-align:center;height:100%}.empty .ic{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--panel-2);border:1px solid var(--line);color:var(--ink-3)}.empty.ok .ic{background:var(--ok-soft);border-color:var(--ok-line);color:var(--ok)}.empty h3{font-size:13px;font-weight:650}.empty p{font-size:11.5px;color:var(--ink-3);line-height:1.5;max-width:340px}.hint-list{display:flex;flex-direction:column;gap:5px;margin-top:4px;text-align:left}.hint-list div{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--ink-2)}.hint-list em{flex:none;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-style:normal;font-size:10px;font-weight:700}
