*{box-sizing:border-box}body{margin:0;background:#f5f5f5;color:#242424;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}button,input{font:inherit}.appShell{min-height:100vh;display:grid;grid-template-rows:auto auto 1fr}.topBar{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid #d1d1d1;background:#fff}.brand,.topActions,.snapshotHeader,.sectionHeader,.tableToolbar{display:flex;align-items:center;gap:12px}.brand h1,.leftPanel h2,.snapshot h3,.sectionHeader h3{margin:0}.brand h1{font-size:18px;line-height:22px}.brand span,.snapshot p,.sectionHeader span,.pinGroup span{color:#616161;font-size:12px}.topActions{flex-wrap:wrap;justify-content:flex-end}.modeTabs{padding:8px 20px;border-bottom:1px solid #d1d1d1;background:#fff}.workbench{min-height:0;display:grid;grid-template-columns:360px minmax(520px,1fr) 340px;gap:0}.leftPanel,.detailPanel{min-width:0;overflow:auto;padding:18px;background:#fff}.leftPanel{border-right:1px solid #d1d1d1;display:flex;flex-direction:column;gap:14px}.detailPanel{border-left:1px solid #d1d1d1}.mainWorkspace{min-width:0;overflow:auto;padding:18px}.pinGroup>div,.buttonStack,.outputSelector{display:flex;flex-direction:column;gap:8px}.pinGroup>div{flex-direction:row;flex-wrap:wrap}.outputSelector{padding:12px 0;border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0}.outputSelector>span{font-weight:600}.compareGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.snapshot,.section{background:#fff;border:1px solid #d1d1d1;border-radius:8px;padding:14px}.section{margin-top:14px}.snapshotHeader,.sectionHeader{justify-content:space-between;align-items:flex-start;margin-bottom:12px}.outputGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px}.outputTile{min-height:86px;padding:10px;border:1px solid #e0e0e0;border-radius:6px;background:#fafafa;display:grid;gap:3px}.outputTile span{color:#616161;font-size:12px}.outputTile strong,.summaryStrip strong{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:18px}.outputTile small{color:#616161}.outputTile em{color:#c50f1f;font-size:11px;font-style:normal;overflow-wrap:anywhere}.summaryStrip{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:12px;margin-bottom:14px}.summaryStrip div{padding:12px;background:#fff;border:1px solid #d1d1d1;border-radius:8px}.summaryStrip span{display:block;color:#616161;font-size:12px}.tableToolbar{justify-content:space-between;margin-bottom:12px;background:#fff;border:1px solid #d1d1d1;border-radius:8px;padding:12px}.tableToolbar .fui-Field{min-width:280px}.tableWrap{width:100%;overflow:auto;border:1px solid #d1d1d1;border-radius:8px;background:#fff}.tableWrap.small{border-radius:6px}.dataTable{width:100%;border-collapse:collapse;table-layout:fixed}.dataTable th,.dataTable td{padding:8px 10px;border-bottom:1px solid #e0e0e0;text-align:left;vertical-align:top;font-size:13px;overflow-wrap:anywhere}.dataTable th{position:sticky;top:0;z-index:1;background:#fafafa;cursor:pointer;font-weight:600}.dataTable tr:hover td,.selectedRow td{background:#f3f9ff}.diff-up td{color:#0f6cbd}.diff-down td{color:#986f0b}.diff-same td{color:#616161}.diff-unavailable td,.emptyState{color:#707070}.emptyState{padding:28px;text-align:center}.emptyState.compact{padding:14px}.detailList{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px 12px;margin:16px 0}.detailList dt{color:#616161;font-size:12px}.detailList dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px}.errorText{color:#c50f1f}.running{display:flex;align-items:center;gap:10px;margin-bottom:12px;color:#616161}@media(max-width:1180px){.workbench{grid-template-columns:340px minmax(0,1fr)}.detailPanel{grid-column:1 / -1;border-left:0;border-top:1px solid #d1d1d1}}@media(max-width:820px){.topBar{height:auto;min-height:64px;align-items:flex-start;gap:12px;padding:12px;flex-direction:column}.workbench,.compareGrid{grid-template-columns:1fr}.leftPanel{border-right:0;border-bottom:1px solid #d1d1d1}.summaryStrip{grid-template-columns:repeat(2,minmax(0,1fr))}}
