/* One saved appearance for local workstation, JetBridge and Fire/Beacon UI.
   Signal colors, source artwork and camera video retain their own meaning. */
.beacon-widget .logs-export-toggle{display:inline-flex;align-items:center;justify-content:center;flex:none;width:36px;height:34px;padding:6px;border:1px solid var(--ui-line);border-radius:6px;background:var(--ui-raised);color:var(--ui-ink)}
.logs-export-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.beacon-widget .logs-export-panel{padding:14px;margin:0 0 14px;border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-panel);color:var(--ui-ink);font-size:13px}
:root[data-appearance=day] .logs-export-panel{color-scheme:light}
:root[data-appearance=night] .logs-export-panel{color-scheme:dark}
.beacon-widget .logs-export-panel[hidden],.beacon-widget .logs-export-date[hidden]{display:none}
.beacon-widget .logs-export-panel h4{margin:0 0 6px;font-size:14px}
.beacon-widget .logs-export-scope,.beacon-widget .logs-export-hint{color:var(--ui-muted);font-size:12px;line-height:1.5;margin:6px 0 12px;overflow-wrap:anywhere}
.logs-export-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.logs-export-fields label{display:flex;flex-direction:column;gap:5px;min-width:0}
.beacon-widget .logs-export-fields :is(input,select){width:100%;min-width:0;box-sizing:border-box;padding:7px;font:inherit;border:1px solid var(--ui-line);border-radius:5px}
.logs-export-actions{display:flex;flex-wrap:wrap;gap:8px}
.beacon-widget .logs-export-actions button{padding:8px 12px;font:inherit;border:1px solid var(--ui-line);border-radius:5px}
.beacon-widget .logs-export-status{font-size:13px;line-height:1.5;overflow-wrap:anywhere;margin:10px 0 0;color:var(--ui-ink)}
.logs-export-panel :focus-visible,.logs-export-toggle:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}
@media(max-width:700px){.logs-export-fields{grid-template-columns:minmax(0,1fr)}}
:root[data-appearance=day]{color-scheme:light;--ui-bg:#edf2f6;--ui-panel:#fff;--ui-raised:#edf3f8;--ui-ink:#17364d;--ui-muted:#526b7e;--ui-line:#bdced9;--ui-focus:#196ca4;--ui-selected:#dcecf7;--ui-link:#096795;--ui-error:#a0253c;--ui-success:#17614b;--ui-warning-bg:#fff2d7;--ui-warning-ink:#785019;--ui-warning-line:#d9bb7d;--ui-alarm-bg:#fff0f3;--ui-alarm-ink:#92213b}
:root[data-appearance=night]{color-scheme:dark;--ui-bg:var(--night-bg,#101b28);--ui-panel:var(--night-panel,#152738);--ui-raised:var(--night-raised,#20384b);--ui-ink:#e6edf5;--ui-muted:#a8bacb;--ui-line:#4b6378;--ui-focus:#8bd4ff;--ui-selected:#294d63;--ui-link:#8bd4ff;--ui-error:#ffb7c5;--ui-success:#8ce1bd;--ui-warning-bg:#493a21;--ui-warning-ink:#f6d38d;--ui-warning-line:#796036;--ui-alarm-bg:#472432;--ui-alarm-ink:#ffb7c5}
:root[data-appearance]{accent-color:var(--ui-focus);background:var(--ui-bg);color:var(--ui-ink);--camera-scheme:inherit!important;--camera-background:var(--ui-bg)!important;--camera-panel:var(--ui-panel)!important;--camera-raised:var(--ui-raised)!important;--camera-ink:var(--ui-ink)!important;--camera-muted:var(--ui-muted)!important;--camera-line:var(--ui-line)!important;--camera-button:var(--ui-raised)!important;--camera-hover:var(--ui-selected)!important;--camera-error:var(--ui-error)!important;--camera-selected:var(--ui-selected)!important;--camera-selected-line:var(--ui-focus)!important;--camera-notice:var(--ui-warning-bg)!important;--camera-notice-ink:var(--ui-warning-ink)!important;--camera-notice-line:var(--ui-warning-line)!important}
:root[data-appearance=day]{--camera-scheme:light!important}
:root[data-appearance=night]{--camera-scheme:dark!important}
:root[data-appearance] :is(dialog,.dialog,#login,#choose,#native-login,#system-dashboard,#system-table-scroll,#native-point-inspector,.account-settings,.brand-preview,#settings>form,#kiosk-lock-settings){color-scheme:inherit!important;background:var(--ui-panel)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important}
:root[data-appearance] :is(dialog,.dialog,#login,#choose,#native-login,#system-dashboard) :is(input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea,button:not(.primary):not(.logs-event-open):not(.logs-point):not(.help-condition)){color-scheme:inherit;background:var(--ui-raised);color:var(--ui-ink);border-color:var(--ui-line)}
:root[data-appearance] :is(dialog,.dialog,#native-login,#login,#choose) :is(input,select,textarea){color-scheme:inherit!important;background:var(--ui-raised)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important}
:root[data-appearance] :is(dialog,.dialog) :is(option,optgroup){color:var(--ui-ink);background:var(--ui-raised)}
:root[data-appearance] :is(input,textarea)::placeholder{color:var(--ui-muted);opacity:1}
:root[data-appearance] :is(dialog,.dialog) a{color:var(--ui-link)}
:root[data-appearance] :is(dialog,.dialog) :is(h1,h2,h3,h4,label,legend,dt,dd){color:inherit}
:root[data-appearance] :is(.muted,.intro,#settings-account,#settings-system,#ui-reason,.dialog p,.queue-choice small){color:var(--ui-muted)!important}
:root[data-appearance] :is(dialog>header,.dialog>header,#native-point-inspector>header,.rules-context,.rules-index,.rules-editor,.local-alarm-settings footer,#jet-camera-actions .dialog-content){background:var(--ui-panel)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)!important}
:root[data-appearance] :is(.rule-point,.rule-current,.health-summary>div,#health-table thead,#system-record-table th,.native-point-list button,#bridge-host .theme-panel,#bridge-host .theme-select){background:var(--ui-raised)!important;color:var(--ui-ink)!important;border-color:var(--ui-line)}
:root[data-appearance] :is(.rules-count,.rules-address,.rules-origin,.rules-effect,.rules-qualification,.rule-save-note,.rule-scope-note,.rule-raw-note,.rule-observed,.rule-change,.rules-empty,.rule-badge,.rule-point>small,.local-alarm-settings header p,.local-alarm-settings footer,#jet-camera-actions p){color:var(--ui-muted)!important}
:root[data-appearance] .rule-point.selected{outline-color:var(--ui-focus);background:var(--ui-selected)!important}
:root[data-appearance] .rule-current[data-local-state=alarm]{background:var(--ui-alarm-bg)!important;color:var(--ui-alarm-ink)!important;border-left-color:var(--ui-error)}
:root[data-appearance] :is(.rules-warning,.rules-save-error,body.fire-workspace .warning,.notice-bar,.sound-status,#connection-banner,#website-notice){background:var(--ui-warning-bg)!important;color:var(--ui-warning-ink)!important;border-color:var(--ui-warning-line)!important}
.rules-save-error:empty{display:none}
:root[data-appearance] :is(#exit-message,#login-message,#choose-message,#settings-message[data-error=true],#sound-settings-message[data-error=true],.dialog .error){color:var(--ui-error)!important}
:root[data-appearance] #settings-message:not([data-error=true]){color:var(--ui-success)!important}
:root[data-appearance] #kiosk-lock-status[data-warning=true]{color:var(--ui-warning-ink)!important}
:root[data-appearance] :is(dialog,.dialog,#login,#choose) .primary{background:#08758c!important;color:#fff!important;border-color:#08758c!important}
:root[data-appearance] #kiosk-lock-toggle[aria-checked=true]{background:#08758c;color:#fff;border-color:#08758c}
:root[data-appearance] :is(#welcome,#loading,#account-panel){background:var(--ui-bg);color:var(--ui-ink)}
.appearance-choice{display:grid;gap:6px;font-size:13px}.appearance-choice select{width:100%;min-height:38px;padding:7px;border:1px solid var(--ui-line);border-radius:6px}

/* Explanation, guide and alarm action are contained in the same item tile. */
#bridge-host .logs-dialog .logs-point-row,.beacon-condition-popover .condition-window-item{border:1px solid var(--record-line,var(--ui-line));border-radius:7px;background:var(--record-panel,var(--ui-panel));gap:0;padding:5px;overflow:visible}
#bridge-host .logs-dialog .logs-point-row[data-selected=true]{outline:2px solid var(--record-focus,var(--ui-focus));outline-offset:-2px}
#bridge-host .logs-dialog .logs-point-row>.logs-point,.beacon-condition-popover .condition-window-item>.condition-window-row{border:0!important;outline:none;background:transparent!important;box-shadow:none;margin:0;width:100%;border-radius:4px}
#bridge-host .logs-dialog .logs-point-row>.logs-point:focus-visible,.beacon-condition-popover .condition-window-item>.condition-window-row:focus-visible{outline:2px solid var(--ui-focus);outline-offset:-2px}
:is(#bridge-host,.beacon-condition-popover) .signal-point-actions{padding:0;gap:5px}
:is(#bridge-host,.beacon-condition-popover) .signal-point-actions :is(.logs-point-help,.logs-detail-help,.signal-info-action){margin-left:0}
#bridge-host .logs-detail>.signal-point-actions{justify-content:flex-end}
:is(#bridge-host,.beacon-condition-popover) .signal-point-actions .local-alarm-control{margin:0 0 0 auto;padding:0;display:flex;border:0;background:transparent}
:root[data-appearance] :is(#bridge-host,.beacon-condition-popover) .local-alarm-edit{display:inline-flex;align-items:center;justify-content:center;min-width:28px;width:28px;height:28px;min-height:28px;padding:4px;margin:0;border:1px solid var(--ui-line);border-radius:5px;background:var(--ui-raised)!important;color:var(--ui-muted)!important;cursor:pointer}
.local-alarm-edit svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
:root[data-appearance] .local-alarm-edit:is(:hover,:focus-visible){color:var(--ui-ink)!important;outline:2px solid var(--ui-focus);outline-offset:1px}
:root[data-appearance] .beacon-camera-link{background:var(--ui-raised);color:var(--ui-ink);border-color:var(--ui-line)}

/* Fire workspace: local controls share the palette; map imagery stays intact. */
:root[data-appearance] body.fire-workspace{background:var(--ui-bg);color:var(--ui-ink)}
:root[data-appearance] body.fire-workspace :is(.topbar,.tabbar,.left-pane,.map-pane,footer,.map-devices-panel,.document-bar,.occurrence-bar){background:var(--ui-panel);color:var(--ui-ink);border-color:var(--ui-line)}
:root[data-appearance] body.fire-workspace :is(.icon-button,.exit-button,.tab,#expand-map,#collapse-map,#choose-map,#reset,#auto-nav,#fire-menu,#queue-options,#filters-toggle,#history-export,#event-tools-toggle,.history-actions button,.event-pager button,.event-status-bar button,.event-filters button,.map-dock,#map-devices-toggle,#map-devices-close,#map-devices-more,.password-mode){background:var(--ui-raised);color:var(--ui-ink);border-color:var(--ui-line)}
:root[data-appearance] body.fire-workspace :is(.event-search,.event-filters,.event-tools,.fire-system-picker,.map-devices-toolbar) :is(input,select){color-scheme:inherit;background:var(--ui-raised);color:var(--ui-ink);border-color:var(--ui-line)}
:root[data-appearance] body.fire-workspace :is(.event-modes button){background:var(--ui-raised);color:var(--ui-ink)}
:root[data-appearance] body.fire-workspace :is(.event-modes button[aria-pressed=true],#auto-nav[aria-pressed=true],#map-devices-toggle[aria-expanded=true],#event-tools-toggle[aria-expanded=true]){background:var(--ui-selected);color:var(--ui-ink);border-color:var(--ui-focus);box-shadow:inset 0 -2px var(--ui-focus)}
:root[data-appearance] body.fire-workspace :is(.subbrand,.read-only,.intro p,.list-head small,.empty,.section-top>span,.event-filters label,.event-status-bar,.event-pager,.map-devices-toolbar span,.queue-choice small){color:var(--ui-muted)}
:root[data-appearance] body.fire-workspace :is(.queue-choice,.info-dialog p){color:var(--ui-ink)}
:root[data-appearance] body.fire-workspace :is(.company-link,footer #info){color:var(--ui-link)}
:root[data-appearance] .queue-choice-divider{background:var(--ui-line)}
:root[data-appearance=day] .overview .queue-summary #categories .category:not(.illuminated){background:var(--ui-panel);color:var(--ui-ink);border-top-color:var(--ui-line);border-right-color:var(--ui-line);border-bottom-color:var(--ui-line)}
:root[data-appearance=day] body.fire-workspace :is(.signal,.events-table tbody tr,.map-device){--row-accent:var(--queue-color);background:color-mix(in srgb,var(--queue-color) 7%,#fff);color:var(--ui-ink)}
:root[data-appearance=day] body.fire-workspace :is(.signal:hover,.events-table tbody tr:hover,.map-device:hover){background:color-mix(in srgb,var(--queue-color) 13%,#fff)}
:root[data-appearance=day] body.fire-workspace :is(.signal strong,.event-description strong,.map-device-identity strong){color:var(--ui-ink)}
:root[data-appearance=day] body.fire-workspace :is(.signal time,.signal .address,.event-time,.event-name,.event-details dt,.event-details dd,.map-device-identity>span){color:var(--ui-muted)}
:root[data-appearance=day] body.fire-workspace :is(.signal:not([data-restored="true"]) .kind,.events-table .event-category){color:color-mix(in srgb,var(--queue-color) 70%,#17364d)}
:root[data-appearance] .events-table{color:var(--ui-ink)}
:root[data-appearance] .events-table thead{background:var(--ui-raised)}
:root[data-appearance] .events-table th{color:var(--ui-muted);border-color:var(--ui-line)}
:root[data-appearance] :is(.floorplan-tools,.floorplan-results,.floorplan-layers,.floorplan-overview,.native-map-picker,.map-message,.leaflet-popup-content-wrapper,.leaflet-popup-tip){background:var(--ui-panel);color:var(--ui-ink);border-color:var(--ui-line)}
:root[data-appearance] :is(.floorplan-tools,.floorplan-layers,.floorplan-overview,.native-map-picker,.leaflet-control-zoom) :is(button,input,select,a){color-scheme:inherit;background:var(--ui-raised);color:var(--ui-ink);border-color:var(--ui-line)}
:root[data-appearance] :is(.native-map-picker label,.fire-device-popup,.leaflet-popup-content,.fire-device-popup summary){color:var(--ui-ink)}
:root[data-appearance] :is(.floorplan-result span,.fire-device-popup .fire-device-type,.fire-device-popup dt,.leaflet-container a.leaflet-popup-close-button){color:var(--ui-muted)}
:root[data-appearance] .fire-device-popup .fire-device-signal{background:var(--ui-raised);color:var(--ui-ink)}
:root[data-appearance] .floorplan-tools :is(.floorplan-highlight[aria-pressed=true],.floorplan-result:hover,.floorplan-result:focus){background:var(--ui-selected);color:var(--ui-ink);border-color:var(--ui-focus)}
/* Keep the existing acknowledgment timing while giving the dim phase a Day surface. */
@keyframes beacon-row-pulse-day{0%,64%{background:color-mix(in srgb,var(--queue-color) 20%,#fff)}65%,100%{background:color-mix(in srgb,var(--queue-color) 7%,#fff)}}
@keyframes beacon-queue-pulse-day{0%,64%{background:var(--annunciator);color:var(--queue-ink)}65%,100%{background:var(--ui-raised);color:var(--ui-ink)}}
@media(prefers-reduced-motion:no-preference){:root[data-appearance=day] :is(.signal,.events-table tbody tr,.map-device).unacknowledged{animation-name:beacon-row-pulse-day}:root[data-appearance=day] .overview .queue-summary #categories .category.unacknowledged{animation-name:beacon-queue-pulse-day}}
:is(#bridge-host,.beacon-condition-popover) .signal-point-actions .local-alarm-control{width:auto;flex:0 0 auto;min-width:0}
.rule-raw-note{font-size:12px;line-height:1.5;margin:8px 0}
:root[data-appearance] body.fire-workspace .summary{background:var(--ui-panel);color:var(--ui-ink);border-color:var(--ui-line)}
:root[data-appearance] body.fire-workspace :is(.summary p,.summary-right,.summary-right small){color:var(--ui-muted)}
:root[data-appearance] body.fire-workspace .summary-right .total{color:var(--ui-ink)}
:root[data-appearance=day] body.fire-workspace :is(.eyebrow,.map-device-action,.occurrences,.occurrence-bar button){color:var(--ui-link)}
:root[data-appearance] body.fire-workspace :is(#silence:not(.silenced),#ack:disabled){background:var(--ui-raised);color:var(--ui-ink);border-color:var(--ui-line)}
:root[data-appearance=day] body.fire-workspace :is(.connection.live,#ack.acknowledged){background:#e6f5ee;color:#17614b;border-color:#83b7a1}
:root[data-appearance] :is(#fire-map,.floorplan-overview-map){background:var(--ui-bg)}

/* RC70: compact gate tools and aligned history controls. */
#gate-filter-menu{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-height:32px;padding:6px;background:var(--ui-raised);color:var(--ui-ink);border:1px solid var(--ui-line)}
#gate-filter-menu svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
#gate-filter-menu[aria-expanded="true"]{outline:2px solid var(--ui-muted);outline-offset:-2px}
#gate-filter-controls{margin-bottom:10px}#gate-filter-controls #gate-search{width:100%;box-sizing:border-box}.gate-group h3{text-transform:none}
#dock-alarms{display:inline-flex;align-items:center;justify-content:center;padding:0;height:30px;min-height:30px;line-height:normal}
#dock-alarms svg,#alarm-dock>svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
#bridge-host .jb-logs-history-filter .logs-history-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
#bridge-host .logs-history-actions button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;min-height:34px;padding:7px;flex-shrink:0}
#bridge-host .logs-history-actions svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
#bridge-host .logs-head h2{font-size:clamp(17px,2vw,23px)}

.point-calibration{margin:16px 0;padding:14px;border:1px solid var(--ui-line);border-radius:8px;background:var(--ui-raised);color:var(--ui-ink)}
.point-calibration h4{font-size:15px;margin:0 0 12px}.calibration-facts{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px;font-size:12px;line-height:1.45;margin:0}.calibration-facts dt{color:var(--ui-muted)}.calibration-facts dd{margin:0;overflow-wrap:anywhere}
.calibration-entry{display:flex;align-items:flex-end;gap:10px}.calibration-entry>.rule-field{flex:1;min-width:0}.calibration-entry>button{margin-bottom:12px}.calibration-preview{font-weight:700;font-size:13px;padding:10px 0;line-height:1.5;overflow-wrap:anywhere}.calibration-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.calibration-actions button{font-size:12px}.point-calibration .rule-raw-note{font-size:12px;line-height:1.5}.calibration-inputs{font-size:12px;margin-top:12px}.calibration-inputs p{margin:5px 0}
