.react-grid-layout{position:relative;transition:height .2s ease}.react-grid-item{transition:all .2s ease;transition-property:left,top,width,height}.react-grid-item img{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{transition:none;z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:.2;transition-duration:.1s;z-index:2;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{position:absolute;width:20px;height:20px;opacity:0}.react-grid-item:hover>.react-resizable-handle{opacity:1}.react-grid-item>.react-resizable-handle:after{content:"";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,.4);border-bottom:2px solid rgba(0,0,0,.4)}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e,.react-grid-item>.react-resizable-handle.react-resizable-handle-w{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}:root{--sidebar-width:224px;--config-drawer-width:1120px;--blue:#427ab5;--blue-deep:#406aaf;--yellow:#f7dd7d;--cream:#f4f6fb;--text:#10213c;--muted:#54627a;--line:rgba(64,106,175,0.28);--surface:#ffffff;--band:rgba(66,122,181,0.07);--ok:#0b786f;--warn:#9f6900;--bad:#b42318;--focus:rgba(247,221,125,0.62)}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--text);font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}.app-shell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);min-height:100vh}.app-sidebar{position:-webkit-sticky;position:sticky;top:0;z-index:45;display:flex;flex-direction:column;height:100vh;padding:22px 14px 16px;border-right:1px solid rgba(16,33,60,.12);background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0) 34%),linear-gradient(180deg,var(--blue) 0,var(--blue-deep) 100%);box-shadow:inset -1px 0 0 rgba(255,255,255,.16),8px 0 28px rgba(64,106,175,.14);color:white}.brand-block{display:grid;grid-gap:13px;gap:13px;justify-items:start;padding:28px 16px 36px}.brand-copy{display:grid;grid-gap:4px;gap:4px}.brand-meta{display:flex;align-items:center;gap:10px;min-height:22px}.brand-block strong{font-size:20px;letter-spacing:0}.brand-block span{display:block;margin-top:3px;color:#eaf1fa;font-size:12px}.brand-meta>span{margin-top:0}.brand-block .brand-version{min-width:54px;border:1px solid rgba(234,241,250,.48);border-radius:6px;padding:3px 7px;background:rgba(255,255,255,.1);color:#ffffff;font-size:11px;line-height:1;text-align:center;white-space:nowrap}.brand-logo-frame{display:inline-flex;align-items:center;justify-content:center;overflow:hidden}.brand-logo-image{display:block;width:100%;height:100%;object-fit:contain}.sidebar-logo{width:156px;height:43px}.app-nav{display:flex;flex:1 1;flex-direction:column;gap:8px;min-height:0;padding-bottom:0}.nav-spacer{flex:1 1;min-height:32px}.nav-bottom-row{display:grid;grid-template-columns:minmax(0,1fr) 42px;grid-gap:8px;gap:8px;align-items:center}.nav-item{min-height:42px;text-decoration:none;transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.nav-item,.nav-parent{display:flex;align-items:center;gap:10px;border-radius:8px;padding:0 12px;color:#f4f8fd}.nav-parent{min-height:36px;font-weight:700}.nav-parent.active{background:rgba(255,255,255,.12)}.nav-children{display:grid;grid-gap:4px;gap:4px;margin:-2px 0 4px 18px;padding-left:12px;border-left:1px solid rgba(255,255,255,.24)}.nav-child{display:flex;align-items:center;gap:8px;min-height:34px;border-radius:7px;padding:0 10px;color:#eaf1fa;font-size:13px;text-decoration:none;transition:background .16s ease,color .16s ease,box-shadow .16s ease}.nav-child.active,.nav-child:hover{background:var(--yellow);color:#172033;box-shadow:0 6px 16px rgba(16,33,60,.12)}.nav-section{margin:10px 10px 4px;color:var(--yellow);font-size:12px;font-weight:700;letter-spacing:0}.nav-item.active,.nav-item:hover{background:var(--yellow);box-shadow:0 6px 16px rgba(16,33,60,.16);color:#172033}.nav-item:hover{transform:translateX(2px)}.nav-icon-button{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:0;border-radius:8px;background:rgba(255,255,255,.1);color:#f4f8fd;transition:background .16s ease,color .16s ease,transform .16s ease}.nav-icon-button:focus-visible,.nav-icon-button:hover{background:var(--yellow);color:#172033;outline:none;transform:translateX(2px)}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58;box-shadow:none}.console-shell{width:100%;margin:0;padding:18px 20px 32px 64px}.console-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:12px}.console-header h1,.section-heading h2{margin:0;letter-spacing:0}.console-header h1{font-size:26px}.console-header p,.section-heading p{margin:4px 0 0;color:var(--muted);font-size:13px}.refresh-meta{color:var(--blue-deep);font-weight:700}.config-panel,.query-panel,.runtime-panel,.runtime-settings{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 18px rgba(64,106,175,.1);overflow:hidden}.runtime-panel{display:grid;grid-gap:8px;gap:8px;padding:10px 12px 12px;margin-bottom:12px;border-top:4px solid var(--blue)}.runtime-command-bar{display:grid;grid-template-columns:minmax(360px,auto) minmax(420px,1fr);align-items:center;grid-gap:12px;gap:12px}.runtime-control-panel{gap:12px;padding:12px}.runtime-control-top{display:grid;grid-template-columns:minmax(360px,1fr) auto;grid-gap:14px;gap:14px;align-items:start}.runtime-control-title{display:grid;grid-gap:10px;gap:10px}.runtime-control-title h2{margin:0;font-size:18px}.runtime-control-title p{margin:3px 0 0;color:var(--muted);font-size:12px}.runtime-primary-status{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.status-pill{display:grid;grid-template-columns:24px auto auto;align-items:center;grid-gap:8px;gap:8px;min-height:36px;border:1px solid var(--line);border-radius:6px;padding:5px 10px 5px 6px;background:linear-gradient(180deg,#fff,rgba(66,122,181,.05))}.status-pill-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:5px;background:rgba(66,122,181,.12);color:var(--blue-deep)}.status-pill-label{color:var(--muted);font-size:12px;white-space:nowrap}.status-pill strong{min-width:42px;font-size:13px;line-height:1.1;white-space:nowrap}.status-pill-ok{border-color:rgba(11,120,111,.32)}.status-pill-bad{border-color:rgba(180,35,24,.28)}.status-pill-warn{border-color:rgba(159,105,0,.32)}.runtime-actions{justify-content:flex-end;margin-top:0}.rebuild-menu{position:relative;display:inline-flex}.rebuild-menu-popover{position:absolute;right:0;top:calc(100% + 6px);z-index:20;min-width:178px;overflow:hidden;border:1px solid rgba(64,106,175,.22);border-radius:7px;background:white;box-shadow:0 12px 32px rgba(15,23,42,.14)}.rebuild-menu-popover button{display:flex;width:100%;align-items:center;justify-content:flex-start;border:0;border-bottom:1px solid rgba(64,106,175,.12);padding:10px 12px;background:white;color:var(--text);font:inherit;text-align:left;cursor:pointer}.rebuild-menu-popover button:last-child{border-bottom:0}.rebuild-menu-popover button:focus-visible,.rebuild-menu-popover button:hover{background:#fff6ed;color:var(--bad)}.runtime-facts{display:grid;grid-template-columns:repeat(7,minmax(112px,1fr));grid-gap:1px;gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:var(--line)}.runtime-kpi-grid{display:grid;grid-template-columns:1.1fr .75fr .75fr .75fr;grid-gap:8px;gap:8px}.runtime-kpi-card{display:grid;grid-gap:7px;gap:7px;min-width:0;border:1px solid rgba(64,106,175,.18);border-radius:7px;padding:8px;background:rgba(66,122,181,.035)}.runtime-kpi-card h3{margin:0;color:var(--blue-deep);font-size:12px}.runtime-kpi-card>div{display:grid;grid-gap:5px;gap:5px}.fact-item{display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-width:0;min-height:32px;padding:5px 9px;background:rgba(255,255,255,.94)}.fact-item span{color:var(--muted);font-size:12px}.fact-item span,.fact-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fact-item strong{font-size:13px;text-align:right}.fact-item.strong{background:rgba(247,221,125,.32)}.info-cell,.metric{min-width:0}.metric{background:var(--band);border:1px solid var(--line);border-radius:6px;padding:7px 10px}.info-cell span,.metric span{display:block;color:var(--muted);font-size:12px}.info-cell strong,.metric strong{display:block;margin-top:3px;overflow-wrap:anywhere;font-size:13px;line-height:1.2}.tone-ok{color:var(--ok)}.tone-warn{color:var(--warn)}.tone-bad{color:var(--bad)}.tone-muted{color:var(--muted)}.action-row,.connection-row,.runtime-panel .action-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:0}.connection{display:inline-flex;align-items:center;gap:6px;max-width:100%;border:1px solid var(--line);border-radius:6px;padding:4px 8px;font-size:12px;line-height:1.25}.connection strong{max-width:min(780px,70vw);overflow:hidden;color:inherit;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.connection.with-detail{border-radius:6px}.connection.connected{background:#effaf6;color:var(--ok)}.connection.offline{background:#fff6ed;color:var(--bad)}.pager button,.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;border-radius:6px;padding:0 12px;border:1px solid var(--line);white-space:nowrap;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,opacity .16s ease}.primary-button{background:var(--blue);border-color:var(--blue-deep);color:white}.pager button,.secondary-button{background:white;color:var(--text)}.nav-child:focus-visible,.nav-item:focus-visible,.pager button:focus-visible,.primary-button:focus-visible,.secondary-button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.pager button:not(:disabled):hover,.primary-button:not(:disabled):hover,.secondary-button:not(:disabled):not(.disabled):hover{box-shadow:0 0 0 3px rgba(247,221,125,.52)}.pager button:disabled:hover,.primary-button:disabled:hover,.secondary-button.disabled:hover,.secondary-button:disabled:hover{box-shadow:none}.pager button:not(:disabled):active,.primary-button:not(:disabled):active,.secondary-button:not(:disabled):not(.disabled):active{transform:translateY(1px)}.spin-icon{animation:spin .9s linear infinite}.basic-progress{display:flex;align-items:center;gap:14px;margin-top:8px;padding:8px 10px;border:1px solid rgba(66,122,181,.28);border-radius:6px;background:rgba(255,232,190,.42);color:#0b2342;font-size:13px}.basic-progress strong{color:#406aaf}.basic-progress span{color:#53657d}.data-controller{display:grid;grid-gap:14px;gap:14px}.data-controller-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:8px;padding:16px 18px;background:var(--surface);box-shadow:0 12px 28px rgba(16,33,60,.06)}.data-controller-header h2{margin:0 0 4px;font-size:22px}.data-controller-header p{margin:0;color:var(--muted)}.data-status-badge{display:inline-flex;min-width:72px;justify-content:center;border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:13px;font-weight:700}.data-status-ok{border-color:rgba(11,120,111,.3);background:rgba(11,120,111,.08);color:var(--ok)}.data-status-warn{border-color:rgba(159,105,0,.32);background:rgba(247,221,125,.28);color:var(--warn)}.data-status-bad{border-color:rgba(180,35,24,.28);background:rgba(180,35,24,.06);color:var(--bad)}.data-controller-grid{display:grid;grid-template-columns:repeat(3,minmax(300px,1fr));grid-gap:12px;gap:12px}.data-control-panel{min-width:0;border:1px solid var(--line);border-radius:8px;padding:14px;background:var(--surface)}.data-panel-heading{display:flex;align-items:center;gap:8px;margin-bottom:12px;color:var(--blue-deep);font-weight:800}.data-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.data-fact{display:grid;grid-gap:5px;gap:5px;min-height:60px;border:1px solid rgba(64,106,175,.16);border-radius:6px;padding:10px 12px;background:rgba(66,122,181,.04)}.data-fact span{color:var(--muted);font-size:12px}.data-fact strong{overflow-wrap:anywhere;font-size:16px}.data-action-row{margin-top:14px;justify-content:flex-start}.danger-button:not(:disabled){border-color:rgba(180,35,24,.28);color:var(--bad)}.data-progress-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.data-progress-item{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:40px;border:1px solid rgba(64,106,175,.14);border-radius:6px;padding:8px 10px;background:rgba(66,122,181,.035)}.data-progress-item span,.data-progress-note{color:var(--muted);font-size:13px}.data-progress-item strong{white-space:nowrap;font-size:12px;color:var(--muted)}.data-progress-item.active{border-color:rgba(159,105,0,.34);background:rgba(247,221,125,.28)}.data-progress-item.active strong{color:var(--warn)}.data-progress-item.complete{border-color:rgba(11,120,111,.28);background:rgba(11,120,111,.07)}.data-progress-item.complete strong{color:var(--ok)}.data-progress-note{grid-column:1/-1}.service-control-panel{display:grid;grid-gap:12px;gap:12px}.service-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:8px;padding:14px 16px;background:var(--surface);box-shadow:0 10px 24px rgba(16,33,60,.06)}.service-toolbar h2{margin:0 0 4px;font-size:22px}.service-toolbar p{margin:0;color:var(--muted);font-size:13px}.service-grid{grid-template-columns:repeat(3,minmax(260px,1fr))}.service-card,.service-grid{display:grid;grid-gap:12px;gap:12px}.service-card{min-width:0;border:1px solid var(--line);border-radius:8px;padding:14px;background:var(--surface)}.service-card-head{justify-content:space-between;gap:10px}.service-card-head,.service-title{display:flex;align-items:flex-start}.service-title{gap:9px;min-width:0;color:var(--blue-deep)}.service-title h3{margin:0 0 3px;color:var(--text);font-size:16px}.service-title span{color:var(--muted);font-size:12px;font-weight:700}.service-status{display:inline-flex;align-items:center;justify-content:center;min-width:64px;border:1px solid var(--line);border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800;white-space:nowrap}.service-status-ok{border-color:rgba(11,120,111,.3);background:rgba(11,120,111,.08);color:var(--ok)}.service-status-warn{border-color:rgba(159,105,0,.28);background:rgba(247,221,125,.25);color:var(--warn)}.service-status-bad{border-color:rgba(180,35,24,.24);background:rgba(180,35,24,.06);color:var(--bad)}.service-facts{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.service-fact{min-width:0;border:1px solid rgba(64,106,175,.16);border-radius:6px;padding:8px 9px;background:rgba(66,122,181,.035)}.service-fact-wide{grid-column:1/-1}.service-fact span{display:block;color:var(--muted);font-size:11px;font-weight:700}.service-fact strong{display:block;margin-top:4px;overflow:hidden;color:var(--text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.service-error{border:1px solid #fecdca;border-radius:6px;padding:8px 9px;background:#fff4f2;color:var(--bad);font-size:12px}.service-actions{display:flex;flex-wrap:wrap;gap:8px}@keyframes spin{to{transform:rotate(1turn)}}.research-workspace{min-width:0}.config-drawer-toggle{position:fixed;top:32vh;left:calc(var(--sidebar-width) + 12px);z-index:46;width:38px;height:64px;border:1px solid rgba(64,106,175,.55);border-radius:14px;background:linear-gradient(180deg,#fff3c6 0,var(--yellow) 100%);color:#172033;box-shadow:0 10px 24px rgba(16,33,60,.18),inset 0 1px 0 rgba(255,255,255,.78);transition:left .22s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}.config-drawer-toggle:hover{box-shadow:0 14px 28px rgba(16,33,60,.24),0 0 0 3px rgba(247,221,125,.32);transform:translateX(2px)}.config-drawer-toggle.open{left:calc(var(--sidebar-width) + min(var(--config-drawer-width),
        calc(100vw - var(--sidebar-width) - 72px)) + 14px);transform:translateX(0)}.config-drawer{position:fixed;top:0;bottom:0;left:var(--sidebar-width);z-index:35;width:min(var(--config-drawer-width),calc(100vw - var(--sidebar-width) - 72px));padding:18px 14px;overflow-y:auto;background:var(--cream);border-right:1px solid var(--line);box-shadow:18px 0 34px rgba(16,33,60,.18);transform:translateX(calc(-100% - var(--sidebar-width) - 32px));transition:transform .18s ease}.config-drawer.open{transform:translateX(0)}.drawer-scrim{position:fixed;inset:0;z-index:30;border:0;background:rgba(16,33,60,.1)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,rgba(255,232,190,.54),rgba(255,255,255,0))}.research-tabs{display:inline-flex;align-items:center;gap:6px}.research-tab{min-height:30px;border:1px solid var(--line);border-radius:6px;padding:0 14px;background:white;color:var(--muted);font-weight:700;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease}.research-tab.active{border-color:var(--blue-deep);background:var(--yellow);color:var(--text);box-shadow:0 4px 12px rgba(64,106,175,.16)}.wip-page{display:grid;min-height:calc(100vh - 72px);place-items:center}.wip-panel{display:grid;grid-template-columns:48px minmax(0,520px);grid-gap:14px;gap:14px;width:min(680px,100%);border:1px solid var(--line);padding:24px;background:linear-gradient(180deg,white,rgba(255,255,255,.84));box-shadow:0 12px 28px rgba(64,106,175,.12)}.wip-icon,.wip-panel{align-items:center;border-radius:8px}.wip-icon{display:inline-flex;justify-content:center;width:48px;height:48px;background:rgba(247,221,125,.48);color:var(--blue-deep)}.wip-eyebrow{color:var(--blue-deep);font-size:12px;font-weight:700;text-transform:uppercase}.wip-panel h1{margin:3px 0 4px;font-size:24px}.wip-panel p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,rgba(16,33,60,.84),rgba(64,106,175,.78)),linear-gradient(180deg,#f4f6fb,#dce7f5)}.login-hero{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(340px,430px);grid-gap:28px;gap:28px;align-items:center;width:min(920px,100%)}.login-brand{display:grid;grid-gap:16px;gap:16px;justify-items:start;color:white}.login-brand-copy{display:grid;grid-gap:6px;gap:6px}.login-brand strong{display:block;font-size:34px;line-height:1.05}.login-brand span{display:block;color:#eaf1fa;font-size:16px;font-weight:700}.login-mark{width:184px;height:51px}.login-panel{display:grid;grid-gap:14px;gap:14px;border:1px solid rgba(255,255,255,.52);border-radius:8px;padding:22px;background:rgba(255,255,255,.9);box-shadow:0 24px 60px rgba(16,33,60,.24)}.login-panel-heading{display:grid;grid-template-columns:32px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;color:var(--blue-deep)}.login-panel-heading h1{margin:0;color:var(--text);font-size:24px}.login-panel-heading p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.login-field{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.login-field input{width:100%;min-height:40px;border:1px solid var(--line);border-radius:6px;padding:0 10px;background:white;color:var(--text)}.login-error{margin:0}.login-submit{min-height:40px}.section-heading h2{font-size:16px}.config-editor,.settings-grid,.settings-sections,.version-table{padding:10px}.version-toolbar{grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;background:rgba(255,232,190,.24)}.config-metadata-panel,.version-toolbar{display:grid;align-items:end;padding:10px;border-bottom:1px solid var(--line)}.config-metadata-panel{grid-template-columns:minmax(0,1fr) auto;grid-gap:12px;gap:12px;background:rgba(66,122,181,.05)}.metadata-grid{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(320px,1fr);grid-gap:10px;gap:10px;align-items:start}.metadata-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.file-action{min-width:112px}.file-action.disabled{pointer-events:none}.version-table-title{margin:0 0 8px;color:var(--muted);font-size:12px;font-weight:700}.version-row{width:100%;display:grid;grid-template-columns:70px 96px minmax(156px,.85fr) minmax(128px,1fr) minmax(180px,1.15fr) 116px;grid-gap:10px;gap:10px;align-items:center;min-height:46px;border:1px solid var(--line);background:white;margin-bottom:6px;border-radius:6px;padding:0 8px;text-align:left;cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.version-row:hover{border-color:rgba(64,106,175,.48);box-shadow:0 0 0 3px rgba(247,221,125,.24)}.version-row:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.version-row.selected{border-color:var(--blue);background:linear-gradient(180deg,rgba(66,122,181,.11),rgba(255,255,255,.92))}.version-status{color:var(--muted);font-weight:700}.version-status.active{color:var(--ok)}.version-comment,.version-name{min-width:0;overflow-wrap:anywhere;line-height:1.35}.version-name{color:var(--text);font-weight:700}.version-comment{color:var(--muted)}.row-actions{justify-content:flex-end;gap:8px}.icon-action,.row-actions{display:inline-flex;color:var(--blue-deep)}.icon-action{align-items:center;justify-content:center;width:24px;height:24px;border:1px solid transparent;border-radius:6px;background:transparent;padding:0}.icon-action:not(:disabled):hover{border-color:var(--line);background:rgba(247,221,125,.35)}.icon-action.danger{color:var(--bad)}.config-editor{display:grid;grid-gap:10px;gap:10px}fieldset{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px 12px;gap:10px 12px;border:1px solid var(--line);border-radius:6px;padding:12px}legend{padding:0 6px;color:var(--blue-deep);font-weight:700}.form-field{display:grid;grid-gap:4px;gap:4px;min-width:0;color:var(--muted);font-size:12px}.form-field input,.form-field select,.form-field textarea,.query-toolbar input,.query-toolbar select,.settings-grid input,.settings-grid select{width:100%;min-height:34px;border:1px solid var(--line);border-radius:6px;padding:0 8px;color:var(--text);background:white}.form-field textarea{min-height:48px;padding:8px;resize:vertical}.switch-field{grid-template-columns:18px minmax(0,1fr) minmax(82px,104px);align-items:center}.switch-field-boolean{grid-template-columns:18px minmax(0,1fr)}.switch-field input[type=checkbox]{width:16px;min-height:auto}.switch-field input[type=checkbox]:last-child{width:18px;justify-self:start}.choice-field{grid-column:1/-1;grid-template-columns:18px 120px minmax(0,1fr);align-items:start}.choice-list{display:flex;flex-wrap:wrap;gap:6px}.choice-pill{display:inline-flex;align-items:center;gap:5px;min-height:28px;border:1px solid var(--line);border-radius:6px;padding:0 10px 0 8px;background:white;color:var(--text)}.choice-pill input[type=checkbox]{width:14px}.choice-pill:has(input:checked){border-color:var(--blue);background:rgba(247,221,125,.38)}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid,.settings-sections{display:grid;grid-gap:10px;gap:10px}.settings-section{border:1px solid var(--line);border-radius:6px;background:rgba(66,122,181,.035);overflow:hidden}.settings-section h3{margin:0;padding:9px 10px;border-bottom:1px solid var(--line);background:rgba(66,122,181,.06);color:var(--blue-deep);font-size:14px}.settings-wide{grid-column:1/-1}.settings-subsection{display:grid;grid-gap:8px;gap:8px;min-width:0;border:1px solid rgba(64,106,175,.18);border-radius:6px;padding:9px;background:white}.settings-action-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.subsection-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.subsection-heading strong{color:var(--blue-deep);font-size:13px}.settings-list{display:grid;grid-gap:8px;gap:8px}.settings-inline-row{display:grid;grid-template-columns:minmax(120px,.45fr) minmax(0,1fr) 32px;grid-gap:8px;gap:8px;align-items:end}.settings-inline-row.session-row{grid-template-columns:minmax(120px,1fr) minmax(92px,.45fr) minmax(92px,.45fr) 32px}.settings-checkbox{min-height:34px;align-self:end}.settings-checkbox input{width:16px;height:16px}.empty-state.compact{margin:0;padding:7px 8px}.market-sentiment-page{display:flex;flex-direction:column;gap:16px}.console-header.compact{align-items:flex-start;gap:16px}.research-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.research-toolbar-meta{display:inline-flex;min-height:34px;align-items:center;gap:8px;border-right:1px solid #d9e2ef;margin-right:2px;padding-right:12px;white-space:nowrap}.research-toolbar-meta span{color:var(--text-muted);font-size:12px;font-weight:700}.research-toolbar-meta strong{color:var(--text-strong);font-size:12px;font-weight:700}.research-toolbar-actions,.research-window-control{display:inline-flex;align-items:center;gap:6px}.research-time-picker{position:relative}.time-range-button{display:inline-flex;min-width:128px;height:34px;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--border-subtle);border-radius:6px;background:#ffffff;color:var(--text-strong);cursor:pointer;font-size:12px;font-weight:700;padding:0 10px}.time-range-button:focus-visible,.time-range-button:hover{border-color:#7ea0d2;color:#245aa2}.time-picker-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:30;display:grid;width:min(560px,calc(100vw - 32px));grid-template-columns:minmax(250px,1fr) minmax(150px,180px);grid-gap:14px;gap:14px;border:1px solid #cfd9e8;border-radius:8px;background:#ffffff;box-shadow:0 16px 40px rgba(15,23,42,.16);padding:14px}.time-picker-popover h3{margin:0 0 10px;color:var(--text-strong);font-size:13px;line-height:1.2}.time-picker-absolute{display:grid;grid-gap:10px;gap:10px}.time-picker-absolute label{display:grid;grid-gap:4px;gap:4px;color:var(--text-muted);font-size:11px;font-weight:700}.time-picker-absolute input{width:100%;border:1px solid rgba(64,106,175,.2);border-radius:6px;color:var(--text-strong);font:inherit;padding:7px 8px}.time-picker-quick{display:grid;align-content:start;grid-gap:4px;gap:4px;border-left:1px solid #e5ecf5;padding-left:14px}.time-picker-quick button{border:0;border-radius:5px;background:transparent;color:#24324d;cursor:pointer;font-size:12px;font-weight:700;padding:8px 9px;text-align:left}.time-picker-quick button:focus-visible,.time-picker-quick button:hover{background:#edf4ff;color:#245aa2}.segmented{min-width:54px;border:1px solid var(--border-subtle);border-radius:6px;background:#ffffff;color:var(--text-muted);cursor:pointer;font-size:12px;font-weight:700;line-height:1;padding:9px 12px;transition:background .16s ease,border-color .16s ease,color .16s ease}.segmented:focus-visible,.segmented:hover{border-color:#7ea0d2;color:var(--text-strong)}.segmented.active{border-color:#d6a344;background:#dfa94f;color:#ffffff}.icon-button{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid var(--border-subtle);border-radius:6px;background:#ffffff;color:var(--text-strong);cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease}.icon-button:focus-visible,.icon-button:hover{border-color:#7ea0d2;color:#245aa2}.research-chart-card{display:grid;grid-template-rows:auto minmax(0,1fr);grid-row-gap:6px;row-gap:6px;border:1px solid var(--border-subtle);border-radius:8px;background:#ffffff;min-height:340px;padding:8px 10px;box-shadow:0 1px 2px rgba(15,23,42,.06)}.research-chart-card.placeholder{min-height:360px}.research-chart-header{display:flex;align-items:center;justify-content:space-between;min-height:24px;gap:8px}.research-chart-drag-handle{cursor:-webkit-grab;cursor:grab}.research-chart-title-row{display:flex;min-width:0;align-items:baseline;gap:8px}.research-chart-header h2{flex:0 0 auto;font-size:14px;line-height:1.1;margin:0}.research-chart-header p{overflow:hidden;flex:1 1 auto;margin:2px 0 0;color:var(--text-muted);font-size:11px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.research-chart-legend{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.research-chart-legend-item{display:inline-flex;align-items:center;gap:4px;color:#41506c;font-size:11px;font-weight:700;line-height:1;white-space:nowrap}.research-chart-legend-swatch{--legend-color:#2563eb;display:inline-block;width:14px;height:0;border-top:2px solid var(--legend-color)}.research-chart-legend-swatch.dashed{border-top-style:dashed}.research-chart-legend-swatch.bar{width:12px;height:6px;border:0;border-radius:2px;background:var(--legend-color)}.research-chart-metrics{gap:6px}.research-chart-header-actions,.research-chart-metrics{display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto}.research-chart-header-actions{gap:5px;min-width:0}.research-metric-chip{display:inline-flex;min-width:72px;height:22px;align-items:center;justify-content:space-between;gap:5px;border:1px solid #d9e2ef;border-radius:6px;background:#f8fbff;color:#42506a;font-size:11px;line-height:1;padding:0 7px;white-space:nowrap}.research-metric-chip strong{color:#10213d;font-size:11px;font-weight:800}.research-metric-chip.positive{border-color:#badcc9;background:#f3fbf6}.research-metric-chip.positive strong{color:#167247}.research-metric-chip.warning{border-color:#ead5a6;background:#fff9eb}.research-metric-chip.warning strong{color:#a06512}.research-chart-empty{display:grid;min-height:280px;place-items:center;color:var(--text-muted);font-size:13px}.research-chart{width:100%;height:100%;min-height:0}.research-chart-body{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;min-height:0}.research-chart-grid-host{min-width:0}.research-chart-layout{position:relative}.research-chart-panel{min-width:0}.research-chart-panel .research-chart-card{height:100%;min-height:0;overflow:hidden}.research-chart-panel .research-chart{height:100%;min-height:0}.react-grid-item.react-grid-placeholder{border-radius:8px;background:rgba(64,106,175,.16)}.amount-mode-control{display:inline-flex;align-items:center;gap:6px}.chart-tooltip{min-width:160px}.chart-tooltip-title{margin-bottom:6px;color:#5a6780;font-size:12px;font-weight:700}.chart-tooltip-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:7px;gap:7px;min-height:22px}.chart-tooltip-row span{color:#24324d}.chart-tooltip-row strong{color:#0d1d36;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.settings-page{max-width:1120px}.path-field{grid-column:span 1}.path-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px}.path-browse-button{min-width:86px}.path-modal-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px;background:rgba(16,33,60,.22)}.path-modal{width:min(920px,calc(100vw - 48px));max-height:min(720px,calc(100vh - 48px));display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:8px;background:white;box-shadow:0 22px 50px rgba(16,33,60,.22)}.path-modal-heading,.path-modal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line)}.path-modal-heading h3{margin:0;font-size:16px}.path-modal-heading p{margin:4px 0 0;color:var(--muted);font-size:12px;overflow-wrap:anywhere}.path-modal-toolbar{justify-content:flex-start;background:rgba(255,232,190,.24)}.path-list{overflow:auto;padding:8px}.path-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center;border-bottom:1px solid rgba(64,106,175,.12);padding:5px 0}.path-entry-main{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;min-height:32px;border:0;border-radius:6px;padding:0 8px;background:transparent;color:var(--text);text-align:left}.path-entry-main span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.path-entry-main:not(:disabled):hover{background:rgba(66,122,181,.08)}.path-entry-select{min-width:64px}.query-panel{min-width:0}.query-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) minmax(160px,220px) minmax(130px,170px) minmax(160px,190px);grid-gap:8px;gap:8px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line)}.search-field{display:flex;align-items:center;gap:6px;min-width:0;border:1px solid var(--line);border-radius:6px;padding-left:8px;background:white}.search-field input{min-width:0;border:0}.checkbox-field{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.table-surface{overflow-x:auto}.stock-table{display:grid;grid-template-columns:34px 112px minmax(140px,1fr) 104px 132px 88px minmax(180px,.9fr);grid-gap:8px;gap:8px;align-items:center;min-width:780px}.stock-table-head{padding:9px 12px;background:var(--band);color:var(--muted);font-size:12px;font-weight:700}.stock-row{width:100%;padding:10px 12px;border:0;border-top:1px solid var(--line);background:white;text-align:left}.stock-row:hover{background:#f8fbff}.loading-row{height:42px;border-top:1px solid var(--line)}.loading-row span{height:14px;border-radius:999px;background:#e6ebf2}.filter-detail{border-top:1px solid var(--line);background:linear-gradient(180deg,#fbfcfe,#ffffff);padding:10px 12px 12px}.trigger-detail{display:grid;grid-gap:8px;gap:8px;padding:10px 12px}.trigger-detail-header{display:grid;grid-template-columns:minmax(180px,.75fr) minmax(0,3fr) minmax(170px,.72fr);grid-gap:8px;gap:8px;align-items:stretch}.detail-overview{display:grid;grid-template-columns:minmax(190px,.9fr) minmax(0,3.4fr);grid-gap:10px;gap:10px;align-items:stretch;margin-bottom:8px}.stock-identity{display:grid;align-content:center;grid-gap:5px;gap:5px;min-height:70px;border:1px solid rgba(64,106,175,.22);border-radius:7px;padding:10px 12px;background:rgba(66,122,181,.06)}.trigger-identity{min-height:74px;padding:8px 10px}.stock-identity strong{font-size:18px}.stock-identity>span{color:var(--muted);font-weight:700}.detail-facts{display:grid;grid-template-columns:repeat(8,minmax(110px,1fr));grid-gap:8px;gap:8px}.trigger-facts{grid-template-columns:repeat(6,minmax(104px,1fr));gap:6px}.info-cell{min-width:0;border:1px solid rgba(64,106,175,.18);border-radius:6px;padding:7px 8px;background:white}.trigger-progress-card{display:grid;align-content:center;grid-gap:9px;gap:9px;min-width:0;border:1px solid rgba(64,106,175,.22);border-radius:7px;padding:8px 10px;background:linear-gradient(180deg,rgba(247,221,125,.28),rgba(255,255,255,.92))}.trigger-progress-card>span{color:var(--muted);font-size:11px;font-weight:700}.trigger-progress{display:grid;grid-template-columns:minmax(72px,1fr) auto auto;align-items:center;grid-gap:6px;gap:6px;min-width:0;color:var(--muted);font-size:12px;white-space:nowrap}.trigger-progress.compact{max-width:172px}.trigger-progress-track{position:relative;display:block;height:8px;overflow:hidden;border-radius:999px;background:#e6ebf2;box-shadow:inset 0 0 0 1px rgba(64,106,175,.12)}.trigger-progress-fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:linear-gradient(90deg,#b42318,#d97706 48%,#0b786f)}.trigger-progress strong{color:var(--text);font-size:12px}.info-cell>span{display:block;margin-bottom:3px;color:var(--muted);font-size:11px}.info-cell .formatted-primary,.info-cell>strong{display:block;overflow:hidden;color:var(--text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.formatted-value{display:inline-grid;max-width:100%;min-width:0;gap:2px;align-content:center}.formatted-primary{min-width:0;color:var(--text);font-weight:700}.formatted-primary,.formatted-value small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.formatted-value small{color:var(--muted);font-size:10.5px;font-weight:500;line-height:1.15}.failure-summary{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px;border:1px solid rgba(180,35,24,.24);border-radius:7px;padding:8px 10px;background:#fff7f5}.failure-summary-ok{align-items:center;border-color:rgba(11,120,111,.2);background:rgba(11,120,111,.06);color:var(--ok)}.failure-summary-title{display:inline-flex;align-items:center;gap:6px;min-width:92px;color:var(--bad);font-weight:700}.failure-pills{display:flex;flex:1 1;flex-wrap:wrap;gap:6px;min-width:0}.failure-pill{display:inline-flex;align-items:center;gap:6px;max-width:360px;border:1px solid rgba(180,35,24,.18);border-radius:6px;padding:4px 8px;background:white;color:var(--bad);font-size:12px}.failure-pill span{overflow:hidden;color:#7a2e24;text-overflow:ellipsis;white-space:nowrap}.filter-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.filter-section{border:1px solid var(--line);border-radius:6px;background:white;overflow:hidden}.filter-heading,.memo-row{display:grid;grid-template-columns:minmax(140px,1.1fr) 112px;align-items:center;grid-gap:8px;gap:8px;padding:6px 9px}.filter-heading{border-bottom:1px solid var(--line);background:rgba(66,122,181,.06);font-weight:700}.trigger-condition-panel{overflow:hidden;border:1px solid var(--line);border-radius:7px;background:white}.trigger-condition-heading{display:flex;justify-content:space-between;min-height:36px}.trigger-condition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;padding:8px}.condition-card{display:grid;grid-template-rows:auto 1fr auto;grid-gap:7px;gap:7px;min-width:0;border:1px solid rgba(64,106,175,.18);border-radius:7px;padding:8px;background:#fbfcff}.condition-card-passed{border-color:rgba(11,120,111,.24);background:rgba(11,120,111,.045)}.condition-card-failed{border-color:rgba(180,35,24,.22);background:#fff8f6}.condition-card-disabled{border-color:rgba(84,98,122,.2);background:#f7f9fc}.condition-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.condition-card-head strong{overflow:hidden;color:var(--text);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.condition-card-body{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px}.condition-field{display:grid;grid-gap:3px;gap:3px;min-width:0;border:1px solid rgba(64,106,175,.12);border-radius:6px;padding:6px;background:rgba(255,255,255,.72)}.condition-field>span{color:var(--muted);font-size:11px;font-weight:700}.condition-reason{overflow:hidden;color:var(--muted);font-size:12px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.memo-row{grid-template-columns:minmax(150px,1.4fr) minmax(86px,1fr) minmax(86px,1fr) minmax(150px,1.3fr);border-top:1px solid #eef1f5;font-size:11.5px}.memo-head{border-top:0;background:#fbfcff;color:var(--muted);font-size:11px}.memo-head,.memo-label{font-weight:700}.memo-failed{background:#fff8f6}.memo-result{display:inline-flex;align-items:center;gap:8px;min-width:0}.memo-reason{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.decision{display:inline-flex;align-items:center;gap:5px;font-weight:700}.decision-passed{color:var(--ok)}.decision-failed{color:var(--bad)}.decision-disabled{color:var(--muted)}.pager{display:inline-flex;align-items:center;gap:8px;font-size:12px}.empty-state,.inline-error,.notice{margin:10px 12px;border-radius:6px;padding:9px 10px;font-size:13px}.inline-error{border:1px solid #fecdca;background:#fff4f2;color:var(--bad)}.notice{border:1px solid #b7e4cf;background:#ecfdf3;color:var(--ok)}.empty-state{border:1px dashed var(--line);color:var(--muted)}.loading-block{min-height:160px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}@media (max-width:1320px){:root{--config-drawer-width:820px}.runtime-command-bar{grid-template-columns:1fr}.data-controller-grid,.runtime-control-top,.runtime-kpi-grid,.service-grid{grid-template-columns:1fr 1fr}.runtime-actions{justify-content:flex-start}.runtime-facts{grid-template-columns:repeat(4,minmax(112px,1fr))}.settings-grid,fieldset{grid-template-columns:1fr 1fr}.detail-facts{grid-template-columns:repeat(4,minmax(0,1fr))}.trigger-detail-header{grid-template-columns:minmax(170px,.75fr) minmax(0,2.1fr)}.trigger-progress-card{grid-column:1/-1}.trigger-condition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.query-toolbar{grid-template-columns:minmax(220px,1fr) repeat(3,minmax(130px,1fr))}.version-row{grid-template-columns:60px 86px minmax(138px,.9fr) minmax(120px,1fr) minmax(150px,1fr) 108px}}@media (max-width:980px){.app-shell{grid-template-columns:1fr}.app-sidebar{position:static;height:auto}.app-nav{grid-template-columns:repeat(2,minmax(0,1fr));min-height:auto}.nav-spacer{display:none}.config-drawer,.config-drawer-toggle,.config-drawer-toggle.open{left:0}.config-drawer{width:min(var(--config-drawer-width),calc(100vw - 28px))}.console-shell{padding-left:20px}.runtime-primary-status{align-items:stretch}.status-pill{flex:1 1 220px}.runtime-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.data-controller-grid,.runtime-control-top,.runtime-kpi-grid,.service-grid{grid-template-columns:1fr}.detail-facts,.settings-grid,.status-grid,fieldset{grid-template-columns:1fr 1fr}.detail-overview,.filter-stack,.trigger-detail-header{grid-template-columns:1fr}.trigger-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.query-toolbar{grid-template-columns:1fr 1fr}.config-metadata-panel{grid-template-columns:1fr}.metadata-actions{justify-content:flex-start}.data-controller-header,.service-toolbar{flex-direction:column}.version-row{grid-template-columns:60px 88px minmax(142px,1fr) 104px}.research-chart-header{align-items:stretch;flex-direction:column}.research-chart-metrics{max-width:none;justify-content:flex-start}.version-comment,.version-name{grid-column:1/-1}}@media (max-width:620px){.app-nav{grid-template-columns:1fr 1fr}.console-shell{padding:10px}.condition-card-body,.data-facts,.data-progress-list,.detail-facts,.service-facts,.settings-grid,.settings-inline-row,.settings-inline-row.session-row,.status-grid,.trigger-condition-grid,.trigger-facts,fieldset{grid-template-columns:1fr}.failure-summary{flex-direction:column}.metadata-grid,.query-toolbar,.version-toolbar{grid-template-columns:1fr}.section-heading{align-items:flex-start;flex-direction:column}.primary-button,.secondary-button{width:100%}.research-metric-chip{flex:1 1 128px}.research-chart-card{min-height:390px}.research-chart{height:100%}.runtime-actions{display:grid;grid-template-columns:1fr 1fr}.connection-row{align-items:stretch;flex-direction:column}.connection{width:100%}.version-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 8px;min-height:auto;padding:8px}.row-actions,.version-comment,.version-name,.version-row>span:nth-child(3),.version-row>strong,.version-status{grid-column:1/-1}.version-comment,.version-name{white-space:normal}.row-actions{justify-content:flex-start}.search-field{min-width:100%}.wip-panel{grid-template-columns:1fr;padding:18px}.login-page{padding:14px}.login-hero{grid-template-columns:1fr;gap:18px}.login-brand strong{font-size:28px}.login-panel{padding:18px}}.data-browser{display:grid;grid-gap:12px;gap:12px;min-width:0}.data-browser-header,.data-browser-main,.data-browser-sidebar,.data-browser-summary,.data-summary-dashboard{border:1px solid var(--line);border-radius:8px;background:var(--surface)}.data-browser-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 16px}.data-browser-header h1{margin:0;font-size:24px;letter-spacing:0}.data-browser-header p{margin:4px 0 0;color:var(--muted)}.data-browser-kpis{display:inline-flex;flex-wrap:wrap;gap:8px}.data-browser-kpis span{border:1px solid rgba(64,106,175,.2);border-radius:6px;padding:6px 9px;background:rgba(66,122,181,.05);font-size:12px;font-weight:700}.data-browser-layout{display:grid;grid-template-columns:260px minmax(0,1fr);grid-gap:12px;gap:12px;min-height:calc(100vh - 142px)}.data-browser-sidebar{align-self:start;display:grid;grid-gap:12px;gap:12px;padding:12px}.data-browser-group{display:grid;grid-gap:6px;gap:6px}.data-browser-group h2{margin:0;color:var(--blue-deep);font-size:12px}.data-browser-dataset{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;grid-gap:8px;gap:8px;min-height:34px;border:1px solid transparent;border-radius:6px;padding:0 8px;background:transparent;color:var(--text);text-align:left}.data-browser-dataset span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-browser-dataset.active,.data-browser-dataset:hover{border-color:var(--line);background:rgba(247,221,125,.34)}.data-browser-main{display:grid;grid-gap:10px;gap:10px;min-width:0;padding:12px}.data-summary-dashboard{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:calc(100vh - 166px);padding:10px 12px}.data-summary-dashboard-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.data-summary-dashboard-title strong{color:var(--blue-deep);font-size:14px}.data-summary-dashboard-title span{color:var(--muted);font-size:12px;font-weight:700}.data-summary-table-scroll{min-height:0;overflow:auto}.data-summary-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:12px}.data-summary-table td,.data-summary-table th{max-width:260px;border-bottom:1px solid rgba(64,106,175,.14);height:40px;padding:8px 9px;overflow:hidden;text-align:left;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.data-summary-table th{top:0;z-index:3;background:var(--band);color:var(--muted)}.data-summary-table tfoot td,.data-summary-table th{position:-webkit-sticky;position:sticky;font-weight:800}.data-summary-table tfoot td{bottom:0;z-index:2;border-top:1px solid rgba(64,106,175,.28);background:#fff8db;color:var(--text)}.data-summary-table td:first-child span,.data-summary-table td:first-child strong{display:block}.data-summary-table td:first-child span{color:var(--muted);font-size:11px}.data-browser-summary{display:grid;grid-template-columns:minmax(180px,.35fr) minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:start;padding:10px 12px;background:rgba(66,122,181,.035)}.data-browser-summary span,.data-browser-summary strong{display:block}.data-browser-summary dd,.data-browser-summary p,.data-browser-summary span{color:var(--muted)}.data-browser-summary p{margin:0}.data-browser-summary details{min-width:160px}.data-browser-summary dl{display:grid;grid-gap:4px;gap:4px;margin:8px 0 0}.data-browser-summary dt{color:var(--blue-deep);font-size:11px;font-weight:700}.data-browser-summary dd{margin:0;font-size:12px}.data-browser-filters{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr)) auto;grid-gap:8px;gap:8px;align-items:end}.data-browser-filter-pair{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.data-browser-table-wrap{min-width:0;min-height:0;border:1px solid var(--line);border-radius:8px;background:white}.data-browser-table-scroll{max-height:calc(100vh - 340px);min-height:360px;overflow:auto}.data-browser-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:12px}.data-browser-table td,.data-browser-table th{max-width:220px;border-bottom:1px solid rgba(64,106,175,.14);padding:7px 9px;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.data-browser-table th{position:-webkit-sticky;position:sticky;top:0;z-index:2;background:var(--band);color:var(--muted);font-weight:800}.data-browser-table td:first-child,.data-browser-table th:first-child{position:-webkit-sticky;position:sticky;left:0;z-index:1;background:white}.data-browser-table th:first-child{z-index:3;background:var(--band)}.data-browser-pager{display:inline-flex;align-items:center;justify-content:flex-end;gap:10px}@media (max-width:980px){.data-browser-layout,.data-browser-summary{grid-template-columns:1fr}.data-browser-filters{grid-template-columns:1fr 1fr}}@media (max-width:620px){.data-browser-header{flex-direction:column}.data-browser-filter-pair,.data-browser-filters{grid-template-columns:1fr}}