/* X89: shared, compact search and status controls for communication and requests. */
.inbox-filter-panel[hidden]{display:none!important}
.inbox-filter-panel{
  min-width:0;
  max-width:100%;
  margin:0 0 10px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--theme-surface);
}
/* The filter trigger is a neutral toolbar control, not a primary action.
 * Dark theme's generic html[data-theme=dark] button rule otherwise wins
 * against .app-header-action by specificity and paints this button green.
 * Match the neutral settings link; the Plus remains --primary and accented.
 */
html[data-theme="dark"] button.inbox-filter-action{
  background:var(--theme-surface);
  border-color:var(--line);
  color:var(--ink);
}
@media(hover:hover) and (pointer:fine){
  html[data-theme="dark"] button.inbox-filter-action:hover{
    background:var(--theme-surface-soft);
    border-color:var(--line);
    color:var(--ink);
  }
}
.inbox-filter-panel input,.inbox-filter-panel select{box-sizing:border-box;max-width:100%}
.inbox-filter-panel .messages-filter-row{margin:0}
.inbox-filter-panel .messages-context-filter{margin:0}
.inbox-filter-panel .messages-context-filter select{width:100%;min-width:0;min-height:42px;margin:0;font-size:16px}
.inbox-filter-panel .messages-search-control{width:100%}
.inbox-filter-panel .messages-search-reset{margin-top:7px}

.inbox-status-tabs{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  max-width:100%;
  overflow-x:auto;
  padding:2px 0 8px;
  margin:0 0 10px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.inbox-status-tabs::-webkit-scrollbar{display:none}
.inbox-status-tabs a{
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  min-height:32px;
  padding:7px 12px;
  margin:0;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--theme-surface);
  color:var(--muted);
  font-size:12px;
  line-height:1.2;
  font-weight:650;
  text-decoration:none;
  white-space:nowrap;
}
.inbox-status-tabs a:hover{background:var(--theme-surface-soft);color:var(--ink)}
.inbox-status-tabs a.is-active,
.inbox-status-tabs a.is-active:hover,
.inbox-status-tabs a.is-active:focus-visible{
  background:var(--theme-selected);
  border-color:var(--theme-selected-border);
  color:var(--theme-selected-text);
}
.inbox-status-tabs a:focus-visible,.inbox-filter-action:focus-visible{
  outline:2px solid var(--theme-focus);
  outline-offset:2px;
}

.requests-page{max-width:900px;margin:0 auto;min-width:0}
.requests-page .user-request-card,.requests-page .request-empty,.requests-page .user-request-card.is-outgoing{max-width:100%}
.requests-page .request-page-head{display:none}
.requests-page .request-section-head{margin-top:4px}
.requests-page .request-outgoing,.requests-page .request-history{margin-top:24px}
.requests-page .inbox-filter-panel form{margin:0;min-width:0}
.inbox-request-search-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.inbox-request-search-control input[type="search"]{
  width:100%;min-width:0;min-height:42px;margin:0;
  padding:9px 12px;font-size:16px;
}
.inbox-request-search-control button{min-height:42px;margin:0}
.inbox-filter-fields{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:end;gap:10px;margin-top:10px;
}
.inbox-filter-fields label{display:grid;min-width:0;gap:4px;margin:0;font-size:12px;color:var(--muted)}
.inbox-filter-fields select{width:100%;min-width:0;min-height:42px;margin:0;font-size:16px}
.inbox-filter-footer{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px}
.inbox-filter-footer button{min-height:36px;margin:0}
.inbox-filter-footer a{font-size:13px}
.requests-page .request-demo-create{margin:0 0 10px}
.requests-page .request-demo-create button{min-height:36px;margin:0}
.requests-page .inbox-empty-state{padding:20px;border:1px dashed var(--line);border-radius:12px;color:var(--muted)}
.requests-page .inbox-empty-state p{margin:0}

@media(max-width:700px){
  .inbox-filter-panel{padding:10px}
  .inbox-filter-panel .messages-filter-row{grid-template-columns:minmax(0,1fr);gap:8px}
  .inbox-filter-fields{grid-template-columns:minmax(0,1fr)}
  .inbox-request-search-control{grid-template-columns:minmax(0,1fr) auto}
  .inbox-request-search-control button{padding-left:10px;padding-right:10px}
  .inbox-status-tabs{margin-bottom:8px}
}
