.profile-import-dialog {
  width: min(1100px, calc(100vw - 32px));
  max-width: none;
  max-height: calc(100dvh - 32px);
  padding: 0;
  border: 1px solid #cbd5e1;
  border-radius: 16px;
  background: #fff;
  color: #263445;
  box-shadow: 0 24px 80px #0f172a33;
}
.profile-import-dialog::backdrop { background: #0f172a80; }
.profile-import-dialog[open] { display: flex; flex-direction: column; }
.profile-import-header, .profile-import-actions { display: flex; align-items: center; gap: 12px; padding: 16px 20px; flex: 0 0 auto; }
.profile-import-header { justify-content: space-between; border-bottom: 1px solid #e2e8f0; }
.profile-import-header h2 { font-size: 1.2rem; margin: 0; }
.profile-import-body { overflow: auto; min-height: 0; padding: 16px 20px; }
.profile-import-hint, .profile-import-common { font-size: .85rem; color: #52657c; margin: 0 0 12px; }
.profile-import-common { background: #f4f7fa; padding: 10px 12px; border-radius: 8px; }
.profile-import-common p { margin: 0; }
.profile-import-common summary { cursor: pointer; }
.profile-import-common details[open] summary { margin-bottom: 10px; }
.profile-import-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; align-items: start; }
.profile-import-list { display: grid; gap: 10px; min-width: 0; }
.profile-import-entry { min-width: 0; }
.profile-import-chevron { display: none; }
.profile-import-dialog .profile-import-character { width: 100%; min-width: 0; text-align: left; padding: 12px; border: 1px solid #bdcbdc; border-radius: 14px; background: #fff; color: inherit; display: flex; gap: 12px; align-items: center; }
.profile-import-dialog .profile-import-character.active { border-color: #007b74; background: #e7f3f0; box-shadow: 0 0 0 2px #007b7420; }
.profile-import-icon { flex: 0 0 56px; width: 56px; height: 56px; border-radius: 9px; overflow: hidden; }
.profile-import-icon img { width: 100%; height: 100%; object-fit: cover; }
.profile-import-meta { min-width: 0; display: grid; gap: 5px; }
.profile-import-meta strong { font-size: 1rem; overflow-wrap: anywhere; }
.profile-import-meta span { font-size: .78rem; color: #62768e; overflow-wrap: anywhere; }
.profile-import-detail { min-width: 0; position: sticky; top: 0; }
.profile-import-detail[hidden], .profile-import-mobile-detail[hidden] { display: none; }
.profile-import-detail h3, .profile-import-mobile-detail h3 { font-size: 1rem; margin: 0 0 12px; }
.profile-import-changes { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: .82rem; }
.profile-import-changes th, .profile-import-changes td { text-align: left; padding: 9px 7px; border-bottom: 1px solid #e2e8f0; overflow-wrap: anywhere; }
.profile-import-changes thead { background: #f1f5f9; }
.profile-import-changes tbody th { font-weight: 500; }
.profile-import-changes td:last-child { color: #006d65; font-weight: 600; }
.profile-import-actions { justify-content: flex-end; border-top: 1px solid #e2e8f0; }
.profile-import-actions > span { margin-right: auto; font-size: .8rem; color: #62768e; }
.profile-import-status { color: #b42318; font-size: .85rem; }
.profile-import-dialog button:focus-visible, .profile-import-dialog summary:focus-visible { outline: 2px solid #007b74; outline-offset: 3px; }
@media (max-width: 767px) {
  .profile-import-dialog { width: calc(100vw - 16px); max-height: calc(100dvh - 16px); border-radius: 12px; }
  .profile-import-header, .profile-import-body, .profile-import-actions { padding: 12px; }
  .profile-import-header h2 { font-size: 1rem; }
  .profile-import-layout { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .profile-import-list { padding: 3px; }
  .profile-import-chevron { display: block; margin-left: auto; flex: 0 0 auto; font-size: 1.2rem; line-height: 1; }
  .profile-import-character[aria-expanded="true"] .profile-import-chevron { transform: rotate(180deg); }
  .profile-import-mobile-detail { padding: 14px 4px 8px; }
  .profile-import-detail { position: static; }
  .profile-import-actions { flex-wrap: wrap; }
  .profile-import-actions > span { flex-basis: 100%; }
}
