/* WEA365 0.9.20: shared responsive and visual harmony rules. */
.wea365-app,
.wea365-ui {
  --wea365-control-min-height: 44px;
  --wea365-card-border: rgba(127, 127, 127, .24);
  --wea365-card-radius: 4px;
}

.wea365-app h1,
.wea365-app h2,
.wea365-app h3,
.wea365-app h4,
.wea365-app .uk-h1,
.wea365-app .uk-h2,
.wea365-app .uk-h3,
.wea365-app .uk-h4,
.wea365-ui h1,
.wea365-ui h2,
.wea365-ui h3,
.wea365-ui h4,
.wea365-ui .uk-h1,
.wea365-ui .uk-h2,
.wea365-ui .uk-h3,
.wea365-ui .uk-h4 {
  max-width: 100%;
  min-width: 0;
  overflow-wrap: anywhere;
  hyphens: auto;
}

.wea365-app .uk-button,
.wea365-ui .uk-button {
  box-sizing: border-box;
  min-height: var(--wea365-control-min-height) !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding-top: 8px;
  padding-bottom: 8px;
  line-height: 1.25 !important;
  text-align: center;
  white-space: normal;
}

.wea365-app .uk-icon-button,
.wea365-ui .uk-icon-button {
  box-sizing: border-box;
  width: var(--wea365-control-min-height) !important;
  min-width: var(--wea365-control-min-height) !important;
  height: var(--wea365-control-min-height) !important;
  min-height: var(--wea365-control-min-height) !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
}

.wea365-app .wea365-action-dropdown .uk-dropdown-nav > li > a,
.wea365-ui .wea365-action-dropdown .uk-dropdown-nav > li > a,
.wea365-app .wea365-action-dropdown .wea365-dropdown-action,
.wea365-ui .wea365-action-dropdown .wea365-dropdown-action {
  min-height: var(--wea365-control-min-height);
  display: flex;
  align-items: center;
  padding-top: 9px !important;
  padding-bottom: 9px !important;
  white-space: normal;
}

.wea365-responsive-table-wrap {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  overflow: visible;
}

.wea365-filter-actions {
  gap: 10px;
  min-width: 0;
}

.wea365-filter-actions > .uk-button {
  min-width: 0;
}











.wea365-audit-summary-grid > div {
  min-width: 0;
}

.wea365-audit-summary-grid .uk-text-meta {
  display: block;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.wea365-audit-controls .uk-subnav {
  gap: 8px;
}

.wea365-audit-controls .uk-subnav > * {
  padding-left: 0;
}

.wea365-maintenance-tabs > * > a {
  min-height: var(--wea365-control-min-height);
  box-sizing: border-box;
}

@media (max-width: 639px) {
  .wea365-app .uk-h1,
  .wea365-ui .uk-h1 {
    font-size: clamp(1.75rem, 9vw, 2.35rem);
    line-height: 1.08;
  }

  .wea365-filter-actions {
    width: 100%;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .wea365-filter-actions .uk-button {
    width: 100%;
    min-width: 0;
    padding-right: 10px;
    padding-left: 10px;
  }

  .wea365-responsive-table-wrap {
    width: 100%;
    overflow: visible !important;
  }

  table.wea365-responsive-table,
  table.wea365-responsive-table tbody {
    display: block;
    width: 100%;
    min-width: 0 !important;
    max-width: 100%;
  }

  table.wea365-responsive-table thead {
    display: none;
  }

  table.wea365-responsive-table tbody {
    display: grid;
    gap: 12px;
  }

  table.wea365-responsive-table tr {
    position: relative;
    display: block;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    padding: 15px 58px 15px 15px;
    border: 1px solid var(--wea365-card-border) !important;
    border-radius: var(--wea365-card-radius);
    background: transparent;
  }

  table.wea365-responsive-table td,
  table.wea365-responsive-table th {
    display: block;
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 6px 0 !important;
    border: 0 !important;
    color: inherit;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }

  table.wea365-responsive-table td[data-label]::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 2px;
    font-size: .7rem;
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: .035em;
    text-transform: uppercase;
    opacity: .64;
  }

  table.wea365-responsive-table td.wea365-card-primary {
    padding-top: 0 !important;
  }

  table.wea365-responsive-table td.wea365-table-actions {
    position: absolute;
    top: 8px;
    right: 7px;
    width: var(--wea365-control-min-height) !important;
    padding: 0 !important;
  }

  table.wea365-responsive-table td.wea365-card-actions {
    padding-top: 10px !important;
  }

  table.wea365-responsive-table td.wea365-card-actions .uk-button,
  table.wea365-responsive-table td.wea365-card-actions form,
  table.wea365-responsive-table td.wea365-card-actions form .uk-button {
    width: 100%;
  }

  table.wea365-responsive-table .uk-text-nowrap {
    white-space: normal !important;
  }

  .wea365-reviews-table td.wea365-card-actions .uk-flex {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px !important;
  }

  .wea365-reviews-table td.wea365-card-actions .uk-button,
  .wea365-reviews-table td.wea365-card-actions form {
    width: 100%;
  }

  .wea365-documents-table tr {
    padding-right: 58px;
  }

  .wea365-audit-table {
    min-width: 0 !important;
  }

  .wea365-audit-preview-cell,
  .wea365-audit-event-cell,
  .wea365-audit-detail-cell {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  .wea365-audit-thumbnail,
  .wea365-audit-file-placeholder {
    width: min(112px, 100%);
  }

  .wea365-audit-summary-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 18px;
    margin-left: 0 !important;
  }

  .wea365-audit-summary-grid > div {
    width: auto !important;
    padding-left: 0 !important;
  }

  .wea365-audit-controls .uk-subnav {
    display: grid;
    grid-template-columns: 1fr;
    margin-left: 0;
  }

  .wea365-audit-controls .uk-subnav > li,
  .wea365-audit-controls .uk-subnav > li > a {
    width: 100%;
    box-sizing: border-box;
  }

  .wea365-audit-controls .uk-subnav > li > a {
    min-height: var(--wea365-control-min-height);
    display: flex;
    align-items: center;
  }

  .wea365-audit-actions {
    display: grid !important;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .wea365-audit-actions .uk-button {
    width: 100%;
    margin-left: 0 !important;
  }

  .wea365-maintenance-tab-nav {
    border-bottom: 0;
  }

  .wea365-maintenance-tabs {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 6px;
    margin-left: 0 !important;
    overflow: visible !important;
  }

  .wea365-maintenance-tabs::before {
    display: none;
  }

  .wea365-maintenance-tabs > li {
    width: 100%;
    padding-left: 0 !important;
  }

  .wea365-maintenance-tabs > li > a {
    width: 100%;
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 10px 12px;
    border: 1px solid rgba(48, 79, 108, .22);
    border-radius: 4px;
    white-space: normal;
    text-align: left;
  }

  .wea365-maintenance-tabs > .uk-active > a,
  .wea365-maintenance-tabs > .uk-active > a:hover,
  .wea365-maintenance-tabs > .uk-active > a:focus {
    margin-bottom: 0;
    padding-top: 10px;
    border: 1px solid rgba(48, 79, 108, .28);
    border-left: 4px solid #2b5aa5;
    background: var(--wea365-color-white);
  }

  .wea365-maintenance-tabs > .uk-active > a::after {
    display: none;
  }

  

  

  .wea365-document-preview-shell {
    width: 100% !important;
    margin: 0 !important;
    padding: 8px !important;
    overflow: hidden !important;
    border-radius: 4px !important;
  }

  .wea365-document-preview-page {
    width: 100% !important;
    min-width: 0 !important;
    font-size: clamp(4.6px, 1.72vw, 7px) !important;
  }
}

@media (max-width: 380px) {
  .wea365-filter-actions {
    grid-template-columns: 1fr;
  }

  .wea365-audit-summary-grid {
    grid-template-columns: 1fr;
  }
}





.wea365-card-field-label {
  display: block;
  font-size: .7rem;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: .035em;
  text-transform: uppercase;
  opacity: .64;
}




@media (max-width: 639px) {
  .wea365-app .wea365-maintenance-tabs > li > a,
  .wea365-ui .wea365-maintenance-tabs > li > a {
    white-space: normal !important;
  }
}

/* WEA365 0.9.20: final consistency refinements. */
.wea365-app .uk-button[uk-icon]:empty,
.wea365-ui .uk-button[uk-icon]:empty {
  box-sizing: border-box;
  width: var(--wea365-control-min-height);
  min-width: var(--wea365-control-min-height);
  padding-right: 0 !important;
  padding-left: 0 !important;
}

@media (max-width: 639px) {
  table.wea365-responsive-table.wea365-no-row-actions tr {
    padding-right: 15px;
  }

  table.wea365-responsive-table td.wea365-card-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  table.wea365-responsive-table td.wea365-card-actions > *,
  table.wea365-responsive-table td.wea365-card-actions form,
  table.wea365-responsive-table td.wea365-card-actions .uk-button {
    box-sizing: border-box;
    width: 100%;
    margin: 0 !important;
  }

  .wea365-maintenance-section-heading {
    align-items: stretch !important;
    gap: 12px;
  }

  .wea365-maintenance-section-heading > * {
    width: 100%;
    min-width: 0;
  }

  .wea365-maintenance-section-heading > .uk-button {
    width: 100%;
  }

  .wea365-audit-list .uk-flex.uk-flex-between.uk-flex-middle.uk-margin-medium-top {
    flex-wrap: wrap;
    gap: 10px;
  }
}

/* WEA365 0.9.23: native YOOtheme/UIkit sidepanels and responsive corrections. */
.wea365-app,
.wea365-ui,
.wea365-app *,
.wea365-ui * {
  box-sizing: border-box;
}

.wea365-app,
.wea365-ui,
.wea365-app > *,
.wea365-ui > * {
  min-width: 0;
  max-width: 100%;
}

.wea365-app,
.wea365-ui {
  overflow-x: clip;
}

.wea365-app table,
.wea365-ui table {
  width: 100%;
  table-layout: fixed;
}

.wea365-app th,
.wea365-app td,
.wea365-ui th,
.wea365-ui td {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: normal;
}

.wea365-app h1,
.wea365-app h2,
.wea365-app h3,
.wea365-app .uk-h1,
.wea365-app .uk-h2,
.wea365-app .uk-h3,
.wea365-ui h1,
.wea365-ui h2,
.wea365-ui h3,
.wea365-ui .uk-h1,
.wea365-ui .uk-h2,
.wea365-ui .uk-h3 {
  max-width: 100%;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: manual;
}

/* Frontend dialogs use the same native YOOtheme/UIkit offcanvas pattern as team management.
   UIkit owns positioning, overlay and animation; WEA365 only defines responsive content width. */
.wea365-offcanvas .uk-offcanvas-bar {
  box-sizing: border-box;
  width: min(720px, 92vw);
  max-width: 100vw;
  overflow-x: hidden;
  overflow-y: auto;
}

.wea365-offcanvas--wide .uk-offcanvas-bar {
  width: min(920px, 94vw);
}

.wea365-offcanvas.wea365-employee-teams .uk-offcanvas-bar,
.wea365-offcanvas--confirm .uk-offcanvas-bar {
  width: min(520px, 92vw);
}

/* WEA365 0.9.260: one definitive width for every dispatch sidepanel. */
.wea365-offcanvas.wea365-dispatch-create .uk-offcanvas-bar,
.wea365-offcanvas.wea365-dispatch-detail .uk-offcanvas-bar,
.wea365-offcanvas.wea365-dispatch-teams .uk-offcanvas-bar,
.wea365-offcanvas.wea365-dispatch-entry-panel .uk-offcanvas-bar,
.wea365-offcanvas.wea365-dispatch-save-view .uk-offcanvas-bar {
  width: min(600px, 92vw);
}

.wea365-offcanvas .uk-input,
.wea365-offcanvas .uk-select,
.wea365-offcanvas .uk-textarea,
.wea365-offcanvas .uk-form-label {
  max-width: 100%;
}

.wea365-sidepanel-title {
  margin: 0 44px 26px 0;
  font-size: clamp(1.55rem, 3vw, 2.15rem);
  line-height: 1.15;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: manual;
}

.wea365-sidepanel-content {
  min-width: 0;
  max-width: 100%;
}

.wea365-sidepanel-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 12px;
  margin-top: 28px;
  padding-top: 20px;
  border-top: 1px solid rgba(127,127,127,.22);
}


.wea365-offcanvas .uk-grid > *,
.wea365-offcanvas form > *,
.wea365-offcanvas fieldset,
.wea365-offcanvas .uk-width-1-2\@m,
.wea365-offcanvas .uk-width-1-3\@m,
.wea365-offcanvas .uk-width-1-4\@m,
.wea365-offcanvas .uk-width-2-3\@m,
.wea365-offcanvas .uk-width-3-4\@m {
  min-width: 0;
  max-width: 100%;
}


.wea365-category-editor {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

/* Cards and actions use one predictable hierarchy. */

.wea365-mobile-card,
.wea365-responsive-card {
  position: relative;
  min-width: 0;
}




.wea365-card-actions,
.wea365-document-card-actions {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 2;
}





/* Document/PDF preview scales into its container. */
.wea365-document-preview,
.wea365-document-preview-wrap,
.wea365-document-preview-page {
  max-width: 100%;
}

.wea365-document-preview-wrap {
  overflow: hidden !important;
}

.wea365-document-preview-page {
  width: min(100%, 794px) !important;
  margin-inline: auto;
  transform-origin: top center;
}

/* Mobile tabs become a clear stacked navigation instead of disappearing right. */
@media (max-width: 639px) {
  .wea365-app .uk-tab,
  .wea365-ui .uk-tab {
    display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
    margin-left: 0;
    overflow: visible;
  }

  .wea365-app .uk-tab::before,
  .wea365-ui .uk-tab::before {
    display: none;
  }

  .wea365-app .uk-tab > *,
  .wea365-ui .uk-tab > * {
    width: 100%;
    padding-left: 0;
  }

  .wea365-app .uk-tab > * > a,
  .wea365-ui .uk-tab > * > a {
    min-height: 44px;
    padding: 10px 12px;
    border: 1px solid rgba(127,127,127,.2);
    border-radius: 4px;
    white-space: normal;
    text-align: left;
  }

  .wea365-app .uk-tab > .uk-active > a,
  .wea365-ui .uk-tab > .uk-active > a {
    border-color: currentColor;
  }

  .wea365-offcanvas .uk-offcanvas-bar,
  .wea365-offcanvas.wea365-dispatch-create .uk-offcanvas-bar,
  .wea365-offcanvas.wea365-dispatch-detail .uk-offcanvas-bar,
  .wea365-offcanvas.wea365-dispatch-teams .uk-offcanvas-bar,
  .wea365-offcanvas.wea365-dispatch-entry-panel .uk-offcanvas-bar,
  .wea365-offcanvas.wea365-dispatch-save-view .uk-offcanvas-bar {
    width: 100vw;
    max-width: 100vw;
  }

  .wea365-sidepanel-actions {
    flex-direction: column-reverse;
  }

  .wea365-sidepanel-actions .uk-button,
  .wea365-sidepanel-actions form {
    width: 100%;
  }

  .wea365-app .uk-h1,
  .wea365-ui .uk-h1 {
    font-size: clamp(1.85rem, 10vw, 2.6rem);
    line-height: 1.06;
  }

  

  

  

  .wea365-app .uk-button,
  .wea365-ui .uk-button {
    max-width: 100%;
    white-space: normal;
  }

  .wea365-app table,
  .wea365-ui table {
    table-layout: auto;
  }
}

/* 0.9.23: natural headings and card titles without letter-by-letter breaking. */




.wea365-maintenance-heading {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: manual !important;
}

/* 0.9.23: tables never create a horizontal page or container scrollbar. */
.wea365-fluid-table-wrap,
.wea365-responsive-table-wrap {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  overflow: visible;
}

.wea365-fluid-table-wrap table,
.wea365-responsive-table-wrap table {
  width: 100%;
  max-width: 100%;
}

.wea365-fluid-table-wrap table {
  table-layout: fixed;
}

.wea365-fluid-table-wrap th,
.wea365-fluid-table-wrap td,
.wea365-responsive-table-wrap th,
.wea365-responsive-table-wrap td {
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: break-word;
  word-break: normal;
}

.wea365-fluid-table-wrap .uk-table-shrink,
.wea365-responsive-table-wrap .uk-table-shrink,
.wea365-fluid-table-wrap .wea365-table-actions,
.wea365-responsive-table-wrap .wea365-table-actions {
  width: 56px;
}

.wea365-audit-log-scroll {
  max-width: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}

/* 0.9.24: disabled actions must be unmistakable and work-report completion stays in one flow. */
.wea365-app .uk-button:disabled,
.wea365-app .uk-button[aria-disabled="true"],
.wea365-ui .uk-button:disabled,
.wea365-ui .uk-button[aria-disabled="true"],
.wea365-offcanvas .uk-button:disabled,
.wea365-offcanvas .uk-button[aria-disabled="true"] {
  opacity: .38 !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
  filter: grayscale(1);
}

.wea365-workreport-completion {
  padding-top: 24px;
  border-top: 1px solid rgba(127,127,127,.2);
}

.wea365-workreport-actions {
  gap: 10px;
}

.wea365-workreport-actions .uk-button {
  min-width: 190px;
}

@media (max-width: 639px) {
  .wea365-workreport-actions,
  .wea365-workreport-actions .uk-button {
    width: 100%;
  }

  .wea365-workreport-actions {
    align-items: stretch;
  }
}

/* WEA365 0.9.27: clear list hierarchy and full-width disposition. */

/* Generic table action cells must remain in the table flow. Only real card menus are positioned. */
table.wea365-responsive-table td.wea365-card-actions,
table.wea365-responsive-table th.wea365-card-actions {
  position: static !important;
  inset: auto !important;
}

/* Review queue: one readable work item per card, with the action at the end of the flow. */
.wea365-review-list {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.wea365-review-card {
  display: grid;
  gap: 18px;
  min-width: 0;
  padding: 20px;
  border: 1px solid rgba(127, 127, 127, .2);
  border-radius: 6px;
  background: color-mix(in srgb, var(--uk-global-background, var(--wea365-color-white)) 97%, currentColor 3%);
}

.wea365-review-card-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, auto);
  gap: 22px;
  align-items: start;
  min-width: 0;
}

.wea365-review-card-identity,
.wea365-review-card-status,
.wea365-review-card-data > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.wea365-review-card-number {
  font-size: 1.12rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.wea365-review-card-status {
  justify-items: end;
  text-align: right;
}

.wea365-review-card-data {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px 28px;
  min-width: 0;
  padding-top: 16px;
  border-top: 1px solid rgba(127, 127, 127, .16);
}

.wea365-review-card-data strong,
.wea365-review-card-data span {
  overflow-wrap: anywhere;
}

.wea365-review-card-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  min-width: 0;
  padding-top: 16px;
  border-top: 1px solid rgba(127, 127, 127, .16);
}

.wea365-review-card-actions form {
  margin: 0;
}

/* Document list: readable cards instead of a seven-column squeeze. */
.wea365-document-list {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.wea365-document-card {
  position: relative;
  display: grid;
  gap: 17px;
  min-width: 0;
  padding: 20px;
  border: 1px solid rgba(127, 127, 127, .2);
  border-radius: 6px;
  background: color-mix(in srgb, var(--uk-global-background, var(--wea365-color-white)) 97%, currentColor 3%);
}

.wea365-document-card.is-archived {
  opacity: .86;
}

.wea365-document-card-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px;
  gap: 16px;
  align-items: start;
  min-width: 0;
}

.wea365-document-card-title {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  min-width: 0;
}

.wea365-document-card-title > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.wea365-document-card-title strong {
  font-size: 1.04rem;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.wea365-document-card-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(127, 127, 127, .1);
}

.wea365-document-card-actions {
  position: static !important;
  justify-self: end;
}

.wea365-document-card-data {
  display: grid;
  grid-template-columns: minmax(180px, 1.35fr) minmax(150px, 1fr) minmax(70px, .45fr) minmax(150px, 1fr) minmax(150px, 1fr);
  gap: 18px 24px;
  min-width: 0;
  padding-top: 16px;
  border-top: 1px solid rgba(127, 127, 127, .16);
}

.wea365-document-card-data > div,
.wea365-document-card-visibility {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.wea365-document-card-data strong,
.wea365-document-card-data span {
  overflow-wrap: anywhere;
}

.wea365-document-card-state {
  padding-top: 2px;
}

@media (max-width: 1199px) {
  .wea365-document-card-data {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .wea365-review-card,
  .wea365-document-card{
    padding: 16px !important;
  }

  .wea365-review-card-header {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .wea365-review-card-status {
    justify-items: start;
    text-align: left;
  }

  .wea365-review-card-data,
  .wea365-document-card-data{
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .wea365-review-card-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .wea365-review-card-actions form,
  .wea365-review-card-actions .uk-button {
    box-sizing: border-box;
    width: 100%;
  }

  .wea365-document-card-header {
    grid-template-columns: minmax(0, 1fr) 44px;
  }

  .wea365-document-card-title {
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 10px;
  }

  .wea365-document-card-icon {
    width: 32px;
    height: 32px;
  }

  

  

  
}

@media (max-width: 420px) {
  

  
}
.wea365-document-card-manage {
  min-width: 0;
  padding-top: 14px;
  border-top: 1px solid rgba(127, 127, 127, .16);
}
.wea365-document-card-manage > details > summary {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}

/* 0.9.33 maintenance order overview: calm cards instead of compressed multi-column tables. */
.wea365-maintenance-order-list {
  display: grid;
  gap: 14px;
  margin-top: 18px;
}
.wea365-maintenance-order-card {
  min-width: 0;
  overflow: visible;
  border: 1px solid rgba(127,127,127,.2);
  border-radius: 8px;
  background: var(--uk-global-background, var(--wea365-color-white));
  box-shadow: 0 3px 14px rgba(0,0,0,.035);
}
.wea365-maintenance-order-card-header {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 18px;
  align-items: start;
  padding: 17px 18px 14px;
  border-bottom: 1px solid rgba(127,127,127,.15);
}
.wea365-maintenance-order-card-title {
  min-width: 0;
}
.wea365-maintenance-order-card-title h4 {
  margin: 3px 0 2px;
  font-size: 1.08rem;
  line-height: 1.2;
  overflow-wrap: anywhere;
}
.wea365-maintenance-order-card-title p {
  margin: 0;
  color: var(--uk-text-muted-color, #777);
  line-height: 1.35;
}
.wea365-maintenance-order-card-state {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}
.wea365-maintenance-order-menu {
  position: relative;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  margin-left: 2px;
}
.wea365-maintenance-order-card-data {
  display: grid;
  grid-template-columns: 1.05fr 1fr 1.15fr .85fr;
  gap: 18px 24px;
  padding: 16px 18px 18px;
}
.wea365-maintenance-order-card-field {
  display: grid;
  align-content: start;
  min-width: 0;
  gap: 3px;
}
.wea365-maintenance-order-card-field strong,
.wea365-maintenance-order-card-field span,
.wea365-maintenance-order-card-notes p {
  overflow-wrap: anywhere;
  word-break: normal;
}
.wea365-maintenance-order-card-field > span:not(.wea365-maintenance-order-card-label) {
  color: var(--uk-text-muted-color, #777);
  line-height: 1.35;
}
.wea365-maintenance-order-card-label {
  display: block;
  margin-bottom: 2px;
  color: var(--uk-text-muted-color, #777);
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .035em;
  line-height: 1.25;
  text-transform: uppercase;
}
.wea365-maintenance-order-card-notes {
  padding: 0 18px 18px;
}
.wea365-maintenance-order-card-notes p {
  margin: 5px 0 0;
  white-space: pre-line;
}
.wea365-maintenance-order-card.wea365-maintenance-order-focused {
  background: rgba(30,135,240,.055);
  box-shadow: inset 3px 0 0 rgba(30,135,240,.72), 0 3px 14px rgba(0,0,0,.035);
}
.wea365-maintenance-order-card .wea365-maintenance-team {
  min-width: 0;
}
.wea365-dispatch-detail-color {
  margin: 20px 0 0;
  padding-top: 18px;
  border-top: 1px solid rgba(127,127,127,.24);
}
@media (max-width: 1099px) {
  .wea365-maintenance-order-card-data {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 639px) {
  .wea365-maintenance-order-card-header {
    grid-template-columns: minmax(0,1fr) 44px;
    gap: 12px;
    padding: 16px;
  }
  .wea365-maintenance-order-card-state {
    display: contents;
  }
  .wea365-maintenance-order-card-state > .uk-label {
    grid-column: 1;
    justify-self: start;
  }
  .wea365-maintenance-order-menu {
    grid-column: 2;
    grid-row: 1 / span 3;
    align-self: start;
    margin: 0;
  }
  .wea365-maintenance-order-card-data {
    grid-template-columns: 1fr;
    gap: 15px;
    padding: 15px 16px 17px;
  }
  .wea365-maintenance-order-card-notes {
    padding: 0 16px 17px;
  }
}
.wea365-dispatch-color-picker { display:flex; flex-wrap:wrap; gap:8px; margin-top:7px; }
.wea365-dispatch-color-option { display:inline-flex; align-items:center; gap:7px; min-height:38px; padding:6px 9px; border:1px solid rgba(127,127,127,.25); border-radius:7px; cursor:pointer; }
.wea365-dispatch-color-option:has(input:checked) { border-color:rgba(30,135,240,.7); box-shadow:0 0 0 2px rgba(30,135,240,.12); }
.wea365-dispatch-color-swatch { width:18px; height:18px; flex:0 0 18px; border:1px solid rgba(0,0,0,.12); border-radius:50%; background:#6f7b86; }
.wea365-dispatch-color-option input { margin:0; }
@media (max-width:639px) { .wea365-dispatch-color-option { flex:1 1 calc(50% - 8px); } }


/* 0.9.35 compact colour-vision-aware dispatch palette and readable UIkit notifications */
.wea365-dispatch-color-picker { display:grid; grid-template-columns:repeat(auto-fit,minmax(132px,1fr)); gap:8px; margin-top:7px; }
.wea365-dispatch-color-swatch { width:24px; height:24px; flex:0 0 24px; border:1px solid rgba(0,0,0,.16); border-radius:50%; }
.wea365-dispatch-color-swatch.is-auto { background:conic-gradient(#2B88C8,#CE5862,#5C252B,#1F4293,#9B8026,#1F9091,#1F3E59,#7F4926,#2B88C8); }
.wea365-dispatch-color-swatch.is-slate { background:#1F3E59; }
.wea365-dispatch-color-swatch.is-navy { background:#1F3E59; }
.wea365-dispatch-color-swatch.is-blue { background:#1F4293; }
.wea365-dispatch-color-swatch.is-sky { background:#2B88C8; }
.wea365-dispatch-color-swatch.is-teal { background:#1F9091; }
.wea365-dispatch-color-swatch.is-emerald { background:#1F9091; }
.wea365-dispatch-color-swatch.is-sage { background:#9B8026; }
.wea365-dispatch-color-swatch.is-olive { background:#9B8026; }
.wea365-dispatch-color-swatch.is-ochre { background:#9B8026; }
.wea365-dispatch-color-swatch.is-sand { background:#7F4926; }
.wea365-dispatch-color-swatch.is-copper { background:#7F4926; }
.wea365-dispatch-color-swatch.is-terracotta { background:#CE5862; }
.wea365-dispatch-color-swatch.is-brick { background:#5C252B; }
.wea365-dispatch-color-swatch.is-rose { background:#CE5862; }
.wea365-dispatch-color-swatch.is-plum { background:#5C252B; }
.wea365-dispatch-color-swatch.is-violet { background:#1F4293; }

/* 0.9.373: mirror the canonical compact palette in the late YOOtheme
   adapter so the deliberate reassertion remains cascade-complete. */
@media (max-width: 639px) {
  .wea365-dispatch-color-picker {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
  }
  .wea365-dispatch-color-option {
    min-width: 0;
    gap: 5px;
    padding: 5px 6px;
    font-size: 13px;
    line-height: 1.15;
  }
  .wea365-dispatch-color-option > span:last-child {
    min-width: 0;
    white-space: nowrap;
  }
  .wea365-dispatch-color-swatch {
    width: 20px;
    height: 20px;
    flex-basis: 20px;
  }
}

.uk-notification-message { border:1px solid var(--wea365-color-border) !important; border-left:5px solid #315f9a !important; background:var(--wea365-color-white) !important; color:#1f2933 !important; box-shadow:0 12px 32px rgba(15,23,42,.18) !important; }
.uk-notification-message-success { border-left-color:#2f855a !important; }
.uk-notification-message-warning { border-left-color:#b7791f !important; }
.uk-notification-message-danger { border-left-color:#c53030 !important; }
.uk-notification-message .uk-close { color:#52606d !important; }

/* 0.8.4 / package 0.9.35: mobile maintenance setup and assignments turbine overview. */

.wea365-maintenance-type-row {
  min-width: 0;
  gap: 12px;
}

.wea365-maintenance-type-copy {
  min-width: 0;
}

.wea365-assignment-turbine {
  min-width: 0;
}

.wea365-assignment-turbine-header {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  min-width: 0;
}

.wea365-assignment-turbine-thumb {
  display: flex;
  width: 112px;
  height: 78px;
  min-width: 0;
  overflow: hidden;
  border-radius: 4px;
  background: rgba(0, 0, 0, .035);
}

.wea365-assignment-turbine-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wea365-assignment-turbine-title {
  min-width: 0;
}

.wea365-assignment-turbine-title h3,
.wea365-assignment-turbine-title a {
  max-width: 100%;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: manual;
}

.wea365-assignment-turbine-data {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px 22px;
  margin: 20px 0 0;
}

.wea365-assignment-turbine-data > div {
  min-width: 0;
}

.wea365-assignment-turbine-data dt {
  margin: 0 0 3px;
  color: rgba(60, 70, 80, .58);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .045em;
  line-height: 1.25;
  text-transform: uppercase;
}

.wea365-assignment-turbine-data dd {
  margin: 0;
  overflow-wrap: break-word;
  word-break: normal;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
}

.wea365-assignment-turbine-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 20px;
}

@media (max-width: 639px) {

  .wea365-maintenance-action-panel {
    min-height: 0;
    padding: 20px;
  }

  .wea365-maintenance-action-header.uk-flex {
    display: grid;
    gap: 16px;
  }

  .wea365-maintenance-action-header .uk-button {
    width: 100%;
    margin-top: 0;
  }

  .wea365-maintenance-type-row.uk-flex {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }

  .wea365-maintenance-type-row .uk-label {
    justify-self: start;
  }

  .wea365-assignment-turbine-header {
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 14px;
  }

  .wea365-assignment-turbine-thumb {
    width: 92px !important;
    height: 72px !important;
    margin: 0 !important;
    flex: none !important;
  }

  .wea365-assignment-turbine-title h3 {
    margin-top: 0;
    font-size: 1.12rem;
    line-height: 1.2;
  }

  .wea365-assignment-turbine-data {
    grid-template-columns: 1fr;
    gap: 13px;
    margin-top: 18px;
  }

  .wea365-assignment-turbine-actions {
    align-items: stretch;
    flex-direction: column;
    margin-top: 20px;
  }

  .wea365-assignment-turbine-actions .uk-button {
    width: 100%;
  }
}

/* 0.8.5 / package 0.9.36: consistent contact forms and card action menus. */
.wea365-contact-section-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin-bottom: 12px;
}
.wea365-contact-section-header .uk-h4 {
  min-width: 0;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.wea365-contact-row .uk-flex-middle > label {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  line-height: 1.35;
}
.wea365-contact-row .uk-checkbox {
  box-sizing: border-box;
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  border: 2px solid #647484 !important;
  border-radius: 3px !important;
  background-color: var(--wea365-color-white) !important;
  opacity: 1 !important;
}
.wea365-contact-row .uk-checkbox:checked,
.wea365-contact-row .uk-checkbox:indeterminate {
  border-color: var(--uk-global-primary-background, #2b5aa5) !important;
  background-color: var(--uk-global-primary-background, #2b5aa5) !important;
}
.wea365-sidepanel-actions:has(> .uk-button:only-child) {
  justify-content: flex-end;
}

.wea365-action-menu {
  position: relative !important;
  inset: auto !important;
  display: inline-flex;
  align-items: flex-start;
  justify-content: flex-end;
  width: var(--wea365-control-min-height, 44px);
  min-width: var(--wea365-control-min-height, 44px);
  height: var(--wea365-control-min-height, 44px);
  flex: 0 0 var(--wea365-control-min-height, 44px);
  align-self: start;
  justify-self: end;
  z-index: 3;
}
.wea365-action-menu > .uk-icon-button {
  position: static !important;
  inset: auto !important;
  margin: 0 !important;
}
.wea365-person-card {
  min-width: 0;
}
.wea365-person-card-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--wea365-control-min-height, 44px);
  gap: 14px;
  align-items: start;
  min-width: 0;
}
.wea365-person-card-header > :first-child {
  min-width: 0;
}
.wea365-person-card-header h3,
.wea365-person-card-header .uk-text-meta {
  max-width: 100%;
  overflow-wrap: anywhere;
}
.wea365-document-card-header > .wea365-document-card-actions.wea365-action-menu {
  position: relative !important;
  inset: auto !important;
  grid-column: 2;
  grid-row: 1;
}
.wea365-document-card-title,
.wea365-document-card-title > div,
.wea365-document-card-title .uk-text-meta {
  min-width: 0;
  max-width: 100%;
}
.wea365-document-card-title .uk-text-meta {
  overflow-wrap: anywhere;
  word-break: break-word;
}

@media (max-width: 639px) {
  .wea365-contact-section-header {
    grid-template-columns: 1fr;
    align-items: stretch;
  }
  .wea365-contact-section-header [data-wea365-contact-add] {
    width: 100%;
  }
  .wea365-contact-row .uk-flex-middle {
    min-height: 44px;
  }
  .wea365-person-card-header {
    gap: 10px;
  }
}

/* 0.8.5 / package 0.9.36: readable mobile dispatch controls. */
@media (max-width: 639px) {
  .wea365-dispatch-week-picker {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    width: 100% !important;
  }
  .wea365-dispatch-week-picker input[type=week],
  .wea365-dispatch-week-picker select,
  .wea365-dispatch-filter-form select,
  .wea365-dispatch-search,
  .wea365-dispatch-search .uk-input {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}



/* 0.8.7 / package 0.9.38: reserve action space and keep mobile actions in card flow. */
@media (min-width: 960px) {
  .wea365-ui .wea365-reports-table { table-layout: fixed; }
  .wea365-ui .wea365-reports-table th:last-child,
  .wea365-ui .wea365-reports-table td.wea365-actions-cell {
    width: 190px !important;
    min-width: 190px !important;
    max-width: 190px !important;
  }
  .wea365-ui .wea365-reports-table .wea365-visible-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    width: 100%;
  }
  .wea365-ui .wea365-reports-table .wea365-direct-action { width: 100%; min-width: 0; }
  .wea365-ui .wea365-assignment-reports-table:has(.wea365-assignment-report-actions) { table-layout: fixed; }
  .wea365-ui .wea365-assignment-reports-table th:last-child,
  .wea365-ui .wea365-assignment-reports-table td.wea365-assignment-report-actions {
    width: 190px !important;
    min-width: 190px !important;
    max-width: 190px !important;
  }
  .wea365-ui .wea365-assignment-report-actions .wea365-direct-action { width: 100%; min-width: 0; }
}
.wea365-ui .wea365-turbine-row-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  width: 100%;
  min-width: 0;
  justify-self: stretch;
}
.wea365-ui .wea365-turbine-row-actions > .wea365-direct-action,
.wea365-ui .wea365-turbine-row-actions > .wea365-action-menu,
.wea365-ui .wea365-turbine-row-actions .wea365-actions-trigger { width: 100% !important; min-width: 0 !important; }
.wea365-ui .wea365-turbine-row-actions .wea365-action-menu { display: block; height: auto; flex: none; }
.wea365-ui .wea365-turbine-row-open { display: inline-flex !important; }
.wea365-ui .wea365-document-card-preview {
  display: block;
  width: 56px;
  height: 56px;
  overflow: hidden;
  border: 1px solid rgba(127,127,127,.22);
  border-radius: 5px;
  background: rgba(127,127,127,.06);
}
.wea365-ui .wea365-document-card-preview img { display:block; width:100%; height:100%; object-fit:cover; }
.wea365-ui .wea365-document-card-title:has(.wea365-document-card-preview) { grid-template-columns:56px minmax(0,1fr); }
@media (max-width: 959px) {
  .wea365-ui table.wea365-responsive-table tr { padding:15px !important; }
  .wea365-ui table.wea365-responsive-table td.wea365-table-actions,
  .wea365-ui table.wea365-responsive-table td.wea365-actions-cell {
    position: static !important;
    inset: auto !important;
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin-top:10px;
    padding:12px 0 0 !important;
    border-top:1px solid rgba(127,127,127,.18) !important;
  }
  .wea365-ui table.wea365-responsive-table .wea365-visible-actions { display:grid; grid-template-columns:1fr; gap:8px; width:100%; }
  .wea365-ui table.wea365-responsive-table .wea365-direct-action {
    width:100% !important;
    min-width:0 !important;
    overflow-wrap:normal;
    word-break:normal;
    writing-mode:horizontal-tb !important;
  }
  .wea365-ui .wea365-turbine-row { grid-template-columns:minmax(0,1fr) !important; gap:15px !important; }
  .wea365-ui .wea365-turbine-row-identity,
  .wea365-ui .wea365-turbine-row-field,
  .wea365-ui .wea365-turbine-row-status,
  .wea365-ui .wea365-turbine-row-actions { grid-column:1 !important; grid-row:auto !important; }
  .wea365-ui .wea365-turbine-row-actions { margin-top:2px; padding-top:14px; border-top:1px solid rgba(127,127,127,.18); }
}
@media (max-width:639px) {
  .wea365-ui .wea365-document-card-preview { width:48px; height:48px; }
  .wea365-ui .wea365-document-card-title:has(.wea365-document-card-preview) { grid-template-columns:48px minmax(0,1fr); }
}
@media (min-width: 960px) {
  .wea365-ui .wea365-turbine-overview {
    --wea365-turbine-grid: minmax(250px, 1.35fr) minmax(155px, .85fr) minmax(165px, .9fr) minmax(135px, .72fr) minmax(78px, .4fr) 176px;
  }
}

/* YOOtheme Bridge 0.8.9 / package 0.9.40: stable action dimensions, audit tabs and early report cards. */
.wea365-app,
.wea365-ui {
  --wea365-action-column-wide: 264px;
  --wea365-detail-action-wide: 240px;
  --wea365-action-label-gap: 14px;
  --wea365-action-padding-inline: 18px;
}

.wea365-reports-table-wrap {
  container-type: inline-size;
}

.wea365-audit-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-left: 0 !important;
  padding: 4px;
  overflow: visible;
}
.wea365-audit-tabs > li {
  min-width: 0;
  margin: 0;
  padding-left: 0 !important;
}
.wea365-audit-tabs > li > a {
  box-sizing: border-box;
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  padding: 9px 15px;
  line-height: 1.25;
}

@media (min-width: 960px) {
  .wea365-app .wea365-actions-trigger,
  .wea365-ui .wea365-actions-trigger {
    justify-content: center;
    gap: var(--wea365-action-label-gap) !important;
    padding-left: var(--wea365-action-padding-inline) !important;
    padding-right: calc(var(--wea365-action-padding-inline) + 2px) !important;
  }
  .wea365-app .wea365-actions-trigger > span:first-child,
  .wea365-ui .wea365-actions-trigger > span:first-child {
    flex: 0 1 auto;
  }
  .wea365-app .wea365-actions-trigger .wea365-actions-chevron,
  .wea365-ui .wea365-actions-trigger .wea365-actions-chevron {
    margin-left: 0 !important;
  }
}

@media (min-width: 1200px) {
  .wea365-app .wea365-assignment-reports-table th:last-child,
  .wea365-ui .wea365-assignment-reports-table th:last-child,
  .wea365-app .wea365-assignment-reports-table td.wea365-assignment-report-actions,
  .wea365-ui .wea365-assignment-reports-table td.wea365-assignment-report-actions {
    width: var(--wea365-action-column-wide) !important;
    min-width: var(--wea365-action-column-wide) !important;
    max-width: var(--wea365-action-column-wide) !important;
  }
  .wea365-app .wea365-assignment-report-actions .wea365-direct-action > span:first-child,
  .wea365-ui .wea365-assignment-report-actions .wea365-direct-action > span:first-child,
  .wea365-app .wea365-detail-grid-actions .wea365-direct-action > span:first-child,
  .wea365-ui .wea365-detail-grid-actions .wea365-direct-action > span:first-child {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
  .wea365-app .wea365-turbine-report-grid,
  .wea365-ui .wea365-turbine-report-grid {
    grid-template-columns: minmax(150px,1.05fr) minmax(145px,.9fr) minmax(155px,1fr) minmax(120px,.72fr) var(--wea365-detail-action-wide);
  }
  .wea365-app .wea365-turbine-report-grid-compact,
  .wea365-ui .wea365-turbine-report-grid-compact {
    grid-template-columns: minmax(160px,1.05fr) minmax(155px,.9fr) minmax(180px,1fr) var(--wea365-detail-action-wide);
  }
  .wea365-app .wea365-detail-grid-actions .wea365-direct-action,
  .wea365-ui .wea365-detail-grid-actions .wea365-direct-action {
    min-width: var(--wea365-detail-action-wide);
  }
}

@container (min-width: 1540px) {
  .wea365-app .wea365-reports-table th,
  .wea365-ui .wea365-reports-table th {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
  .wea365-app .wea365-reports-table th:nth-child(1),
  .wea365-ui .wea365-reports-table th:nth-child(1) { width: 150px; }
  .wea365-app .wea365-reports-table th:nth-child(2),
  .wea365-ui .wea365-reports-table th:nth-child(2) { width: 140px; }
  .wea365-app .wea365-reports-table th:nth-child(3),
  .wea365-ui .wea365-reports-table th:nth-child(3) { width: 200px; }
  .wea365-app .wea365-reports-table th:nth-child(4),
  .wea365-ui .wea365-reports-table th:nth-child(4) { width: 210px; }
  .wea365-app .wea365-reports-table th:nth-child(5),
  .wea365-ui .wea365-reports-table th:nth-child(5) { width: 220px; }
  .wea365-app .wea365-reports-table th:nth-child(6),
  .wea365-ui .wea365-reports-table th:nth-child(6) { width: 160px; }
  .wea365-app .wea365-reports-table th:nth-child(7),
  .wea365-ui .wea365-reports-table th:nth-child(7) { width: 150px; }
  .wea365-app .wea365-reports-table th:last-child,
  .wea365-ui .wea365-reports-table th:last-child,
  .wea365-app .wea365-reports-table td.wea365-actions-cell,
  .wea365-ui .wea365-reports-table td.wea365-actions-cell {
    width: var(--wea365-action-column-wide) !important;
    min-width: var(--wea365-action-column-wide) !important;
    max-width: var(--wea365-action-column-wide) !important;
  }
  .wea365-app .wea365-reports-table .wea365-direct-action > span:first-child,
  .wea365-ui .wea365-reports-table .wea365-direct-action > span:first-child {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
}

@container (max-width: 1539px) {
  .wea365-app table.wea365-reports-table,
  .wea365-ui table.wea365-reports-table,
  .wea365-app table.wea365-reports-table tbody,
  .wea365-ui table.wea365-reports-table tbody {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
  .wea365-app table.wea365-reports-table thead,
  .wea365-ui table.wea365-reports-table thead {
    display: none !important;
  }
  .wea365-app table.wea365-reports-table tbody,
  .wea365-ui table.wea365-reports-table tbody {
    display: grid !important;
    gap: 12px;
  }
  .wea365-app table.wea365-reports-table tr,
  .wea365-ui table.wea365-reports-table tr {
    position: static;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 20px;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    padding: 18px !important;
    border: 1px solid rgba(127,127,127,.22) !important;
    border-radius: 5px;
    background: transparent;
  }
  .wea365-app table.wea365-reports-table td,
  .wea365-ui table.wea365-reports-table td {
    position: static !important;
    inset: auto !important;
    display: block !important;
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0;
    padding: 0 !important;
    border: 0 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
  .wea365-app table.wea365-reports-table td[data-label]::before,
  .wea365-ui table.wea365-reports-table td[data-label]::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 4px;
    font-size: .72rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: .035em;
    text-transform: uppercase;
    opacity: .6;
  }
  .wea365-app table.wea365-reports-table td.wea365-card-primary,
  .wea365-ui table.wea365-reports-table td.wea365-card-primary,
  .wea365-app table.wea365-reports-table td.wea365-actions-cell,
  .wea365-ui table.wea365-reports-table td.wea365-actions-cell {
    grid-column: 1 / -1;
  }
  .wea365-app table.wea365-reports-table td.wea365-actions-cell,
  .wea365-ui table.wea365-reports-table td.wea365-actions-cell {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-top: 2px;
    padding: 14px 0 0 !important;
    border-top: 1px solid rgba(127,127,127,.18) !important;
  }
  .wea365-app table.wea365-reports-table .wea365-visible-actions,
  .wea365-ui table.wea365-reports-table .wea365-visible-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    width: 100%;
  }
  .wea365-app table.wea365-reports-table .wea365-direct-action,
  .wea365-ui table.wea365-reports-table .wea365-direct-action {
    width: 100% !important;
    min-width: 0 !important;
  }
}

@container (min-width: 640px) and (max-width: 1539px) {
  .wea365-app table.wea365-reports-table .wea365-visible-actions,
  .wea365-ui table.wea365-reports-table .wea365-visible-actions {
    width: var(--wea365-detail-action-wide);
    margin-left: auto;
  }
}

@media (max-width: 639px) {
  .wea365-audit-tabs {
    display: grid;
    grid-template-columns: 1fr;
    padding: 0;
  }
  .wea365-audit-tabs > li,
  .wea365-audit-tabs > li > a {
    width: 100%;
  }
  .wea365-app table.wea365-reports-table tr,
  .wea365-ui table.wea365-reports-table tr {
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
  }
  .wea365-app table.wea365-reports-table td.wea365-card-primary,
  .wea365-ui table.wea365-reports-table td.wea365-card-primary,
  .wea365-app table.wea365-reports-table td.wea365-actions-cell,
  .wea365-ui table.wea365-reports-table td.wea365-actions-cell {
    grid-column: 1;
  }
}

/* WEA365 0.9.41: stable icon spacing, non-overlapping action columns and mobile section headers. */
.wea365-app,
.wea365-ui {
  --wea365-action-column-wide: 300px;
  --wea365-report-action-wide: 300px;
  --wea365-document-action-wide: 184px;
  --wea365-action-label-gap: 16px;
  --wea365-action-padding-inline: 18px;
}

.wea365-app .wea365-icon-text-button:not([hidden]),
.wea365-ui .wea365-icon-text-button:not([hidden]),
.wea365-app .uk-button:has(> [uk-icon]):not([hidden]),
.wea365-ui .uk-button:has(> [uk-icon]):not([hidden]) {
  box-sizing: border-box;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  column-gap: var(--wea365-action-label-gap) !important;
}
.wea365-app .wea365-icon-text-button > [uk-icon],
.wea365-ui .wea365-icon-text-button > [uk-icon],
.wea365-app .uk-button > [uk-icon],
.wea365-ui .uk-button > [uk-icon],
.wea365-app .uk-button > .uk-icon,
.wea365-ui .uk-button > .uk-icon {
  flex: 0 0 auto !important;
  margin: 0 !important;
}

.wea365-app .wea365-actions-trigger,
.wea365-ui .wea365-actions-trigger {
  min-width: 154px;
  justify-content: space-between !important;
  gap: var(--wea365-action-label-gap) !important;
  padding-left: var(--wea365-action-padding-inline) !important;
  padding-right: var(--wea365-action-padding-inline) !important;
}
.wea365-app .wea365-actions-trigger > span:first-child,
.wea365-ui .wea365-actions-trigger > span:first-child {
  flex: 1 1 auto;
  min-width: 0;
  text-align: center;
}
.wea365-app .wea365-actions-trigger .wea365-actions-chevron,
.wea365-ui .wea365-actions-trigger .wea365-actions-chevron {
  flex: 0 0 20px !important;
  width: 20px;
  margin: 0 !important;
}

.wea365-app .wea365-direct-action,
.wea365-ui .wea365-direct-action {
  gap: var(--wea365-action-label-gap) !important;
  padding-left: var(--wea365-action-padding-inline) !important;
  padding-right: var(--wea365-action-padding-inline) !important;
  overflow: hidden;
}
.wea365-app .wea365-direct-action > span:first-child,
.wea365-ui .wea365-direct-action > span:first-child {
  flex: 1 1 auto;
  min-width: 0;
  text-align: center;
}
.wea365-app .wea365-direct-action > [uk-icon],
.wea365-ui .wea365-direct-action > [uk-icon],
.wea365-app .wea365-direct-action > .uk-icon,
.wea365-ui .wea365-direct-action > .uk-icon {
  flex: 0 0 20px !important;
  width: 20px;
  margin: 0 !important;
}


.wea365-offcanvas .uk-offcanvas-close[uk-close] {
  box-sizing: border-box;
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
}
.wea365-offcanvas .wea365-sidepanel-title {
  margin-right: 60px;
}

.wea365-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  min-width: 0;
}
.wea365-section-header > h1,
.wea365-section-header > h2,
.wea365-section-header > h3 {
  flex: 1 1 240px;
  min-width: 0;
  margin-top: 0;
  margin-bottom: 0;
}
.wea365-section-header > .uk-button {
  flex: 0 0 auto;
  margin: 0;
}

@media (min-width: 1200px) {
  .wea365-app .wea365-assignment-reports-table th:last-child,
  .wea365-ui .wea365-assignment-reports-table th:last-child,
  .wea365-app .wea365-assignment-reports-table td.wea365-assignment-report-actions,
  .wea365-ui .wea365-assignment-reports-table td.wea365-assignment-report-actions {
    width: var(--wea365-report-action-wide) !important;
    min-width: var(--wea365-report-action-wide) !important;
    max-width: var(--wea365-report-action-wide) !important;
  }
  .wea365-app .wea365-turbine-report-grid,
  .wea365-ui .wea365-turbine-report-grid {
    grid-template-columns: minmax(150px,1.05fr) minmax(145px,.9fr) minmax(155px,1fr) minmax(120px,.72fr) var(--wea365-report-action-wide) !important;
  }
  .wea365-app .wea365-turbine-report-grid-compact,
  .wea365-ui .wea365-turbine-report-grid-compact {
    grid-template-columns: minmax(160px,1.05fr) minmax(155px,.9fr) minmax(180px,1fr) var(--wea365-report-action-wide) !important;
  }
  .wea365-app .wea365-detail-document-grid,
  .wea365-ui .wea365-detail-document-grid {
    grid-template-columns: minmax(220px,1.45fr) minmax(145px,.8fr) 72px minmax(130px,.75fr) minmax(145px,.78fr) var(--wea365-document-action-wide) !important;
  }
  .wea365-app .wea365-detail-grid-actions .wea365-direct-action,
  .wea365-ui .wea365-detail-grid-actions .wea365-direct-action {
    width: 100%;
    min-width: 0 !important;
    max-width: 100%;
  }
  .wea365-app .wea365-assignment-report-actions .wea365-direct-action > span:first-child,
  .wea365-ui .wea365-assignment-report-actions .wea365-direct-action > span:first-child,
  .wea365-app .wea365-turbine-report-grid .wea365-direct-action > span:first-child,
  .wea365-ui .wea365-turbine-report-grid .wea365-direct-action > span:first-child {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
}

@media (max-width: 639px) {
  .wea365-section-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
  }
  .wea365-section-header > h1,
  .wea365-section-header > h2,
  .wea365-section-header > h3 {
    width: 100%;
  }
  .wea365-section-header > .uk-button {
    width: 100%;
    min-height: 46px;
  }
}

/* WEA365 0.9.42: single-line desktop actions and separated document design. */
.wea365-app,
.wea365-ui {
  --wea365-action-column-wide: 320px;
  --wea365-report-action-wide: 320px;
}

.wea365-app .wea365-branding-logo-preview,
.wea365-ui .wea365-branding-logo-preview {
  box-sizing: border-box;
  padding: 12px 20px;
  background-color: var(--wea365-color-white);
  background-image: none;
}

.wea365-app .wea365-branding-logo-preview img,
.wea365-ui .wea365-branding-logo-preview img {
  max-width: 100%;
  max-height: 100%;
}

.wea365-document-design-element {
  container-type: inline-size;
}

.wea365-document-design-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 28px;
  min-width: 0;
}

.wea365-document-design-colors,
.wea365-document-design-preview {
  min-width: 0;
}

.wea365-document-design-preview {
  padding-top: 28px;
  border-top: 1px solid rgba(127, 127, 127, .2);
}

.wea365-document-design-layout.is-colors-only .wea365-document-design-colors {
  max-width: 620px;
}

@container (min-width: 900px) {
  .wea365-document-design-layout:not(.is-colors-only) {
    grid-template-columns: minmax(280px, .72fr) minmax(0, 1.45fr);
    gap: 34px;
    align-items: start;
  }

  .wea365-document-design-preview {
    padding-top: 0;
    padding-left: 34px;
    border-top: 0;
    border-left: 1px solid rgba(127, 127, 127, .2);
  }
}

@media (min-width: 960px) {
  .wea365-app .wea365-direct-action > span:first-child,
  .wea365-ui .wea365-direct-action > span:first-child,
  .wea365-app .wea365-actions-trigger > span:first-child,
  .wea365-ui .wea365-actions-trigger > span:first-child,
  .wea365-app .wea365-icon-text-button > span:last-child,
  .wea365-ui .wea365-icon-text-button > span:last-child {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
}

@container (min-width: 640px) and (max-width: 1539px) {
  .wea365-app table.wea365-reports-table .wea365-visible-actions,
  .wea365-ui table.wea365-reports-table .wea365-visible-actions {
    width: var(--wea365-report-action-wide);
  }

  .wea365-app table.wea365-reports-table .wea365-direct-action > span:first-child,
  .wea365-ui table.wea365-reports-table .wea365-direct-action > span:first-child {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
}

@media (max-width: 639px) {
  .wea365-app .wea365-branding-logo-preview,
  .wea365-ui .wea365-branding-logo-preview {
    padding: 10px 14px;
  }
}

/* Stable CSV/import identifiers are informative, not warnings. */
.wea365-maintenance-import-key {
  display: inline-block;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 0.92em;
  font-weight: 600;
  color: inherit;
  overflow-wrap: anywhere;
}

@media (min-width: 640px) {
  .wea365-workreport-actions .wea365-workreport-save-time-button {
    min-width: 360px;
    white-space: nowrap;
  }
}

@media (max-width: 639px) {
  .wea365-workreport-actions .wea365-workreport-save-time-button {
    white-space: normal;
  }
}

/* Report identity: make the specific report type scannable without competing with status colours. */
.wea365-report-identity {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 9px;
  margin-top: 5px;
  min-width: 0;
}

.wea365-report-type-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  max-width: 100%;
  padding: 3px 10px;
  border: 1px solid #9db9d1;
  border-radius: 3px;
  background: #edf4fa;
  color: var(--wea365-color-primary-strong) !important;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.35;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  overflow-wrap: break-word;
  box-sizing: border-box;
}

.wea365-report-version {
  color: inherit;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.35;
  opacity: .62;
}

.wea365-detail-grid-primary > .wea365-report-type-badge {
  margin-top: 5px;
  align-self: flex-start;
}

@media (max-width: 639px) {
  .wea365-report-identity {
    gap: 5px 7px;
  }

  .wea365-report-type-badge {
    min-height: 27px;
    padding-inline: 8px;
    font-size: .84rem;
  }
}


/* WEA365 0.9.54: calm, stacked report identity in WEA detail lists. */
.wea365-report-primary-stack {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
}

.wea365-report-number-link {
  display: block;
  max-width: 100%;
  color: inherit;
  font-size: 1.02rem;
  line-height: 1.25;
  text-decoration: none;
  overflow-wrap: anywhere;
}

.wea365-report-number-link:hover,
.wea365-report-number-link:focus {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.wea365-report-primary-stack .wea365-report-identity {
  margin-top: 0;
}

@media (min-width: 1200px) {
  .wea365-app .wea365-turbine-report-grid,
  .wea365-ui .wea365-turbine-report-grid {
    grid-template-columns: minmax(250px, 1.2fr) minmax(180px, .9fr) minmax(190px, 1fr) minmax(130px, .72fr) var(--wea365-detail-action-wide);
  }

  .wea365-app .wea365-turbine-report-grid-compact,
  .wea365-ui .wea365-turbine-report-grid-compact {
    grid-template-columns: minmax(250px, 1.2fr) minmax(190px, .9fr) minmax(210px, 1fr) var(--wea365-detail-action-wide);
  }
}

/* WEA365 0.9.58: one global button-icon convention and a standalone migration settings element. */
.wea365-app,
.wea365-ui {
  --wea365-button-icon-gap: 10px;
}

.wea365-app .uk-button:not(.uk-icon-button):not([uk-close]):not([hidden]),
.wea365-ui .uk-button:not(.uk-icon-button):not([uk-close]):not([hidden]) {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: var(--wea365-button-icon-gap) !important;
}

.wea365-app .uk-button:not(.uk-icon-button):not([uk-close]) > [uk-icon],
.wea365-ui .uk-button:not(.uk-icon-button):not([uk-close]) > [uk-icon],
.wea365-app .uk-button:not(.uk-icon-button):not([uk-close]) > .uk-icon,
.wea365-ui .uk-button:not(.uk-icon-button):not([uk-close]) > .uk-icon,
.wea365-app .uk-button:not(.uk-icon-button):not([uk-close]) > .wea365-actions-chevron,
.wea365-ui .uk-button:not(.uk-icon-button):not([uk-close]) > .wea365-actions-chevron {
  order: -1 !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
}

.wea365-app .wea365-actions-trigger,
.wea365-ui .wea365-actions-trigger {
  justify-content: center !important;
}

.wea365-app .wea365-actions-trigger > span:not([uk-icon]):not(.uk-icon):not(.wea365-actions-chevron),
.wea365-ui .wea365-actions-trigger > span:not([uk-icon]):not(.uk-icon):not(.wea365-actions-chevron),
.wea365-app .wea365-direct-action > span:not([uk-icon]):not(.uk-icon):not(.wea365-actions-chevron),
.wea365-ui .wea365-direct-action > span:not([uk-icon]):not(.uk-icon):not(.wea365-actions-chevron) {
  flex: 0 1 auto;
  min-width: 0;
  text-align: center;
}

.wea365-settings-migration-element {
  width: 100%;
  min-width: 0;
}

.wea365-settings-migration-element .wea365-settings-migration-entry-content {
  align-items: flex-start;
}

.wea365-settings-migration-element .wea365-settings-migration-icon {
  margin-top: 3px;
}

@media (max-width: 639px) {
  .wea365-settings-migration-element .wea365-settings-migration-entry-content {
    align-items: stretch;
  }

  .wea365-settings-migration-element .wea365-icon-text-button {
    width: 100%;
  }
}


/* 0.8.36 / package 0.9.93: calmer active-WEA cards and clearer work-start actions. */
.wea365-assignment-turbine-grid {
  align-items: stretch;
}

.wea365-assignment-turbine-grid > div {
  display: flex;
  min-width: 0;
}

.wea365-assignment-turbine {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  width: 100%;
  min-height: 100%;
  overflow: hidden;
}

.wea365-assignment-turbine.uk-card-body {
  padding: clamp(24px, 2.4vw, 34px);
}

.wea365-assignment-turbine-main {
  min-width: 0;
}

.wea365-assignment-turbine-header {
  grid-template-columns: 104px minmax(0, 1fr);
  gap: 20px;
  align-items: center;
}

.wea365-assignment-turbine-thumb {
  width: 104px;
  height: 104px;
  border-radius: 8px;
  background: rgba(49, 95, 154, .07);
}

.wea365-assignment-turbine-title h3 {
  margin-top: 0;
  font-size: clamp(1.32rem, 1.8vw, 1.62rem);
  line-height: 1.15;
}

.wea365-assignment-turbine-serial {
  margin-top: 5px;
}

.wea365-assignment-report-status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  max-width: 100%;
  margin-top: 14px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(60, 70, 80, .07);
  color: rgba(31, 41, 51, .72);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.25;
}

.wea365-assignment-report-status.has-open-reports {
  background: rgba(183, 121, 31, .11);
  color: #805815;
}

.wea365-assignment-turbine-data {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 28px;
  margin-top: 28px;
}

.wea365-assignment-turbine-data .wea365-assignment-turbine-operator {
  grid-column: 1 / -1;
}

.wea365-assignment-turbine-data dt {
  margin-bottom: 5px;
  font-size: 11px;
}

.wea365-assignment-turbine-data dd {
  font-size: 15px;
  line-height: 1.45;
}

.wea365-assignment-turbine-footer {
  display: grid;
  gap: 20px;
  margin-top: auto;
  padding-top: 28px;
}

.wea365-assignment-open-button {
  justify-self: start;
}

.wea365-assignment-start-form {
  display: grid;
  gap: 13px;
  padding-top: 22px;
  border-top: 1px solid rgba(31, 41, 51, .12);
}

.wea365-assignment-start-copy {
  display: grid;
  gap: 4px;
}

.wea365-assignment-start-kicker {
  color: rgba(31, 41, 51, .58);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .055em;
  line-height: 1.25;
  text-transform: uppercase;
}

.wea365-assignment-start-form .uk-form-label {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
}

.wea365-assignment-start-controls {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) auto;
  gap: 12px;
  align-items: stretch;
  min-width: 0;
}

.wea365-assignment-start-controls .uk-input,
.wea365-assignment-start-controls .uk-button {
  min-height: 46px;
}

@media (max-width: 1199px) {
  .wea365-assignment-turbine-grid > div {
    width: 100%;
  }
}

@media (max-width: 760px) {
  .wea365-assignment-turbine.uk-card-body {
    padding: 24px;
  }

  .wea365-assignment-turbine-header {
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 16px;
  }

  .wea365-assignment-turbine-thumb {
    width: 88px !important;
    height: 88px !important;
  }

  .wea365-assignment-turbine-data {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-top: 24px;
  }

  .wea365-assignment-turbine-data .wea365-assignment-turbine-operator {
    grid-column: auto;
  }

  .wea365-assignment-open-button,
  .wea365-assignment-start-controls .uk-button {
    width: 100%;
  }

  .wea365-assignment-start-controls {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 430px) {
  .wea365-assignment-turbine.uk-card-body {
    padding: 20px;
  }

  .wea365-assignment-turbine-header {
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 14px;
  }

  .wea365-assignment-turbine-thumb {
    width: 72px !important;
    height: 72px !important;
  }

  .wea365-assignment-report-status {
    border-radius: 6px;
    white-space: normal;
  }
}

/* General document library explorer */
.wea365-ui .wea365-document-explorer-layout{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);border:1px solid rgba(127,127,127,.24);border-radius:8px;overflow:hidden;min-height:360px}
.wea365-ui .wea365-document-tree{padding:14px;border-right:1px solid rgba(127,127,127,.24);min-width:0;overflow-x:hidden}
.wea365-ui .wea365-document-tree-root,.wea365-ui .wea365-document-tree-link{display:flex;align-items:center;gap:8px;min-height:40px;padding:6px 7px;border-radius:5px;color:inherit;text-decoration:none;min-width:0}.wea365-ui .wea365-document-tree-root>.wea365-document-tree-label,.wea365-ui .wea365-document-tree-link>.wea365-document-tree-label{min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.25;flex:1 1 auto}
.wea365-ui .wea365-document-tree-list{list-style:none;margin:2px 0 0;padding:0;min-width:0}.wea365-ui .wea365-document-tree-list.is-nested{margin-left:6px;padding-left:5px;border-left:1px solid rgba(127,127,127,.34)}.wea365-ui .wea365-document-tree-list.is-nested>.wea365-document-tree-item{position:relative;min-width:0}.wea365-ui .wea365-document-tree-list.is-nested>.wea365-document-tree-item::before{content:"";position:absolute;left:-5px;top:20px;width:5px;border-top:1px solid rgba(127,127,127,.34);pointer-events:none}.wea365-ui .wea365-document-tree-link [uk-icon],.wea365-ui .wea365-document-tree-root [uk-icon]{flex:0 0 auto}
.wea365-ui .wea365-document-explorer-content{padding:16px;min-width:0}.wea365-ui .wea365-document-explorer-items{display:grid;gap:8px;container-type:inline-size}
.wea365-ui .wea365-document-explorer-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:58px;padding:9px 11px;border:1px solid rgba(127,127,127,.22);border-radius:6px;color:inherit;text-decoration:none;min-width:0}
.wea365-ui .wea365-document-explorer-item-main{display:flex;flex-direction:column;gap:2px;min-width:0}.wea365-ui .wea365-document-explorer-item-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.wea365-ui .wea365-document-explorer-item-actions .uk-button{white-space:nowrap}.wea365-ui .wea365-document-explorer-breadcrumbs{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-bottom:12px}.wea365-ui .wea365-document-explorer-drop-hint{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding:9px 11px;border:1px dashed rgba(127,127,127,.35);border-radius:5px}.wea365-ui .wea365-document-explorer [draggable="true"]{cursor:grab}
@media(max-width:959px){.wea365-ui .wea365-document-explorer-layout{grid-template-columns:1fr;min-height:0}.wea365-ui .wea365-document-tree{border-right:0;border-bottom:1px solid rgba(127,127,127,.24);max-height:300px;overflow-y:auto;overflow-x:hidden}}
@media(max-width:639px){.wea365-ui .wea365-document-explorer-header{display:grid;grid-template-columns:1fr}.wea365-ui .wea365-document-tree-list.is-nested{margin-left:3px;padding-left:3px}}
/* 0.8.55: document actions adapt to the actual explorer-card width, not only viewport width. */
@container (max-width:520px){.wea365-ui .wea365-document-explorer-item{grid-template-columns:34px minmax(0,1fr)}.wea365-ui .wea365-document-explorer-item>.uk-button{grid-column:1/-1;width:100%}.wea365-ui .wea365-document-explorer-item-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;min-width:0}.wea365-ui .wea365-document-explorer-item-actions .uk-button{width:100%;min-width:0;padding-left:12px;padding-right:12px}}
@container (max-width:340px){.wea365-ui .wea365-document-explorer-item-actions{grid-template-columns:1fr}}
.wea365-ui .wea365-document-explorer-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}@media(max-width:639px){.wea365-ui .wea365-document-explorer-actions{display:grid;grid-template-columns:1fr}.wea365-ui .wea365-document-explorer-actions .uk-button{width:100%}}
/* 0.8.50: keep asynchronous library navigation visibly calm without a page flash. */
.wea365-ui .wea365-document-explorer.is-loading .wea365-document-explorer-content{opacity:.58;pointer-events:none;transition:opacity .14s ease}
.wea365-ui .wea365-document-explorer .wea365-document-explorer-content[aria-busy="true"]{cursor:progress}

.wea365-ui .wea365-document-tree-item.is-active-branch>.wea365-document-tree-link{font-weight:700}
.wea365-ui .wea365-document-tree-root>.uk-badge,.wea365-ui .wea365-document-tree-link>.uk-badge{flex:0 0 auto;margin-left:auto}

.wea365-ui .wea365-document-tree-root.is-active,.wea365-ui .wea365-document-tree-link.is-active,.wea365-ui .wea365-document-tree-item.is-active>.wea365-document-tree-link{background:rgba(65,120,180,.12);font-weight:700}
/* 0.8.51: unified Library / General / Operators / WTGs navigation. */


/* WEA365 0.9.140: document-management sidepanel layout refinement.
   The panel needs enough space for version metadata and labeled actions; on narrow
   screens the history actions stack instead of clipping or forcing horizontal scroll. */
.wea365-offcanvas--wide.wea365-document-manage-offcanvas .uk-offcanvas-bar {
  width: min(1120px, 96vw);
}

@media (min-width: 1200px) {
  .wea365-document-manage-layout > .wea365-document-manage-main {
    width: 57%;
  }

  .wea365-document-manage-layout > .wea365-document-manage-history {
    width: 43%;
  }
}

.wea365-document-version-row {
  grid-template-columns: 42px minmax(0, 1fr) minmax(112px, max-content);
}

.wea365-document-version-row > .wea365-direct-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 112px;
  min-height: 44px;
  box-sizing: border-box;
  white-space: nowrap;
}

.wea365-document-management-block > .uk-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 44px;
  max-width: 100%;
  white-space: nowrap;
}

@media (max-width: 639px) {
  .wea365-document-version-row {
    grid-template-columns: 38px minmax(0, 1fr);
    grid-template-areas:
      "badge content"
      "action action";
    gap: 9px 10px;
  }

  .wea365-document-version-badge {
    grid-area: badge;
  }

  .wea365-document-version-content {
    grid-area: content;
  }

  .wea365-document-version-row > .wea365-direct-action {
    grid-area: action;
    width: 100%;
    min-width: 0;
    margin-top: 3px;
  }

  .wea365-document-management-block > .uk-button {
    width: 100%;
    white-space: normal;
  }
}


/* WEA365 0.9.143: consistent settings-card heading icons. */
.wea365-settings-card-heading {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  align-items: start;
  column-gap: 1rem;
}
.wea365-settings-card-icon {
  display: inline-flex;
  width: 32px;
  min-width: 32px;
  height: 32px;
  align-items: flex-start;
  justify-content: center;
  padding-top: 3px;
  box-sizing: border-box;
}
.wea365-settings-card-icon > svg {
  width: 21px;
  height: 21px;
}
.wea365-settings-card-heading + form,
.wea365-settings-card-heading + .wea365-branding-logo-stage,
.wea365-settings-card-heading + .wea365-document-design-layout {
  margin-top: 1.5rem;
}
@media (max-width: 639px) {
  .wea365-settings-card-heading {
    grid-template-columns: 28px minmax(0, 1fr);
    column-gap: .75rem;
  }
  .wea365-settings-card-icon {
    width: 28px;
    min-width: 28px;
  }
}

/* WEA365 0.9.152: one visual language for internal page headers and tenant selection. */
.wea365-page-header h1 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  font-size: clamp(2rem, 2.7vw, 2.75rem) !important;
  line-height: 1.12 !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
}
.wea365-page-header .uk-text-meta {
  margin-top: 8px !important;
  margin-bottom: 0 !important;
}
.wea365-tenant-switcher.uk-card-body {
  padding-top: 22px;
  padding-bottom: 22px;
}
.wea365-tenant-switcher-form {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) minmax(240px, 360px);
  gap: 18px 28px;
  align-items: center;
  width: 100%;
}
.wea365-tenant-switcher-label {
  margin: 0;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.35;
}
.wea365-tenant-switcher-control {
  min-width: 0;
}
.wea365-tenant-switcher-control .uk-select {
  width: 100%;
  min-height: 44px;
}
@media (max-width: 639px) {
  .wea365-tenant-switcher-form {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }
}


/* WEA365 0.9.154: report-template workspace is one coherent work surface, never cards inside cards. */
.wea365-report-templates-inner {
  width: 100%;
  min-width: 0;
}
.wea365-report-template-toolbar {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  padding: 0 0 22px;
  border-bottom: 1px solid rgba(0,0,0,.10);
}
.wea365-report-template-import-panel {
  padding: 28px 0;
  border-bottom: 1px solid rgba(0,0,0,.10);
}
.wea365-report-template-stat {
  min-height: 72px;
  padding: 14px 16px;
  background: rgba(0,0,0,.035);
  border-left: 3px solid rgba(0,0,0,.14);
  box-sizing: border-box;
}
.wea365-report-template-workspace-grid {
  display: grid;
  grid-template-columns: minmax(270px, 330px) minmax(0, 1fr);
  min-width: 0;
  min-height: 460px;
}
.wea365-report-template-library-pane,
.wea365-report-template-detail-pane {
  min-width: 0;
}
.wea365-report-template-library-pane {
  padding: 30px 32px 30px 0;
  border-right: 1px solid rgba(0,0,0,.10);
}
.wea365-report-template-detail-pane {
  padding: 30px 0 30px 40px;
}
.wea365-report-template-pane-inner,
.wea365-report-template-welcome,
.wea365-report-template-editor-pane {
  min-width: 0;
}
.wea365-report-template-welcome {
  max-width: 760px;
  padding-top: 4px;
}
.wea365-report-template-editor-pane {
  padding: 0;
}
.wea365-report-template-subsection {
  margin-top: 34px;
  padding-top: 28px;
  border-top: 1px solid rgba(0,0,0,.10);
}
.wea365-report-template-list > li > a {
  min-height: 48px;
  padding: 10px 8px;
  align-items: center;
}
.wea365-report-template-list > li.uk-active > a {
  font-weight: 700;
  background: rgba(0,0,0,.045);
}
.wea365-report-template-section {
  margin: 0 0 26px;
  padding: 22px 0 4px;
  border-top: 2px solid rgba(0,0,0,.14);
}
.wea365-report-template-section:first-child {
  border-top-width: 1px;
}
.wea365-report-template-field {
  margin: 0;
  padding: 18px 0;
  border-top: 1px solid rgba(0,0,0,.09);
}
.wea365-report-template-field:first-child {
  border-top: 0;
}
.wea365-report-template-canvas {
  border-bottom: 1px solid rgba(0,0,0,.10);
}
@media (max-width: 959px) {
  .wea365-report-template-workspace-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .wea365-report-template-library-pane {
    padding: 26px 0;
    border-right: 0;
    border-bottom: 1px solid rgba(0,0,0,.10);
  }
  .wea365-report-template-detail-pane {
    padding: 28px 0 8px;
  }
}
@media (max-width: 639px) {
  .wea365-report-template-toolbar {
    justify-content: stretch;
    padding-bottom: 18px;
  }
  .wea365-report-template-toolbar .uk-button {
    width: 100%;
  }
  .wea365-report-template-library-pane,
  .wea365-report-template-detail-pane,
  .wea365-report-template-import-panel {
    padding-left: 0;
    padding-right: 0;
  }
  .wea365-report-template-subsection {
    margin-top: 28px;
    padding-top: 24px;
  }
  .wea365-report-template-section {
    padding-top: 18px;
  }
  .wea365-report-template-field {
    padding: 16px 0;
  }
}

/* Notification hierarchy: event first, supporting context second. */
.wea365-notification-title {
  margin: 0;
  font-size: 1.02rem !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
}
.wea365-notification-title a {
  font-size: inherit !important;
  line-height: inherit !important;
  font-weight: inherit !important;
}
.wea365-notification-detail {
  font-size: .86rem !important;
  line-height: 1.45 !important;
  font-weight: 400 !important;
  color: #667085 !important;
}


/* WEA365 0.9.260: direct-action icons keep their natural width. */
.wea365-app .wea365-direct-action > span:first-child,
.wea365-ui .wea365-direct-action > span:first-child {
  flex: 0 0 auto;
}

/* 0.8.78 / package 0.9.269: technician dashboard priority hierarchy, full-width unplanned start, tenant-card consistency. */
.wea365-ui .wea365-maintenance-tabs > .uk-active > a .uk-badge,
.wea365-app .wea365-maintenance-tabs > .uk-active > a .uk-badge {
  border-color: #2b5aa5 !important;
  background: #2b5aa5 !important;
  color: var(--wea365-color-white) !important;
  opacity: 1 !important;
}

.wea365-assignment-section-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

.wea365-assignment-task-hub,
.wea365-assignment-schedule-section,
.wea365-assignment-unplanned {
  min-width: 0;
}

.wea365-assignment-task-group + .wea365-assignment-task-group {
  margin-top: 26px;
}

.wea365-assignment-subheading {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 10px;
  color: #1f2933;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .025em;
  text-transform: uppercase;
}

.wea365-assignment-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border: 1px solid rgba(43, 90, 165, .18);
  border-radius: 999px;
  background: #e5edf5;
  color: #244c70;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
}

.wea365-assignment-task-list,
.wea365-assignment-schedule-list,
.wea365-assignment-turbine-list {
  border-top: 1px solid rgba(31, 41, 51, .16);
}

.wea365-assignment-task-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 20px;
  min-width: 0;
  padding: 14px 0;
  border-bottom: 1px solid rgba(31, 41, 51, .16);
}

.wea365-assignment-task-main,
.wea365-assignment-task-actions {
  min-width: 0;
}

.wea365-assignment-task-titleline {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px 10px;
  min-width: 0;
}

.wea365-assignment-task-titleline > strong {
  font-size: 15px;
}

.wea365-assignment-task-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 10px;
  margin-top: 5px;
  color: rgba(31, 41, 51, .68);
  font-size: 13px;
  line-height: 1.35;
}

.wea365-assignment-task-meta > span + span::before {
  content: "·";
  margin-right: 10px;
  color: rgba(31, 41, 51, .35);
}

.wea365-assignment-task-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}

.wea365-assignment-task-actions form {
  margin: 0;
}

.wea365-assignment-task-actions .uk-button {
  min-height: 44px;
}

.wea365-assignment-schedule-list {
  margin-top: 4px;
}

.wea365-assignment-schedule-row {
  display: grid;
  grid-template-columns: minmax(150px, 190px) minmax(260px, 1fr) minmax(108px, 138px) minmax(190px, 250px);
  gap: 18px;
  align-items: center;
  min-width: 0;
  padding: 16px 0;
  border-bottom: 1px solid rgba(31, 41, 51, .16);
}

.wea365-assignment-schedule-time,
.wea365-assignment-schedule-main,
.wea365-assignment-schedule-role,
.wea365-assignment-schedule-actions {
  min-width: 0;
}

.wea365-assignment-schedule-time,
.wea365-assignment-schedule-main {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.wea365-assignment-schedule-time > strong,
.wea365-assignment-schedule-turbine {
  color: #1f2933;
  font-size: 15px;
  line-height: 1.3;
}

.wea365-assignment-schedule-time > span,
.wea365-assignment-schedule-location,
.wea365-assignment-schedule-instructions {
  color: rgba(31, 41, 51, .65);
  font-size: 13px;
  line-height: 1.35;
}

.wea365-assignment-schedule-service {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 8px;
  margin-top: 4px;
  font-size: 13px;
  line-height: 1.35;
}

.wea365-assignment-order-number {
  color: rgba(31, 41, 51, .68);
}

.wea365-assignment-order-number::before {
  content: "·";
  margin-right: 8px;
  color: rgba(31, 41, 51, .35);
}

.wea365-assignment-role-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 8px;
  border-radius: 4px;
  background: rgba(31, 41, 51, .06);
  color: rgba(31, 41, 51, .7);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
  text-transform: uppercase;
}

.wea365-assignment-role-badge.is-lead {
  background: rgba(56, 140, 91, .12);
  color: #2f714d;
}

.wea365-assignment-schedule-actions {
  display: grid;
  gap: 8px;
}

.wea365-assignment-service-action {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.wea365-assignment-service-action-name {
  overflow-wrap: anywhere;
  color: rgba(31, 41, 51, .76);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.25;
}
.wea365-assignment-service-action-name small {
  display: block;
  margin-top: 3px;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.3;
  opacity: .82;
}

.wea365-assignment-service-action form {
  margin: 0;
}

.wea365-assignment-service-action .uk-button {
  min-width: 108px;
  min-height: 44px;
}

.wea365-assignment-overdue {
  margin: 0 0 24px;
  padding: 16px 18px 4px;
  border: 1px solid rgba(211, 78, 94, .34);
  border-left: 5px solid #d34e5e;
  border-radius: 6px;
  background: rgba(211, 78, 94, .055);
}

.wea365-assignment-overdue-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 8px;
}

.wea365-assignment-overdue-header h3 {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px;
  color: #7e2834;
  font-weight: 800;
}

.wea365-assignment-overdue .wea365-assignment-count {
  border-color: rgba(211, 78, 94, .28);
  background: #d34e5e;
  color: var(--wea365-color-white);
}

.wea365-assignment-overdue > .wea365-assignment-schedule-list {
  margin-top: 10px;
}

.wea365-assignment-schedule-row.is-overdue {
  margin-right: -8px;
  margin-left: -8px;
  padding-right: 8px;
  padding-left: 8px;
  background: rgba(211, 78, 94, .025);
}

.wea365-assignment-overdue-badge {
  align-self: flex-start;
  margin-bottom: 3px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .035em;
}

.wea365-assignment-current-list {
  margin-top: 18px;
}

.wea365-assignment-unplanned-form {
  display: grid;
  grid-template-columns: minmax(240px, 1.2fr) minmax(220px, 1fr) auto;
  gap: 12px;
  align-items: end;
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  padding: 18px;
  border: 1px solid rgba(31, 41, 51, .14);
  border-radius: 6px;
  background: rgba(48, 79, 108, .025);
}

.wea365-assignment-unplanned-form .uk-select,
.wea365-assignment-unplanned-form .uk-input,
.wea365-assignment-unplanned-form .uk-button {
  min-height: 46px;
}

.wea365-assignment-unplanned-action {
  display: flex;
}

.wea365-assignment-turbine-explorer {
  width: 100%;
  max-width: none;
  box-sizing: border-box;
  margin-top: 14px;
  border: 1px solid rgba(31, 41, 51, .14);
  border-radius: 6px;
}

.wea365-assignment-turbine-explorer > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 46px;
  padding: 0 14px;
  cursor: pointer;
  color: #244c70;
  font-size: 13px;
  font-weight: 700;
  list-style: none;
}

.wea365-assignment-turbine-explorer > summary::-webkit-details-marker {
  display: none;
}

.wea365-assignment-turbine-explorer[open] > summary [uk-icon] {
  transform: rotate(180deg);
}

.wea365-assignment-turbine-list {
  margin: 0 14px 12px;
}

.wea365-assignment-turbine-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  min-width: 0;
  padding: 12px 0;
  border-bottom: 1px solid rgba(31, 41, 51, .13);
}

.wea365-assignment-turbine-row-main {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 3px 10px;
  min-width: 0;
}

.wea365-assignment-turbine-row-main > strong {
  font-size: 14px;
}

.wea365-assignment-turbine-row-main > span {
  color: rgba(31, 41, 51, .65);
  font-size: 12px;
}

.wea365-assignment-turbine-open-reports {
  color: #805815 !important;
  font-weight: 700;
}

.wea365-maintenance-order-filter {
  margin-top: 18px;
  margin-bottom: 20px;
}

@media (max-width: 1199px) {
  .wea365-assignment-schedule-row {
    grid-template-columns: minmax(145px, 180px) minmax(230px, 1fr) minmax(180px, 230px);
  }
  .wea365-assignment-schedule-role {
    grid-column: 2;
    grid-row: 2;
  }
  .wea365-assignment-schedule-actions {
    grid-column: 3;
    grid-row: 1 / span 2;
  }
}

@media (max-width: 799px) {
  .wea365-assignment-task-row,
  .wea365-assignment-schedule-row,
  .wea365-assignment-turbine-row {
    grid-template-columns: 1fr;
  }
  .wea365-assignment-task-actions {
    justify-content: flex-start;
  }
  .wea365-assignment-schedule-role,
  .wea365-assignment-schedule-actions {
    grid-column: auto;
    grid-row: auto;
  }
  .wea365-assignment-service-action {
    grid-template-columns: minmax(0, 1fr) minmax(108px, auto);
  }
  .wea365-assignment-unplanned-form {
    grid-template-columns: 1fr;
  }
  .wea365-assignment-unplanned-action .uk-button {
    width: 100%;
  }
  .wea365-assignment-turbine-row .uk-button {
    width: 100%;
  }
}

@media (max-width: 479px) {
  .wea365-assignment-task-actions,
  .wea365-assignment-task-actions form,
  .wea365-assignment-task-actions .uk-button {
    width: 100%;
  }
  .wea365-assignment-service-action {
    grid-template-columns: 1fr;
  }
  .wea365-assignment-service-action .uk-button,
  .wea365-assignment-service-action form {
    width: 100%;
  }
  .wea365-assignment-unplanned-form {
    padding: 14px;
  }
}

/* 0.8.153 / package 0.9.410: consistent mobile hierarchy for open-report cards. */
@media (max-width: 599px) {
  .wea365-assignment-task-row.is-report {
    align-items: start;
    gap: 12px;
    padding-top: 16px;
    padding-bottom: 16px;
  }

  .wea365-assignment-task-row.is-report .wea365-assignment-task-titleline {
    align-items: flex-start;
    gap: 6px 8px;
  }

  .wea365-assignment-task-row.is-report .wea365-assignment-task-titleline > strong {
    flex: 0 0 100%;
    font-size: 16px;
    line-height: 1.3;
  }

  .wea365-assignment-task-row.is-report .wea365-assignment-task-titleline .wea365-report-type-badge,
  .wea365-assignment-task-row.is-report .wea365-assignment-task-titleline .uk-label {
    margin: 0;
  }

  .wea365-assignment-task-row.is-report .wea365-assignment-task-meta {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 4px;
    margin-top: 8px;
  }

  .wea365-assignment-task-row.is-report .wea365-assignment-task-meta > span {
    display: block;
    min-width: 0;
  }

  .wea365-assignment-task-row.is-report .wea365-assignment-task-meta > span + span::before {
    content: none;
    margin: 0;
  }

  .wea365-assignment-task-row.is-report .wea365-assignment-task-actions {
    margin-top: 2px;
  }
}

/* 0.8.79 / package 0.9.270: clearer technician task hierarchy and roomier planned-assignment actions. */
.wea365-assignment-task-turbine {
  color: #1f2933;
  font-weight: 800;
}

@media (min-width: 1200px) {
  .wea365-assignment-schedule-row {
    grid-template-columns: minmax(160px, 190px) minmax(300px, 1fr) minmax(120px, 150px) minmax(260px, 340px);
    gap: 20px;
  }

  .wea365-assignment-service-action {
    grid-template-columns: minmax(110px, 1fr) auto;
    gap: 12px;
  }

  .wea365-assignment-service-action-name {
    overflow-wrap: normal;
    word-break: normal;
    hyphens: auto;
  }
}


/* WEA365 0.9.271: canonical shared design language.
   Shared primitives use one token set across component fallback views and
   YOOtheme bridge elements. Specialized controls may vary in layout/scale,
   but not invent their own typography, role colours or semantic status colours. */
.wea365-app,
.wea365-ui {
  --wea365-ds-font: inherit;
  --wea365-ds-text: var(--wea365-color-text);
  --wea365-ds-heading: var(--wea365-color-heading);
  --wea365-ds-muted: var(--wea365-color-muted);
  --wea365-ds-primary: var(--wea365-color-primary);
  --wea365-ds-primary-strong: var(--wea365-color-primary-strong);
  --wea365-ds-primary-soft: #e9f2fa;
  --wea365-ds-primary-soft-border: #c7d8e7;
  --wea365-ds-border: var(--wea365-color-border);
  --wea365-ds-surface: var(--wea365-color-white);
  --wea365-ds-surface-muted: #f5f7f9;
  --wea365-ds-neutral-soft: #eef2f5;
  --wea365-ds-neutral: #52606d;
  --wea365-ds-success: #4caf7d;
  --wea365-ds-success-soft: #e8f4ed;
  --wea365-ds-success-ink: #2f714d;
  --wea365-ds-warning: #f2b94b;
  --wea365-ds-warning-soft: #fff6df;
  --wea365-ds-warning-ink: #5b430f;
  --wea365-ds-danger: var(--wea365-color-danger);
  --wea365-ds-danger-soft: #fff0f3;
  --wea365-ds-danger-ink: #9f3043;
  --wea365-ds-font-control: .8125rem;
  --wea365-ds-font-meta: .8125rem;
  --wea365-ds-font-label: .75rem;
  --wea365-ds-font-chip: .6875rem;
  --wea365-ds-weight-medium: 600;
  --wea365-ds-weight-strong: 700;
  --wea365-ds-radius-control: 2px;
  --wea365-ds-radius-chip: 3px;
  --wea365-ds-chip-height: 24px;
}

/* Typography: YOOtheme remains the font-family source of truth. */
.wea365-app .uk-button,
.wea365-ui .uk-button,
.wea365-app .uk-input,
.wea365-ui .uk-input,
.wea365-app .uk-select,
.wea365-ui .uk-select,
.wea365-app .uk-textarea,
.wea365-ui .uk-textarea,
.wea365-app .uk-form-label,
.wea365-ui .uk-form-label,
.wea365-app .uk-label,
.wea365-ui .uk-label,
.wea365-app .uk-badge,
.wea365-ui .uk-badge {
  font-family: var(--wea365-ds-font) !important;
}

.wea365-app .uk-button,
.wea365-ui .uk-button {
  border-radius: var(--wea365-ds-radius-control) !important;
  font-size: var(--wea365-ds-font-control) !important;
  font-weight: var(--wea365-ds-weight-strong) !important;
  letter-spacing: .01em;
}

.wea365-app .uk-input,
.wea365-ui .uk-input,
.wea365-app .uk-select,
.wea365-ui .uk-select,
.wea365-app .uk-textarea,
.wea365-ui .uk-textarea {
  border-radius: var(--wea365-ds-radius-control) !important;
  font-size: .875rem;
  font-weight: 400;
}

.wea365-app .uk-form-label,
.wea365-ui .uk-form-label {
  font-size: var(--wea365-ds-font-label);
  font-weight: var(--wea365-ds-weight-medium);
  line-height: 1.35;
}

.wea365-app .uk-text-meta,
.wea365-ui .uk-text-meta,
.wea365-app .uk-text-muted,
.wea365-ui .uk-text-muted,
.wea365-app .text-muted,
.wea365-ui .text-muted {
  font-size: var(--wea365-ds-font-meta);
  line-height: 1.4;
}

/* Repeated structural field labels use one typographic hierarchy. */
.wea365-app .wea365-card-field-label,
.wea365-ui .wea365-card-field-label,
.wea365-app .wea365-maintenance-order-card-label,
.wea365-ui .wea365-maintenance-order-card-label,
.wea365-app .wea365-detail-grid-label,
.wea365-ui .wea365-detail-grid-label,
.wea365-app .wea365-turbine-row-label,
.wea365-ui .wea365-turbine-row-label,
.wea365-app .wea365-assignment-start-kicker,
.wea365-ui .wea365-assignment-start-kicker {
  font-size: var(--wea365-ds-font-chip) !important;
  font-weight: var(--wea365-ds-weight-strong) !important;
  line-height: 1.25 !important;
  letter-spacing: .045em !important;
  text-transform: uppercase;
}

/* Semantic status labels are one family everywhere. */
.wea365-app .uk-label,
.wea365-ui .uk-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--wea365-ds-chip-height);
  padding: 3px 8px;
  border: 1px solid transparent;
  border-radius: var(--wea365-ds-radius-chip) !important;
  background-color: var(--wea365-ds-primary) !important;
  color: var(--wea365-color-white) !important;
  font-size: var(--wea365-ds-font-chip) !important;
  font-weight: var(--wea365-ds-weight-strong) !important;
  line-height: 1.15 !important;
  letter-spacing: .025em;
  text-transform: uppercase;
}

.wea365-app .uk-label-success,
.wea365-ui .uk-label-success {
  background-color: var(--wea365-ds-success) !important;
  color: var(--wea365-color-white) !important;
}
.wea365-app .uk-label-warning,
.wea365-ui .uk-label-warning {
  background-color: var(--wea365-ds-warning) !important;
  color: var(--wea365-ds-warning-ink) !important;
}
.wea365-app .uk-label-danger,
.wea365-ui .uk-label-danger {
  background-color: var(--wea365-ds-danger) !important;
  color: var(--wea365-color-white) !important;
}

/* Numeric badges are counters, not status labels. */
.wea365-app .uk-badge,
.wea365-ui .uk-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border: 1px solid rgba(79,127,170,.22);
  border-radius: 999px !important;
  background-color: var(--wea365-ds-primary-soft) !important;
  color: var(--wea365-ds-primary-strong) !important;
  font-size: var(--wea365-ds-font-chip) !important;
  font-weight: var(--wea365-ds-weight-strong) !important;
  line-height: 1 !important;
}

/* Tabs deliberately invert only the active counter. */
.wea365-app .wea365-maintenance-tabs > li.uk-active > a .uk-badge,
.wea365-ui .wea365-maintenance-tabs > li.uk-active > a .uk-badge {
  border-color: var(--wea365-ds-primary) !important;
  background-color: var(--wea365-ds-primary) !important;
  color: var(--wea365-color-white) !important;
}

/* Roles are not success states. All lead/member role chips share one blue/neutral language. */
.wea365-app .wea365-maintenance-lead-badge,
.wea365-ui .wea365-maintenance-lead-badge,
.wea365-app .wea365-assignment-role-badge,
.wea365-ui .wea365-assignment-role-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: var(--wea365-ds-chip-height);
  padding: 3px 8px;
  border: 1px solid #dbe2e8 !important;
  border-radius: var(--wea365-ds-radius-chip) !important;
  background: var(--wea365-ds-neutral-soft) !important;
  color: var(--wea365-ds-neutral) !important;
  font-size: var(--wea365-ds-font-chip) !important;
  font-weight: var(--wea365-ds-weight-strong) !important;
  line-height: 1.15 !important;
  letter-spacing: .025em;
  text-transform: uppercase;
  white-space: nowrap;
}

.wea365-app .wea365-maintenance-lead-badge,
.wea365-ui .wea365-maintenance-lead-badge,
.wea365-app .wea365-assignment-role-badge.is-lead,
.wea365-ui .wea365-assignment-role-badge.is-lead {
  border-color: var(--wea365-ds-primary-soft-border) !important;
  background: var(--wea365-ds-primary-soft) !important;
  color: var(--wea365-ds-primary-strong) !important;
}

/* Action dropdowns use the same text hierarchy as other controls. */
.wea365-app .wea365-action-dropdown .uk-dropdown-nav > li > a,
.wea365-ui .wea365-action-dropdown .uk-dropdown-nav > li > a,
.wea365-app .wea365-action-dropdown .wea365-dropdown-action,
.wea365-ui .wea365-action-dropdown .wea365-dropdown-action {
  font-size: .875rem !important;
  font-weight: var(--wea365-ds-weight-medium);
  line-height: 1.35 !important;
}

/* WEA365 0.9.273: page-header subtitle selector fix plus cohesive assignment action blocks.
   Binding UI rule: repeated actions that belong to one assignment are presented as
   self-contained action units. The action label and its control stay visually and
   semantically together; on narrow screens each unit stacks and the control spans
   the available width. Page-header subtitles remain theme-aware but are never tiny
   low-contrast meta copy. */
.wea365-app .wea365-page-header .uk-text-meta,
.wea365-page-header.wea365-ui .uk-text-meta,
.wea365-ui .wea365-page-header .uk-text-meta {
  margin-top: 9px !important;
  margin-bottom: 0 !important;
  color: inherit !important;
  opacity: 1 !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  letter-spacing: .005em;
}

/* Dark YOOtheme card surfaces need an explicit high-contrast subtitle.
   The page-header element itself carries both wea365-ui and the card class,
   so this selector intentionally targets the same node rather than a descendant. */
.wea365-page-header.wea365-ui.uk-card-primary .uk-text-meta,
.wea365-page-header.wea365-ui.uk-card-secondary .uk-text-meta,
.wea365-page-header.wea365-ui.uk-light .uk-text-meta {
  color: rgba(255, 255, 255, .96) !important;
}

.wea365-app .wea365-assignment-schedule-actions,
.wea365-ui .wea365-assignment-schedule-actions {
  display: grid;
  gap: 9px;
  min-width: 0;
}

.wea365-app .wea365-assignment-service-action,
.wea365-ui .wea365-assignment-service-action {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 132px;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 8px 9px;
  border: 1px solid var(--wea365-ds-border, var(--wea365-color-border));
  border-radius: 4px;
  background: rgba(255, 255, 255, .74);
  box-sizing: border-box;
}

.wea365-app .wea365-assignment-service-action-name,
.wea365-ui .wea365-assignment-service-action-name {
  min-width: 0;
  color: var(--wea365-ds-heading, var(--wea365-color-heading));
  font-size: .8125rem;
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: break-word;
}

.wea365-app .wea365-assignment-service-action form,
.wea365-ui .wea365-assignment-service-action form,
.wea365-app .wea365-assignment-service-action .uk-button,
.wea365-ui .wea365-assignment-service-action .uk-button {
  width: 100%;
  min-width: 0;
  margin: 0;
}

@media (max-width: 799px) {
  .wea365-app .wea365-page-header .uk-text-meta,
  .wea365-page-header.wea365-ui .uk-text-meta,
  .wea365-ui .wea365-page-header .uk-text-meta {
    font-size: .9375rem !important;
    line-height: 1.5 !important;
  }

  .wea365-app .wea365-assignment-schedule-actions,
  .wea365-ui .wea365-assignment-schedule-actions {
    gap: 10px;
    width: 100%;
  }

  .wea365-app .wea365-assignment-service-action,
  .wea365-ui .wea365-assignment-service-action {
    grid-template-columns: 1fr;
    gap: 7px;
    width: 100%;
    padding: 10px;
  }

  .wea365-app .wea365-assignment-service-action-name,
  .wea365-ui .wea365-assignment-service-action-name {
    font-size: .8125rem;
  }

  .wea365-app .wea365-assignment-service-action form,
  .wea365-ui .wea365-assignment-service-action form,
  .wea365-app .wea365-assignment-service-action .uk-button,
  .wea365-ui .wea365-assignment-service-action .uk-button {
    width: 100%;
  }
}


/* WEA365 0.9.288: standalone rejection notice for the work-report builder.
   This is deliberately not part of the page header. It uses a quiet warning
   surface with dark ink so the reason stays legible regardless of the header
   card colour selected in YOOtheme. */
.wea365-ui .wea365-workreport-rejection-panel,
.wea365-app .wea365-workreport-rejection-panel {
  box-sizing: border-box;
  width: 100%;
  padding: 20px 22px;
  border: 1px solid #e5d7b4;
  border-left: 4px solid var(--wea365-ds-warning, #f2b94b);
  border-radius: 3px;
  background: var(--wea365-ds-warning-soft, #fff6df);
  color: var(--wea365-ds-text, var(--wea365-color-text));
}

.wea365-ui .wea365-workreport-rejection-title,
.wea365-app .wea365-workreport-rejection-title {
  margin: 0;
  color: var(--wea365-ds-heading, var(--wea365-color-heading)) !important;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.35;
}

.wea365-ui .wea365-workreport-rejection-meta,
.wea365-app .wea365-workreport-rejection-meta {
  margin: 7px 0 0;
  color: var(--wea365-ds-neutral, #52606d) !important;
  font-size: .875rem;
  line-height: 1.45;
}

.wea365-ui .wea365-workreport-rejection-reason,
.wea365-app .wea365-workreport-rejection-reason {
  margin-top: 16px;
  padding: 14px 16px;
  border: 1px solid #eadfc5;
  border-radius: 2px;
  background: var(--wea365-color-white);
  color: var(--wea365-ds-text, var(--wea365-color-text)) !important;
}

.wea365-ui .wea365-workreport-rejection-label,
.wea365-app .wea365-workreport-rejection-label {
  margin-bottom: 5px;
  color: var(--wea365-ds-heading, var(--wea365-color-heading)) !important;
  font-size: .75rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: .025em;
  text-transform: uppercase;
}

.wea365-ui .wea365-workreport-rejection-text,
.wea365-app .wea365-workreport-rejection-text {
  color: var(--wea365-ds-heading, var(--wea365-color-heading)) !important;
  font-size: .9375rem;
  font-weight: 500;
  line-height: 1.55;
}

@media (max-width: 639px) {
  .wea365-ui .wea365-workreport-rejection-panel,
  .wea365-app .wea365-workreport-rejection-panel {
    padding: 16px;
  }

  .wea365-ui .wea365-workreport-rejection-reason,
  .wea365-app .wea365-workreport-rejection-reason {
    padding: 12px 13px;
  }
}

/* WEA365 0.8.95 / pkg 0.9.292: calm, unambiguous reviewer decision area. */
.wea365-ui .wea365-review-decision-grid,
.wea365-app .wea365-review-decision-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  margin-top: 20px;
}

.wea365-ui .wea365-review-decision-card,
.wea365-app .wea365-review-decision-card {
  min-width: 0;
  padding: 20px;
  border: 1px solid var(--wea365-ds-border, var(--wea365-color-border));
  border-radius: 3px;
  background: var(--wea365-color-white);
  box-sizing: border-box;
}

.wea365-ui .wea365-review-decision-card-approve,
.wea365-app .wea365-review-decision-card-approve {
  border-top: 3px solid var(--wea365-ds-primary, var(--wea365-color-primary));
}

.wea365-ui .wea365-review-decision-card-reject,
.wea365-app .wea365-review-decision-card-reject {
  border-top: 3px solid var(--wea365-ds-danger, var(--wea365-color-danger));
}

.wea365-ui .wea365-review-decision-card .wea365-signature-form,
.wea365-app .wea365-review-decision-card .wea365-signature-form {
  margin-top: 0;
}

.wea365-ui .wea365-review-decision-card .wea365-signature-canvas-wrap,
.wea365-app .wea365-review-decision-card .wea365-signature-canvas-wrap {
  max-width: none;
}

.wea365-ui .wea365-review-decision-actions,
.wea365-app .wea365-review-decision-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 12px;
}

.wea365-ui .wea365-review-release,
.wea365-app .wea365-review-release {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 22px;
  padding: 14px 16px;
  border: 1px solid var(--wea365-ds-border, var(--wea365-color-border));
  border-radius: 3px;
  background: var(--wea365-ds-neutral-soft, #f5f7f9);
}

.wea365-ui .wea365-review-release > div,
.wea365-app .wea365-review-release > div {
  min-width: 0;
}

.wea365-ui .wea365-review-release form,
.wea365-app .wea365-review-release form {
  flex: 0 0 auto;
  margin: 0;
}

@media (max-width: 959px) {
  .wea365-ui .wea365-review-decision-grid,
  .wea365-app .wea365-review-decision-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 639px) {
  .wea365-ui .wea365-review-decision-card,
  .wea365-app .wea365-review-decision-card {
    padding: 16px;
  }

  .wea365-ui .wea365-review-decision-actions,
  .wea365-app .wea365-review-decision-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .wea365-ui .wea365-review-decision-actions .uk-button,
  .wea365-app .wea365-review-decision-actions .uk-button,
  .wea365-ui .wea365-review-decision-card-reject .uk-button,
  .wea365-app .wea365-review-decision-card-reject .uk-button,
  .wea365-ui .wea365-review-release .uk-button,
  .wea365-app .wea365-review-release .uk-button {
    width: 100%;
  }

  .wea365-ui .wea365-review-release,
  .wea365-app .wea365-review-release {
    align-items: stretch;
    flex-direction: column;
  }

  .wea365-ui .wea365-review-release form,
  .wea365-app .wea365-review-release form {
    width: 100%;
  }
}

/* WEA365 0.8.96 / pkg 0.9.293: report-review return action must stay legible on the primary button. */
.wea365-app a.uk-button-primary.wea365-review-back-button,
.wea365-ui a.uk-button-primary.wea365-review-back-button,
.wea365-app a.uk-button-primary.wea365-review-back-button:hover,
.wea365-ui a.uk-button-primary.wea365-review-back-button:hover,
.wea365-app a.uk-button-primary.wea365-review-back-button:focus,
.wea365-ui a.uk-button-primary.wea365-review-back-button:focus,
.wea365-app a.uk-button-primary.wea365-review-back-button *,
.wea365-ui a.uk-button-primary.wea365-review-back-button * {
  color: var(--wea365-color-white) !important;
}


/* WEA365 0.9.318: explicit editing-session controls. */
.wea365-edit-session-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px 18px;
  align-items: center;
  padding: 15px 16px;
  border: 1px solid rgba(37, 112, 79, .20);
  border-left: 4px solid #62a483;
  border-radius: 10px;
  background: linear-gradient(135deg, rgba(232, 246, 238, .88), rgba(255, 255, 255, .98));
  box-shadow: 0 5px 16px rgba(26, 63, 48, .06);
}
.wea365-edit-session-copy { min-width: 0; }
.wea365-edit-session-eyebrow {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 4px;
  color: #256d4f;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
}
.wea365-edit-session-eyebrow [uk-icon] { flex: 0 0 auto; }
.wea365-edit-session-owned { color: #18354d; font-weight: 650; line-height: 1.42; }
.wea365-edit-session-card .uk-text-meta { color: #63788a; }
.wea365-edit-session-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 8px 12px;
}
.wea365-edit-session-actions .uk-button { min-height: 44px; }
.wea365-edit-session-actions .wea365-edit-session-handoff {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 0;
}
.wea365-edit-session-card-bottom {
  margin-bottom: 0;
  border-left-width: 1px;
  background: linear-gradient(135deg, rgba(241, 248, 245, .92), rgba(255, 255, 255, .99));
  box-shadow: none;
}
.wea365-edit-session-warning {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px 16px;
  align-items: center;
  padding: 13px 14px;
  border: 1px solid rgba(183, 128, 35, .28);
  border-radius: 8px;
  background: #fff8e8;
}
.wea365-edit-session-warning[hidden] { display: none !important; }
.wea365-edit-session-warning-copy { display: flex; align-items: flex-start; gap: 10px; min-width: 0; color: #62450d; }
.wea365-edit-session-warning-copy > [uk-icon] { flex: 0 0 auto; margin-top: 1px; }
.wea365-edit-session-warning-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.wea365-edit-session-warning-actions .uk-button { min-height: 44px; }
@media (max-width: 767px) {
  .wea365-edit-session-card,
  .wea365-edit-session-warning { grid-template-columns: 1fr; }
  .wea365-edit-session-actions,
  .wea365-edit-session-warning-actions { justify-content: stretch; width: 100%; }
  .wea365-edit-session-actions .uk-button,
  .wea365-edit-session-warning-actions .uk-button { width: 100%; justify-content: center; }
  .wea365-edit-session-actions .wea365-edit-session-handoff { min-height: 44px; }
}


/* WEA365 0.9.319: resilient offline "Bearbeitung beenden" state. */
.wea365-edit-session-ending-offline {
  border-color: #ead9aa;
  background: linear-gradient(135deg, #fffdf7 0%, #fff9e9 100%);
}
.wea365-edit-session-ending-offline .wea365-edit-session-eyebrow {
  color: #775615;
}
.wea365-edit-session-ending-dot {
  display: inline-block;
  flex: 0 0 auto;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #d8a333;
  box-shadow: 0 0 0 4px rgba(216, 163, 51, .13);
}
.wea365-edit-session-ending-wait {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
  min-height: 44px;
  color: #6b5a35;
  font-size: 13px;
  font-weight: 650;
}
.wea365-edit-session-ending-spinner {
  width: 15px;
  height: 15px;
  flex: 0 0 auto;
  border: 2px solid rgba(119, 86, 21, .28);
  border-right-color: #9a7425;
  border-radius: 50%;
  animation: wea365-ending-spin 1s linear infinite;
}
[data-wea365-workreport-form][data-wea365-editing-ended-offline="1"] {
  opacity: .72;
}
@keyframes wea365-ending-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .wea365-edit-session-ending-spinner { animation: none; }
}
@media (max-width: 720px) {
  .wea365-edit-session-ending-wait {
    justify-content: flex-start;
    width: 100%;
  }
}

/* WEA365 0.9.322 / bridge 0.8.130: lock actions must always read as real buttons. */
[data-wea365-workreport-lock-banner] .uk-button,
[data-wea365-workreport-takeover-lock] {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* WEA365 0.9.322 / bridge 0.8.130: recovery UI for superseded offline edit sessions. */
.wea365-recovery-offcanvas { width: min(520px, 92vw); max-width: 92vw; padding: 28px; }
.wea365-recovery-conflict-card { margin: 18px 0; padding: 18px; border: 1px solid rgba(255,255,255,.18); border-radius: 12px; background: rgba(255,255,255,.06); }
.wea365-recovery-conflict-title { margin-bottom: 12px; font-weight: 700; line-height: 1.35; }
.wea365-recovery-values { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 10px; }
.wea365-recovery-value { min-width: 0; padding: 12px; border: 1px solid rgba(255,255,255,.14); border-radius: 9px; overflow-wrap: anywhere; }
.wea365-recovery-value strong { display: block; margin-bottom: 5px; font-size: .78rem; text-transform: uppercase; letter-spacing: .04em; }
.wea365-recovery-choice-actions, .wea365-recovery-footer { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.wea365-recovery-choice-actions .uk-button, .wea365-recovery-footer .uk-button { min-height: 44px; white-space: normal; }
.wea365-recovery-footer { position: sticky; bottom: -28px; margin: 24px -28px -28px; padding: 16px 28px 22px; background: inherit; border-top: 1px solid rgba(255,255,255,.16); }
@media (max-width: 639px) {
  .wea365-recovery-offcanvas { padding: 22px 18px; }
  .wea365-recovery-values { grid-template-columns: 1fr; }
  .wea365-recovery-choice-actions, .wea365-recovery-footer { flex-direction: column; }
  .wea365-recovery-choice-actions .uk-button, .wea365-recovery-footer .uk-button { width: 100%; }
  .wea365-recovery-footer { bottom: -22px; margin: 22px -18px -22px; padding: 14px 18px 18px; }
}

/* WEA365 package version label for placement below the logo in the YOOtheme header. */
.wea365-version-label {
    font-size: 10px;
    line-height: 1.2;
    letter-spacing: .02em;
    opacity: .68;
}


/* 0.8.138: the version module is a sibling of the YOOtheme logo. Its module
   wrapper must not become the containing block for the absolutely positioned
   label; otherwise "left: 0" means "left edge of the module beside the logo".
   Flatten that wrapper so the navbar group itself is the containing block. */
@supports selector(:has(*)) {
    .tm-header .uk-navbar-left:has(.wea365-version-label),
    .tm-header-mobile .uk-navbar-left:has(.wea365-version-label),
    .tm-header .uk-navbar-center:has(.wea365-version-label),
    .tm-header-mobile .uk-navbar-center:has(.wea365-version-label),
    .tm-header .uk-navbar-right:has(.wea365-version-label),
    .tm-header-mobile .uk-navbar-right:has(.wea365-version-label) {
        position: relative !important;
    }

    .tm-header .uk-navbar-left > *:has(.wea365-version-label),
    .tm-header-mobile .uk-navbar-left > *:has(.wea365-version-label),
    .tm-header .uk-navbar-center > *:has(.wea365-version-label),
    .tm-header-mobile .uk-navbar-center > *:has(.wea365-version-label),
    .tm-header .uk-navbar-right > *:has(.wea365-version-label),
    .tm-header-mobile .uk-navbar-right > *:has(.wea365-version-label) {
        display: contents !important;
        position: static !important;
    }

    .tm-header .uk-navbar-left:has(.wea365-version-label) .wea365-version-label,
    .tm-header-mobile .uk-navbar-left:has(.wea365-version-label) .wea365-version-label {
        position: absolute !important;
        left: 0 !important;
        bottom: 4px !important;
        margin: 0 !important;
        z-index: 2;
    }

    .tm-header .uk-navbar-center:has(.wea365-version-label) .wea365-version-label,
    .tm-header-mobile .uk-navbar-center:has(.wea365-version-label) .wea365-version-label {
        position: absolute !important;
        left: 50% !important;
        bottom: 4px !important;
        margin: 0 !important;
        transform: translateX(-50%) !important;
        z-index: 2;
    }

    .tm-header .uk-navbar-right:has(.wea365-version-label) .wea365-version-label,
    .tm-header-mobile .uk-navbar-right:has(.wea365-version-label) .wea365-version-label {
        position: absolute !important;
        right: 0 !important;
        bottom: 4px !important;
        margin: 0 !important;
        z-index: 2;
    }
}

/* 0.8.139: mobile header. The YOOtheme logo and the version module share one
   navbar group. Treat only a group that contains BOTH a real logo and the
   WEA365 version label as a two-row stack. This avoids touching unrelated
   mobile toggle/navigation groups. The module wrapper is already flattened by
   the 0.8.138 rule above. */
@media (max-width: 959px) {
  @supports selector(:has(*)) {
    .tm-header-mobile .uk-navbar-left:has(.uk-logo):has(.wea365-version-label),
    .tm-header-mobile .uk-navbar-center:has(.uk-logo):has(.wea365-version-label),
    .tm-header-mobile .uk-navbar-right:has(.uk-logo):has(.wea365-version-label) {
      display: grid !important;
      grid-template-columns: max-content !important;
      grid-template-rows: auto auto !important;
      justify-items: center !important;
      align-content: center !important;
      column-gap: 0 !important;
      row-gap: 2px !important;
    }

    .tm-header-mobile .uk-navbar-left:has(.uk-logo):has(.wea365-version-label) .wea365-version-label,
    .tm-header-mobile .uk-navbar-center:has(.uk-logo):has(.wea365-version-label) .wea365-version-label,
    .tm-header-mobile .uk-navbar-right:has(.uk-logo):has(.wea365-version-label) .wea365-version-label {
      position: static !important;
      grid-column: 1 !important;
      grid-row: 2 !important;
      justify-self: center !important;
      transform: none !important;
      margin: 0 !important;
      white-space: nowrap;
    }
  }
}

/* WEA365 0.9.400 / Bridge 0.8.161: operator reports become true cards on tablet and mobile. */
@media (max-width: 959px) {
  table.wea365-responsive-table.wea365-operator-reports-table,
  table.wea365-responsive-table.wea365-operator-reports-table tbody {
    display: block;
    width: 100%;
    min-width: 0 !important;
    max-width: 100%;
  }

  table.wea365-responsive-table.wea365-operator-reports-table thead {
    display: none;
  }

  table.wea365-responsive-table.wea365-operator-reports-table tbody {
    display: grid;
    gap: 14px;
  }

  table.wea365-responsive-table.wea365-operator-reports-table tr {
    display: block;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--wea365-card-border) !important;
    border-radius: var(--wea365-card-radius);
    background: transparent;
  }

  table.wea365-responsive-table.wea365-operator-reports-table td {
    display: block;
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 7px 0 !important;
    border: 0 !important;
    color: inherit;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }

  table.wea365-responsive-table.wea365-operator-reports-table td[data-label]::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 3px;
    font-size: .7rem;
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: .035em;
    text-transform: uppercase;
    opacity: .64;
  }

  table.wea365-responsive-table.wea365-operator-reports-table td.wea365-card-primary {
    padding-top: 0 !important;
    padding-bottom: 11px !important;
  }

  table.wea365-responsive-table.wea365-operator-reports-table td.wea365-card-primary::before {
    display: none;
  }

  table.wea365-responsive-table.wea365-operator-reports-table td.wea365-card-primary > strong {
    display: block;
    font-size: 1.05rem;
    line-height: 1.3;
  }

  table.wea365-responsive-table.wea365-operator-reports-table .wea365-report-identity {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 8px;
    align-items: center;
    margin-top: 7px;
  }

  table.wea365-responsive-table.wea365-operator-reports-table td.wea365-card-actions {
    position: static !important;
    inset: auto !important;
    margin-top: 7px;
    padding-top: 14px !important;
    border-top: 1px solid var(--wea365-card-border) !important;
  }

  table.wea365-responsive-table.wea365-operator-reports-table td.wea365-card-actions .uk-button {
    box-sizing: border-box;
    width: 100%;
    min-height: var(--wea365-control-min-height);
    margin: 0 !important;
    white-space: normal;
  }
}



/* WEA365 0.9.416 / Bridge 0.8.185: persistent offcanvas action docks stay fully opaque.
   Scrolling content must disappear behind the fixed action zone instead of shining through
   a gradient band above Save/Remove/Open controls. */
.wea365-offcanvas .wea365-sidepanel-actions,
[uk-offcanvas] .wea365-sidepanel-actions,
.wea365-offcanvas .wea365-offcanvas-actions,
[uk-offcanvas] .wea365-offcanvas-actions,
.wea365-offcanvas .wea365-dispatch-plan-actions {
  position: sticky;
  bottom: -1px;
  z-index: 24;
  margin-top: 24px;
  padding: 12px 0 calc(8px + env(safe-area-inset-bottom, 0px));
  background: var(--wea365-offcanvas-action-dock-bg, #002b50);
  border-top: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 -8px 18px rgba(0,0,0,.16);
}
.wea365-offcanvas .wea365-sidepanel-actions .uk-button,
[uk-offcanvas] .wea365-sidepanel-actions .uk-button,
.wea365-offcanvas .wea365-offcanvas-actions .uk-button,
[uk-offcanvas] .wea365-offcanvas-actions .uk-button {
  min-height: 44px;
}


/* WEA365 Bridge 0.8.173: tablet-landscape hardening for the YOOtheme settings workspace.
   YOOtheme's medium breakpoint can place several large settings elements in narrow
   side-by-side columns on tablets. Keep those columns stacked until the large
   breakpoint, then let the existing desktop composition take over. */
@media (max-width: 1199px) {
  .uk-grid > [class*="uk-width-"]:has(.wea365-settings-responsive-element) {
    width: 100% !important;
  }
}

/* Individual settings cards also adapt to their actual available width. This
   protects custom Builder layouts and avoids nested viewport breakpoints squeezing
   controls even on wider screens. */
.wea365-branding-company-element,
.wea365-branding-logo-element {
  container-type: inline-size;
}

@container (max-width: 620px) {
  .wea365-branding-company-element .wea365-settings-setup-entry {
    align-items: stretch;
    flex-direction: column;
  }

  .wea365-branding-company-element .wea365-settings-setup-entry .uk-button,
  .wea365-branding-logo-element .uk-button {
    width: 100%;
    max-width: 100%;
    white-space: normal;
  }

  .wea365-branding-company-element [data-wea365-branding-company-form] > .uk-grid > * {
    width: 100% !important;
  }

  .wea365-branding-logo-element [data-wea365-logo-meta] {
    overflow-wrap: anywhere;
  }
}


/* WEA365 Bridge 0.8.179: last-cascade guarantee for dispatch form-readiness alerts. */
.wea365-dispatch-form-readiness,
.wea365-dispatch-form-readiness > p,
.wea365-dispatch-form-readiness [data-wea365-create-form-readiness-text] {
  color: #34270d !important;
  -webkit-text-fill-color: #34270d !important;
  opacity: 1 !important;
}
.wea365-dispatch-form-readiness .uk-button-primary,
.wea365-dispatch-form-readiness .uk-button-primary *,
.wea365-dispatch-form-readiness .uk-button-primary svg {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* WEA365 Bridge 0.8.182: last-cascade guarantee for global sidepanel confirmation actions.
   Dynamic confirmation panels are appended directly to body and therefore do not inherit
   the normal .wea365-ui/.wea365-app button surfaces. */
body .wea365-offcanvas .uk-offcanvas-bar .uk-button-primary {
  background-color: var(--wea365-color-primary, #4f7faa) !important;
  border-color: var(--wea365-color-primary, #4f7faa) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body .wea365-offcanvas .uk-offcanvas-bar .uk-button-danger {
  background-color: var(--wea365-color-danger, #eb5570) !important;
  border-color: var(--wea365-color-danger, #eb5570) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
body .wea365-offcanvas .uk-offcanvas-bar .uk-button-primary *,
body .wea365-offcanvas .uk-offcanvas-bar .uk-button-danger *,
body .wea365-offcanvas .uk-offcanvas-bar .uk-button-primary svg,
body .wea365-offcanvas .uk-offcanvas-bar .uk-button-danger svg {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}


/* WEA365 Bridge 0.8.183: canonical destructive actions stay red in the late YOOtheme cascade. */
body .wea365-offcanvas .uk-offcanvas-bar .wea365-action-destructive,
.wea365-app .wea365-action-destructive,
.wea365-ui .wea365-action-destructive {
  background-color: var(--wea365-color-danger, #eb5570) !important;
  border-color: var(--wea365-color-danger, #eb5570) !important;
  color: #fff !important;
}
body .wea365-offcanvas .uk-offcanvas-bar .wea365-action-destructive *,
body .wea365-offcanvas .uk-offcanvas-bar .wea365-action-destructive svg,
.wea365-app .wea365-action-destructive *,
.wea365-ui .wea365-action-destructive * {
  color: #fff !important;
}

/* WEA365 Bridge 0.8.184: preserve line-icon SVG rendering for canonical red removal actions. */

/* Single selects retain the standard UIkit indicator on the shared light field surface. */
body .wea365-app select:not([multiple]):not([size]),
body .wea365-ui select:not([multiple]):not([size]),
body .wea365-offcanvas select:not([multiple]):not([size]),
body [data-wea365-leave] select:not([multiple]):not([size]) {
  appearance: none;
  -webkit-appearance: none;
  color-scheme: light;
  padding-right: 30px;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%2224%22%20height%3D%2216%22%20viewBox%3D%220%200%2024%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%22%20points%3D%2212%201%209%206%2015%206%22%20%2F%3E%0A%20%20%20%20%3Cpolygon%20fill%3D%22%23666%22%20points%3D%2212%2013%209%208%2015%208%22%20%2F%3E%0A%3C%2Fsvg%3E%0A") !important;
  background-repeat: no-repeat;
  background-position: right 5px center;
}
