/* Shared interaction polish. Preserve handlers, validation and visible warnings. */
@layer overrides {
  :root { --experience-touch:44px; }
  button { box-shadow:none; }
  button:focus-visible,summary:focus-visible,a:focus-visible {
    outline:2px solid var(--accent);outline-offset:3px;
  }
  :is(input,select,textarea,button) { max-width:100%; }
  :is(.toolbar,.form-heading,.form-footer,.catalog-purchase-header) { gap:var(--s-2); }
  :is(.toolbar,.form-heading,.form-footer) { flex-wrap:wrap; }
  :is(.form-columns,.toolbar)>* { min-width:0; }
  :is(.order-modal,.catalog-modal,.grid-wrap,.finance-scroll) { overscroll-behavior:contain; }
  :is(.order-modal,.catalog-modal) { max-height:calc(100dvh - 32px); }
  :is(.card-note,.inline-help,.muted) { line-height:1.55; }
  :is(.inline-help,.catalog-more)>summary { padding-block:var(--s-2);cursor:pointer; }
  :is(.order-grid,.finance-scroll table) :is(td,th) { vertical-align:top; }
  :is(.order-grid,.finance-scroll table) td { overflow-wrap:anywhere; }
  :is(.order-grid,.finance-scroll table) td button { white-space:normal; }
  @media(pointer:coarse) {
    button,summary { min-height:var(--experience-touch); }
    input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea { min-height:var(--experience-touch);font-size:16px; }
  }
  @media(prefers-reduced-motion:reduce) {
    *,*::before,*::after { scroll-behavior:auto!important;animation:none!important;transition:none!important; }
  }
}
/* Existing mobile sheets are unlayered: keep these overrides equally scoped. */
.m3 { --m3-bg:var(--bg-canvas);--m3-ink:var(--text);--m3-muted:var(--text-2);--m3-line:var(--line);--m3-brand:var(--accent);--m3-brand-soft:var(--accent-soft); }
body:has(.m3),.m3 .m3-head { background:var(--bg-canvas); }
.m3 :is(.m3-tile,.m3-todos button,.m3-order,.mobile-monthly,.mobile-settings) { border-radius:12px; }
.m3 .m3-tiles-common { grid-template-columns:repeat(3,minmax(0,1fr));gap:8px; }
.m3 .m3-tiles-common .m3-tile { min-height:92px;font-size:15px;gap:8px;padding:8px 4px; }
.m3 .m3-business-more { margin-top:16px; }
.m3 :is(.m3-business-more,.mobile-account-help)>summary { min-height:48px;display:flex;align-items:center;color:var(--m3-muted);cursor:pointer; }
.m3 .m3-business-more .m3-tiles { margin-top:8px; }
.m3 .m3-business-more .m3-tile { min-height:88px; }
.m3 .mobile-page-intro h2 { margin:0 0 6px;font-size:16px;color:var(--m3-muted); }
.m3 .mobile-account-help p { font-size:14px;line-height:1.6; }
.m3 :is(button,summary):focus-visible { outline:2px solid var(--accent);outline-offset:2px; }
.m3 :is(button,.m3-order,.m3-tile,.m3-action):active { transform:none; }
.m3 :is(input,select,textarea),.m3-step :is(input,select,textarea) { scroll-margin-block:16px; }
.m3 :is(.mobile-search,.m3-search)>input { min-width:0; }

/* Astra visual review: calm task counts, readable account details, natural table height. */
.m3 .m3-todos button.is-hot b{color:var(--m3-ink)}
.m3 .mobile-page-intro{padding-block:8px}
.m3 .mobile-page-intro p{margin-top:6px;font-size:15px;line-height:1.5;color:var(--m3-ink)}
.m3 :is(.mobile-monthly,.mobile-settings) p,.m3 .mobile-update small{font-size:13px;line-height:1.5;color:var(--m3-muted)}
@layer overrides{
  .workspace .products-grid.scroll-viewport{min-height:0}
}

/* Commercial ERP walkthrough: actions first, supporting facts on demand. */
@layer overrides {
  .workspace .overview-grid { align-items:start; }
  .workspace .trend-plot { flex:none; height:254px; min-height:254px; }
  .workspace :is(.aging-detail,.aging-facts,.drawer-information,.history-tools)>summary {
    cursor:pointer; min-height:40px; padding:10px 12px; font-weight:var(--fw-medium);
    color:var(--text-2); border-radius:var(--r-md); background:var(--bg-hover);
  }
  .workspace :is(.aging-detail,.aging-facts,.drawer-information,.history-tools)>summary:hover { background:var(--bg-press); }
  .workspace :is(.aging-detail,.aging-facts,.drawer-information,.history-tools)>summary:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
  .workspace .aging { gap:8px; }
  .workspace :is(.aging-detail,.aging-facts) { border-top:1px solid var(--line-soft); margin-top:0; padding-top:0; }
  .workspace :is(.aging-detail,.aging-facts)>summary { min-height:32px; padding:8px 4px; background:transparent; }
  .workspace .aging-facts-head { margin-top:12px; }
  .workspace .history-tools { margin:0 0 16px; }
  .workspace .history-tools>summary { background:transparent; width:fit-content; color:var(--text-3); padding-inline:0 12px; }
  .workspace .history-tools .history-hint { margin:4px 0 0; }
  .workspace .drawer-information { margin:20px 0; border:1px solid var(--line); border-radius:var(--r-md); }
  .workspace .drawer-information .field-grid { padding:0 12px 12px; }
  .workspace .drawer .fulfillment { margin-top:16px; padding-top:16px; }
  .workspace .drawer .order-stage-nav { gap:8px; }
  .workspace .drawer .order-stage-nav button { min-height:62px; border-color:var(--line-strong); background:var(--bg-surface); }
  .workspace .drawer .order-stage-nav button:hover { border-color:var(--accent); background:var(--bg-selected); }
  .workspace .drawer .order-stage-nav button[aria-pressed=true] { border-color:var(--accent); background:var(--bg-selected); color:var(--accent); box-shadow:inset 0 -3px 0 var(--accent); }
}
