*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:linear-gradient(180deg,#f8fafc,#eef2f7)}.app-shell{min-height:100vh}.app-sider{border-inline-end:1px solid #e5e9ef}.app-logo{padding:18px 16px;font-weight:700;font-size:17px;color:#16325c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-logo.is-collapsed{padding-inline:10px;text-align:center}.app-header{background:#fff!important;border-bottom:1px solid #e5e9ef;padding-inline:20px!important}.instance-select{min-width:220px}.instance-label{max-width:260px;display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.app-content{padding:20px;overflow-x:auto}.app-sider-menu{border-inline-end:none!important}.app-sider-menu .ant-menu-item-divider{margin:14px 16px!important;background-color:#dfe6ef!important}.app-sider.ant-layout-sider-collapsed .ant-menu-item-group-title{display:none}.settings-page>h1,.settings-page>h2,.settings-page>h3,.settings-page>h4,.settings-page>h5{margin-bottom:20px}.settings-tabs>.ant-tabs-nav{width:220px}.settings-tabs>.ant-tabs-content-holder,.settings-tabs .ant-tabs-tabpane{min-width:0}.page-toolbar-scroll{width:100%;overflow-x:auto;padding-bottom:4px}.page-toolbar-strip{display:flex;align-items:center;gap:8px;min-width:max-content}.page-toolbar-scroll--wrap{overflow-x:visible;padding-bottom:0}.page-toolbar-strip--wrap{flex-wrap:wrap;align-items:flex-start;min-width:0;width:100%}.active-filters-bar{width:100%;padding:8px 12px;border:1px solid #e5e9ef;border-radius:10px;background:#fafbfd}.active-filters-inline{width:100%}.summary-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;width:100%}.summary-metric-button{width:100%;min-height:112px;padding:16px;border:1px solid #d9e0ea;border-left-width:4px;border-radius:8px;background:#fff;text-align:left;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;gap:12px;box-shadow:0 1px 2px #0f172a0a}.summary-metric-button:hover,.summary-metric-button:focus-visible{border-top-color:#91caff;border-right-color:#91caff;border-bottom-color:#91caff;outline:none}.summary-metric-button__label{color:#3d4a5c;font-size:14px;line-height:1.35}.summary-metric-button__value{color:#1f2937;font-size:30px;font-weight:650;line-height:1;font-variant-numeric:tabular-nums}.table-clamp-text{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;word-break:break-word}.table-clamp-text-1{-webkit-line-clamp:1}.table-clamp-text-2{-webkit-line-clamp:2}.table-address-cell{max-width:220px}.table-mac-cell{display:inline-block;max-width:150px;white-space:normal;word-break:break-all;line-height:1.3}.stacked-text-cell{display:flex;flex-direction:column;min-width:0;gap:2px}.stacked-text-cell__primary{min-width:0;line-height:1.3}.stacked-text-cell__secondary{line-height:1.3;word-break:break-all;white-space:normal;font-size:12px}.action-icon-button-wrap{display:inline-flex}.action-icon-group{display:inline-flex;gap:4px;align-items:center;flex-wrap:nowrap}.action-icon-group .ant-divider-vertical{height:20px;border-inline-start-color:#d6dce5}.store-row-muted td{color:#8c97a8!important}.store-row-muted .ant-tag,.store-row-muted .ant-btn,.store-row-muted .ant-typography a{opacity:.9}.store-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.store-form-grid-full{grid-column:1 / -1}@media(max-width:900px){.store-form-grid{grid-template-columns:1fr}.store-form-grid-full{grid-column:auto}}.page-card{background:#fff;border:1px solid #e8ecf2;border-radius:12px;padding:16px}@media(max-width:700px){.app-header{min-height:56px;height:auto!important;padding-inline:8px!important}.app-header h4,.app-user-name,.app-logout-label{display:none}.instance-select{min-width:132px;width:132px}.app-content,.page-card{min-width:0;padding:12px}}.hub-control-page{min-width:980px}.hub-control-heading{width:100%;margin-bottom:16px}.hub-control-heading>.ant-space-item:nth-child(2){flex:1}.hub-control-summary{padding-block:12px 4px;border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4}.hub-control-cameras-table .ant-table-thead>tr>th{white-space:nowrap}.hub-camera-control-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:12px}.hub-camera-preview{height:min(52vh,600px);min-height:320px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f5f6f8;border:1px solid #e5e9ef}.hub-camera-preview-button{position:relative;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in;display:flex;align-items:center;justify-content:center}.hub-camera-preview-search{display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:stretch;justify-content:stretch}.hub-camera-preview-search .hub-camera-preview-button{min-width:0}.hub-focus-samples{min-width:0;overflow:auto;padding:12px;background:#fff;border-left:1px solid #e5e9ef}.hub-focus-samples .ant-typography{margin-top:0}.hub-focus-samples .ant-table-cell{white-space:nowrap}.hub-focus-samples .hub-focus-sample-start>td{background:#f5f5f5}.hub-focus-samples .hub-focus-sample-best>td{background:#f0f9eb;font-weight:600}.hub-focus-samples .hub-focus-sample-start.hub-focus-sample-best>td{background:#e8f5e2}.hub-focus-samples-legend{margin-top:10px}.hub-camera-image-stage{position:relative;display:inline-block;max-width:100%;max-height:100%;line-height:0}.hub-camera-image-stage img{display:block;width:auto;height:auto;max-width:100%;max-height:min(52vh,600px);object-fit:contain}.hub-camera-expand-icon{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:36px;height:36px;color:#fff;background:#0000009e;border-radius:6px}.hub-camera-image-stage-fullscreen{display:block;width:fit-content;margin-inline:auto}.hub-camera-image-stage-fullscreen img{max-height:88vh}.hub-focus-region{position:absolute;box-sizing:border-box;border:2px solid;pointer-events:none}.hub-focus-region b{position:absolute;top:0;left:0;padding:3px 5px;color:#fff;font-size:12px;line-height:1;white-space:nowrap}.hub-focus-result{padding-block:10px 2px}.operations-camera-problems-card{container-type:inline-size}.operations-camera-problems-grid{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr)) minmax(300px,1.4fr);gap:20px;min-width:0}.operations-camera-problems-batteries{min-width:300px}@container (max-width: 820px){.operations-camera-problems-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}.operations-camera-problems-batteries{grid-column:1 / -1}}@container (max-width: 380px){.operations-camera-problems-grid{grid-template-columns:minmax(0,1fr)}.operations-camera-problems-batteries{grid-column:auto;min-width:0}}.plu-lookup-form{display:grid;grid-template-columns:minmax(260px,2fr) minmax(180px,1fr) 240px minmax(220px,1fr) auto;gap:12px;align-items:center}.plu-lookup-section{border:1px solid #e5e9ef;border-radius:12px;padding:16px;background:#fbfcfe}.plu-lookup-empty{margin-block:8px 0}@media(max-width:1200px){.plu-lookup-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.plu-lookup-form{grid-template-columns:1fr}}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:radial-gradient(circle at 10% 10%,rgba(82,146,255,.16),transparent 35%),radial-gradient(circle at 90% 90%,rgba(32,191,107,.14),transparent 30%),#f6f8fc}.login-card{width:min(460px,100%);background:#fff;border:1px solid #e5e9ef;border-radius:14px;padding:24px}.hub-cameras-table .ant-table-thead>tr>th{white-space:nowrap}.racks-diagnostics-table .ant-table-thead>tr>th,.racks-diagnostics-table .ant-table-tbody>tr>td{padding:10px 8px!important}.racks-diagnostics-table .ant-table-thead>tr>th{line-height:1.25;white-space:normal;overflow-wrap:anywhere}.racks-diagnostics-table .ant-table-tbody>tr>td{line-height:1.3}.racks-diagnostics-table .ant-tag{max-width:100%;margin-inline-end:0;white-space:normal;text-align:center}.hub-inventory-row-unbound>td{background:#fffbe6!important}.hub-inventory-row-unbound>td:first-child{box-shadow:inset 3px 0 #d89614}.hub-inventory-row-unbound:hover>td{background:#fff7cc!important}.router-pending-row>td{background:#fffbe6!important}
