.dlg-banner { display: flex; align-items: center; gap: .75rem; padding: .75rem 1rem; margin-bottom: 1rem; border-radius: .75rem; background: #e0f2fe; color: #075985; border: 1px solid #bae6fd; }
.dlg-banner > div { flex: 1; }
.dlg-banner p { margin: .2rem 0 0; }
.dlg-section { font-size: .95rem; font-weight: 600; margin: 0 0 .6rem; }
.dlg-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(21rem, 1fr)); gap: 1rem; margin-bottom: 1.25rem; }
.dlg-card { display: flex; flex-direction: column; gap: .7rem; }
.dlg-people { display: flex; align-items: center; gap: .55rem; }
.dlg-people > svg { color: #94a3b8; flex-shrink: 0; }
.dlg-avatar { width: 2.2rem; height: 2.2rem; border-radius: 50%; display: grid; place-items: center; flex-shrink: 0; font-size: .78rem; font-weight: 700; background: #f1f5f9; color: #475569; }
.dlg-avatar.sub { background: #e0f2fe; color: #0369a1; }
.dlg-names { display: flex; flex-direction: column; min-width: 0; flex: 1; }
.dlg-names strong { font-size: .88rem; line-height: 1.2; overflow-wrap: anywhere; }
.dlg-until { margin: 0; display: flex; align-items: center; gap: .5rem; font-size: .85rem; }
.dlg-chips { display: flex; flex-wrap: wrap; gap: .35rem; }
.dlg-chip { display: inline-flex; align-items: center; padding: .15rem .55rem; border-radius: 999px; background: #f1f5f9; color: #334155; font-size: .75rem; text-decoration: none; }
a.dlg-chip:hover { background: #e2e8f0; }
.dlg-card-actions { display: flex; justify-content: flex-end; gap: .4rem; margin-top: auto; }
.dlg-filter { margin: 0; }
.dlg-count { display: inline-block; min-width: 1.3rem; padding: 0 .3rem; margin-left: .2rem; border-radius: 999px; background: #f1f5f9; color: #64748b; font-size: .7rem; text-align: center; }
.dlg-empty { padding: 1rem 0; }
.dlg-how { margin-top: 1.25rem; }
.dlg-how h3 { font-size: .9rem; margin: 0 0 .5rem; }
.dlg-how ul { margin: 0; padding-left: 1.1rem; display: grid; gap: .3rem; font-size: .84rem; color: #475569; }
.dlg-modal { width: min(46rem, 96vw); max-height: 92vh; overflow-y: auto; }
.dlg-label { display: block; font-size: .8rem; font-weight: 600; margin-bottom: .4rem; }
.dlg-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; }
.dlg-credit { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; }
.dlg-option { display: flex; align-items: flex-start; gap: .55rem; padding: .6rem .7rem; border: 1px solid #e2e8f0; border-radius: .6rem; cursor: pointer; font-size: .84rem; }
.dlg-option.on { border-color: #38bdf8; background: #f0f9ff; }
.dlg-option input { margin-top: .2rem; }
.dlg-option em { display: block; font-style: normal; color: #64748b; font-size: .76rem; }
.dlg-forward { margin-top: .6rem; }
.dlg-notes { padding: .6rem .8rem; border-radius: .6rem; background: #fefce8; border: 1px solid #fde68a; font-size: .85rem; white-space: pre-wrap; margin-bottom: .75rem; }
.dlg-sub { font-size: .88rem; margin: 1rem 0 .4rem; }
.dlg-detail-table { max-height: 18rem; overflow-y: auto; }
.nowrap { white-space: nowrap; }

@media (max-width: 640px) {
    .dlg-options, .dlg-credit { grid-template-columns: 1fr; }
}

.dark .dlg-banner { background: #0c4a6e; color: #e0f2fe; border-color: #075985; }
.dark .dlg-avatar { background: #27272a; color: #d4d4d8; }
.dark .dlg-avatar.sub { background: #0c4a6e; color: #bae6fd; }
.dark .dlg-chip, .dark .dlg-count { background: #27272a; color: #d4d4d8; }
.dark a.dlg-chip:hover { background: #3f3f46; }
.dark .dlg-how ul { color: #a1a1aa; }
.dark .dlg-option { border-color: #3f3f46; }
.dark .dlg-option.on { border-color: #0284c7; background: #082f49; }
.dark .dlg-option em { color: #a1a1aa; }
.dark .dlg-notes { background: #422006; border-color: #854d0e; color: #fef3c7; }
.dlg-hint { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem; color: #b45309; }
.dark .dlg-hint { color: #fbbf24; }
