/* ShulSpark — Import & Migration Center (migration.js). Uses the app's CSS variables, so Adas mode recolors it. */
.mig-tabs{margin-bottom:16px}
.mig-tabs a .pill{margin-left:4px}
.mig-steps{list-style:none;margin:0 0 16px;padding:0;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}
.mig-steps::-webkit-scrollbar{display:none}
.mig-steps li{flex:1 1 0;min-width:96px}
.mig-steps button{width:100%;display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 10px;cursor:pointer;font-weight:600;font-size:12.5px;color:var(--ink-3);text-align:left}
.mig-steps button[disabled]{cursor:default;opacity:.65}
.mig-steps b{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#EDF0F4;font-size:11.5px;flex:none;color:var(--ink-2)}
.mig-steps li.on button{border-color:var(--teal);color:var(--navy);box-shadow:0 0 0 3px var(--teal-soft)}
.mig-steps li.on b{background:var(--teal);color:#fff}
.mig-steps li.done b{background:var(--navy);color:#fff}
.mig-steps li.done button{color:var(--navy)}
.mig-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}
.mig-main{min-width:0;display:flex;flex-direction:column;gap:14px}
.mig-h{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.mig-h h2{margin:2px 0 2px;font-family:var(--serif);font-size:22px;color:var(--navy);font-weight:600;display:flex;align-items:center;gap:8px}
.mig-h p{margin:0;max-width:640px}
.mig-sub{font-size:13px;letter-spacing:.5px;text-transform:uppercase;color:var(--ink-3);margin:18px 0 10px}
.mig-ari{position:sticky;top:80px;border-top:3px solid var(--gold)}
.mig-lion{font-size:24px;line-height:1}
.mig-ari-body{margin-top:12px;font-size:13.5px;border-top:1px solid var(--line);padding-top:10px;max-height:60vh;overflow:auto}
.mig-ari-body p{margin:0 0 10px;padding:8px 10px;background:var(--gold-soft);border-radius:10px;line-height:1.45}
.mig-src{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.mig-srccard{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;border:1.5px solid var(--line);background:#fff;border-radius:14px;padding:14px;cursor:pointer;min-width:0}
.mig-srccard:hover{border-color:#cfd6e0}
.mig-srccard.on{border-color:var(--teal);background:var(--teal-soft);box-shadow:0 0 0 3px rgba(15,139,141,.12)}
.mig-srccard b{color:var(--navy);font-size:14px}
.mig-srcic{width:34px;height:34px;border-radius:10px;background:#EEF1F5;display:grid;place-items:center;color:var(--navy);margin-bottom:4px}
.mig-srccard.on .mig-srcic{background:var(--teal);color:#fff}
.mig-types{display:flex;flex-wrap:wrap;gap:8px}
.mig-chk{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:99px;padding:6px 12px;font-size:13px;font-weight:600;cursor:pointer;background:#fff;color:var(--ink-2)}
.mig-chk.on{border-color:var(--teal);color:var(--navy);background:var(--teal-soft)}
.mig-chk input{accent-color:var(--teal);margin:0}
.mig-navbtns{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line);flex-wrap:wrap}
.mig-drop{display:flex;flex-direction:column;align-items:center;gap:6px;border:2px dashed #C9D1DC;border-radius:16px;padding:34px 16px;text-align:center;cursor:pointer;background:#FAFBFC;transition:all .15s}
.mig-drop:hover,.mig-drop.over{border-color:var(--teal);background:var(--teal-soft)}
.mig-dropic{width:52px;height:52px;border-radius:50%;background:#fff;display:grid;place-items:center;color:var(--teal);box-shadow:var(--shadow)}
.mig-files{margin-top:10px}
.mig-summ{display:flex;gap:6px;flex-wrap:wrap}
.mig-ftabs{margin-bottom:10px}
.mig-ftabs button{font-size:13px}
table.mig-map td{vertical-align:top}
.mig-map .mig-col b{color:var(--navy)}
.mig-map .mig-col{min-width:150px}
table.mig-map td:nth-child(4){min-width:250px}
.mig-samp span{display:inline-block;background:#F2F4F7;border-radius:6px;padding:1px 7px;margin:0 4px 4px 0;font-size:12px;font-family:ui-monospace,Menlo,Consolas,monospace;color:var(--ink-2);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:top}
.mig-arrow{color:var(--ink-3);font-weight:700;padding-top:16px!important}
.mig-sel{min-width:232px;font-size:13px;padding:7px 9px}
.mig-map tr.mig-un td{background:#FBFAFF}
.mig-conf{min-width:78px;justify-content:center}
.mig-tpl{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px;padding:12px 14px;background:#F7F9FB;border-radius:12px}
.mig-issues{display:flex;flex-direction:column;gap:10px}
.mig-issue{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:#fff}
.mig-issue.on{border-color:rgba(15,139,141,.45);background:linear-gradient(0deg,#fff,#fff) padding-box}
.mig-issue .grow{flex:1;min-width:0}
.mig-issue .ttl{font-weight:700;color:var(--navy)}
.mig-det{white-space:pre-wrap;font-family:inherit;font-size:12.5px;color:var(--ink-2);margin:6px 0 0;line-height:1.55}
.mig-as{flex:none}
.mig-as button.on:first-child{color:var(--teal-2)}
.mig-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}
.mig-kpi{background:#F7F9FB;border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.mig-kpi .v{font-size:22px;font-weight:700;color:var(--navy);letter-spacing:-.3px}
.mig-kpi .l{font-size:12px;color:var(--ink-3);font-weight:600}
.mig-g2{margin-top:6px}
.mig-errs{display:flex;flex-direction:column;gap:6px;max-height:420px;overflow:auto}
.mig-err{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#fff}
.mig-err .pill{flex:none}
.mig-bar{height:14px;border-radius:99px;background:#EDF0F4;overflow:hidden;margin:14px 0 8px}
.mig-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--gold));border-radius:99px;transition:width .09s linear}
.mig-okic{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--green);color:#fff;font-size:16px}
.mig-next{margin-top:14px;padding:12px 14px;border-radius:12px;background:var(--gold-soft);font-size:13.5px}
.mig-ring{--p:0;width:74px;height:74px;border-radius:50%;background:conic-gradient(var(--teal) calc(var(--p)*1%),#EDF0F4 0);display:grid;place-items:center;position:relative;flex:none}
.mig-ring::before{content:"";position:absolute;inset:8px;border-radius:50%;background:#fff}
.mig-ring b,.mig-ring span{position:relative;line-height:1}
.mig-ring b{color:var(--navy);font-size:17px;margin-top:10px}
.mig-ring span{font-size:10.5px;color:var(--ink-3);margin-top:-18px}
.mig-check{display:flex;flex-direction:column;gap:8px}
.mig-ci{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px;padding:12px 14px;flex-wrap:wrap}
.mig-ci .grow{flex:1;min-width:200px}
.mig-ci .ttl{font-weight:700;color:var(--navy)}
.mig-ci .sub{font-size:12.5px;color:var(--ink-3)}
.mig-ci.ok{background:#F6FBF8;border-color:#CDE8D7}
.mig-tick{width:24px;height:24px;border-radius:50%;border:2px solid #CBD2DC;display:grid;place-items:center;font-size:13px;color:#fff;flex:none}
.mig-ci.ok .mig-tick{background:var(--green);border-color:var(--green)}
.mig-ca{flex:none}
.mig-plan{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;position:relative}
.mig-wk{border:1px solid var(--line);border-top:4px solid var(--navy);border-radius:12px;padding:12px;background:#fff}
.mig-wk.now{border-top-color:var(--teal);background:var(--teal-soft)}
.mig-wkn{font-size:11.5px;text-transform:uppercase;letter-spacing:.6px;color:var(--ink-3);font-weight:700;margin-bottom:4px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.mig-wk b{color:var(--navy);display:block;margin-bottom:3px}
.mig-spec{display:flex;align-items:center;gap:12px;margin-top:14px;padding:14px;border-radius:14px;background:linear-gradient(90deg,#F3F6FA,#FBF7EA);flex-wrap:wrap}
.mig-spec .grow{flex:1;min-width:200px}
.mig-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.mig-draft{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:#FAFBFC;font-size:13.5px}
.mig-draft p{margin:8px 0}
/* gift inbox */
.mig-inh{margin-bottom:4px}
.mig-gift{padding:14px 16px}
.mig-gh{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.mig-donor{font-size:16px;color:var(--navy)}
.mig-amt{font-size:20px;font-weight:700;color:var(--navy);text-align:right;display:flex;flex-direction:column;align-items:flex-end;white-space:nowrap}
.mig-amt .small{font-weight:500}
.mig-cands{display:flex;flex-direction:column;gap:6px}
.mig-cand{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:12px;padding:9px 11px;cursor:pointer}
.mig-cand.on{border-color:var(--teal);background:var(--teal-soft)}
.mig-cand input{margin-top:4px;accent-color:var(--teal)}
.mig-cand .grow{min-width:0;flex:1}
.mig-why{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}
.mig-why span{font-size:12px;background:#fff;border:1px solid #DCE2EA;border-radius:99px;padding:1px 8px;color:var(--ink-2)}
.mig-why span::before{content:"✓ ";color:var(--teal)}
.mig-gact{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.mig-rule{display:flex;align-items:center;gap:6px;margin-top:8px;color:var(--ink-2)}
.mig-rule input{accent-color:var(--teal)}
.mig-pick{display:flex;gap:6px;align-items:center;cursor:pointer}
/* linking */
.mig-sugg{border-left:4px solid var(--gold)}
.mig-unit{border:1px solid var(--line);border-radius:12px;padding:8px 12px;margin-bottom:8px}
.mig-softh{font-size:11.5px;text-transform:uppercase;letter-spacing:.6px;color:var(--ink-3);font-weight:700;margin:14px 0 6px}
.mig-rule-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #F0F2F5;flex-wrap:wrap}
.mig-rule-row .grow{flex:1;min-width:170px}
/* dashboard card */
.mig-dash-slot{margin:0 0 18px}
.mig-dash{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border-left:4px solid var(--teal);background:linear-gradient(90deg,var(--teal-soft),#fff 55%)}
.mig-dash .grow{flex:1;min-width:220px}
.mig-dash-ic{width:44px;height:44px;border-radius:12px;background:var(--navy);color:#fff;display:grid;place-items:center;flex:none}
.mig-dash-t{display:block;color:var(--navy);font-size:16px;margin:2px 0}
.mig-dash-b{gap:8px}
@media (max-width:1180px){ .mig-layout{grid-template-columns:minmax(0,1fr)} .mig-ari{position:static;order:-1} }
@media (max-width:760px){
 .mig-src{grid-template-columns:repeat(2,minmax(0,1fr))}
 .mig-plan{grid-template-columns:repeat(2,minmax(0,1fr))}
 .mig-steps li{min-width:0;flex:none}
 .mig-steps button span{display:none}
 .mig-steps li.on button span{display:inline}
 .mig-steps button{padding:6px 8px}
 table.mig-map thead{display:none}
 table.mig-map, table.mig-map tbody, table.mig-map tr, table.mig-map td{display:block;width:100%}
 table.mig-map tr{border:1px solid var(--line);border-radius:12px;padding:8px 10px;margin-bottom:8px}
 table.mig-map td{border:0!important;padding:3px 0!important;min-width:0!important}
 table.mig-map td.mig-arrow{display:none}
 .mig-sel{min-width:0;width:100%}
 .mig-issue{flex-wrap:wrap}
 .mig-as{margin-left:46px}
 .mig-gh{flex-direction:column}
 .mig-amt{align-items:flex-start;text-align:left}
 .mig-h h2{font-size:19px}
 .mig-navbtns .btn.primary{white-space:normal}
}
@media (max-width:420px){ .mig-src{grid-template-columns:minmax(0,1fr)} .mig-slots{grid-template-columns:minmax(0,1fr)} .mig-plan{grid-template-columns:minmax(0,1fr)} }
