    .bot-alert-layout {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 8px;
      align-items: stretch;
    }
    .bot-alert-form {
      min-width: 0;
      border: 1px solid rgba(255, 255, 255, 0.065);
      border-radius: 8px;
      background: var(--panel2);
      padding: 8px;
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 8px;
      align-items: end;
      align-content: stretch;
    }
    .bot-alert-watchdog {
      grid-template-columns: minmax(0, 1fr);
      grid-template-rows: auto 1fr auto;
    }
    .bot-alert-pushover {
      grid-template-rows: auto auto 1fr;
    }
    .bot-alert-balance {
      grid-template-rows: auto auto auto 1fr;
    }
    .bot-alert-spread {
      grid-template-rows: auto auto auto auto auto 1fr;
    }
    .bot-watchdog-summary {
      grid-column: 1 / -1;
      min-width: 0;
      min-height: 92px;
      align-self: stretch;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      padding: 14px;
      border: 1px solid rgba(255, 255, 255, 0.075);
      border-radius: 9px;
      background: linear-gradient(135deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.012));
    }
    .bot-watchdog-copy {
      min-width: 0;
      display: grid;
      gap: 4px;
    }
    .bot-watchdog-copy strong {
      color: var(--text);
      font-size: 12px;
      font-weight: 800;
      line-height: 1.2;
    }
    .bot-watchdog-copy span {
      color: var(--muted);
      font-size: 11px;
      font-weight: 650;
      line-height: 1.35;
    }
    .bot-watchdog-status {
      flex: 0 0 auto;
      min-width: 48px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 5px 10px;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: rgba(154, 160, 170, 0.08);
      color: var(--muted);
      font-size: 11px;
      font-weight: 900;
      letter-spacing: 0.08em;
    }
    .bot-watchdog-status.is-on {
      border-color: rgba(33, 197, 139, 0.5);
      background: rgba(33, 197, 139, 0.12);
      color: var(--green);
    }
    .bot-watchdog-status.is-off {
      border-color: rgba(243, 184, 76, 0.45);
      background: rgba(243, 184, 76, 0.1);
      color: var(--amber);
    }
    .bot-alert-watchdog > button {
      grid-column: 1 / -1;
      width: 100%;
    }
    .bot-alert-pushover > label:last-of-type,
    .bot-alert-pushover > .bot-alert-actions,
    .bot-alert-balance > .bot-alert-channel-row,
    .bot-alert-balance > button,
    .bot-alert-spread > .bot-alert-channel-row,
    .bot-alert-spread > button {
      align-self: end;
    }
    .bot-alert-form h2 {
      grid-column: 1 / -1;
      margin: 0;
      color: var(--text);
      font-size: 13px;
      font-weight: 830;
      letter-spacing: 0;
    }
    .bot-alert-form label {
      min-width: 0;
      display: grid;
      gap: 5px;
      color: var(--muted);
      font-size: 11px;
      font-weight: 750;
      line-height: 1.15;
    }
    .bot-alert-form .bot-alert-wide {
      grid-column: 1 / -1;
    }
    .bot-alert-form input,
    .bot-alert-form select {
      width: 100%;
      min-width: 0;
      height: 34px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: #111419;
      color: var(--text);
      padding: 0 9px;
      font: inherit;
      outline: none;
    }
    .bot-alert-form input:focus,
    .bot-alert-form select:focus {
      border-color: var(--blue);
    }
    .bot-checkline {
      display: inline-flex !important;
      align-items: center;
      justify-content: space-between;
      gap: 7px !important;
      min-height: 36px;
      padding: 0 10px;
      border: 1px solid var(--line);
      border-radius: 7px;
      background: #0c0f14;
      color: var(--text) !important;
      font-size: 12px !important;
      cursor: pointer;
    }
    .bot-checkline span {
      order: 1;
    }
    .bot-checkline input[type="checkbox"] {
      order: 2;
      appearance: none;
      -webkit-appearance: none;
      width: 34px !important;
      min-width: 34px;
      max-width: 34px;
      height: 20px !important;
      margin: 0;
      padding: 0 !important;
      flex: 0 0 34px;
      position: relative;
      border: 1px solid var(--line);
      border-radius: 999px;
      background: #151922;
      cursor: pointer;
      transition: background 140ms ease, border-color 140ms ease;
    }
    .bot-checkline input[type="checkbox"]::after {
      content: "";
      position: absolute;
      top: 2px;
      left: 2px;
      width: 14px;
      height: 14px;
      border-radius: 50%;
      background: var(--muted);
      transition: transform 140ms ease, background 140ms ease;
    }
    .bot-checkline input[type="checkbox"]:checked {
      border-color: rgba(33, 197, 139, 0.68);
      background: rgba(33, 197, 139, 0.28);
    }
    .bot-checkline input[type="checkbox"]:checked::after {
      transform: translateX(14px);
      background: var(--green);
    }
    .bot-checkline input[type="checkbox"]:focus-visible {
      outline: 2px solid var(--blue);
      outline-offset: 2px;
    }
    .bot-alert-channel-row,
    .bot-alert-actions {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 6px;
      min-width: 0;
      align-items: center;
    }
    .bot-alert-form button {
      height: 36px;
      border-color: var(--blue);
      color: var(--blue);
      font-weight: 800;
    }
    .bot-alert-rules {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 10px;
      align-items: start;
    }
    .bot-alert-group {
      min-width: 0;
      display: grid;
      gap: 8px;
    }
    .bot-alert-group + .bot-alert-group {
      padding-top: 8px;
      border-top: 1px solid rgba(255, 255, 255, 0.07);
    }
    .bot-alert-group .bot-alert-category {
      margin: 0;
      padding: 0 2px 2px;
      border-top: 0;
    }
    .bot-alert-group-grid {
      min-width: 0;
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 8px;
      align-items: stretch;
    }
    .bot-alert-group-grid:has(.bot-alert-rule-details[open]):has(.bot-alert-rule-details:not([open])) > .bot-alert-rule {
      align-self: start;
    }
    .bot-alert-rules-toolbar {
      margin-top: 10px;
      margin-bottom: 8px;
      min-height: 38px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      padding: 7px 8px;
      border: 1px solid rgba(255, 255, 255, 0.065);
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.025);
    }
    .bot-alert-rules-title {
      color: var(--text);
      font-size: 12px;
      font-weight: 850;
      line-height: 1.2;
    }
    .bot-alert-rules-hint {
      margin-top: 2px;
      color: var(--muted);
      font-size: 10px;
      font-weight: 700;
      line-height: 1.2;
    }
    .bot-alert-rules-controls {
      display: flex;
      align-items: end;
      justify-content: flex-end;
      gap: 8px;
      min-width: min(100%, 430px);
    }
    .bot-alert-search {
      flex: 1 1 280px;
      min-width: 180px;
      display: grid;
      gap: 3px;
      color: var(--muted);
      font-size: 10px;
      font-weight: 760;
    }
    .bot-alert-search input {
      width: 100%;
      min-width: 0;
      height: 32px;
      border: 1px solid var(--line);
      border-radius: 7px;
      background: #111419;
      color: var(--text);
      padding: 0 9px;
      font: inherit;
      outline: none;
    }
    .bot-alert-search input:focus {
      border-color: var(--blue);
    }
    .bot-alert-rule {
      min-width: 0;
      border: 1px solid rgba(255, 255, 255, 0.065);
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.025);
      padding: 8px;
      display: flex;
      flex-direction: column;
      gap: 6px;
      align-self: stretch;
    }
    .bot-alert-rule-top {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      min-width: 0;
    }
    .bot-alert-rule h3,
    .bot-alert-rule-title {
      margin: 0;
      color: var(--text);
      font-size: 12px;
      font-weight: 830;
      line-height: 1.25;
      white-space: nowrap;
      word-break: normal;
      overflow-wrap: normal;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    .bot-alert-rule-meta,
    .bot-alert-rule-last,
    .bot-alert-rule-delivery {
      color: var(--muted);
      font-size: 11px;
      font-weight: 720;
      line-height: 1.3;
      overflow-wrap: anywhere;
    }
    .bot-alert-rule-delivery {
      color: #91a9c4;
    }
    .bot-alert-rule-error {
      color: var(--red);
      font-size: 10px;
      font-weight: 720;
      line-height: 1.3;
      overflow-wrap: anywhere;
    }
    .bot-alert-rule-target {
      color: var(--text);
      font-size: 11px;
      font-weight: 800;
      line-height: 1.25;
      white-space: nowrap;
    }
    .bot-alert-rule-status {
      width: fit-content;
      border: 1px solid var(--line);
      border-radius: 999px;
      padding: 3px 8px 3px 6px;
      color: var(--muted);
      background: #12151b;
      font-size: 11px;
      font-weight: 830;
      display: inline-flex;
      align-items: center;
      gap: 5px;
      white-space: nowrap;
    }
    .bot-alert-rule-dot {
      width: 7px;
      height: 7px;
      border-radius: 999px;
      background: currentColor;
      box-shadow: 0 0 10px currentColor;
    }
    .bot-alert-rule-status.active {
      border-color: rgba(33, 197, 139, 0.42);
      background: rgba(33, 197, 139, 0.09);
      color: var(--green);
    }
    .bot-alert-rule-status.paused,
    .bot-alert-rule-status.pending {
      border-color: rgba(243, 184, 76, 0.42);
      background: rgba(243, 184, 76, 0.09);
      color: var(--amber);
    }
    .bot-alert-rule-status.error {
      border-color: rgba(255, 92, 119, 0.48);
      background: rgba(255, 92, 119, 0.1);
      color: var(--red);
    }
    .bot-alert-rule-kind {
      min-width: 0;
      color: var(--muted);
      font-size: 10px;
      font-weight: 850;
      letter-spacing: 0;
      text-transform: uppercase;
    }
    .bot-alert-rule-details {
      border-top: 1px solid rgba(255, 255, 255, 0.06);
      padding-top: 5px;
    }
    .bot-alert-rule-details summary {
      cursor: pointer;
      color: var(--blue);
      font-size: 11px;
      font-weight: 850;
      user-select: none;
    }
    .bot-alert-rule-edit {
      display: grid;
      gap: 7px;
      margin-top: 7px;
      min-height: 0;
    }
    .bot-alert-edit-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 6px;
    }
    .bot-alert-rule-edit label {
      min-width: 0;
      display: grid;
      gap: 4px;
      color: var(--muted);
      font-size: 10px;
      font-weight: 760;
    }
    .bot-alert-rule-edit input,
    .bot-alert-rule-edit select {
      width: 100%;
      min-width: 0;
      height: 30px;
      border: 1px solid var(--line);
      border-radius: 6px;
      background: #0c0f14;
      color: var(--text);
      padding: 0 8px;
      font-size: 12px;
      font-weight: 760;
      outline: none;
    }
    .bot-alert-rule-edit input:focus,
    .bot-alert-rule-edit select:focus {
      border-color: var(--blue);
    }
    .bot-alert-save {
      height: 30px;
      border-color: var(--blue);
      color: var(--blue);
      font-size: 11px;
      font-weight: 820;
    }
    .bot-alert-rule-footer {
      min-width: 0;
      margin-top: auto;
      display: grid;
      gap: 6px;
    }
    .bot-alert-rule-actions {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 6px;
    }
    .bot-alert-rule-actions button {
      height: 28px;
      padding: 0 8px;
      font-size: 11px;
      font-weight: 780;
    }
    .bot-alert-rule-actions .danger {
      border-color: rgba(255, 92, 119, 0.45);
      color: var(--red);
    }
    @media (max-width: 760px) {
      .bot-alert-group-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      .bot-alert-rules-toolbar {
        align-items: stretch;
        flex-direction: column;
      }
      .bot-alert-rules-controls {
        width: 100%;
        min-width: 0;
      }
      .bot-alert-search {
        min-width: 0;
      }
    }
