/* Traxtic Operations OS V0.8.6.79 — active palette owner.
   Geometry, component dimensions and the Traxtic orange remain untouched. */
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#181818!important;--surface:#17191c!important;--surface-1:#1a1c20!important;--surface-2:#202327!important;
  --bg-elevated:#1f2226!important;--bg-panel:#1a1c20!important;--panel:#1a1c20!important;--panel-strong:#202327!important;
  --panel-soft:#22252a!important;--card:#1a1c20!important;--text:#f4f5f5!important;--text-soft:#b8bdc3!important;--text-faint:#8f969e!important;
  --line:rgba(244,245,245,.09)!important;--line-strong:rgba(244,245,245,.16)!important;
  --border:rgba(244,245,245,.09)!important;--border-strong:rgba(244,245,245,.16)!important;
  --canvas-grid:rgba(244,245,245,.025)!important;--trax-more-bg:rgba(17,19,21,.98)!important;
  --tx-app-bg:var(--bg);--tx-sidebar-bg:#111315;--tx-surface:var(--surface-1);--tx-surface-elevated:var(--surface-2);--tx-input:var(--panel-soft);--tx-border:var(--line);--tx-text-primary:var(--text);--tx-text-secondary:var(--text-soft);--tx-accent:#f94006;
}
:root[data-theme="light"]{
  color-scheme:light;
  --bg:#fff!important;--surface:#fff!important;--surface-1:#fff!important;--surface-2:#f1f2f3!important;
  --bg-elevated:#fff!important;--bg-panel:#fff!important;--panel:#fff!important;--panel-strong:#fff!important;--panel-soft:#f1f2f3!important;
  --card:#fff!important;--text:#1a1c1f!important;--text-soft:#454b52!important;--text-faint:#626a72!important;
  --line:rgba(26,28,31,.10)!important;--line-strong:rgba(26,28,31,.18)!important;
  --border:rgba(26,28,31,.10)!important;--border-strong:rgba(26,28,31,.18)!important;
  --canvas-grid:rgba(26,28,31,.03)!important;--trax-more-bg:#fff!important;
  --tx-app-bg:var(--bg);--tx-surface:var(--surface);--tx-surface-elevated:var(--surface-2);--tx-input:var(--panel-soft);--tx-border:var(--line);--tx-text-primary:var(--text);--tx-text-secondary:var(--text-soft);--tx-accent:#f94006;
}
:root,body,.app-shell,.main,.main-content{min-height:100%}
html{background:var(--bg)!important}
body{min-height:100vh;background:var(--bg)!important;background-image:none!important}
/* The legacy ambient element remains the primitive; the active theme owns its
   final restrained, static presentation. Brand orange tokens are unchanged. */
.state-aura{display:none!important}
:root[data-theme="dark"] .ambient{display:block!important}
:root[data-theme="dark"] .ambient::before{width:clamp(320px,34vw,520px);height:clamp(320px,34vw,520px);left:-12vw;top:-14vw;filter:blur(84px);opacity:.12;background:radial-gradient(circle,rgba(249,64,6,.72),transparent 68%);animation:none!important;transform:none!important}
.ambient::after{display:none}
:root[data-theme="light"] .ambient{display:none!important}
:root :where(.app-shell,.main,.main-content,[id^="view-"]){background-color:transparent!important;background-image:none!important}
:root[data-theme="dark"] :where(body){color:var(--text)!important}
:root[data-theme="dark"] :where(.rail){background-color:var(--tx-sidebar-bg)!important;border-color:var(--line)!important}
:root[data-theme="dark"] :where(.topbar){background-color:var(--bg)!important;border-color:var(--line)!important}
:root[data-theme] .topbar{background-color:transparent!important}
:root[data-theme="dark"] :where(.surface,.card,.admin-panel,.admin-inspector,.gx-rail,.gx-inspector,.document-inspector,.finance-inspector,.request-inspector,.task-inspector){background-color:var(--surface-1)!important;border-color:var(--line)!important}
:root[data-theme="dark"] :where(input,select,textarea,.secondary,.icon-btn,.command-btn){background-color:var(--panel-soft)!important;border-color:var(--line-strong)!important;color:var(--text)!important}
:root[data-theme="light"] :where(body){color:var(--text)!important}
:root[data-theme="light"] :where(.topbar){background-color:var(--bg)!important;border-color:var(--line)!important;color:var(--text)!important}
:root[data-theme="light"] :where(.surface,.card,.admin-panel,.admin-inspector,.gx-rail,.gx-inspector,.document-inspector,.finance-inspector,.request-inspector,.task-inspector){background-color:var(--surface)!important;border-color:var(--line)!important;color:var(--text)!important}
:root[data-theme="light"] :where(input,select,textarea,.secondary,.icon-btn,.command-btn){background-color:var(--panel-soft)!important;border-color:var(--line-strong)!important;color:var(--text)!important}
:root[data-theme="light"] :where(.v08654-record-hero,.v08654-detail-grid>div,.v08654-summary-grid>div,.v08654-list article,.v08679-picker-results,.v08616-customer-option){background-color:var(--panel-soft)!important;border-color:var(--line)!important;color:var(--text)!important}
:root[data-theme="light"] .v08625-single-options button:not(.selected){background-color:var(--panel-soft)}
:root[data-theme="light"] :where(.txi-panel,.action-modal,.modal){background-color:var(--surface)!important;color:var(--text)!important}
:root[data-motion] :where(.surface,.card,.action-modal-card,.txi-panel,.drawer,.pro-table){transition-property:opacity,transform,background-color,border-color,color!important}

/* The canvas owns the page ending. Compatibility layers must not paint a
   decorative footer strip or animate structural geometry. */
:root :where(.main,.main-content,[id^="view-"])::after{display:none!important;content:none!important}
:root :where(.view,.surface,.card,.pro-table,.drawer,.txi-panel){transition-property:opacity,transform,background-color,border-color,color!important;transition-duration:.12s!important}
:root :where(.view,[id^="view-"]){min-height:calc(100vh - var(--topbar-height,64px))!important;background:transparent!important}
@media(prefers-reduced-motion:reduce){:root *{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}}
#view-settings.v08679-settings-full-width .admin-layout{grid-template-columns:minmax(210px,250px) minmax(0,1fr)!important}
#view-settings.v08679-settings-full-width .admin-content{min-width:0}

/* Compatibility CSS still contains the retired dark-only policy. The active
   owner restores the canonical choices while preserving the existing cards. */
#view-settings .theme-card[data-theme-choice]{display:block!important}

/* Canonical control surface: component owners keep geometry, the theme owner
   removes raw browser/square visual drift across operational forms. */
:root :where(.field,.pro-filter,.form-field>input,.form-field>select,.form-field>textarea,.resource-search,.resource-search>input,.admin-panel input,.admin-panel select,.admin-panel textarea){border-radius:var(--radius-md,12px)!important;border-color:var(--line-strong)!important;background:var(--panel-soft)!important;color:var(--text)!important;box-shadow:none!important}
/* Finance's existing search shell is shared by operational searches. The shell
   owns its border/focus; its input must not paint a second control inside it. */
:root .resource-search{height:36px;gap:7px;padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-md,12px);background:var(--panel-soft)}
:root[data-theme] .resource-search>input:not([type="hidden"]),
:root[data-theme] .view .resource-search>input:not([type="hidden"]){font:600 var(--tx-type-meta)/1 var(--tx-ui-font)!important;color:var(--text)!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;border-radius:0!important;min-width:0!important;min-height:0!important;height:100%!important}
:root .resource-search>span{color:var(--text-faint);font-weight:400}
.toolbar>.resource-search:has(>input.field.search){flex:1;min-width:min(260px,100%)}
:root .resource-search:hover{border-color:color-mix(in srgb,var(--line-strong),var(--text-soft) 25%)!important}
:root .resource-search:focus-within{border-color:var(--tx-accent)!important;outline:2px solid var(--tx-accent);outline-offset:-2px}
/* Focus only for members of the established form/picker family, never action
   buttons, statuses, checkboxes, cards or arbitrary inputs. */
:root :is(input.field,input.pro-filter,.form-field>input,.admin-panel input):is(:not([type]),[type="text"],[type="search"],[type="email"],[type="tel"],[type="url"],[type="password"],[type="number"],[type="date"],[type="month"],[type="time"]):not(.resource-search>input):focus-visible,
:root :is(select.field,select.pro-filter,.form-field>select,.admin-panel select,textarea.field,.form-field>textarea,.admin-panel textarea):focus-visible,
:root .v08625-picker-scope .v08625-picker-trigger:focus-visible,
:root .v08625-picker-scope .v08625-date-input:focus-visible{border-color:var(--tx-accent)!important;outline:2px solid var(--tx-accent)!important;outline-offset:-2px!important}
:root :where(.primary,.secondary,.txinv-btn,.workspace-tab,.mode-btn,.segmented>button,.pro-commandbar button){border-radius:var(--radius-md,12px)!important}
:root :where(input[type="date"],input[type="month"],input[type="time"]){color-scheme:inherit}
:root :where(button,input,select,textarea){font:inherit}
:root :where(button,.primary,.secondary,.txinv-btn,.workspace-tab,.mode-btn,.icon-btn,.command-btn,.row-menu,.toggle){-webkit-appearance:none;appearance:none;background-clip:padding-box;box-shadow:none}
/* Calendar's G1 avatar owns its surface and animated shadow (018). */
:root :where(button,.primary,.secondary,.txinv-btn,.workspace-tab,.mode-btn,.icon-btn,.command-btn,.row-menu,.toggle)>*:not(:where(#view-calendar .resource-avatar)){background:transparent!important;border:0!important;box-shadow:none!important}
/* Non-input controls retain their component/native keyboard focus. */
:root select{-webkit-appearance:none;appearance:none;padding-right:38px!important;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%)!important;background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important}
:root :where(input,select,textarea,button)::-moz-focus-inner{border:0;padding:0}

/* One operational board surface. State is communicated by chips/accents, not
   by painting whole planning columns with unrelated colors. */
:root :where(#view-jobs .execution-column,#view-calendar .schedule-grid,#view-calendar .calendar-board,.workflow-board>[data-stage]){background:var(--surface-1)!important;border-color:var(--line)!important;box-shadow:none!important}
:root :where(#view-jobs .execution-col-head,#view-calendar .schedule-head){background:var(--panel-soft)!important;border-color:var(--line)!important}

/* Settings pages share the Preislogik surface language without changing the
   approved page dimensions. */
#view-settings :where(.admin-panel,.v08679-price-group,.v08676-settings-card,.v08679-role-summary>article,.v08679-price-history){background:var(--surface-1)!important;border-color:var(--line)!important;box-shadow:none!important}
#view-settings :where(.admin-panel-head,.v08679-price-toolbar,.v08679-access-toolbar){border-color:var(--line)!important}
#view-settings :where(.admin-content,.admin-panel){min-width:0}
#view-settings .admin-content{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
#view-settings .admin-content>:where(.admin-panel,.v08679-settings-page,.v08679-pricing-page){background:var(--surface-1)!important;border:1px solid var(--line)!important;border-radius:var(--radius-lg,18px)!important;box-shadow:none!important}
#view-settings :where(.admin-panel,.v08679-settings-page,.v08679-pricing-page)>:where(.admin-panel,.surface,.table-wrap){background:transparent!important;border-left:0!important;border-right:0!important;border-radius:0!important;box-shadow:none!important}
#view-settings :where(.pro-table,.admin-table){background:transparent!important}
#view-settings :where(.pro-table,.admin-table) :where(th,td){border-color:var(--line)!important}
#view-settings .v08679-settings-savebar{position:sticky;bottom:12px;z-index:8;display:flex;justify-content:flex-end;gap:8px;margin:14px;padding:10px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface-1) 94%,transparent);backdrop-filter:blur(12px)}

#view-calendar .dispatch-layout[data-v08679-list-hidden="true"]{display:none!important}
#view-calendar .v08679-calendar-list{margin-top:14px;overflow:hidden;background:var(--surface-1)!important;border-color:var(--line)!important}
#view-calendar .v08679-calendar-list .panel-head{padding:15px 17px;border-bottom:1px solid var(--line)}
#view-calendar .v08679-calendar-list .table-wrap{overflow:auto;max-height:min(58vh,620px)}
#view-calendar .v08679-calendar-list tbody tr{cursor:pointer}
#view-calendar .v08679-calendar-list td small{display:block;margin-top:3px;color:var(--text-soft)}

/* Sidebar pin belongs to navigation controls, while the user card remains at
   the bottom. */
.rail-pin-top{padding:0 0 8px;margin-bottom:4px;border-bottom:1px solid var(--line)}
.rail-pin-top .nav-btn{width:100%}
