body[data-profile=PEOPLE],body[data-profile=CORE]{--blue:#245df5;--profile-main:#081b66;--profile-accent:#245df5;--profile-soft:#edf2fc;--profile-line:#d8e3fa;--profile-hover:#154dd0;--profile-side:#0a1230;--profile-nav:#d3e0ff}
body[data-profile=ANIMALS]{--blue:#258c55;--profile-main:#176b4d;--profile-accent:#258c55;--profile-soft:#e8f4ec;--profile-line:#cce5d4;--profile-hover:#105139;--profile-side:#102d25;--profile-nav:#d3f0df}
body[data-profile=VEHICLES]{--blue:#b9690d;--profile-main:#704209;--profile-accent:#b9690d;--profile-soft:#fff5e7;--profile-line:#efd9bd;--profile-hover:#94510b;--profile-side:#302719;--profile-nav:#ffe8cb}
.module-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:20px 0 32px}
.module-card{border:1px solid #dce2ed;border-top:4px solid #245df5;border-radius:12px;padding:20px;background:#fff}
.module-card[data-module=ANIMALS]{border-top-color:#258c55}.module-card[data-module=VEHICLES]{border-top-color:#e58a16}
.module-card h3{margin:8px 0 18px}.module-card small{color:#65728a}.module-card .check{display:flex;gap:10px;align-items:center}
.map-entity-legend{flex-wrap:wrap;gap:12px!important}.map-entity-legend label{display:flex;align-items:center;gap:6px;font-size:12px;margin:0}
.map-entity-legend .entity-pin{position:static!important;display:inline-block;width:10px!important;height:10px!important;transform:none!important}
.sensor-marker{color:#8a4fc4!important}.entity-VEHICLE{background:#e58a16!important}
.localization-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-width:0}
.localization-form label{min-width:0;display:flex;flex-direction:column;gap:6px}.localization-form .check{flex-direction:row;align-items:center}
.localization-form .wide{grid-column:1/-1}.localization-form select,.localization-form input{width:100%;box-sizing:border-box}.localization-form input[type=checkbox]{width:auto}
.localization-dialog{width:min(720px,calc(100vw - 32px));max-height:90vh;overflow:auto}.localization-dialog h2{padding-right:36px}
.localization-warnings{padding:12px 16px;background:#fff7e9;border:1px solid #f3dbad;border-radius:8px;color:#78511e;font-size:13px}
@media(max-width:600px){.localization-form{grid-template-columns:1fr}.module-cards{grid-template-columns:1fr}.map-entity-legend{gap:8px!important}}
.domain-table-scroll{overflow:auto;max-height:65vh}.domain-table-scroll table{min-width:100%;white-space:nowrap}.domain-table-scroll th input{min-width:110px;max-width:180px}.domain-table-scroll th button{border:0;background:transparent;font-weight:600;padding:4px}.domain-actions{display:flex;gap:4px}.domain-dialog{width:min(900px,94vw);max-height:90vh;border:1px solid #dbe3f3;border-radius:18px;padding:26px;overflow:auto}.domain-dialog>[data-close]{position:absolute;right:12px;top:10px}.domain-dialog h2{padding-right:35px}.domain-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.domain-form label{display:flex;flex-direction:column;gap:6px}.domain-form .wide{grid-column:1/-1}.domain-form input,.domain-form select,.domain-form textarea{width:100%;min-width:0}.domain-dialog::backdrop{background:#101c3b80}@media(max-width:600px){.domain-form{grid-template-columns:1fr}.domain-dialog{padding:20px}}
#business-map-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}.playback-panel{padding:16px;border:1px solid #dbe3f3;border-radius:12px;margin:12px 0}.playback-panel>[data-timeline]{width:100%;accent-color:var(--primary,#245df5)}.playback-panel [data-ticks]{display:flex;gap:2px;overflow:auto;max-height:42px}.map-layers{padding:10px 16px;border-bottom:1px solid #e2e7f2}.map-layers summary{cursor:pointer;font-weight:600}.map-layers .controls{flex-wrap:wrap}.map-layers .check{display:flex;align-items:center;gap:5px}
.domain-table-scroll th:last-child,.domain-table-scroll td:last-child{position:sticky;right:0;background:#f8faff;box-shadow:-1px 0 #dbe3f3;z-index:1}.domain-table-scroll thead th:last-child{z-index:3}.domain-table-scroll .domain-actions{min-width:76px}.map-layers select{min-width:130px}.map-layers .controls{gap:12px}
/* Explicit specificity: the shared dialog enhancer also adds qevo-dialog. */
dialog.domain-dialog form.domain-form,dialog.localization-dialog form.localization-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;margin:20px 0 0;min-width:0;width:100%}
dialog.domain-dialog form.domain-form>label,dialog.localization-dialog form.localization-form>label{display:flex;flex-direction:column;min-width:0;gap:6px;white-space:normal}
dialog.domain-dialog form.domain-form>.wide,dialog.domain-dialog form.domain-form>[role=status]{grid-column:1/-1}
dialog.domain-dialog form.domain-form>button.primary{grid-column:1/-1;justify-self:end}
dialog.domain-dialog form.domain-form input,dialog.domain-dialog form.domain-form select,dialog.domain-dialog form.domain-form textarea{box-sizing:border-box;width:100%;min-width:0;max-width:100%}
@media(max-width:600px){dialog.domain-dialog form.domain-form,dialog.localization-dialog form.localization-form{grid-template-columns:1fr}}

.domain-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.domain-tabs button[aria-pressed=true]{background:var(--primary,#245df5);color:white}.schedule-scroll{overflow:auto;max-height:65vh;border:1px solid #dce3ef;border-radius:12px;margin:16px 0}.schedule-matrix{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%}.schedule-matrix th,.schedule-matrix td{border-right:1px solid #e3e7ef;border-bottom:1px solid #e3e7ef;text-align:center;padding:5px;background:white}.schedule-matrix th:first-child{position:sticky;left:0;z-index:2;min-width:170px;text-align:left}.schedule-matrix thead th{position:sticky;top:0;z-index:3;background:#f1f5fc}.schedule-matrix thead th:first-child{z-index:4}.schedule-matrix small{display:block;font-weight:400}.schedule-matrix .weekend{background:#fff0f1}.schedule-matrix td button{background:transparent;border:0;min-width:76px;font-size:11px;padding:8px 3px;white-space:nowrap}.schedule-matrix .changed{box-shadow:inset 0 -3px #245df5}.schedule-matrix button:disabled{opacity:1;color:#57627a;cursor:default}.domain-table-scroll{max-height:65vh}
#view-profile-label{display:none!important}

.config-groups{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}.config-groups button[aria-pressed=true]{background:#0b2468;color:white}.admin-tabs .outside-config-group{display:none!important}.admin-tabs [data-resource=employees],.admin-tabs [data-resource=entities],.admin-tabs [data-resource=assignments],.admin-tabs [data-resource=beacons],.admin-tabs [data-resource=herds],.admin-tabs [data-resource=work-events]{display:none!important}
.domain-tabs button[aria-pressed=true]{background:#245df5!important;color:#fff!important}.schedule-matrix td button{width:auto;min-width:78px;color:#24324b}.config-groups button{white-space:normal}.sidebar{overflow-x:hidden}

/* HR23: named actions, readable scope groups, attendance legend. */
#business-view> .controls{align-items:center;gap:12px}#business-view .domain-tabs{flex:1 1 650px;display:flex;flex-wrap:wrap;gap:6px}#business-view [data-domain-actions]{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-left:auto;flex-wrap:wrap}#business-view [data-business-report]{order:99;margin-left:auto}
.employee-benefits{display:inline-block;vertical-align:middle}.employee-benefits summary{cursor:pointer;padding:7px 9px;border:1px solid #ccd6eb;border-radius:6px;color:#163b80;white-space:nowrap}.employee-benefits[open]>div{display:flex;flex-direction:column;gap:4px;padding:8px;background:#f2f5fb;border-radius:6px;min-width:210px}.employee-benefits button{display:flex!important;align-items:center;gap:8px;width:100%!important;height:auto!important;min-height:34px!important}.employee-benefits button span{display:inline!important;position:static!important;clip:auto!important;width:auto!important;height:auto!important;white-space:normal!important}
.integration-access{min-width:240px;max-width:380px;white-space:normal!important}.integration-access p{margin:4px 0;line-height:1.5}.integration-access strong{display:inline}
.attendance-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:5px;background:#a5aebc}.attendance-dot.present{background:#148447}.attendance-dot.missing{background:#c42d43}.attendance-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px}.schedule-matrix .absence-label{display:block;font-weight:600;color:#254f95}.schedule-matrix .original-plan{display:block;font-size:10px;color:#66748c}.schedule-matrix td button:disabled{opacity:1}.schedule-matrix td{position:relative}.schedule-matrix td>.attendance-dot{position:absolute;top:3px;right:1px;margin:0;z-index:1}.plan-upload-host:empty{display:none}.plan-upload-host>details{margin-top:18px}.default-plan-button[aria-pressed=true]{color:#1e56d8;background:#e9f0ff}

#business-view table .employee-benefits button{min-width:200px!important;max-width:none!important;width:100%!important;overflow:visible!important}#business-view .employee-benefits span{clip-path:none!important;overflow:visible!important}

/* UX24: common density, readable actions and one scroll region per table. */
.sidebar nav{gap:4px}
.sidebar nav a{min-height:44px;padding-block:10px}
.sidebar .brand{margin-bottom:8px}

.workspace-header{gap:12px;padding-block:16px}
.workspace-header h1{font-size:26px;line-height:1.2}
.workspace-header .sub{margin-top:6px}
.config-groups{padding:6px;background:#eaf0fb;border:1px solid #dbe3f1;border-radius:12px;gap:4px}
.config-groups button{background:transparent;border-color:transparent;min-height:40px;padding:9px 12px}
.config-groups button[aria-pressed=true]{background:#10266d;box-shadow:0 2px 5px #0e235520}
.admin-tabs{gap:6px;margin-bottom:16px}
.admin-tabs .admin-tab{min-height:38px;padding:8px 12px}
#business-view>.controls{padding:12px 16px;gap:8px;margin-bottom:16px}
#business-view .domain-tabs{margin:0;gap:5px}
.domain-tabs button{min-height:38px;padding:9px 12px}
#business-view [data-domain-actions]{gap:6px}
.domain-table-scroll{background:#fff;border:1px solid #dce3ef;border-radius:10px;scrollbar-gutter:stable}
.domain-table-scroll.has-enhanced-table{overflow:visible;max-height:none;scrollbar-gutter:auto}
.domain-table-scroll>.qevo-table-wrap{border:0;border-radius:10px;max-height:60vh}
.domain-table-scroll .qevo-data-table th{font-size:12px;line-height:1.4}
.domain-table-scroll .qevo-data-table th button{white-space:normal;text-align:left;color:#1d2d49}
.domain-table-scroll .qevo-data-table td{padding-block:7px;vertical-align:middle}
.domain-table-scroll .qevo-data-table th input,.domain-table-scroll .qevo-data-table th select{font-size:12px;min-height:34px;padding:7px 9px;min-width:110px}
.domain-table-scroll .qevo-data-table td:last-child{background:#fff}
.domain-table-scroll .qevo-data-table tr:nth-child(even) td:last-child{background:#f7f9fe}
.domain-table-scroll .qevo-data-table tbody tr:hover td{background:#eef4ff}
.domain-actions{align-items:center;min-height:34px;white-space:nowrap}
.domain-actions .employee-benefits summary{min-height:32px;padding:6px 8px;font-size:12px}
.domain-actions .employee-benefits[open]>div{box-shadow:0 8px 20px #10204b18;border:1px solid #d7e1f3}
[data-domain-table]>.controls{padding:10px 14px;gap:8px;min-height:52px;flex-wrap:wrap}
[data-domain-table]>.controls>select{width:auto;max-width:220px;min-width:130px;margin-left:auto}
.view-help,.schedule-help{border:1px solid #dce3ef;background:#fff;border-radius:9px;padding:10px 14px;margin:12px 0;color:#465671;font-size:13px;line-height:1.6}
.view-help summary,.schedule-help summary{cursor:pointer;color:#233858;font-weight:600}
.view-help p,.schedule-help p{margin:10px 0 2px}
.reconciliation-caution{font-size:13px;color:#455773;margin:10px 0}
.schedule-scroll{margin-top:12px;max-height:65vh}
.schedule-matrix th:last-child,.schedule-matrix td:last-child{position:sticky;right:0;z-index:2;min-width:110px;border-left:1px solid #dce3ef}
.schedule-matrix thead th:last-child{z-index:4;background:#f1f5fc}
.domain-dialog{box-shadow:0 24px 80px #081b6640}
.domain-dialog h2{font-size:21px;margin-top:4px}
.domain-dialog label{line-height:1.4}
.domain-dialog :is(input,select,textarea):focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #769fff;outline-offset:2px}
@media(max-width:760px){
 .workspace-header{padding:12px 14px;gap:8px}
 .workspace-header h1{font-size:22px}
 .workspace-header .sub{display:none}
 .workspace-context{width:100%;gap:8px;flex-wrap:wrap}
 .workspace-header .branch-bar{flex:1;min-width:140px}
 .workspace-header .branch-bar select{min-width:110px;width:100%}
 #business-view>.controls{padding:10px}
 #business-view .domain-tabs{flex-basis:100%;display:flex;flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:6px;scrollbar-width:thin}
 .domain-tabs button{flex:none;min-height:42px}
 #business-view [data-domain-actions]{width:100%;justify-content:flex-start;gap:8px}
 .config-groups{flex-wrap:nowrap;overflow:auto;scrollbar-width:thin}
 .config-groups button{flex:none;white-space:nowrap;min-height:42px}
 .admin-tabs{display:flex;flex-wrap:nowrap;overflow:auto;max-width:100%}
 .admin-tabs .admin-tab{flex:none;min-height:42px;white-space:nowrap}
 .table-icon-action,.qevo-icon-action{min-width:40px!important;min-height:40px!important}
 .domain-table-scroll .qevo-data-table th:last-child,.domain-table-scroll .qevo-data-table td:last-child{position:static}
 .schedule-matrix th:first-child{min-width:130px;max-width:150px;white-space:normal}
 .schedule-matrix th:last-child,.schedule-matrix td:last-child{position:static}
 [data-domain-table]>.controls>select{margin-left:0}
}

/* One record editor pattern: list actions outside, fields in a modal. */
.record-actions{display:flex;align-items:center;gap:8px;margin:8px 0 14px}
.record-add{width:40px;height:40px;min-width:40px;padding:0;font-size:26px;line-height:1;border-radius:10px;color:var(--accent,#245df5)}
.record-dialog{width:min(920px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:24px;border:1px solid #d6dff0;border-radius:16px;box-sizing:border-box;overflow:auto}
.record-dialog::backdrop{background:rgba(12,24,48,.48)}
.record-dialog>h2{padding-right:48px;margin:0 0 20px;font-size:21px}
.record-dialog>.record-close{position:absolute;top:12px;right:12px;width:36px;height:36px;padding:0;font-size:24px}
.record-dialog .inline-form,.record-dialog #form-fields{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.record-dialog form{margin:0;width:100%;min-width:0;border:0;box-shadow:none;padding:0}
.record-dialog label,.record-dialog input,.record-dialog select,.record-dialog textarea{min-width:0;max-width:100%;box-sizing:border-box}
.record-dialog fieldset,.record-dialog form>h3,.record-dialog form>p,.record-dialog form>button,.record-dialog .industry-fields{grid-column:1/-1}
.record-dialog form>button{justify-self:end}
.record-dialog .zone-editor{margin-top:18px;width:100%}
#resource-grid{display:block}
.record-dialog [hidden]{display:none!important}
@media(max-width:600px){.record-dialog{padding:18px;width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.record-dialog .inline-form,.record-dialog #form-fields{grid-template-columns:1fr!important}.record-dialog>h2{font-size:18px}.record-dialog .zone-editor{min-height:180px}}

.record-actions>span{font-weight:600;color:var(--profile-main,#132442)}
.record-actions{justify-content:space-between}

/* Wspólna kolejka działań i konfiguracja zakresu Qevo Animals. */
.action-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}
.action-summary>div{padding:14px;border:1px solid #dbe3f1;border-radius:12px;background:#fff}
.action-summary strong{display:block;font-size:24px;color:var(--profile-main,#132442)}
.action-list{display:grid;gap:10px}
.action-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:14px;border:1px solid #dbe3f1;border-left:4px solid #8ba0c4;border-radius:12px;background:#fff}
.action-card[data-priority="CRITICAL"]{border-left-color:#c6293e}.action-card[data-priority="HIGH"]{border-left-color:#e17a23}
.action-card h3{margin:0 0 4px}.action-card p{margin:3px 0}.action-card .controls{justify-content:flex-end}
.animal-profile-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}
.animal-profile-options label{padding:12px;border:1px solid #dbe3f1;border-radius:10px;background:#f8faff}
.offline-queue{display:flex;gap:8px;align-items:center;color:#5d6d87}.offline-queue[data-count="0"]{display:none}
@media(max-width:760px){.action-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.action-card{grid-template-columns:1fr}.animal-profile-options{grid-template-columns:1fr}#actions-quick-add{position:fixed;right:18px;bottom:18px;z-index:40;width:52px;height:52px;border-radius:50%;font-size:28px;box-shadow:0 8px 24px rgba(22,49,94,.25)}}

/* Readable task status, deadlines and explicit workflow actions. */
.task-card-main{min-width:0}.action-card h2{font-size:18px;margin:4px 0 12px;overflow-wrap:anywhere}
.task-card-meta{display:grid;grid-template-columns:auto auto 42px;align-items:center;gap:20px}
.task-status{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:5px 11px;border-radius:20px;font-size:13px;font-weight:700;line-height:1.4;white-space:nowrap;background:#edf2ff;color:#2346a0}
.task-status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.task-status[data-status="IN_PROGRESS"]{background:#e3efff;color:#1454a0}.task-status[data-status="VERIFY"]{background:#f0e8ff;color:#6834a3}
.task-status[data-status="DONE"]{background:#e0f4e7;color:#1a6b3c}.task-status[data-status="PAUSED"]{background:#fff0ce;color:#865600}.task-status[data-status="CANCELLED"]{background:#fbe5e9;color:#9e2940}
.task-due{display:flex;flex-direction:column;gap:4px;line-height:1.4;min-width:140px;color:#52627c;font-size:12px}.task-due strong{font-size:13px;font-weight:600;color:#253550}.task-due.overdue,.task-due.overdue strong{color:#b3243c}
.task-workflow{padding:14px;border:1px solid #dbe3f1;border-radius:10px;background:#f7f9fd}.task-current{display:flex;align-items:center;gap:12px}.task-workflow p{font-size:13px;color:#52627c}.task-step-buttons{display:flex;flex-wrap:wrap;gap:8px}.task-step-buttons button{min-height:40px}
@media(max-width:760px){.task-card-meta{grid-template-columns:1fr auto;gap:12px}.task-card-meta .task-status{justify-self:start}.task-card-meta .task-due{grid-row:2;grid-column:1}.task-card-meta>button{grid-column:2;grid-row:1 / 3}.task-step-buttons{flex-direction:column}}

/* Sidebar branding and topic-specific icons. */
.sidebar .nav-symbol svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sidebar .nav-caption{margin-bottom:5px}.sidebar .brand-slogan{margin:0 12px 20px;color:#c9d6f8;font-size:10px;line-height:1.5;white-space:nowrap}
.sidebar-collapsed .brand-slogan{display:none}
.side-bottom #data-source{display:none}.side-bottom .connection-dot{background:#dc3545;box-shadow:0 0 0 3px rgb(220 53 69 / 12%)}
.side-bottom .connection-dot[data-connected="true"]{background:#29cb79;box-shadow:0 0 0 3px rgb(41 203 121 / 12%)}
#qevo-connection-label{margin-left:5px}
.task-inbox-button{display:flex;align-items:center;gap:9px;margin:8px 10px;padding:10px;color:#e8efff;background:transparent;border:1px solid #7181ad;border-radius:9px;text-align:left;font-size:12px}.task-inbox-button [data-unread]:not(:empty){margin-left:auto;background:#e33a57;color:white;border-radius:10px;padding:1px 6px}.task-inbox-list{display:grid;gap:8px;max-height:65vh;overflow:auto}.task-inbox-item{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;padding:14px;border:1px solid #dbe3f1;border-radius:9px;background:#fff}.task-inbox-item[data-unread=true]{border-left:4px solid #245cff;background:#f3f6ff}.task-inbox-item small{color:#52627c}.sidebar-collapsed .task-inbox-button{font-size:0;justify-content:center;margin:8px 4px}.sidebar-collapsed .task-inbox-button [data-unread]{font-size:10px}

/* Context controls: branch, notifications, account, language. */
#qevo-session-tools{display:flex;align-items:center;gap:10px;margin-left:auto}
#qevo-session-tools .header-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;min-width:40px;margin:0;padding:9px;border:1px solid #d8e1f3;border-radius:10px;background:#fff;color:var(--profile-main,#173878);font-size:0}
#qevo-session-tools .header-icon svg{width:20px;height:20px;display:block}
#qevo-session-tools .task-inbox-button [data-unread]:not(:empty){position:absolute;right:-5px;top:-5px;margin:0;font-size:10px;line-height:16px;min-width:16px;padding:0 3px}
.header-popup{width:min(360px,calc(100vw - 24px));max-height:85vh;margin:80px 16px auto auto;padding:24px;border:1px solid #dbe3f1;border-radius:14px;overflow:auto}
.header-popup .branch-bar{display:flex;flex-direction:column;align-items:stretch;gap:16px;margin:0;padding:0;background:none;border:0;box-shadow:none}.header-popup .branch-bar label{width:100%}.header-popup select{max-width:100%;width:100%}
#qevo-profile-account .sidebar-account{display:flex;align-items:center;gap:12px;color:#192c4b;margin:12px 0;padding:0;border:0}#qevo-profile-account .sidebar-account-details{display:flex;flex-direction:column;gap:4px}#qevo-profile-account .sidebar-account-role{color:#53647e;font-size:12px}#qevo-profile-account .sidebar-account-name{font-size:16px}
.profile-email{overflow-wrap:anywhere;color:#53647e}.profile-account-actions{display:flex;gap:12px;margin-top:20px}.profile-account-actions button{color:#173878;border:1px solid #d8e1f3;background:#f4f7fc;min-height:40px}.profile-account-actions svg{width:20px;height:20px}
.side-bottom #qevo-session-countdown{display:flex;margin:0 0 16px;width:fit-content;color:#cfddff;background:transparent;border-color:#425788}.side-bottom #qevo-session-countdown.session-warning{color:#ff637b;border-color:#ff637b}.sidebar-collapsed .side-bottom #qevo-session-countdown{font-size:11px;padding:4px}.sidebar-collapsed .side-bottom #qevo-session-countdown svg{display:none}
@media(max-width:760px){#qevo-session-tools{gap:6px}.header-popup{margin-top:70px}.workspace-context{flex-wrap:wrap;justify-content:flex-end}}
.header-popup{box-sizing:border-box}

/* Stable header controls; keep badges out of icon alignment. */
#qevo-session-tools .header-icon{box-sizing:border-box;gap:0;padding:0;line-height:1;vertical-align:middle}
#qevo-session-tools .header-bell-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 20px}
#qevo-session-tools .task-inbox-button [data-unread]{position:absolute;right:-5px;top:-5px}
#qevo-session-tools .task-inbox-button [data-unread]:empty{display:none}
#qevo-session-tools #qevo-profile-button{width:40px;height:40px;border-radius:50%;background:var(--profile-main,#213da0);border:2px solid white;color:#fff;font-size:14px;font-weight:700;letter-spacing:.3px;box-shadow:0 0 0 1px #d8e1f3}
.header-popup{position:fixed;inset:0;width:min(380px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 100px);margin:76px 16px auto auto;padding:24px;box-shadow:0 16px 48px #13244226;background:white;color:#1b2b46}
.header-popup .header-popup-title{margin:0 40px 24px 0;font-size:19px;line-height:1.4}
.header-popup>.qevo-popup-close{position:absolute;top:16px;right:16px;width:32px;height:32px;min-width:32px;display:flex;align-items:center;justify-content:center;margin:0;padding:0;border:1px solid #d8e1f3;border-radius:8px;background:white;color:#53647e;font-size:24px;line-height:1}
.header-popup .branch-bar{width:100%;gap:20px}.header-popup .branch-bar label{display:flex;flex-direction:column;gap:8px;min-width:0;margin:0;font-size:12px;font-weight:600;color:#52627c}.header-popup .branch-bar [hidden]{display:none!important}.header-popup .branch-bar select{height:44px;margin:0;font-size:14px;box-sizing:border-box}.header-popup #branch-message:empty{display:none}
#qevo-profile-account .sidebar-account{width:100%;gap:14px;margin:0;padding:0}#qevo-profile-account .sidebar-account-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;border:0;border-radius:50%;font-size:17px;font-weight:700;background:var(--profile-main,#213da0);color:white}#qevo-profile-account .sidebar-account-details{display:flex!important;min-width:0;flex:1}#qevo-profile-account .sidebar-account-name{display:block!important;white-space:normal;overflow-wrap:anywhere;font-size:15px}#qevo-profile-account .sidebar-account-role{display:block!important;white-space:normal;font-size:12px;line-height:1.5}
.header-popup .profile-email{font-size:13px;line-height:1.5;margin:14px 0 0}.header-popup .profile-email[hidden]{display:none}
.profile-account-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:24px;padding-top:16px;border-top:1px solid #e4e9f3}.profile-account-actions button{display:flex;align-items:center;justify-content:flex-start;gap:12px;width:100%;padding:10px 12px;margin:0;font-size:13px;text-align:left;border-radius:9px}.profile-account-actions button[hidden]{display:none}.profile-account-actions svg{flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.8}.profile-account-actions #logout{color:#a5283e;background:#fff5f6;border-color:#f1d5db;order:2}
.sidebar .side-bottom{box-sizing:border-box}.sidebar .side-bottom #qevo-session-countdown{box-sizing:border-box;min-width:0;width:100%;max-width:100%;height:38px;margin:0 0 14px;padding:0 10px;justify-content:center;gap:7px;font-variant-numeric:tabular-nums}
.sidebar-collapsed .sidebar .side-bottom{width:100%;min-width:0;padding-left:0;padding-right:0}.sidebar-collapsed .sidebar .side-bottom #qevo-session-countdown{min-width:0;width:100%;max-width:100%;height:32px;margin:0 0 10px;padding:0 2px;font-size:11px;letter-spacing:0;line-height:1;gap:0}.sidebar-collapsed .sidebar .side-bottom #qevo-session-countdown svg{display:none}.sidebar-collapsed .sidebar .side-bottom #qevo-session-countdown [data-session-time]{display:block;white-space:nowrap}
@media(max-width:760px){.header-popup{margin:68px 12px auto auto;max-height:calc(100dvh - 80px);padding:20px}.sidebar .side-bottom{position:static;inset:auto;margin-top:16px;width:100%}.sidebar:not(.sidebar-collapsed .sidebar) .side-bottom #qevo-connection-label{display:inline}.sidebar:not(.sidebar-collapsed .sidebar) .side-bottom .connection-dot{display:inline-block}}
#qevo-profile-account .sidebar-account-details{position:static;width:auto;height:auto;margin:0;padding:0;overflow:visible;clip-path:none;white-space:normal}
.header-popup.qevo-dialog:has(>.qevo-popup-close){padding-top:24px!important}.header-popup #logout{justify-content:flex-start}.header-popup #logout span{display:inline!important}@media(max-width:760px){.header-popup.qevo-dialog:has(>.qevo-popup-close){padding-top:20px!important}}
/* Sensor actions share one baseline, including asynchronously added BLE/OTA buttons. */
.qevo-data-table:has(tr[data-sensor-row]) th:last-child{width:1%;text-align:right;white-space:nowrap}
.qevo-data-table tr[data-sensor-row]>td{vertical-align:middle}
.qevo-data-table tr[data-sensor-row]>td:last-child{width:1%;min-width:0;max-width:none;white-space:nowrap;text-align:right}
.qevo-data-table tr[data-sensor-row]>td:last-child>.industry-actions{display:inline-flex;flex-wrap:nowrap;align-items:center;vertical-align:middle;gap:4px;min-width:0;margin:0}
.qevo-data-table tr[data-sensor-row]>td:last-child button:not(.qevo-action-button){box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;margin:0;padding:6px!important;vertical-align:middle}
.qevo-data-table tr[data-sensor-row]>td:last-child button[hidden]{display:none!important}
.qevo-data-table tr[data-sensor-row]>td:last-child>:is(.industry-actions,button)+button{margin-left:4px}
.qevo-data-table tr[data-sensor-row]>td:last-child button svg{display:block;width:18px;height:18px;flex:none}
@media(pointer:coarse){.qevo-data-table tr[data-sensor-row]>td:last-child button:not(.qevo-action-button){width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}}
/* Compact playback controls, independent of the general form-card layout. */
.playback-panel{padding:10px 12px;margin:10px 0;min-width:0}
.playback-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;margin:0;padding:0;min-width:0}
.playback-controls label{display:flex;align-items:center;flex:0 0 auto;gap:8px;min-width:0;margin:0;font-size:12px;line-height:1.3}
.playback-controls [data-speed]{width:82px;min-width:82px;height:32px;min-height:32px;padding:4px 8px;margin:0;font-size:12px}
.playback-controls [data-play],.playback-controls [data-all]{display:inline-flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;height:32px;min-width:32px;min-height:32px;padding:0;margin:0;line-height:1}
.playback-position{display:flex;align-items:center;gap:8px;min-width:0;margin-left:auto}
.playback-position output{font-size:12px;line-height:1.3;white-space:nowrap;font-variant-numeric:tabular-nums}
.playback-panel>[data-timeline]{display:block;height:20px;min-height:20px;padding:0;margin:6px 0;border:0;background:transparent;cursor:pointer}
.playback-panel [data-ticks]{gap:3px;max-height:none;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;padding:0 0 3px}
.playback-panel [data-ticks]:empty{display:none}
.playback-panel [data-event-index]{flex:0 0 24px;width:24px;min-width:24px;height:24px;min-height:24px;padding:0;margin:0;line-height:1;font-size:14px;border-radius:6px}
.playback-panel>.sub{font-size:11px;line-height:1.4;margin:5px 0 0}
@media(max-width:600px){.playback-controls{gap:8px 12px}.playback-controls .playback-stop{flex-basis:100%;order:2}.playback-position{order:3;flex-basis:100%;margin-left:0}.playback-panel{padding:10px}.playback-controls [data-play],.playback-controls [data-all],.playback-controls [data-speed]{height:36px;min-height:36px}.playback-controls [data-play],.playback-controls [data-all]{width:36px;min-width:36px;flex-basis:36px}}
/* One compact row for layers and an evenly aligned grid for map filters. */
.map-card .map-title{padding:10px 12px;align-items:center;gap:12px}
.map-card .map-title small{margin-top:3px;line-height:1.4}
.map-card .map-title>div{flex:1;min-width:0;overflow-wrap:anywhere}
.map-card #map-fullscreen{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:40px;height:40px;min-width:40px;min-height:40px;padding:0;flex:none;margin-left:auto;line-height:1}
.map-card #map-fullscreen svg{display:block;flex:none;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.map-card #map-fullscreen:focus-visible{outline:3px solid #7298f8;outline-offset:3px}
#spatial-view .overview-controls{align-items:flex-end;gap:12px;min-width:0}
#spatial-view .overview-controls>label{flex:1 1 180px;min-width:0;margin:0}
#spatial-view .overview-controls>a.button-link{align-self:flex-end;max-width:100%;margin-left:auto}
#spatial-view .overview-controls .action-caption{white-space:nowrap}
.map-card .map-toolbar{padding:7px 12px;align-items:center;flex-wrap:wrap;gap:8px 16px;font-size:11px}
.map-card .map-toolbar .check{font-size:11px;gap:5px;white-space:nowrap}
.map-card .map-layers{padding:7px 12px 10px;font-size:12px;container-type:inline-size;container-name:map-controls}
.map-layers>summary{width:fit-content;font-size:12px;line-height:20px}
.map-layer-toggles{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;margin:8px 0 10px}
.map-layers .map-layer-toggles .check{flex:0 0 auto;min-width:0;font-size:11px;line-height:1.4;white-space:nowrap}
.map-filter-fields{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px 10px;min-width:0}
.map-filter-fields>label{display:grid;gap:4px;min-width:0;margin:0;font-size:11px;line-height:1.4}
.map-layers .map-filter-fields select{width:100%;min-width:0;min-height:32px;height:32px;padding:4px 8px;margin:0;font-size:12px}
.map-card .fullscreen-map-viewport{display:flex;justify-content:center;align-items:center;width:100%;min-width:0;overflow:hidden;background:#edf1f7}
.map-card .fullscreen-map-viewport>#map{flex:none;max-width:100%}
.map-card .fullscreen-map-viewport>#terrain-wrap{width:100%;height:100%;display:flex;flex-direction:column;min-width:0}
.map-card .fullscreen-map-viewport #terrain-map{height:auto;min-height:100px;flex:1}
.map-card .fullscreen-map-viewport #terrain-status{flex:none;margin:4px 8px}
@container map-controls (max-width:1100px){.map-filter-fields{grid-template-columns:repeat(4,minmax(0,1fr))}}
@container map-controls (max-width:580px){.map-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.map-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.map-layer-toggles{gap:8px 14px}.map-card .map-toolbar{gap:8px 12px}.map-card #map-fullscreen{width:44px;height:44px;min-width:44px;min-height:44px}.map-layers .map-filter-fields select{height:36px;min-height:36px}}
@media(pointer:coarse){.map-card #map-fullscreen{width:44px;height:44px;min-width:44px;min-height:44px}}
#import-status:empty,#history-message:empty,#platform-message:empty{display:none}
#history-range>summary{cursor:pointer;font-size:15px;font-weight:650;line-height:24px;width:fit-content;color:var(--ink,#17243b)}
.history-range-body{padding-top:8px}
#history-range .section-heading{align-items:center;gap:12px;margin-bottom:10px}
#history-range .section-heading p{margin:0;font-size:12px;line-height:1.5}
#history-controls>.playback-panel{margin-bottom:0}

.schedule-rule-message{padding:8px 12px;border-left:3px solid #bb3340;background:#fff3f4;line-height:1.5;font-size:12px}.schedule-rule-message[data-severity=warning]{border-color:#aa7415;background:#fff8e9}.schedule-rule-message button{margin-left:10px}
.workspace-config-shortcut{font-size:12px;min-height:44px;margin-top:8px}

.reconciliation-classification{display:grid;grid-template-columns:repeat(2,minmax(140px,1fr));gap:10px;border:1px solid #dce4f2;border-radius:8px;padding:12px;margin:10px 0}.reconciliation-classification>label:first-child{grid-column:1/-1}.reconciliation-classification [data-classification-fields]{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px}.saved-validation-state{padding:12px;border:1px solid #dce4f2;border-left:3px solid #a5751c;border-radius:8px;font-size:12px;line-height:1.5;margin:10px 0}.saved-validation-state p{margin:6px 0}@media(max-width:760px){.reconciliation-classification,.reconciliation-classification [data-classification-fields]{grid-template-columns:1fr}}
