html:has(.app-shell),body:has(.app-shell),#root:has(.app-shell){overflow:hidden}.app-shell{display:grid;grid-template-columns:264px 1fr;height:100vh;overflow:hidden;background:var(--bg-secondary)}.app-shell[data-collapsed=true]{grid-template-columns:72px 1fr}.app-sidebar{display:flex;flex-direction:column;background:var(--bg-primary);border-right:1px solid var(--border-secondary);overflow:hidden}.app-sidebar-brand{display:flex;align-items:center;gap:10px;padding:18px 20px}.app-sidebar-mark{width:34px;height:34px;border-radius:9px;background:var(--bg-brand-solid);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.app-sidebar-logo-img{max-height:40px;max-width:180px;object-fit:contain}.app-sidebar-brand-name{font-weight:700;font-size:15px;color:var(--fg-primary)}.app-sidebar-brand-sub{font-size:11px;color:var(--fg-quaternary)}.app-sidebar-nav{flex:1;overflow-y:auto;padding:8px 12px 16px}.app-nav-group-label{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--fg-quaternary);padding:14px 10px 6px}.app-nav-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);color:var(--fg-secondary);font-size:14px;font-weight:500;cursor:pointer;text-decoration:none;text-align:left;transition:background .1s,color .1s}.app-nav-item:hover{background:var(--bg-primary-hover);color:var(--fg-secondary-hover)}.app-nav-item[data-active=true]{background:var(--bg-active);color:var(--fg-brand-primary, var(--brand-700));font-weight:600}.app-nav-item-ico{display:inline-flex;color:var(--fg-quaternary);flex-shrink:0}.app-nav-item[data-active=true] .app-nav-item-ico{color:var(--fg-brand-primary, var(--brand-600))}.app-nav-item-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-nav-sub{display:flex;flex-direction:column;gap:2px;padding-left:4px}.app-sidebar-foot{flex-shrink:0;padding:12px;border-top:1px solid var(--border-secondary)}.app-account{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:none;background:transparent;border-radius:var(--radius-sm);cursor:pointer;text-align:left}.app-account:hover{background:var(--bg-primary-hover)}.app-account-avatar{width:36px;height:36px;border-radius:50%;background:var(--bg-brand-secondary);color:var(--fg-brand-primary, var(--brand-700));display:flex;align-items:center;justify-content:center;font-weight:600;flex-shrink:0}.app-account-name{font-size:13px;font-weight:600;color:var(--fg-primary)}.app-account-role{font-size:11px;color:var(--fg-quaternary)}.app-main{display:flex;flex-direction:column;min-width:0;overflow:hidden}.app-topbar{display:flex;align-items:center;gap:16px;height:64px;padding:0 16px;background:var(--bg-primary);border-bottom:1px solid var(--border-secondary);flex-shrink:0}.app-topbar-title{display:flex;align-items:baseline;gap:10px;min-width:0}.app-topbar-title h1{font-size:19px;font-weight:700;color:var(--fg-primary);margin:0;letter-spacing:-.01em}.app-topbar-sub{font-size:13px;color:var(--fg-quaternary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-topbar-crumbs{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--fg-quaternary)}.app-topbar-spacer{flex:1}.app-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--fg-quaternary);cursor:pointer}.app-iconbtn:hover{background:var(--bg-primary-hover);color:var(--fg-secondary)}.app-langbtn{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 8px;border-radius:var(--radius-sm);border:1px solid var(--border-secondary);background:transparent;color:var(--fg-tertiary);font-size:12px;font-weight:600;cursor:pointer}.app-langbtn:hover{background:var(--bg-primary-hover);color:var(--fg-secondary)}.app-content{flex:1;overflow-y:auto;padding:16px}.app-content:has(.lp-page--fill),.app-content:has(.inv-page--fill),.app-content:has(.queue-page--fill),.app-content:has(.battery-record-detail),.app-content:has(.task-detail-page>.detail-topbar),.app-content:has(.uui-fill-page){overflow:hidden;display:flex}.app-content:has(.task-detail-page>.detail-topbar){padding:0 0 16px}.app-content:has(.queue-page--fill){padding:0 0 16px}.app-content:has(.md-cards):has(.md-detail){padding:0;overflow:hidden;display:flex;flex-direction:column}.lp-page--fill,.inv-page--fill,.queue-page--fill{flex:1;min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:0}.lp-page--fill .lp-stack{flex:1;min-height:0;width:100%;max-width:none;margin:0;display:flex;flex-direction:column}.lp-page--fill .lp-card{flex:1;min-height:0;display:flex;flex-direction:column}.lp-page--fill .lp-card>*{flex-shrink:0}.lp-page--fill .lp-rows-wrap{flex:1 1 auto;min-height:0;overflow:auto}.lp-page--fill .lp-rows-wrap .uui-table thead th,.inv-page--fill .lp-rows-wrap .uui-table thead th{position:sticky;top:0;z-index:2}.inv-page--fill>*{flex-shrink:0}.inv-page--fill .inv-table-wrap{flex:1;min-height:0;display:flex}.inv-page--fill .inv-table-wrap>.lp-card{flex:1;min-height:0;display:flex;flex-direction:column;width:100%}.inv-page--fill .inv-table-wrap .lp-card>*{flex-shrink:0}.inv-page--fill .inv-table-wrap .lp-rows-wrap{flex:1 1 auto;min-height:0;overflow:auto}@media(max-width:1000px){.inv-page--fill{overflow-y:auto}.inv-page--fill .inv-table-wrap{flex:0 0 auto}.inv-page--fill .inv-table-wrap>.lp-card{flex:0 0 auto}.inv-page--fill .inv-table-wrap .lp-rows-wrap{flex:0 0 auto;height:clamp(280px,48dvh,420px)}}.queue-page--fill>*{flex-shrink:0}.queue-page--fill>.queue-table-card{flex:1;min-height:0;display:flex;flex-direction:column}.queue-page--fill .queue-table-card>*{flex-shrink:0}.queue-page--fill .queue-scroll{flex:1 1 auto;min-height:0;overflow:auto}.queue-page--fill .queue-tbl thead th{position:sticky;top:0;z-index:2}.queue-page.queue-page--fill{padding:0}.queue-page--fill>.subbar--context{margin:0 0 16px;padding-left:16px;padding-right:16px}.queue-page--fill>.queue-table-card{margin-left:16px;margin-right:16px}.task-detail-page>.detail-topbar{margin:0;padding:10px 16px}.uui-fill-page{flex:1;min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column}.uui-fill-page>*{flex-shrink:0}.uui-fill-page>.uui-table-shell{flex:1;min-height:0;display:flex;flex-direction:column}.uui-fill-page .uui-table-shell>*{flex-shrink:0}.uui-fill-page .uui-table-scroll{flex:1 1 auto;min-height:0;overflow:auto}.uui-fill-page .uui-table thead th{position:sticky;top:0;z-index:2}@media(max-width:1024px){.app-shell{grid-template-columns:1fr}.app-sidebar{position:fixed;z-index:90;width:264px;height:100vh;transform:translate(-100%);transition:transform .2s;box-shadow:var(--shadow-2xl)}.app-sidebar[data-open=true]{transform:translate(0)}}@media(max-width:640px){.app-topbar{height:56px;gap:8px;padding:0 10px}.app-topbar-title{flex:1 1 auto;min-width:0}.app-topbar-title h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px}.app-topbar-sub,.app-ws-domain-label,.app-topbar-workspace-switch,.app-topbar-language,.app-topbar-theme,.app-topbar-notifications,.app-topbar-help,.app-topbar-spacer{display:none}.app-iconbtn{width:34px;height:34px;flex-shrink:0}.app-ws-domain{margin-left:auto;flex-shrink:0}.app-ws-domain-btn{min-height:34px;padding:6px 9px}.app-topbar-account{flex-shrink:0}.app-topbar-account .app-ws-switch{padding:3px}.app-topbar-account .app-ws-switch>svg{display:none}.app-content{padding:12px}.queue-page--fill>.queue-table-card{margin-left:12px;margin-right:12px}.queue-page--fill>.subbar--context{padding-left:12px;padding-right:12px}.task-detail-page>.detail-topbar{padding-left:12px;padding-right:12px}.detail-actionbar,.submit-bar{bottom:-12px;margin:12px -12px -12px;padding-left:12px;padding-right:12px}}.app-shell[data-workspace=battery] .app-sidebar-mark{background:var(--brand-600)}.app-shell[data-workspace=finance] .app-sidebar-mark{background:var(--success-600)}.app-shell[data-workspace=cockpit] .app-sidebar-mark{background:var(--brand-700)}.app-shell[data-workspace=group] .app-sidebar-mark{background:var(--blue-600)}.app-shell[data-workspace=admin] .app-sidebar-mark{background:var(--gray-700)}.app-tenant-wrap{position:relative;padding:0 12px 8px}.app-tenant{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--border-secondary);border-radius:var(--radius-md, 8px);background:var(--bg-primary)}.app-tenant[role=button]{cursor:pointer}.app-tenant[role=button]:hover{background:var(--bg-primary-hover)}.app-tenant-dot{width:8px;height:8px;border-radius:50%;background:var(--fg-success-primary, #17b26a);flex-shrink:0}.app-tenant-text{min-width:0;flex:1}.app-tenant-name{font-size:13px;font-weight:600;color:var(--fg-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-tenant-meta{font-size:11px;color:var(--fg-quaternary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-tenant-chev{color:var(--fg-quaternary);flex-shrink:0}.app-tenant-menu{position:absolute;left:12px;right:12px;top:calc(100% - 4px);z-index:70;background:var(--bg-primary);border:1px solid var(--border-secondary);border-radius:var(--radius-md, 8px);box-shadow:var(--shadow-lg);padding:4px}.app-tenant-opt{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;background:transparent;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;color:var(--fg-secondary);text-align:left}.app-tenant-opt:hover{background:var(--bg-primary-hover)}.app-tenant-opt[data-on=true]{color:var(--fg-brand-primary, var(--brand-700));font-weight:600}.app-tenant-opt-dot{width:7px;height:7px;border-radius:50%;background:var(--fg-quaternary);flex-shrink:0}.app-tenant-opt-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-ws-domain{position:relative;display:inline-flex;align-items:center;gap:8px}.app-ws-domain-label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-quaternary)}.app-ws-domain-btn{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid var(--border-secondary);border-radius:var(--radius-md, 8px);background:var(--bg-primary);color:var(--fg-primary);font-size:13px;font-weight:600;cursor:pointer}.app-ws-domain-btn:hover{background:var(--bg-primary-hover)}.app-ws-domain-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:70;min-width:200px;background:var(--bg-primary);border:1px solid var(--border-secondary);border-radius:var(--radius-md, 8px);box-shadow:var(--shadow-lg);padding:4px}.app-ws-domain-opt{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:8px 10px;border:none;background:transparent;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;color:var(--fg-secondary);text-align:left}.app-ws-domain-opt:hover{background:var(--bg-primary-hover)}.app-ws-domain-opt[data-on=true]{color:var(--fg-brand-primary, var(--brand-700));font-weight:600}.app-ws-switch{display:inline-flex;align-items:center;gap:4px;padding:4px 6px 4px 4px;border:1px solid var(--border-secondary);border-radius:var(--radius-md, 8px);background:var(--bg-primary);color:var(--fg-quaternary);cursor:pointer}.app-ws-switch:hover{background:var(--bg-primary-hover)}.ws-viewas{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px;margin-bottom:8px}.ws-viewas-label{font-size:11px;color:var(--fg-quaternary);text-transform:uppercase;letter-spacing:.04em}.ws-viewas-seg{display:inline-flex;border:1px solid var(--border-secondary);border-radius:var(--radius-sm);overflow:hidden}.ws-viewas-seg button{border:none;background:transparent;padding:4px 10px;font-size:12px;font-weight:600;color:var(--fg-tertiary);cursor:pointer}.ws-viewas-seg button[data-on=true]{background:var(--bg-brand-solid);color:#fff}.app-version-label{margin-top:8px;padding:0 8px;font-size:10.5px;color:var(--fg-quaternary);letter-spacing:.02em}.detail-actionbar,.submit-bar{position:sticky;bottom:-16px;margin:12px -16px -16px;z-index:20}@media(max-width:768px){.app-content .batch-create-page>.detail-actionbar{bottom:-12px;margin:12px -12px -12px}}.update-banner{position:fixed;top:0;left:0;right:0;z-index:3000;display:flex;align-items:center;justify-content:center;gap:12px;padding:10px 16px;background:var(--bg-brand-solid, var(--brand-600));color:#fff;font-size:14px;font-weight:500;box-shadow:0 2px 8px #0000002e;animation:update-banner-in .25s ease}@keyframes update-banner-in{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.update-banner-icon{font-size:16px;line-height:1}.update-banner-text{max-width:70ch}.update-banner-btn{flex-shrink:0;padding:6px 14px;border:1px solid rgba(255,255,255,.7);border-radius:6px;background:#ffffff1f;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease}.update-banner-btn:hover{background:#ffffff3d}
