/* Scoped layout repairs, loaded after each panel's branding styles. */
.db-bot-grid > .card, .db-mid-grid > .card { min-width: 0; }
.db-recent-sms { display: grid; gap: 10px; padding: 14px; }
.db-sms-item { min-width: 0; padding: 12px; border: 1px solid var(--border); border-radius: 12px; background: var(--bg-page); }
.db-sms-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; min-width: 0; }
.db-sms-meta code { overflow-wrap: anywhere; }
.db-sms-meta time { margin-left: auto; font-size: 11px; color: var(--text-secondary); }
.db-sms-message { margin-top: 10px; min-width: 0; }
.db-sms-message summary { cursor: pointer; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 10px; align-items: start; border-radius: 6px; }
.db-sms-message summary:focus-visible { outline: 2px solid var(--primary); outline-offset: 4px; }
.db-sms-preview { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; overflow-wrap: anywhere; line-height: 1.6; font-size: 12px; }
.db-sms-expand { font-size: 11px; color: var(--primary); font-weight: 700; }
.db-sms-close-label { display: none; }
.db-sms-message[open] .db-sms-preview, .db-sms-message[open] .db-sms-open-label { display: none; }
.db-sms-message[open] .db-sms-close-label { display: inline; }
.db-sms-full { padding-top: 10px; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 13px; line-height: 1.7; }
.http-workspace, .http-workspace * { box-sizing: border-box; }
.http-workspace { display: flex; flex-direction: column; gap: 20px; width: 100%; min-width: 0; }
.http-workspace .card, .http-workspace .card-body, .http-workspace .card-body > div { min-width: 0; max-width: 100%; }
.http-workspace .card-header { flex-wrap: wrap; }
.http-workspace .card-title { overflow-wrap: anywhere; min-width: 0; }
.http-workspace .http-table-scroll { overflow-x: auto; max-width: 100%; min-width: 0; overscroll-behavior-x: contain; -webkit-overflow-scrolling: touch; border: 1px solid var(--border); border-radius: 10px; }
.http-workspace .http-table-scroll:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
.http-workspace .fly-table { width: 100%; min-width: 520px; }
.http-workspace .fly-table td { white-space: normal; overflow-wrap: anywhere; vertical-align: top; }
.http-workspace .http-aliases { display: flex; flex-wrap: wrap; gap: 6px; }
.http-workspace code:not(pre code) { overflow-wrap: anywhere; white-space: normal; min-width: 0; }
.http-workspace pre { width: 100%; max-width: 100%; min-width: 0; overflow: auto; }
.http-guide-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(220px,100%),1fr)); gap: 14px; }
.http-test-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.http-workspace .fly-input { min-width: 0; max-width: 100%; }
.auth-page-login .auth-card-login { width: min(940px,100%); min-height: 0; }
.auth-page-login .auth-cover-login { min-height: 0; width: 42%; padding: 28px; }
.auth-page-login .auth-form-login { min-height: 0; min-width: 0; padding: 30px!important; }
.auth-page-login .auth-login-inner { width: 100%; margin: auto; }
.auth-page-login .auth-cover-copy { margin-block: 14px; }
.auth-page-login .auth-input-wrap { min-width: 0; }
.auth-page-login .auth-input { min-width: 0; width: 100%; }
@media (max-width: 1199px) {
  .asp-dashboard-view .db-bot-grid { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 900px) {
  .auth-page-login .auth-card-login { width: min(520px,100%); }
  .auth-page-login .auth-cover-login { width: 100%; padding: 18px; }
  .auth-page-login .auth-cover-copy, .auth-page-login .auth-feature-list { display: none; }
  .auth-page-login .auth-form-login { padding: 24px!important; }
}
@media (max-width: 600px) {
  .http-test-grid { grid-template-columns: minmax(0,1fr); }
  .http-workspace .card-body { padding: 14px!important; }
  .db-sms-message summary { grid-template-columns: minmax(0,1fr); }
  .db-sms-meta time { width: 100%; margin-left: 0; }
  .auth-page-login .auth-form-login { padding: 20px 16px!important; }
}
@media (max-height: 760px) and (min-width: 901px) {
  .auth-page-login .auth-cover-copy, .auth-page-login .auth-feature-list { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .auth-page-login *, .db-recent-sms * { animation: none!important; transition: none!important; }
}

/* Searchable revoke selectors use the same visible selection pattern as bulk allocation. */
.revoke-picker-list{display:grid;gap:6px;max-height:230px;margin-top:8px;padding:7px;overflow:auto;border:1px solid var(--border);border-radius:12px;background:var(--bg-page)}
.revoke-picker-list.is-disabled{min-height:58px;opacity:.78}.revoke-picker-item{display:grid;grid-template-columns:34px minmax(0,1fr) 24px;align-items:center;gap:10px;width:100%;padding:9px 10px;color:var(--text-primary);text-align:left;background:var(--bg-card);border:1.5px solid transparent;border-radius:9px;cursor:pointer}.revoke-picker-item:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}.revoke-picker-item.selected{background:color-mix(in srgb,var(--primary) 8%,var(--bg-card));border-color:var(--primary)}.revoke-picker-item>span:nth-child(2){min-width:0}.revoke-picker-item strong,.revoke-picker-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.revoke-picker-item strong{font-size:13px}.revoke-picker-item small{margin-top:3px;color:var(--text-secondary);font-size:11px}.revoke-picker-avatar{display:grid;place-items:center;width:32px;height:32px;color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,#fff);border-radius:9px;font-size:12px;font-weight:800}.revoke-picker-check{display:grid;place-items:center;color:transparent}.revoke-picker-check svg{width:15px}.revoke-picker-item.selected .revoke-picker-check{color:var(--primary)}.revoke-picker-item.range{grid-template-columns:18px minmax(0,1fr) 24px}.revoke-picker-item.range input{width:16px;height:16px;margin:0;accent-color:var(--primary)}.revoke-picker-empty{padding:14px;color:var(--text-secondary);text-align:center;font-size:12px}.revoke-selected{display:flex;align-items:center;gap:9px;margin-top:8px;padding:9px 11px;color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--bg-card));border:1px solid color-mix(in srgb,var(--primary) 35%,var(--border));border-radius:10px}.revoke-selected[hidden]{display:none}.revoke-selected>svg{width:18px}.revoke-selected strong,.revoke-selected small{display:block}.revoke-selected small{margin-top:2px;color:var(--text-secondary);font-size:10px}
@media(max-width:640px){.revoke-picker-list{max-height:200px}.revoke-picker-item{padding:9px 8px}}
