/* Compact controls shared by settings, wallets and case workspace. */
.sidebar { z-index: 20; }
.navigation-icon { display: block; width: 20px; height: 20px; flex: 0 0 20px; }
.sidebar nav .navigation-icon { color: #8b9699; }
.sidebar nav a[aria-current=page] .navigation-icon { color: #347258; }
.logout .navigation-icon { margin: auto; }
.sidebar-toggle { display: grid; place-items: center; width: 36px; height: 36px; padding: 0; margin: 0 0 16px 8px; border: 1px solid var(--line); border-radius: 8px; background: white; color: var(--green); }
.sidebar-toggle[hidden] { display: none; }
.sidebar .brand-mark { flex-shrink: 0; }
.sidebar nav .nav-text { width: auto; color: inherit; font: inherit; text-align: left; white-space: nowrap; }
@media (min-width: 651px) {
  .sidebar-collapsed .main { margin-left: 76px; }
  .sidebar-collapsed .sidebar { width: 76px; padding-inline: 10px; }
  .sidebar-collapsed .sidebar:not(.sidebar-peek):not(:has(nav :focus-visible, .sidebar-bottom :focus-visible)) .brand-label,
  .sidebar-collapsed .sidebar:not(.sidebar-peek):not(:has(nav :focus-visible, .sidebar-bottom :focus-visible)) .user-label,
  .sidebar-collapsed .sidebar:not(.sidebar-peek):not(:has(nav :focus-visible, .sidebar-bottom :focus-visible)) .avatar { display: none; }
  .sidebar-collapsed .sidebar .workspace-chip { width: calc(var(--sidebar) - 46px); white-space: nowrap; }
  .sidebar-collapsed .sidebar .nav-label { white-space: nowrap; }
  .sidebar-collapsed .sidebar:not(.sidebar-peek):not(:has(nav :focus-visible, .sidebar-bottom :focus-visible)) .workspace-chip,
  .sidebar-collapsed .sidebar:not(.sidebar-peek):not(:has(nav :focus-visible, .sidebar-bottom :focus-visible)) .nav-label { visibility: hidden; }
  .sidebar-collapsed .sidebar:not(.sidebar-peek):not(:has(nav :focus-visible, .sidebar-bottom :focus-visible)) .nav-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .sidebar-collapsed .sidebar.sidebar-peek, .sidebar-collapsed .sidebar:has(nav :focus-visible, .sidebar-bottom :focus-visible) { width: var(--sidebar); box-shadow: 12px 0 30px #172b2914; }
  .sidebar-collapsed .sidebar-bottom form { margin: 0 auto; }
}
.settings-page { display: grid; gap: 18px; }
.settings-page .panel { padding: 20px; }
.settings-page h2, .case-layout h2 { margin-bottom: 12px; font-size: 16px; }
.settings-jumps { display: flex; gap: 20px; flex-wrap: wrap; margin-bottom: 18px; }
.settings-jumps a { color: var(--green); font-size: 13px; }
.settings-page section { scroll-margin-top: 16px; }
.settings-providers { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.settings-providers article { min-width: 0; }
.settings-providers p { margin: 8px 0; font-size: 13px; }
.settings-providers .badge { font-size: 11px; }
.settings-help { color: #63736f; font-size: 12px; margin: 8px 0 14px; }
.provider-account-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,280px),1fr)); gap: 12px 20px; }
.provider-account-grid input, .provider-account-grid select { width: 100%; }
.proxy-order { display: grid; grid-template-columns: minmax(200px, 320px) 1fr; gap: 18px; align-items: end; margin: 18px 0; }
.settings-page label { display: grid; gap: 6px; font-size: 12px; color: #526560; min-width: 0; }
.settings-page input, .settings-page select { font-size: 14px; min-height: 40px; }
.settings-page .proxy-route { margin: 0 0 10px; padding: 14px; border: 1px solid var(--line); border-radius: 9px; min-width: 0; }
.proxy-route legend { padding: 0 5px; font-size: 12px; color: #63736f; }
.settings-page .proxy-grid { grid-template-columns: minmax(140px,1fr) 90px minmax(180px,1.6fr) auto; align-items: start; margin: 0; }
.settings-page .proxy-grid input { margin: 0; }
.settings-page .proxy-enable { display: flex; align-items: center; gap: 7px; padding-top: 28px; min-height: 40px; }
.settings-page input[type=checkbox], .wallet-bulk input[type=checkbox] { width: 17px; height: 17px; min-height: 0; margin: 0; flex-shrink: 0; }
.route-summary { margin: 12px 0; display: flex; flex-wrap: wrap; gap: 8px; }
.route-summary span { font-size: 12px; background: var(--green-soft); border-radius: 5px; padding: 5px 9px; }
.settings-mail { display: flex; justify-content: space-between; gap: 20px; align-items: center; }
.settings-mail p { max-width: 640px; margin-bottom: 0; }
.settings-mail .form-actions { flex-shrink: 0; align-items: center; flex-direction: column; }
.wallet-filters.compact-wallet-filters { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; padding: 14px 18px; border-top: 1px solid var(--line); }
.compact-wallet-filters label { min-width: 0; font-size: 12px; color: #526560; display: grid; gap: 4px; }
.compact-wallet-filters input, .compact-wallet-filters select { font-size: 13px; padding: 8px 10px; min-height: 38px; }
.compact-wallet-filters .filter-search { grid-column: span 2; }
.compact-wallet-filters .filter-actions { display: flex; gap: 12px; align-items: end; flex-wrap: wrap; }
.wallet-bulk { display: block; background: #f5f8f6; }
.wallet-bulk > div { align-items: center; gap: 12px; }
.wallet-bulk > div + div { margin-top: 14px; align-items: end; }
.wallet-bulk label, .wallet-bulk span, .wallet-bulk select, .wallet-bulk button { font-size: 13px; }
.wallet-bulk label { color: #526560; }
.wallet-bulk > div:first-child label { display: flex; align-items: center; gap: 8px; }
.wallet-bulk select { min-width: 0; max-width: 100%; padding: 8px 10px; }
.wallet-bulk .button { min-height: 38px; padding: 8px 12px; white-space: normal; }
.wallet-card .full-address { white-space: normal; overflow-wrap: anywhere; font-size: 12px; }
.wallet-card-title .text-link { font-size: 14px; }
.wallet-unchecked, .wallet-balances small { font-size: 12px; }
.case-layout { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0,1fr); gap: 18px; margin-top: 18px; }
.case-layout .panel { padding: 18px; }
.case-layout .case-wide { grid-column: 1 / -1; }
.case-layout p { font-size: 13px; margin-bottom: 10px; }
.case-status { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.case-status h2 { margin-bottom: 4px; }
.case-status .notice { margin: 10px 0 0; }
.case-history { display: grid; gap: 8px; padding-left: 18px; font-size: 13px; }
.case-history time { color: var(--muted); margin-right: 10px; }
.case-report-row, .case-contact { padding: 10px 0; border-bottom: 1px solid var(--line); }
.case-report-row:last-child, .case-contact:last-child { border: 0; }
.case-report-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.case-report-row .form-actions { gap: 14px; }
.case-contact p { margin: 4px 0; overflow-wrap: anywhere; }
.case-heading .full-address { white-space: normal; font-size: 12px; }
.case-resource-links { display: flex; flex-wrap: wrap; gap: 18px; }
.case-tabs, .case-subnav { display: flex; flex-wrap: wrap; gap: 6px; margin: 16px 0; }
.case-tabs a, .case-subnav a { font-size: 13px; padding: 9px 13px; margin: 0; }
.case-subnav a { color: var(--green); border-radius: 7px; }
.case-subnav a[aria-current=page], .case-version-list a[aria-current=true] { background: var(--green-soft); color: #194d3f; }
.case-version-list { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.case-version-list a { padding: 7px 10px; border: 1px solid var(--line); border-radius: 6px; }
.case-file-form { display: flex; align-items: end; gap: 12px; margin: 18px 0; }
.case-file-form label { min-width: 0; flex: 1; font-size: 13px; }
.case-file-form select { display: block; margin-top: 4px; }
.case-source { max-height: 65vh; overflow: auto; white-space: pre; }
.case-identity { font-size: 12px; color: var(--muted); overflow-wrap: anywhere; margin-top: 16px; }
.severity-summary { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.severity { display: inline-flex; gap: 12px; align-items: center; padding: 5px 9px; border-radius: 6px; font-size: 12px; color: #526560; background: #edf1ef; }
.severity-critical { color: #8b1730; background: #fbe8ed; }
.severity-high { color: #a13a19; background: #fff0e8; }
.severity-medium { color: #785719; background: #fcf3d9; }
.severity-low { color: #295a81; background: #eaf3fb; }
.case-analysis-help { margin: 0; padding: 0 20px 16px; color: var(--muted); font-size: 12px; line-height: 1.5; }
.case-severities { display: flex; flex-wrap: wrap; gap: 5px; min-width: 150px; max-width: 235px; }
.case-severities .severity { gap: 7px; padding: 4px 7px; font-size: 11px; }
.case-solidity { margin-top: 7px; white-space: nowrap; font-size: 12px; }
.cases-table .case-meta .hash { white-space: nowrap; }
@media (max-width: 1000px) {
  .settings-providers { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .settings-mail { align-items: start; flex-direction: column; }
  .settings-mail .form-actions { align-items: start; }
  .settings-page .proxy-grid { grid-template-columns: minmax(0,1fr) 85px; }
  .settings-page .proxy-grid .proxy-connection { grid-column: 1; }
  .case-layout { grid-template-columns: 1fr; }
}
@media (max-width: 650px) {
  .settings-providers { grid-template-columns: 1fr; }
  .settings-providers article + article { border-top: 1px solid var(--line); padding-top: 14px; }
  .sidebar { position: relative; padding: 12px 16px; }
  .sidebar .brand { margin-right: 80px; }
  .sidebar-toggle { position: absolute; right: 48px; top: 10px; margin: 0; }
  .sidebar-bottom { top: 10px; right: 12px; }
  .sidebar nav { flex-wrap: wrap; }
  .sidebar nav a { min-height: 40px; }
  .mobile-menu-closed .sidebar nav { display: none; }
  .settings-page .panel { padding: 16px; }
  .proxy-order { grid-template-columns: 1fr; gap: 0; }
  .wallet-filters.compact-wallet-filters { grid-template-columns: repeat(2,minmax(0,1fr)); padding: 12px; }
  .compact-wallet-filters .filter-search { grid-column: 1 / -1; }
  .wallet-bulk > div + div { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
  .wallet-bulk > div + div > label:first-child { grid-column: 1 / -1; }
  .wallet-bulk > div + div > label:nth-child(2) { grid-column: 1 / -1; }
  .case-status { flex-direction: column; align-items: start; }
}

.service-settings { border-top: 1px solid var(--border, #dce4df); padding: 16px 0; }
.service-settings > summary { cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 36px; }
.service-settings > summary::after { content: '+'; flex: 0 0 auto; }
.service-settings[open] > summary::after { content: '−'; }
.service-settings > p { color: var(--muted, #697d79); font-size: .9rem; }
.proxy-editor-grid { display: grid; grid-template-columns: minmax(0,2fr) minmax(100px,1fr); gap: 12px; padding: 16px 0; }
.proxy-editor-grid label { display: grid; gap: 6px; min-width: 0; }
.proxy-editor-grid input, .service-settings input { max-width: 100%; min-width: 0; }
.settings-probe { margin-top: 12px; }
.seed-download { min-width: 64px; white-space: nowrap; }
@media (max-width: 600px) {
  .service-settings > summary { flex-wrap: wrap; }
  .proxy-editor-grid { grid-template-columns: minmax(0,1fr); }
  .settings-page .badge { white-space: normal; }
}
.delivery-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;padding:0;list-style:none}.delivery-flow li{border-left:3px solid #438168;padding-left:1rem}.disclosure-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem;border-top:1px solid #dce3e1;overflow-wrap:anywhere}@media(max-width:700px){.delivery-flow,.disclosure-summary{grid-template-columns:1fr}}
