.listing-import-toolbar { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; padding:20px 16px; margin:0 0 20px; border:1px solid rgba(91,99,225,.22); border-radius:12px; background:linear-gradient(120deg,rgba(89,99,232,.08),rgba(99,146,246,.04)); text-align:center; }
.listing-import-callout-title { color:var(--text,#17233a); font-size:16px; line-height:1.4; font-weight:600; }
#view-container .listing-import-toolbar .listing-import-start-btn,
body.customer-portal-page .customer-portal-shell .listing-import-toolbar .listing-import-start-btn { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:46px; min-width:240px; max-width:100%; padding:11px 22px; font-weight:600; box-shadow:0 4px 12px rgba(79,82,215,.16); }
.listing-import-start-btn svg { flex:0 0 18px; pointer-events:none; }
.listing-import-callout-help { margin:0; color:var(--muted,#53627b); font-size:13px; line-height:1.5; }
.listing-import-toolbar .listing-import-start-btn:focus-visible { outline:3px solid #8197f4; outline-offset:3px; }
/* Scoped import surfaces: explicit paired palettes preserve saved workspace branding. */
.listing-import-dialog {
 --li-bg:#fff; --li-surface:#f6f8fb; --li-input:#fff; --li-text:#192338; --li-muted:#58677c;
 --li-line:#dce3ed; --li-accent:#4f46e5; --li-tint:#eeedff; --li-focus:#7773ef; --li-error:#a42b2b; --li-error-bg:#fff1f0;
 box-sizing:border-box; width:min(736px,calc(100vw - 32px)); max-height:calc(100dvh - 48px); padding:28px;
 border:1px solid var(--li-line); border-radius:20px; color:var(--li-text); background:var(--li-bg);
 box-shadow:0 32px 100px #101a3440; overflow:auto; scrollbar-width:thin; scrollbar-color:var(--li-line) var(--li-bg);
 font:400 14px/1.55 Inter,system-ui,sans-serif; color-scheme:light;
}
html[data-theme="dark"] .listing-import-dialog {
 --li-bg:#182131; --li-surface:#202c3f; --li-input:#111b2b; --li-text:#edf2fa; --li-muted:#adbcd0;
 --li-line:#3b4960; --li-accent:#b5b2ff; --li-tint:#2b2b4e; --li-focus:#b5b2ff; --li-error:#ffb4ac; --li-error-bg:#3c252c;
 color-scheme:dark; box-shadow:0 32px 100px #0009;
}
.listing-import-dialog::backdrop { background:#111b3299; backdrop-filter:blur(5px); }
html[data-theme="dark"] .listing-import-dialog::backdrop { background:#060c18b3; }
.listing-import-dialog * { box-sizing:border-box; }
.listing-import-dialog [hidden] { display:none!important; }
.listing-import-supported { padding:14px; margin:0 0 18px; border:1px solid var(--li-line); border-radius:12px; background:var(--li-surface); }
.listing-import-supported>strong { color:var(--li-text); font-size:12px; font-weight:600; }
.listing-import-supported ul { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; padding:0; margin:9px 0; list-style:none; }
.listing-import-supported li { padding:5px 8px; border:1px solid var(--li-line); border-radius:7px; background:var(--li-bg); color:var(--li-text); font-size:12px; font-weight:550; line-height:1.5; text-align:center; }
.listing-import-supported p { margin:0; color:var(--li-muted); font-size:12px; line-height:1.6; }
.listing-import-head,.listing-import-heading { display:flex; align-items:center; gap:12px; }
.listing-import-head { justify-content:space-between; }
.listing-import-heading { min-width:0; }
.listing-import-heading-icon { display:grid; place-items:center; flex:0 0 42px; height:42px; color:var(--li-accent); background:var(--li-tint); border-radius:12px; }
.listing-import-head h2 { margin:0; color:var(--li-text); font:650 22px/1.3 Inter,system-ui,sans-serif; letter-spacing:-.025em; }
.listing-import-close { flex:0 0 44px; height:44px; display:grid; place-items:center; padding:0; border:0; border-radius:10px; color:var(--li-muted); background:transparent; font:400 28px/1 system-ui,sans-serif; cursor:pointer; }
.listing-import-close:hover { color:var(--li-text); background:var(--li-surface); }
.listing-import-intro { margin:12px 0 22px; color:var(--li-muted); font-size:14px; line-height:1.6; }
.listing-import-progress { display:flex; gap:20px; list-style:none; padding:0 0 20px; margin:0 0 22px; border-bottom:1px solid var(--li-line); }
.listing-import-progress li { display:flex; align-items:center; gap:7px; color:var(--li-muted); font-size:12px; font-weight:550; }
.listing-import-progress li>span { display:grid; place-items:center; width:23px; height:23px; flex:0 0 23px; border-radius:50%; background:var(--li-surface); font-size:11px; }
.listing-import-progress [aria-current="step"] { color:var(--li-accent); }
.listing-import-progress [aria-current="step"]>span,.listing-import-progress .is-done>span { color:var(--li-accent); background:var(--li-tint); }
.listing-import-modes { display:grid; grid-template-columns:1fr 1fr; gap:6px; margin-bottom:22px; padding:5px; border:1px solid var(--li-line); border-radius:14px; background:var(--li-surface); }
.listing-import-modes button { display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-width:0; min-height:66px; padding:10px; border:1px solid transparent; border-radius:10px; color:var(--li-muted); background:transparent; text-align:left; cursor:pointer; font-family:inherit; }
.listing-import-modes button[aria-pressed="true"] { color:var(--li-text); border-color:var(--li-line); background:var(--li-bg); box-shadow:0 2px 5px #101c3010; }
.listing-import-modes button>span:last-child { min-width:0; }
.listing-import-modes strong { display:block; font-size:14px; font-weight:600; }
.listing-import-modes small { display:block; margin-top:2px; font-size:11px; line-height:1.4; }
.listing-import-mode-icon { color:var(--li-accent); font-size:22px; }
.listing-import-input-card { padding:0; }
.listing-import-field { display:grid; gap:9px; color:var(--li-text); font-size:13px; font-weight:600; }
.listing-import-field input,.listing-import-field textarea { width:100%; min-width:0; margin:0; padding:13px 14px; border:1px solid var(--li-line); border-radius:10px; color:var(--li-text); background:var(--li-input); font:400 16px/1.5 Inter,system-ui,sans-serif; box-shadow:none; }
.listing-import-field input::placeholder,.listing-import-field textarea::placeholder { color:var(--li-muted); opacity:1; }
.listing-import-field textarea { resize:vertical; min-height:160px; }
.listing-import-help { margin:10px 0 0; color:var(--li-muted); font-size:12px; line-height:1.65; }
.listing-import-reference { margin:0 0 16px; padding:10px 12px; border:1px solid var(--li-line); border-radius:9px; color:var(--li-muted); background:var(--li-surface); font-size:12px; overflow-wrap:anywhere; }
.listing-import-reference a,.listing-import-back { color:var(--li-accent); }
.listing-import-reference a { margin-left:5px; text-decoration:underline; text-underline-offset:3px; }
.listing-import-consent { display:flex; align-items:flex-start; gap:11px; margin:20px 0 4px; padding:15px; border:1px solid var(--li-line); border-radius:11px; background:var(--li-surface); font-size:12px; line-height:1.65; cursor:pointer; color:var(--li-text); }
.listing-import-consent small { display:block; margin-top:4px; }
.listing-import-consent input,.listing-import-row>input { flex:0 0 18px; width:18px; height:18px; margin:2px 0 0; accent-color:#4f46e5; }
.listing-import-dialog .btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:46px; padding:11px 18px; border:1px solid #4f46e5; border-radius:10px; color:#fff; background:#4f46e5; box-shadow:none; font:600 13px/1.5 Inter,system-ui,sans-serif; white-space:normal; cursor:pointer; }
.listing-import-dialog .btn:hover { border-color:#4338ca; background:#4338ca; }
.listing-import-dialog .btn:disabled { opacity:.6; cursor:default; }
.listing-import-preview-btn { min-width:176px; }
.listing-import-recovery { display:flex; gap:12px; margin-top:16px; padding:18px; border:1px solid var(--li-line); border-radius:12px; background:var(--li-tint); }
.listing-import-recovery-icon { flex:0 0 24px; color:var(--li-accent); font-size:23px; }
.listing-import-recovery strong { color:var(--li-text); font-size:14px; }
.listing-import-recovery p { color:var(--li-muted); font-size:13px; line-height:1.6; margin:6px 0 14px; }
.listing-import-message { margin:14px 0 0; color:var(--li-muted); font-size:13px; line-height:1.6; overflow-wrap:anywhere; }
.listing-import-message:empty { display:none; }
.listing-import-message.is-error { color:var(--li-error); padding:12px 14px; background:var(--li-error-bg); border-radius:9px; }
.listing-import-dialog[aria-busy="true"] .listing-import-message::before { content:""; display:inline-block; width:14px; height:14px; margin-right:9px; border:2px solid var(--li-line); border-top-color:var(--li-accent); border-radius:50%; vertical-align:-2px; animation:listing-import-spin .8s linear infinite; }
@keyframes listing-import-spin { to { transform:rotate(360deg); } }
.listing-import-back { margin:0 0 4px; min-height:44px; padding:10px 0; border:0; background:none; font:550 12px/1.5 Inter,system-ui,sans-serif; cursor:pointer; }
.listing-import-dialog h3 { color:var(--li-text); font-size:19px; letter-spacing:-.02em; margin:8px 0 14px; }
.listing-import-address { border:1px solid var(--li-line); border-radius:10px; padding:12px 14px; margin:0 0 12px; background:var(--li-surface); color:var(--li-muted); font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
.listing-import-rows { margin-top:20px; }
.listing-import-row { display:flex; gap:12px; padding:16px; margin-bottom:12px; border:1px solid var(--li-line); border-radius:12px; background:var(--li-bg); cursor:pointer; }
.listing-import-row.is-selected { border-color:var(--li-accent); }
.listing-import-row:has(input:disabled) { border-style:dashed; }
.listing-import-row-content { display:grid; gap:10px; flex:1; min-width:0; color:var(--li-text); font-size:13px; }
.listing-import-row-content>strong { font-weight:600; }
.listing-import-values { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.listing-import-values>span { display:grid; align-content:start; gap:6px; min-width:0; padding:11px 12px; border-radius:8px; background:var(--li-surface); overflow-wrap:anywhere; white-space:pre-wrap; line-height:1.55; }
.listing-import-values>span:last-child { background:var(--li-tint); }
.listing-import-dialog small { color:var(--li-muted); font-size:11px; line-height:1.5; }
.listing-import-footer { position:sticky; bottom:-28px; display:flex; align-items:center; justify-content:space-between; gap:20px; margin:24px -28px -28px; padding:18px 28px; border-top:1px solid var(--li-line); background:var(--li-bg); box-shadow:0 -5px 16px #101b3006; }
.listing-import-footer>div { display:grid; gap:5px; min-width:0; }
.listing-import-footer strong { color:var(--li-text); font-size:13px; }
.listing-import-footer span { color:var(--li-muted); font-size:12px; line-height:1.5; }
.listing-import-footer .btn { flex-shrink:0; }
.listing-import-footer .btn span { color:inherit; font-size:16px; }
.listing-import-dialog :focus-visible { outline:3px solid var(--li-focus); outline-offset:3px; }
.listing-import-draft-note { padding:12px; border:1px solid var(--line,#c6d5ef); border-radius:8px; background:var(--panel,#f1f5fa); color:var(--text,#192338); font-size:13px; line-height:1.5; }
@media(max-width:520px) {
 .listing-import-supported ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .listing-import-dialog { width:calc(100vw - 16px); padding:20px; max-height:calc(100dvh - 16px); border-radius:16px; }
 .listing-import-head { gap:4px; }
 .listing-import-head h2 { font-size:18px; }
 .listing-import-heading { gap:9px; }
 .listing-import-heading-icon { flex-basis:34px; height:36px; border-radius:10px; }
 .listing-import-close { flex-basis:44px; }
 .listing-import-intro { font-size:13px; margin:12px 0 18px; }
 .listing-import-progress { gap:16px; padding-bottom:16px; margin-bottom:18px; }
 .listing-import-progress li { gap:5px; font-size:11px; }
 .listing-import-progress li>span { flex-basis:20px; width:20px; height:20px; }
 .listing-import-modes { margin-bottom:18px; }
 .listing-import-modes button { min-height:48px; padding:10px 6px; }
 .listing-import-modes small { display:none; }
 .listing-import-mode-icon { font-size:19px; }
 .listing-import-consent { padding:12px; }
 .listing-import-recovery { padding:14px; gap:8px; }
 .listing-import-recovery-icon { display:none; }
 .listing-import-recovery .btn { width:100%; }
 .listing-import-values { grid-template-columns:1fr; gap:8px; }
 .listing-import-row { padding:12px; gap:10px; }
 .listing-import-footer { bottom:-20px; margin:20px -20px -20px; padding:16px 20px; flex-direction:column-reverse; align-items:stretch; gap:10px; }
 .listing-import-footer>div { text-align:center; }
 .listing-import-footer .btn { width:100%; }
 .listing-import-toolbar .btn { width:100%; }
}
@media(prefers-reduced-motion:reduce) { .listing-import-dialog[aria-busy="true"] .listing-import-message::before { animation:none; } }
/* Review: focus on differences, with equal fields disclosed once. */
.listing-import-dialog[data-stage="review"] .listing-import-intro,
.listing-import-dialog[data-stage="review"] .listing-import-progress { display:none; }
.listing-import-dialog[data-stage="review"] .listing-import-head { margin-bottom:20px; }
.listing-import-review-meta { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 0 16px; margin-bottom:16px; border-bottom:1px solid var(--li-line); }
.listing-import-review-meta>div { display:grid; gap:3px; min-width:0; overflow-wrap:anywhere; }
.listing-import-review-meta strong { color:var(--li-text); font-size:13px; font-weight:600; }
.listing-import-review-meta span { color:var(--li-muted); font-size:12px; }
.listing-import-review-meta .listing-import-back { flex-shrink:0; margin:0; padding:8px 0 8px 8px; }
.listing-import-review-help { margin:0 0 10px; color:var(--li-muted); font-size:12px; }
.listing-import-dialog[data-stage="review"] .listing-import-rows { margin-top:0; }
.listing-import-dialog[data-stage="review"] .listing-import-row { padding:12px; margin:0 0 8px; gap:10px; border-radius:10px; }
.listing-import-dialog[data-stage="review"] .listing-import-row-content { display:grid; grid-template-columns:minmax(100px,.85fr) minmax(0,2fr); align-items:start; gap:12px; }
.listing-import-row-title { display:grid; align-content:center; min-height:44px; gap:3px; color:var(--li-text); font-size:13px; font-weight:600; cursor:pointer; }
.listing-import-row-title small { font-weight:400; }
.listing-import-values>div { display:grid; align-content:start; gap:4px; padding:8px 10px; min-width:0; border-radius:7px; background:var(--li-surface); color:var(--li-text); overflow-wrap:anywhere; white-space:pre-wrap; line-height:1.5; }
.listing-import-values>div:last-child { background:var(--li-tint); }
.listing-import-empty-value { color:var(--li-muted); }
.listing-import-description { min-width:0; white-space:normal; }
.listing-import-description summary { display:flex; align-items:center; min-height:44px; cursor:pointer; color:var(--li-accent); font-size:12px; text-decoration:underline; text-underline-offset:3px; }
.listing-import-description p { margin:8px 0 0; white-space:pre-wrap; overflow-wrap:anywhere; color:var(--li-text); font-size:12px; }
.listing-import-matched { margin:12px 0; border:1px solid var(--li-line); border-radius:10px; background:var(--li-surface); }
.listing-import-matched>summary { padding:12px 14px; min-height:46px; color:var(--li-muted); font-size:12px; cursor:pointer; }
.listing-import-matched>div { padding:0 12px 4px; }
.listing-import-dialog[data-stage="review"] .listing-import-row.is-matching { border:0; border-top:1px solid var(--li-line); border-radius:0; background:none; margin:0; padding:10px 0; }
.listing-import-match-value { align-self:center; min-width:0; color:var(--li-muted); overflow-wrap:anywhere; white-space:pre-wrap; }
.listing-import-all-matched { margin:16px 0; color:var(--li-text); font-size:13px; }
@media(max-width:520px) {
 .listing-import-dialog[data-stage="review"] .listing-import-row-content { grid-template-columns:1fr; gap:4px; }
 .listing-import-dialog[data-stage="review"] .listing-import-values { grid-template-columns:1fr 1fr; gap:6px; }
 .listing-import-values>div { padding:8px; }
 .listing-import-review-meta { gap:10px; }
 .listing-import-review-meta .listing-import-back { font-size:11px; }
 .listing-import-row-title { min-height:32px; }
}
.listing-import-review-help { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:4px 12px; }
.listing-import-review-help strong { color:var(--li-text); font-weight:600; }
