/* Consolidated October 1 walkthrough fixes. Hidden means hidden, even when
   older component styles explicitly set flex/grid display. */
[hidden] { display: none !important; }
.account-v33-header-actions { flex-wrap: wrap; gap: .75rem; }
.account-v33-header-actions .language-switch,
.account-v33-header-actions [data-language-switch] { position: static !important; }
.grocery-toolbar { align-items: end !important; }
.grocery-status-card { min-height: 46px; margin: 0 !important; box-sizing: border-box; }
.grocery-facility-selector select { min-height: 46px; }
.daily-history-list, .daily-awareness-list { display: grid; gap: .65rem; }
.daily-history-row, .daily-awareness-row { padding: .75rem; border: 1px solid #bfd7d9; border-radius: 8px; }
.daily-history-row a { display: inline-block; margin: .25rem .75rem .25rem 0; }
.daily-history-filters { display: flex; gap: .75rem; flex-wrap: wrap; align-items: end; margin: .75rem 0; }
.daily-history-filters label { display: grid; gap: .35rem; flex: 1 1 150px; min-width: 0; }
.daily-history-filters input, .daily-history-filters select { width: 100%; box-sizing: border-box; min-height: 42px; padding: .5rem; }
.daily-history-paging { display: flex; gap: .75rem; flex-wrap: wrap; margin: .75rem 0; }
.daily-category-entries { padding: .5rem 0; }
.daily-category-entries p { margin: .35rem 0; }
.calendar-edit-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.dashboard-user .button { white-space: nowrap !important; word-break: normal !important; overflow-wrap: normal !important; flex-shrink: 0; }
.dashboard-user { flex-wrap: wrap; }
@media screen {
  .dashboard-user > .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-height: 42px;
    padding: .5rem .85rem;
    margin: 0;
  }
}
/* Keep the identity together; never leave a lone action beside the name
   while the remaining actions wrap underneath it. */
@media screen and (max-width: 1100px) {
  .dashboard-nav { flex-wrap: wrap; }
  .dashboard-user {
    display: flex !important;
    width: 100%;
    max-width: 100%;
    align-items: center;
    gap: .5rem .65rem;
  }
  .dashboard-user::after {
    content: "";
    order: 1;
    flex: 0 0 100%;
    height: 0;
  }
  .dashboard-user > .user-avatar { order: 0; flex: 0 0 auto; }
  .dashboard-user > div {
    display: grid !important;
    order: 0;
    flex: 1 1 0 !important;
    min-width: 0;
    line-height: 1.25;
  }
  .dashboard-user > div strong,
  .dashboard-user > div small {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere !important;
  }
  .dashboard-user > .button,
  .dashboard-user > .portal-language-toggle {
    order: 2;
    flex: 0 0 auto;
    width: auto !important;
    min-height: 42px;
    margin: 0 !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: .5rem .85rem;
  }
}
.daily-clockout-shell { grid-template-rows: auto minmax(0, 1fr); }
.daily-clockout-body { min-height: 0; overscroll-behavior: contain; }
.daily-clockout-response input[type="radio"] {
  width: 18px !important; height: 18px !important; min-width: 18px !important;
  min-height: 18px !important; flex: 0 0 18px; padding: 0 !important;
  margin: 3px 0 0 !important; appearance: auto;
}
.daily-clockout-response label { cursor: pointer; }
.daily-clockout-response-buttons { flex-wrap: wrap; }
.daily-clockout-preview-entry { margin: 0 0 1rem; padding: 1rem; border: 1px solid #bfd7d9; border-radius: 12px; background: #f4f9f9; }
.daily-clockout-preview-entry p { margin: .5rem 0 0; font-size: .9rem; }
.daily-clockout-preview-notice { margin-bottom: 1rem; padding: .75rem; border: 2px solid #ba870d; border-radius: 8px; background: #fff7d9; color: #513c08; font-weight: 700; }
@media (max-width: 700px) {
  .dashboard-user { display: flex !important; width: 100%; gap: .5rem; align-items: center; }
  .dashboard-user > div { flex: 1 1 calc(100% - 52px); }
  .dashboard-user .button { width: auto !important; max-width: none !important; min-width: max-content !important; }
  .dashboard-user, .dashboard-nav, .account-v33-header-actions { flex-wrap: wrap !important; }
  .dashboard-user > *, .brand-copy, .portal-card, .button, button, label { min-width: 0; }
  .button, button, .brand-copy, .portal-card h3, .dashboard-user, .language-switch {
    word-break: normal !important; overflow-wrap: normal !important; hyphens: none;
  }
  .dashboard-user .button, .account-v33-header-actions .button { flex: 0 0 auto; white-space: nowrap; }
  .grocery-toolbar { display: grid !important; grid-template-columns: 1fr !important; gap: .75rem; }
}
@media screen and (max-width: 380px) {
  .dashboard-user > .button {
    flex: 1 1 calc(50% - .5rem) !important;
  }
}
@media print {
  .skip-link, .skip-to-content, a[href^="#"] { display: none !important; }
  .ceu-body .ceu-print-header { margin: 0 0 4px !important; padding: 0 0 4px !important; }
  .ceu-body .ceu-print-header h1 { font-size: 13pt !important; }
  .ceu-body .ceu-print-header img { width: 38px !important; height: 38px !important; }
  .ceu-body .ceu-metrics article { padding: 3px 5px !important; gap: 0 !important; }
  .ceu-body .ceu-metrics span, .ceu-body .ceu-metrics small { font-size: 7pt !important; line-height: 1.1 !important; }
  .ceu-body .ceu-metrics strong { font-size: 10pt !important; line-height: 1.1 !important; }
  .ceu-body .ceu-employee-heading { padding: 3px 0 !important; }
  .ceu-body .ceu-print-header p, .ceu-body .ceu-print-header strong { font-size: 8pt !important; }
  .ceu-body .ceu-eyebrow { font-size: 7pt !important; letter-spacing: .05em !important; margin: 0 !important; }
  .ceu-body .ceu-cycle-pill { padding: 3px 6px !important; font-size: 8pt !important; }
  .ceu-body .ceu-progress-panel { padding: 3px 0 !important; }
  .ceu-body .ceu-progress { height: 5px !important; }
  .ceu-body .ceu-section-heading { margin-bottom: 3px !important; }
  .ceu-body .ceu-required-card { border-radius: 3px; min-height: 0 !important; padding: 3px !important; }
  .ceu-body .ceu-required-card strong { font-size: 7pt !important; padding-right: 15px !important; }
  .ceu-body .ceu-required-card span { width: 12px; height: 12px; right: 2px; top: 2px; font-size: 7pt; }
  .ceu-body .ceu-table-wrap th, .ceu-body .ceu-table-wrap td { padding: 2px 3px !important; font-size: 7pt !important; line-height: 1.1 !important; }
  .ceu-body .ceu-table-wrap strong, .ceu-body .ceu-table-wrap small, .ceu-body .ceu-warning-tag { font-size: 7pt !important; margin: 0 !important; padding: 0 !important; line-height: 1.1 !important; }
  .ceu-body .ceu-table-wrap small { display: inline !important; margin-left: 4px !important; }
  .ceu-body { font-size: 8pt !important; }
  @page ceu-training { size: letter landscape; margin: .35in; }
  .ceu-body { page: ceu-training; }
  .ceu-print-header { padding-bottom: .2rem; margin-bottom: .25rem; gap: .5rem; }
  .ceu-print-header img { width: 38px; height: 38px; }
  .ceu-print-header h1 { font-size: 13pt; }
  .ceu-employee-heading { padding: .15rem 0; }
  .ceu-employee-heading h2, .ceu-section-heading h2 { font-size: 10pt !important; }
  .ceu-employee-heading p, .ceu-section-heading p { margin: .15rem 0; font-size: 7pt; }
  .ceu-metrics article { padding: .2rem .35rem; }
  .ceu-metrics strong { font-size: 11pt; }
  .ceu-required-section, .ceu-table-section, .ceu-progress-panel { padding: .25rem 0; }
  .ceu-section-heading { margin-bottom: .25rem; }
  .ceu-required-card { padding: .2rem .35rem; font-size: 7pt; }
  .ceu-table-wrap table { min-width: 0 !important; font-size: 7pt; }
  .ceu-table-wrap th, .ceu-table-wrap td { padding: .15rem .25rem; }
  .ceu-table-wrap tr, .ceu-required-card { break-inside: avoid; }
}
.daily-body-verification {margin:1.2rem 0;padding:1rem;border:1px solid #bad6de;border-radius:14px;background:#f4fafb;}
.daily-body-verification h4 {margin:0 0 .6rem;}
.daily-body-verification label {display:grid;gap:.35rem;margin:.65rem 0;}
.daily-body-verification select,.daily-body-verification textarea {width:100%;max-width:100%;box-sizing:border-box;}
.daily-body-mark {padding:.8rem 0;border-top:1px solid #d4e4e8;}
.daily-body-verification details {margin:.65rem 0;}
