/* HIS OPS 2.0 foundation: shared tokens, accessible states, and responsive actions. */
:root{
  --ops-space-1:.25rem;
  --ops-space-2:.5rem;
  --ops-space-3:.75rem;
  --ops-space-4:1rem;
  --ops-space-5:1.5rem;
  --ops-space-6:2rem;
  --ops-control-min:44px;
  --ops-action-max:22rem;
  --ops-focus:#0b73b8;
  --muted:#596b7d;
}

:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid var(--ops-focus)!important;
  outline-offset:3px!important;
}

button,.button-link,input,select,textarea,summary{min-height:var(--ops-control-min)}
button,.button-link{max-width:100%}

.ops-action-group{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),max-content));
  justify-content:start;
  gap:var(--ops-space-3);
}
.ops-action-group>button,.ops-action-group>.button-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  max-width:var(--ops-action-max);
  min-height:var(--ops-control-min);
  padding-inline:clamp(1rem,2vw,1.5rem);
  text-align:center;
}

.inbox-overview{margin:0 0 var(--ops-space-5)}
.inbox-overview-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--ops-space-4)}
.inbox-overview-head h3{margin:.15rem 0}
.inbox-search{display:block;max-width:32rem;margin:var(--ops-space-4) 0}
.inbox-search span{display:block;margin-bottom:var(--ops-space-2);font-weight:800}
.inbox-search input{width:100%;margin:0;padding:12px 14px;border:1px solid #b7c5d3;border-radius:11px;font:inherit}
.inbox-list{display:grid;gap:var(--ops-space-3)}
.inbox-item{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--ops-space-3);width:100%;min-height:72px;padding:14px;background:#fff;color:var(--ink);text-align:left}
.inbox-exception,.inbox-followup{overflow:hidden;border:1px solid #d7e1eb;border-left:5px solid #6b7d8e;border-radius:14px;background:#fff}
.inbox-exception[data-tone="critical"],.inbox-followup[data-tone="critical"]{border-left-color:#b42335}
.inbox-exception[data-tone="warning"],.inbox-followup[data-tone="warning"]{border-left-color:#a76d00}
.inbox-item-count{display:grid;place-items:center;min-width:38px;height:38px;padding:0 8px;border-radius:11px;background:#edf2f7;color:#173d68;font-weight:900}
.inbox-item-copy b,.inbox-item-copy small{display:block}
.inbox-item-copy small{margin-top:3px;color:var(--muted);font-weight:600}
.inbox-empty{padding:24px;border:1px dashed #b7c5d3;border-radius:14px;background:#f8fafc;text-align:center}
.inbox-setup-note{border-color:#d9a441;background:#fff9ea;text-align:left}
.inbox-followup{padding:16px}
.inbox-followup.is-overdue{background:#fff7f5;border-left-color:#b42335}
.inbox-followup.is-due-today{background:#fffaf0;border-left-color:#a76d00}
.inbox-followup.is-resolved{background:#f6faf8;border-left-color:#35845d}
.inbox-followup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ops-space-4)}
.inbox-followup-head h4{margin:.15rem 0 0;font-size:1.05rem}
.inbox-followup-head .eyebrow{margin:0}
.inbox-followup-detail{margin:.6rem 0;color:var(--muted)}
.followup-status{display:inline-flex;align-items:center;min-height:32px;padding:4px 10px;border-radius:999px;background:#edf2f7;color:#173d68;font-size:.78rem;font-weight:900;white-space:nowrap}
.followup-status[data-status="resolved"]{background:#e4f4eb;color:#17603e}
.followup-status[data-status="waiting"]{background:#fff0cc;color:#704900}
.followup-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--ops-space-3);margin:14px 0}
.followup-meta div{min-width:0}
.followup-meta dt{color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.followup-meta dd{margin:3px 0 0;font-weight:800;overflow-wrap:anywhere}
.inbox-followup-actions{padding:0 14px 14px}
.inbox-followup>.inbox-followup-actions{padding:0}
.followup-source-summary{display:grid;gap:4px;padding:12px;border-radius:11px;background:#edf2f7}
.followup-source-summary span{color:var(--muted)}
.operational-followup-dialog{width:min(92vw,36rem);max-width:calc(100vw - 2rem);overflow-x:hidden}
.manager-handoff-dialog{width:min(94vw,44rem);max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);overflow-x:hidden;overflow-y:auto}
.operational-followup-dialog form,.manager-handoff-dialog form{width:100%;min-width:0;max-width:100%}
.manager-handoff-dialog :is(label,select,textarea,.followup-source-summary,.modal-actions){min-width:0;max-width:100%}
.manager-handoff-dialog :is(select,textarea){width:100%}
.handoff-overview,.operational-timeline{margin:0 0 var(--ops-space-5)}
.handoff-list,.timeline-list{display:grid;gap:var(--ops-space-3);margin-top:var(--ops-space-4)}
.manager-handoff-card{padding:16px;border:1px solid #d7e1eb;border-left:5px solid #446b91;border-radius:14px;background:#fff}
.manager-handoff-card p{margin:.7rem 0;white-space:pre-wrap}
.handoff-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin:12px 0;color:var(--muted);font-size:.85rem;font-weight:700}
.handoff-risks{margin:12px 0;padding:12px;border-radius:11px;background:#f3f6f9}
.handoff-risks ul{display:grid;gap:8px;margin:8px 0 0;padding-left:20px}
.handoff-risks li span,.handoff-risks li small{display:block}
.handoff-risks li small{color:var(--muted);font-weight:700}
.handoff-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ops-space-3)}
.timeline-filters{display:grid;grid-template-columns:minmax(14rem,2fr) minmax(11rem,1fr) minmax(10rem,1fr);gap:var(--ops-space-3);margin-top:var(--ops-space-4)}
.timeline-filters label span{display:block;margin-bottom:var(--ops-space-2);font-weight:800}
.timeline-filters :is(input,select){width:100%;margin:0}
.timeline-event{display:grid;grid-template-columns:18px minmax(0,1fr);gap:12px}
.timeline-event-marker{position:relative;width:12px;height:12px;margin-top:18px;border:3px solid #fff;border-radius:50%;background:#446b91;box-shadow:0 0 0 2px #446b91}
.timeline-event:not(:last-child) .timeline-event-marker::after{content:"";position:absolute;top:14px;bottom:-100px;left:3px;width:2px;background:#c8d4df}
.timeline-event-body{position:relative;z-index:1;padding:14px 16px;border:1px solid #d7e1eb;border-radius:13px;background:#fff}
.timeline-event-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ops-space-3)}
.timeline-event-head h4{margin:.15rem 0;font-size:1rem}
.timeline-event-head .eyebrow{margin:0}
.timeline-event-head time{color:var(--muted);font-size:.8rem;font-weight:700;white-space:nowrap}
.timeline-event-body>p{margin:.65rem 0;white-space:pre-wrap}
.timeline-event-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--ops-space-3);color:var(--muted);font-size:.85rem;font-weight:700}

.view[aria-busy="true"]{cursor:progress}
.view-heading-focus:focus{outline:none!important}

@media(max-width:600px){
  .ops-action-group{grid-template-columns:1fr}
  .ops-action-group>button,.ops-action-group>.button-link{max-width:none}
  .inbox-overview-head{align-items:flex-start;flex-direction:column}
  .followup-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
    .inbox-followup-head{flex-direction:column}
    .timeline-filters,.handoff-form-grid{grid-template-columns:1fr}
    .timeline-event-head,.timeline-event-footer{align-items:flex-start;flex-direction:column}
    .timeline-event-head time{white-space:normal}
  }

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

@media(forced-colors:active){
  button,.button-link,.inbox-item,.inbox-exception,.inbox-followup,.manager-handoff-card,.timeline-event-body{border:1px solid ButtonText}
  :where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline-color:Highlight!important}
}
