/* 알림함·관심 기체·항적 보관함의 창과 목록을 같은 기준으로 표시한다. */
.collection-modal { padding: 20px; }
.collection-dialog { width: min(680px, 100%); max-height: min(850px, calc(100dvh - 40px)); border: 1px solid #286078; border-radius: 10px; background: #081922; }
.collection-dialog > header { flex-shrink: 0; padding: 13px 20px 11px; gap: 16px; }
.collection-dialog > header > div:first-child { min-width: 0; }
.collection-dialog > header h2 { margin: 4px 0 0; font-size: 20px; }
.collection-dialog > header p { margin: 4px 0 0; color: #8faebc; font-size: 10px; line-height: 1.5; }
.collection-dialog :where(button, .collection-search) svg { width: 16px; height: 16px; flex-shrink: 0; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; vertical-align: middle; }
.saved-tracks-dialog.collection-dialog button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; font: inherit; font-size: 11px; cursor: pointer; }
.saved-tracks-dialog.collection-dialog button:not(.replay-entry-button) { min-height: 33px; padding: 6px 10px; border: 1px solid #284b5b; border-radius: 6px; background: #0c2530; color: #b6d1dc; }
.saved-tracks-dialog.collection-dialog button:hover:not(:disabled):not(.replay-entry-button) { color: #e0f8ff; border-color: #498598; background: #123541; box-shadow: none; }
.collection-dialog button:focus-visible, .collection-dialog input:focus-visible, .collection-dialog select:focus-visible { outline: 2px solid var(--cyan); outline-offset: 2px; box-shadow: none; }
.saved-tracks-dialog.collection-dialog button:disabled { opacity: .4; cursor: default; }
.saved-tracks-dialog.collection-dialog > header > button { width: 33px; height: 33px; flex-shrink: 0; padding: 6px; }
.collection-search { min-width: 0; display: flex; align-items: center; gap: 7px; border: 1px solid #284958; border-radius: 6px; background: #07151d; padding: 0 10px; color: #6e98a9; }
.collection-search:focus-within { border-color: var(--cyan); }
.collection-dialog .collection-search input { min-width: 0; width: 100%; padding: 9px 0; border: 0; background: transparent; color: var(--text); font: inherit; font-size: 11px; box-shadow: none; }
.collection-dialog .collection-search input:focus { outline: none; }
.collection-dialog .collection-search input::placeholder { color: #6f8d9c; opacity: 1; }
.collection-dialog > .collection-footer { flex-shrink: 0; display: flex; align-items: center; min-height: 43px; padding: 8px 20px; border-top: 1px solid var(--line); background: #08161e; }
.collection-dialog > .collection-footer small { color: #5f8496; font-size: 9px; }
.collection-dialog .collection-card { border: 1px solid #244553; border-radius: 8px; background: #091e29; }
.collection-dialog .collection-card .collection-title { color: #d5eaf3; font-size: 13px; }
.collection-dialog .collection-card .collection-detail { margin: 2px 0 0; color: #88aabb; font-size: 11px; line-height: 1.3; }
.collection-dialog .collection-card .collection-meta { margin-top: 3px; color: #7495a6; font-size: 9px; line-height: 1.3; }
.saved-tracks-dialog.collection-dialog .collection-actions .danger { color: #ca9098; }
.saved-tracks-dialog.collection-dialog .collection-actions .danger:hover { color: #ffd1d8; border-color: #86515b; background: #34232b; }
.collection-dialog .saved-tracks-tools { flex-shrink: 0; gap: 8px; padding: 13px 20px 8px; grid-template-columns: minmax(0, 1fr) 124px 124px; }
.collection-dialog .saved-tracks-tools select, .collection-dialog .saved-track-edit input { min-width: 0; padding: 9px 10px; border: 1px solid #284958; border-radius: 6px; background: #07151d; color: var(--text); font: inherit; font-size: 11px; }
.collection-dialog .saved-tracks-summary { flex-shrink: 0; padding: 3px 20px 9px; color: #6f97a8; font-size: 10px; }
.collection-dialog .saved-tracks-list { padding: 0 20px 16px; scrollbar-gutter: stable; overscroll-behavior: contain; }
.collection-dialog .saved-track-group + .saved-track-group { margin-top: 12px; }
.collection-dialog .saved-track-group > h3 { background: #081922; color: #8faebc; font-size: 10px; padding: 6px 0; letter-spacing: 0; }
.collection-dialog .saved-track-card + .saved-track-card { margin-top: 8px; }
.collection-dialog .saved-track-thumb { width: 76px; height: 56px; aspect-ratio: auto; border-color: #2a4959; background: #081923; }
.collection-dialog .saved-track-thumb img { object-fit: contain; }
.collection-dialog .saved-track-thumb.fallback > svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.2; stroke-linecap: round; stroke-linejoin: round; }
.collection-dialog .saved-track-thumb.fallback small { margin: 0; font-size: 8px; letter-spacing: 0; }
.collection-dialog .saved-track-thumb-source { margin: 0; font-size: 7px !important; }
.collection-dialog .saved-track-edit { flex-shrink: 0; padding: 9px 20px; grid-template-columns: minmax(0, 1fr) minmax(0, .6fr) auto auto; }
.collection-dialog .saved-tracks-empty { min-height: 0; padding: 38px 20px; }
.watch-message-secondary { display: flex; justify-content: flex-end; gap: 5px; }
@media (min-width: 561px) {
  .collection-dialog .aircraft-watch-history { padding-top: 11px; }
  .collection-dialog .aircraft-watch-history .watch-toolbar, .collection-dialog .watch-filters { margin-bottom: 8px; }
  .collection-dialog .collection-card { min-height: 88px; padding: 9px; }
  .collection-dialog .collection-card .collection-title, .collection-dialog .collection-card .collection-detail, .collection-dialog .collection-card .collection-meta { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .collection-dialog .collection-actions { align-self: center; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px; margin: 0; }
  .collection-dialog .collection-card .collection-actions button { min-height: 28px; padding: 4px 6px; gap: 4px; font-size: 10px; }
  .collection-dialog .saved-track-card { grid-template-columns: 76px minmax(0, 1fr) 166px; gap: 2px 11px; }
  .collection-dialog .saved-track-actions { grid-column: 3; }
  .collection-dialog .saved-track-actions .play { grid-column: 1 / -1; }
  .collection-dialog .aircraft-watch-message { display: grid; grid-template-columns: 76px minmax(0, 1fr) 166px; gap: 2px 11px; }
  .collection-dialog .watch-message-info .watch-event-symbol { width: 21px; height: 21px; border: 0; background: transparent; }
  .collection-dialog .watch-message-info .watch-card-heading { gap: 5px; }
  .collection-dialog .watch-message-info .watch-state { padding: 2px 5px; font-size: 9px; }
  .collection-dialog .aircraft-watch-message > .watch-card-time { grid-column: 2; grid-row: 2; }
  .collection-dialog .aircraft-watch-message > .watch-card-actions { grid-column: 3; grid-row: 1 / span 2; }
  .collection-dialog .aircraft-watch-message .watch-message-secondary { grid-column: 1 / -1; }
  .collection-dialog .aircraft-watch-message .watch-message-secondary button { width: 28px; }
  .collection-dialog .aircraft-watch-history-list { gap: 8px; }
}
@media (max-width: 560px) {
  .collection-modal { padding: 12px; }
  .collection-dialog { max-height: calc(100dvh - 24px); }
  .collection-dialog > header { padding: 16px; }
  .collection-dialog > header h2 { font-size: 19px; }
  .saved-tracks-dialog.collection-dialog button:not(.replay-entry-button) { min-height: 36px; }
  .saved-tracks-dialog.collection-dialog > header > button { width: 36px; height: 36px; }
  .collection-dialog > .collection-footer { padding: 11px 16px; }
  .collection-dialog .saved-tracks-tools { grid-template-columns: 1fr 1fr; padding: 15px 16px 8px; }
  .collection-dialog .saved-tracks-tools .collection-search { grid-column: 1 / -1; }
  .collection-dialog .saved-tracks-summary { padding: 3px 16px 9px; }
  .collection-dialog .saved-tracks-list { padding: 0 16px 18px; }
  .collection-dialog .saved-track-card { grid-template-columns: 76px minmax(0, 1fr); gap: 10px; padding: 12px; }
  .collection-dialog .saved-track-actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 6px; }
  .collection-dialog .saved-track-thumb { height: 65px; }
  .collection-dialog .saved-track-copy strong { white-space: normal; }
  .collection-dialog .saved-track-copy strong, .collection-dialog .saved-track-copy p, .collection-dialog .saved-track-copy small { overflow-wrap: anywhere; }
  .collection-dialog .saved-track-edit { grid-template-columns: 1fr 1fr; padding: 9px 16px; }
  .collection-dialog .watch-message-info .watch-card-heading strong { flex-basis: auto; white-space: normal; }
  .collection-dialog .watch-message-info .watch-state { margin-left: auto; }
  .collection-dialog .aircraft-watch-message .watch-card-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
  .collection-dialog .aircraft-watch-message .watch-message-secondary { grid-column: 1 / -1; }
  .collection-dialog .aircraft-watch-message .watch-card-actions .replay-entry-button { min-height: 36px; }
}
