/* ============================================================
   SALONIQA — Migration Wizard (Phase 10, Batch E). Presentation only.
   ============================================================ */
.mig-container{ max-width:920px; margin:0 auto; padding:28px 24px 60px; }
.mig-header{ margin-bottom:22px; }
.mig-header h1{ font-family:'Playfair Display',Georgia,serif; font-size:30px; color:#0D4F45; margin:0 0 6px; display:flex; align-items:center; gap:10px; }
.mig-spark{ color:#D4AF37; }
.mig-header p{ color:#666; margin:0; font-size:15px; }
.mig-disclaimer{ font-size:12.5px; color:#999; margin-top:8px; }

.mig-loading{ display:flex; gap:8px; justify-content:center; padding:60px 0; }
.mig-loading span{ width:12px; height:12px; border-radius:50%; background:#0D4F45; opacity:.3; animation:migpulse 1s infinite ease-in-out; }
.mig-loading span:nth-child(2){ animation-delay:.15s; } .mig-loading span:nth-child(3){ animation-delay:.3s; }
@keyframes migpulse{ 0%,100%{ opacity:.3; transform:scale(.85); } 50%{ opacity:1; transform:scale(1); } }

.mig-steps{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:22px; }
.mig-dot{ font-size:12.5px; font-weight:600; color:#999; background:#f1f1f1; border-radius:999px; padding:7px 14px; }
.mig-dot.active{ background:#0D4F45; color:#fff; }
.mig-dot.done{ background:#D4AF37; color:#1A1A1A; }

.mig-step{ background:#fff; border:1px solid #e0e0e0; border-radius:16px; padding:24px; box-shadow:0 1px 3px rgba(0,0,0,.06); }
.mig-step h2{ font-family:'Playfair Display',Georgia,serif; font-size:21px; color:#1A1A1A; margin:0 0 14px; }
.mig-help{ font-size:13.5px; color:#666; margin:0 0 16px; line-height:1.5; }

.mig-types{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.mig-type{ display:flex; flex-direction:column; align-items:flex-start; gap:4px; text-align:left; background:#fff; border:2px solid #e0e0e0; border-radius:12px; padding:18px; cursor:pointer; font-family:inherit; transition:.18s; }
.mig-type:hover{ border-color:#0D4F45; }
.mig-type.active{ border-color:#D4AF37; background:#FBF7EC; }
.mig-type-ico{ font-size:26px; }
.mig-type b{ font-size:15px; color:#1A1A1A; }
.mig-type small{ font-size:12px; color:#999; line-height:1.4; }

.mig-file{ display:block; margin-bottom:14px; font-size:14px; }
.mig-or{ text-align:center; color:#bbb; font-size:13px; margin:14px 0; }
.mig-paste{ width:100%; border:1px solid #e0e0e0; border-radius:10px; padding:12px 14px; font-family:'Courier New',monospace; font-size:13px; color:#1A1A1A; outline:none; resize:vertical; }
.mig-paste:focus{ border-color:#0D4F45; }

.mig-table-wrap{ overflow-x:auto; border:1px solid #e0e0e0; border-radius:10px; }
.mig-table{ width:100%; border-collapse:collapse; font-size:13.5px; }
.mig-table th, .mig-table td{ padding:10px 12px; border-bottom:1px solid #eee; text-align:left; white-space:nowrap; }
.mig-table thead th{ background:#F8F4EC; color:#0D4F45; font-weight:700; }
.mig-table tbody tr:last-child td{ border-bottom:0; }
.mig-map-sel{ padding:7px 10px; border:1px solid #e0e0e0; border-radius:8px; font-family:inherit; font-size:13px; }
.mig-sample{ color:#999; }
.mig-row-bad{ background:#fdeceb; }

.mig-preview-meta{ font-size:14px; color:#333; margin:0 0 12px; }
.mig-ok{ color:#1c7a36; font-weight:700; } .mig-bad{ color:#b3261e; font-weight:700; }

.mig-progress{ height:14px; background:#eee; border-radius:999px; overflow:hidden; margin-bottom:8px; }
.mig-bar{ height:100%; width:0; background:linear-gradient(90deg,#0D4F45,#D4AF37); transition:width .2s; }
.mig-progress-txt{ font-size:13px; color:#666; }
.mig-summary{ margin-top:14px; font-size:14px; line-height:1.7; }
.mig-sum-ok{ color:#1c7a36; font-weight:600; } .mig-sum-dup{ color:#8a6d1a; } .mig-sum-err{ color:#b3261e; }
.mig-sum-note{ color:#666; font-size:13px; margin-top:8px; }

.mig-msg{ color:#b3261e; font-size:13px; margin:10px 0 0; min-height:18px; }
.mig-nav{ display:flex; justify-content:space-between; align-items:center; margin-top:20px; gap:10px; }
.mig-btn{ border:0; border-radius:10px; padding:11px 22px; font-weight:700; font-size:14px; cursor:pointer; font-family:inherit; }
.mig-btn.gold{ background:#D4AF37; color:#1A1A1A; } .mig-btn.gold:hover{ background:#c39e2f; } .mig-btn.gold:disabled{ opacity:.5; cursor:not-allowed; }
.mig-btn.ghost{ background:transparent; color:#0D4F45; border:1px solid #0D4F45; } .mig-btn.ghost:hover{ background:#0D4F45; color:#fff; }
.mig-container .hidden{ display:none; }

@media(max-width:560px){ .mig-types{ grid-template-columns:1fr; } .mig-container{ padding:20px 16px 50px; } }
