.attention-route[hidden] { display: none; }
.attention-route { flex: 0 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 20px; min-width: 0; margin: 14px 20px 0; padding: 13px 17px; border: 1px solid #cadde9; border-radius: 10px; background: #f3f8fc; color: var(--ink); }
.attention-route-copy { min-width: 0; }
.attention-route-copy strong { font-size: 15px; font-weight: 600; color: #285574; }
.attention-route-copy p { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; margin: 4px 0 0; color: var(--muted); font-size: 14px; line-height: 1.45; }
.attention-route > button { flex: 0 0 auto; white-space: nowrap; }
.attention-route-dialog { box-sizing: border-box; width: min(660px, calc(100vw - 28px)); max-width: calc(100vw - 28px); max-height: calc(100dvh - 40px); margin: auto; padding: 24px; overflow: auto; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); color: var(--ink); box-shadow: 0 24px 80px #132b3b33; overscroll-behavior: contain; }
.attention-route-dialog::backdrop { background: #12263066; }
.attention-route-dialog *, .attention-route-dialog *::before, .attention-route-dialog *::after { box-sizing: border-box; }
.attention-route-dialog-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.attention-route-dialog-head > div { min-width: 0; }
.attention-route-scope { margin: 0 0 5px; color: var(--muted); font-size: 13px; overflow-wrap: anywhere; }
.attention-route-dialog h2 { margin: 0; font-size: 24px; line-height: 1.3; }
.attention-route-close { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 8px; background: transparent; color: var(--muted); font: inherit; cursor: pointer; }
.attention-route-close:hover { background: #eef3f5; color: var(--ink); }
.attention-route-dialog > #attention-route-description { margin: 12px 0 18px; color: var(--muted); font-size: 15px; line-height: 1.5; }
.attention-route-status { margin: 0 0 12px; color: #285574; font-size: 14px; line-height: 1.5; }
.attention-route-status:empty { display: none; }
.attention-route-error { padding: 12px; border-radius: 8px; background: #fff4f1; color: var(--rose); font-size: 14px; line-height: 1.5; }
.attention-route-dialog .attention-kind { color: #285574; }
.attention-route-dialog .attention-card { min-width: 0; padding: 18px; }
.attention-route-dialog .attention-card h3, .attention-route-dialog .attention-prompt, .attention-route-dialog .profile-dashboard-source, .attention-route-dialog .attention-error, .attention-route-dialog button { overflow-wrap: anywhere; }
.attention-route-dialog .attention-card h3 { font-size: 18px; }
.attention-route-dialog .attention-card textarea { min-width: 0; max-width: 100%; }
.attention-route-dialog .attention-card label { min-width: 0; }
.attention-route-dialog .attention-choices > button { max-width: 100%; white-space: normal; text-align: left; }
.attention-route-dialog :focus-visible { outline: 2px solid #3b82f6; outline-offset: 3px; }
@media (max-width: 600px) {
  .attention-route { margin: 10px 12px 0; gap: 12px; padding: 12px; align-items: flex-start; }
  .attention-route-copy strong { font-size: 14px; }
  .attention-route > button { padding: 8px 10px; font-size: 13px; }
  .attention-route-dialog { width: calc(100vw - 20px); max-width: calc(100vw - 20px); max-height: calc(100dvh - 20px); padding: 16px 12px; border-radius: 12px; }
  .attention-route-dialog .attention-card { padding: 14px 12px; }
  .attention-route-dialog .attention-card form { grid-template-columns: minmax(0, 1fr); }
  .attention-route-dialog .attention-card-document { flex-direction: column; align-items: flex-start; }
}
