/* Recon presentation is scoped to its adapter. Shared theme tokens remain authoritative. */
#appShell.ui-workspace .recon-v11 > :is(.recon-workflow,.recon-status-grid),
#appShell.ui-workspace .recon-v11 #poChangeInputs {display:none!important}
#appShell.ui-workspace .recon-v11[data-recon-step="2"] #purchaseSettingsButton {display:none!important}
#appShell.ui-workspace .recon-v11 .rv-setup {display:block!important;padding:0!important;border:0!important;background:transparent!important}
#appShell.ui-workspace .recon-v11 .rv-step[hidden],
#appShell.ui-workspace .recon-v11 [hidden] {display:none!important}
#appShell.ui-workspace .recon-v11 .rv-step {min-width:0}
#appShell.ui-workspace .recon-v11 .rv-steps {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;background:var(--ui-surface-solid);border:1px solid var(--ui-line);padding:12px;border-radius:12px;margin:12px 0 26px}
#appShell.ui-workspace .recon-v11 .rv-steps button {display:flex;align-items:center;gap:10px;border:0;background:transparent;text-align:left;color:var(--ui-ink-secondary);font-size:12px;white-space:normal;min-height:46px;padding:6px;box-shadow:none;opacity:1}
#appShell.ui-workspace .recon-v11 .rv-steps button[aria-current=step] {color:var(--ui-blue)!important;background:var(--ui-blue-soft)!important;border-radius:9px}
#appShell.ui-workspace .recon-v11 .rv-step-copy {display:flex;flex-direction:column;gap:3px;font-weight:600}
#appShell.ui-workspace .recon-v11 .rv-step-copy small {font-size:10px;font-weight:400;color:var(--ui-ink-secondary)}
#appShell.ui-workspace .recon-v11[data-recon-finished=true] .rv-completion {border-top:3px solid var(--ui-green)}
#appShell.ui-workspace .recon-v11[data-recon-finished=true] .rv-steps button[aria-current=step] {color:var(--ui-green)!important;background:color-mix(in srgb,var(--ui-green) 9%,var(--ui-surface-solid))!important}
#appShell.ui-workspace .recon-v11[data-recon-finished=true] [aria-current=step] .rv-step-marker {background:var(--ui-green);color:var(--workspace-primary-ink,#fff)}
#appShell.ui-workspace .recon-v11 .rv-step-marker {display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:9px;background:var(--ui-surface-muted);color:var(--ui-ink-secondary);font-size:14px}
#appShell.ui-workspace .recon-v11 .rv-complete .rv-step-marker {background:color-mix(in srgb,var(--ui-green) 9%,var(--ui-surface-solid));color:var(--ui-green)}
#appShell.ui-workspace .recon-v11 [aria-current=step] .rv-step-marker {background:var(--ui-blue);color:white}
#appShell.ui-workspace .recon-v11 .rv-steps button {border-color:transparent!important}
#appShell.ui-workspace .recon-v11 .rv-steps button {justify-content:flex-start}
#appShell.ui-workspace .recon-v11 .rv-steps button:last-child {justify-content:flex-end}
#appShell.ui-workspace .recon-v11[data-recon-step="4"]>.rv-step-heading {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#appShell.ui-workspace .recon-v11 .rv-step-heading {font-size:27px;letter-spacing:-.8px;margin:0 0 18px;line-height:1.25;color:var(--ui-ink)}
#appShell.ui-workspace .recon-v11 .rv-step-heading:focus {outline:none}
#appShell.ui-workspace .recon-v11 .rv-run-setup {display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--ui-surface-solid);border:1px solid var(--ui-line);border-radius:11px;padding:18px 22px;margin:0 0 20px}
#appShell.ui-workspace .recon-v11 .rv-run-setup>div {width:min(560px,65%)}
#appShell.ui-workspace .recon-v11 .rv-run-setup input {width:100%;max-width:none}
#appShell.ui-workspace .recon-v11 .rv-readiness {font-size:12px;color:var(--ui-ink-secondary);margin:0;text-align:right}
#appShell.ui-workspace .recon-v11 .recon-source-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:0}
#appShell.ui-workspace .recon-v11 .recon-source-card {width:auto;min-width:0;padding:22px!important;border:1px solid var(--ui-line)!important;border-radius:12px!important;background:var(--ui-surface-solid)!important}
#appShell.ui-workspace .recon-v11 .rv-loader {margin-bottom:18px}
#appShell.ui-workspace .recon-v11 .rv-loader .recon-source-toolbar {flex-wrap:wrap}
#appShell.ui-workspace .recon-v11 .rv-footer {display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:15px 18px;margin:20px 0 0;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-surface-solid)}
#appShell.ui-workspace .recon-v11 .rv-footer p {margin:0;font-size:12px}
#appShell.ui-workspace .recon-v11 .rv-step-intro {font-size:13px;line-height:1.65;color:var(--ui-ink-secondary);margin:-6px 0 22px;max-width:780px}
#appShell.ui-workspace .recon-v11 :is(.rv-mapping-grid,.rv-config-grid) {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
#appShell.ui-workspace .recon-v11 :is(.rv-map-card,.rv-config-card) {min-width:0;margin:0!important;padding:0!important;background:var(--ui-surface-solid)!important;border:1px solid var(--ui-line)!important;border-radius:12px!important;overflow:hidden}
#appShell.ui-workspace .recon-v11 .rv-map-head {padding:24px 24px 12px;gap:12px;flex-wrap:wrap}
#appShell.ui-workspace .recon-v11 .rv-map-identity {display:flex;align-items:center;gap:12px;min-width:0}
#appShell.ui-workspace .recon-v11 .rv-source-code {display:grid;place-items:center;width:38px;height:38px;flex:none;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-blue-soft);color:var(--ui-blue);font-size:11px;font-weight:750;letter-spacing:.3px}
#appShell.ui-workspace .recon-v11 .rv-map-head h3 {font-size:21px;margin:0;letter-spacing:-.5px}
#appShell.ui-workspace .recon-v11 .rv-map-head button {font-size:12px;min-height:38px;padding:8px 12px}
#appShell.ui-workspace .recon-v11 .rv-map-status {font-size:11px;font-weight:500;margin:0;padding:0 24px 10px;color:var(--ui-ink-secondary)}
#appShell.ui-workspace .recon-v11 .rv-map-status[data-complete=true] {color:var(--ui-green)}
#appShell.ui-workspace .recon-v11 .rv-map-fields {display:block!important;padding:0 24px;gap:0!important;margin:0!important}
#appShell.ui-workspace .recon-v11 .rv-map-field {display:grid!important;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);align-items:center;gap:10px;width:100%;min-width:0;padding:9px 0;border:0}
#appShell.ui-workspace .recon-v11 .rv-map-field:last-child {border-bottom:0}
#appShell.ui-workspace .recon-v11 .rv-map-label label {font-size:12px;font-weight:500;color:var(--ui-ink-secondary);margin:0;line-height:1.5;display:block}
#appShell.ui-workspace .recon-v11 .rv-field-kind {display:block;color:var(--ui-ink-secondary);font-size:10px;font-weight:500}
#appShell.ui-workspace .recon-v11 .rv-map-arrow {color:var(--ui-ink-secondary)}
#appShell.ui-workspace .recon-v11 .rv-map-control {min-width:0}
#appShell.ui-workspace .recon-v11 .rv-map-control select {width:100%;min-width:0;max-width:100%;font-size:12px;min-height:38px;padding:8px 10px}
#appShell.ui-workspace .recon-v11 .rv-map-control :is(small,.rv-map-sample) {display:block;font-size:10px;line-height:1.55;margin-top:7px;overflow-wrap:anywhere;color:var(--ui-ink-secondary)}
#appShell.ui-workspace .recon-v11 .rv-map-sample {font-variant-numeric:tabular-nums}
#appShell.ui-workspace .recon-v11 .rv-output-choice {display:flex;align-items:center;gap:9px;padding:14px 24px;margin:0;font-size:12px}
#appShell.ui-workspace :is(#paneTwo,#paneMarketplace).recon-v11 .rv-map-preview {padding:0;border:0;border-top:1px solid var(--ui-line);border-radius:0;margin:0 24px;background:transparent}
#appShell.ui-workspace .recon-v11 .rv-map-preview summary {padding:15px 0;cursor:pointer;font-size:12px;font-weight:600;color:var(--ui-ink-secondary)}
#appShell.ui-workspace .recon-v11 .rv-map-preview .rawprev {padding:0;margin:0;border:0;background:transparent;min-width:0}
#appShell.ui-workspace .recon-v11 .rv-map-preview .rawprev>div:first-child {display:none}
#appShell.ui-workspace .recon-v11 .rv-config-head {padding:22px}
#appShell.ui-workspace .recon-v11 .rv-config-head h3 {font-size:18px;letter-spacing:-.4px;margin:8px 0}
#appShell.ui-workspace .recon-v11 .rv-config-head p {font-size:12px;line-height:1.7;margin:0;max-width:660px}
#appShell.ui-workspace .recon-v11 .rv-config-wide {grid-column:1/-1}
#appShell.ui-workspace .recon-v11 .rv-settings-row {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0;padding:0 22px 22px}
#appShell.ui-workspace .recon-v11 .rv-settings-row>div {min-width:0}
#appShell.ui-workspace .recon-v11 .rv-settings-row label {display:block;font-size:12px;font-weight:600;margin-bottom:8px;color:var(--ui-ink)}
#appShell.ui-workspace .recon-v11 .rv-settings-row :is(input,select) {width:100%;min-width:0;min-height:38px;padding:8px 10px;font-size:12px;font-variant-numeric:tabular-nums}
#appShell.ui-workspace .recon-v11 .rv-settings-row small {display:block;font-size:11px;line-height:1.6;margin-top:8px}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-config-card .purchase-confirmation-settings {margin:0;padding:0 22px 22px;border:0;background:transparent}
#appShell.ui-workspace .recon-v11 .rv-config-card .purchase-confirmation-toggle {padding:13px;border:1px solid var(--ui-line);border-radius:9px;background:var(--ui-surface-muted);font-size:12px}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-config-card .purchase-confirmation-columns {grid-template-columns:1fr}
#appShell.ui-workspace .recon-v11 .rv-config-card>button {margin:0 22px 22px;max-width:calc(100% - 44px);font-size:12px;white-space:normal}
#appShell.ui-workspace .recon-v11 .rv-config-card #mpRunReadiness {padding:0 22px 22px;margin:0;font-size:12px;color:var(--ui-ink-secondary)}
#appShell.ui-workspace .recon-v11 :is(.rv-rule-controls,.rv-rule-merchants) {min-width:0;display:grid;gap:20px}
#appShell.ui-workspace .recon-v11 .rv-contract-rules {padding:0 22px}
#appShell.ui-workspace .recon-v11 .rv-contract-rule {display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:14px;padding:20px 0;border-top:1px solid var(--ui-line)}
#appShell.ui-workspace .recon-v11 .rv-rule-check {display:grid;place-items:center;align-self:start;width:24px;height:24px;border-radius:7px;background:var(--ui-blue-soft);color:var(--ui-blue)}
#appShell.ui-workspace .recon-v11 .rv-contract-rule h4 {margin:0 0 6px;font-size:14px}
#appShell.ui-workspace .recon-v11 .rv-contract-rule p {margin:0;font-size:12px;line-height:1.7;max-width:760px}
#appShell.ui-workspace .recon-v11 .rv-rule-fixed {font-size:10px;color:var(--ui-ink-secondary);white-space:nowrap}
#appShell.ui-workspace .recon-v11 .rv-contract-note {font-size:11px;line-height:1.7;color:var(--ui-ink-secondary);background:var(--ui-surface-muted);margin:0;padding:18px 22px;border-top:1px solid var(--ui-line)}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants #mrCard {display:grid;gap:20px;margin:0;min-width:0;box-shadow:none;background:transparent}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants :is(#mrAliasManager,#mrToleranceManager) {margin:0;padding:20px;border:1px solid var(--ui-line);border-radius:12px;background:var(--ui-surface-solid);min-width:0}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants details>summary {cursor:default;padding:0 0 18px;border:0;list-style:none}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants details>summary::after {display:none}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants :is(.import-alias-content,.vendor-tolerance-panel) {padding:0;border:0;background:transparent}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants :is(.merchant-alias-form,.vendor-tolerance-form) {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants :is(input,select) {width:100%;min-width:0}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants :is(.merchant-alias-tools,.merchant-alias-list-tools) {flex-wrap:wrap}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-inline-advanced {padding:0 22px 22px}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-inline-advanced :is(#matchingOptionsCard,#matchingOptionsDetails) {margin:0;padding:0;border:0;background:transparent;box-shadow:none}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-inline-advanced .advanced-settings-summary {display:none}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-inline-advanced .advanced-settings-body {display:grid;grid-template-columns:1fr;gap:0;margin:0;padding:0;border:0}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-inline-advanced .advanced-setting-item {padding:14px 0;border:0;border-top:1px solid var(--ui-line);background:transparent;border-radius:0}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-inline-advanced .advanced-setting-label {display:flex;align-items:center;gap:10px;font-size:12px;color:var(--ui-ink);margin:0 0 6px}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-inline-advanced .advanced-setting-help {font-size:11px;line-height:1.65;margin:0;color:var(--ui-ink-secondary)}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-inline-advanced .advanced-setting-field {max-width:none}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-inline-advanced select {width:100%;min-width:0}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-inline-advanced .advanced-setting-note {font-size:11px;line-height:1.6;background:var(--ui-surface-muted);padding:12px;border-radius:8px}
/* V11 keeps mapping compact, with the original help available to assistive tech. */
#appShell.ui-workspace .recon-v11 .rv-map-head .rv-source-code {display:none}
#appShell.ui-workspace .recon-v11 :is(.rv-field-kind,.rv-map-control small,.rv-map-sample) {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0}
#appShell.ui-workspace .recon-v11 .rv-map-hint {font-size:12px;line-height:1.7;color:var(--ui-ink-secondary);margin:16px 24px 24px}
#appShell.ui-workspace .recon-v11 .rv-intro {margin:22px 0 26px;scroll-margin-top:90px}
#appShell.ui-workspace .recon-v11 .rv-intro .rv-step-heading {margin:10px 0}
#appShell.ui-workspace .recon-v11:is([data-recon-step="1"],[data-recon-step="2"]) .rv-intro .rv-step-heading {font-size:clamp(27px,3vw,42px);letter-spacing:-1.4px}
#appShell.ui-workspace .recon-v11 .rv-intro>p:last-child {font-size:14px;line-height:1.7;margin:0}
#appShell.ui-workspace .recon-v11 .rv-flow-footer {border:0;border-top:1px solid var(--ui-line);border-radius:0;padding:20px 0;background:transparent}
#appShell.ui-workspace .recon-v11 .rv-purchase-rules {align-items:stretch}
#appShell.ui-workspace .recon-v11 .rv-matching-controls {height:100%}
#appShell.ui-workspace .recon-v11 .rv-matching-controls .rv-config-head {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:24px}
#appShell.ui-workspace .recon-v11 .rv-matching-controls .rv-config-head :is(p,.rv-eyebrow) {display:none}
#appShell.ui-workspace .recon-v11 .rv-matching-controls .rv-config-head h3 {font-size:21px;margin:0}
#appShell.ui-workspace .recon-v11 .rv-rule-badge {color:var(--ui-green);background:color-mix(in srgb,var(--ui-green) 9%,var(--ui-surface-solid));font-size:10px;white-space:nowrap;padding:6px 9px;border-radius:6px}
#appShell.ui-workspace .recon-v11 .rv-settings-row .advanced-setting-item {padding:0;border:0;background:transparent}
#appShell.ui-workspace .recon-v11 .rv-settings-row .advanced-setting-help {font-size:11px;line-height:1.6;margin-top:8px;color:var(--ui-ink-secondary)}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-inline-advanced .advanced-setting-item {position:relative;padding:14px 60px 14px 0}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-inline-advanced input[type=checkbox] {position:absolute;right:0;top:24px}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-confirmations {margin:0 22px 22px;padding:14px 0 0;border:0;border-top:1px solid var(--ui-line);background:transparent;border-radius:0}
#appShell.ui-workspace .recon-v11 .rv-confirmations .purchase-confirmation-toggle {display:flex;align-items:center;justify-content:space-between;gap:16px}
#appShell.ui-workspace .recon-v11 .rv-confirmations .workspace-setting-switch {order:1}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-confirmations .purchase-confirmation-settings {padding:14px 0 0}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants .u-section-title {font-size:21px;letter-spacing:-.5px}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants .import-alias-content {display:flex;flex-direction:column;gap:12px}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants .merchant-alias-list-tools {order:1;margin:0}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants #mrAliasStatus {order:2}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants #mrAliasList {order:3;margin:0}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants .merchant-alias-form {order:4}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants .merchant-alias-help {order:5;margin:0}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants #mrLegacyAliases {order:6}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants .rv-alias-actions {order:5;display:flex;flex-wrap:wrap;gap:8px}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants .rv-alias-actions button {width:auto;font-size:12px}
#appShell.ui-workspace #paneTwo.recon-v11 #mrCard .rv-alias-actions #mrAdd {width:auto}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants #mrAliasManager>summary {position:relative;padding-right:160px}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants #mrBuild {position:absolute;right:0;top:0;font-size:12px}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants .merchant-alias-list-tools {border:0;padding:0}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants #mrAliasSearch {flex:1;max-width:none}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-inline-advanced .advanced-setting-help {padding:0;margin-left:0}
#appShell.ui-workspace .recon-v11 .rv-settings-row :is(small,.advanced-setting-help) {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#appShell.ui-workspace .recon-v11 .rv-map-preview table {min-width:100%!important;width:max-content!important;table-layout:auto}
#appShell.ui-workspace .recon-v11 .rv-map-preview :is(th,td) {min-width:0!important;width:auto!important;padding:9px 12px!important;font-size:11px;white-space:nowrap}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants label:has(#mrPrefer) {grid-column:1/-1}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants .vendor-tolerance-panel {display:flex;flex-direction:column;gap:12px}
#appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants #mrToleranceList {order:-1}
#appShell.ui-workspace .recon-v11 .rv-progress {position:fixed;top:auto;right:auto;bottom:max(20px,env(safe-area-inset-bottom));left:50%;margin:0;transform:translateX(-50%);z-index:1200;display:flex;align-items:center;gap:14px;width:min(440px,calc(100vw - 32px));max-width:calc(100vw - 32px);padding:16px 20px;background:var(--ui-surface-solid);color:var(--ui-ink);border:1px solid var(--ui-line);border-radius:12px;box-shadow:0 12px 35px #0002;pointer-events:none}
#appShell.ui-workspace .recon-v11 .rv-progress strong {font-size:14px}
#appShell.ui-workspace .recon-v11 .rv-progress {bottom:max(24px,env(safe-area-inset-bottom));width:max-content;padding:16px 22px;border-radius:14px;box-shadow:0 12px 40px #17243826}
#appShell.ui-workspace .recon-v11 .rv-progress[data-notice-suspended="true"] {display:none}
#appShell.ui-workspace .recon-v11 .rv-progress p {font-size:12px;line-height:1.6;margin:4px 0 0;max-width:480px;color:var(--ui-ink-secondary)}
#appShell.ui-workspace .recon-v11 .rv-progress-spinner {width:20px;height:20px;flex:none;border:2px solid var(--ui-line);border-top-color:var(--ui-blue);border-radius:50%;animation:rv-progress-spin .8s linear infinite}
@keyframes rv-progress-spin {to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#appShell.ui-workspace .recon-v11 .rv-progress-spinner {animation:none}}
#appShell.ui-workspace .recon-v11 :is(.rv-summary,.rv-closeout) {background:var(--ui-surface-solid);border:1px solid var(--ui-line);border-radius:12px;overflow:hidden;margin-bottom:20px}
#appShell.ui-workspace .recon-v11 .rv-summary>header {padding:18px 22px 0}
#appShell.ui-workspace .recon-v11 .rv-eyebrow {font-size:9px;letter-spacing:1.4px;color:var(--ui-ink-secondary);font-weight:700}
#appShell.ui-workspace .recon-v11 .rv-summary h2 {font-size:19px;letter-spacing:-.5px;margin:7px 0}
#appShell.ui-workspace .recon-v11 .rv-summary header p {font-size:12px;margin:0;overflow-wrap:anywhere}
#appShell.ui-workspace .recon-v11 .rv-metrics {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:22px;gap:20px}
#appShell.ui-workspace .recon-v11 .rv-metrics>div+div {border-left:1px solid var(--ui-line);padding-left:20px}
#appShell.ui-workspace .recon-v11 .rv-metrics span {font-size:12px}
#appShell.ui-workspace .recon-v11 .rv-metrics strong {display:block;font-size:clamp(22px,2.5vw,34px);font-weight:650;letter-spacing:-1px;line-height:1.25;margin:7px 0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
#appShell.ui-workspace .recon-v11 .rv-metrics>div:nth-child(2) strong {color:var(--ui-green)}
#appShell.ui-workspace .recon-v11 .rv-metrics small {font-size:11px}
#appShell.ui-workspace .recon-v11 .rv-track {height:5px;background:var(--ui-line);margin:0 22px;border-radius:3px;overflow:hidden}
#appShell.ui-workspace .recon-v11 .rv-track span {display:block;height:100%;background:var(--ui-green)}
#appShell.ui-workspace .recon-v11 .rv-summary-note {font-size:11px;color:var(--ui-ink-secondary);line-height:1.6;margin:14px 22px 18px}
#appShell.ui-workspace .recon-v11 .rv-closeout {padding:22px;position:relative}
#appShell.ui-workspace .recon-v11 .rv-closeout h2 {position:relative;font-size:27px;margin:0 0 8px}
#appShell.ui-workspace .recon-v11 .rv-closeout>p {max-width:650px;font-size:13px;line-height:1.65;margin-bottom:20px}
#appShell.ui-workspace .recon-v11 .rv-closeout>button {margin:4px 8px 4px 0}
#appShell.ui-workspace .recon-v11 .rv-completion {display:grid;grid-template-columns:minmax(0,1fr) 300px;max-width:980px;margin:0 auto 24px;border:1px solid var(--ui-line);border-radius:14px;overflow:hidden;background:var(--ui-surface-solid);position:relative}
#appShell.ui-workspace .recon-v11 .rv-receipt {padding:28px;min-width:0}
#appShell.ui-workspace .recon-v11 .rv-receipt h2 {font-size:22px;margin:18px 0 6px;letter-spacing:-.6px;overflow-wrap:anywhere}
#appShell.ui-workspace .recon-v11 .rv-receipt header p {font-size:12px;margin:0 0 24px}
#appShell.ui-workspace .recon-v11 .rv-receipt-row {display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;font-size:14px}
#appShell.ui-workspace .recon-v11 .rv-receipt-row small {margin-left:10px;font-size:12px}
#appShell.ui-workspace .recon-v11 .rv-receipt-row strong {font-size:22px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0}
#appShell.ui-workspace .recon-v11 .rv-receipt-total {border-bottom:1px solid var(--ui-line);margin-bottom:10px;padding-bottom:22px;color:var(--ui-ink-secondary)}
#appShell.ui-workspace .recon-v11 .rv-receipt-total strong {font-size:34px;color:var(--ui-ink);letter-spacing:-1px}
#appShell.ui-workspace .recon-v11 .rv-receipt-total+.rv-receipt-row strong {color:var(--ui-green)}
#appShell.ui-workspace .recon-v11 .rv-breakdown {padding:16px;border-radius:8px;background:var(--ui-surface-muted);margin:10px 0 24px;font-size:12px}
#appShell.ui-workspace .recon-v11 .rv-breakdown p {margin:0 0 12px;font-size:11px}
#appShell.ui-workspace .recon-v11 .rv-breakdown>div {display:flex;justify-content:space-between;gap:14px;margin-top:8px}
#appShell.ui-workspace .recon-v11 .rv-receipt-footer {display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--ui-line);padding-top:16px}
#appShell.ui-workspace .recon-v11 .rv-receipt-footer .rv-actions {margin:0}
#appShell.ui-workspace .recon-v11 .rv-receipt-footer>button {font-size:12px}
#appShell.ui-workspace .recon-v11 .rv-completion>.rv-closeout {display:flex;flex-direction:column;border-radius:0;border:0;border-left:1px solid var(--ui-line);margin:0;background:var(--ui-surface-muted);padding:28px 24px}
#appShell.ui-workspace .recon-v11 .rv-completion-icon {display:grid;place-items:center;width:40px;height:40px;border-radius:12px;color:var(--ui-green);background:color-mix(in srgb,var(--ui-green) 9%,var(--ui-surface-solid));font-size:25px;margin-bottom:18px}
#appShell.ui-workspace .recon-v11 .rv-closeout>.rv-eyebrow {font-size:9px;letter-spacing:1.5px;margin:0 0 10px}
#appShell.ui-workspace .recon-v11 .rv-included {border-top:1px solid var(--ui-line);padding:18px 0;margin:0 0 28px;font-size:12px}
#appShell.ui-workspace .recon-v11 .rv-included strong {display:block;margin:8px 0}
#appShell.ui-workspace .recon-v11 .rv-included p {font-size:11px;line-height:1.6;margin:0}
#appShell.ui-workspace .recon-v11 .rv-closeout>.rv-finished {color:var(--ui-green);font-weight:650;margin-top:auto;margin-bottom:8px}
#appShell.ui-workspace .recon-v11 .rv-closeout>.rv-next-steps {border:0!important;background:transparent!important;color:var(--ui-blue)!important;padding:8px 0;text-align:left;font-size:12px;white-space:normal;box-shadow:none!important;justify-content:flex-start}
#appShell.ui-workspace .recon-v11 .rv-step[aria-label=Done]>.recon-center-next-steps {grid-column:1/-1}
#appShell.ui-workspace .recon-v11 .rv-extra {min-width:150px;max-width:300px;overflow-wrap:anywhere;white-space:normal}
/* Matching settings belong to step 3. Keep the classic dialog/controller for
   the support layout without exposing a second editing route in V11. */
#appShell.ui-workspace:has(.recon-v11) #purchaseSettingsButton {display:none!important}
#appShell.ui-workspace .rv-next-steps-body .recon-center-next-steps {margin:12px 0 0;padding:12px;border-radius:10px}
#appShell.ui-workspace .rv-next-steps-body .recon-center-next-steps .u-flex {display:grid}
#appShell.ui-workspace .recon-v11 .rv-actions {display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
#appShell.ui-workspace .recon-v11 .recon-results-stage {margin-top:0}
#appShell.ui-workspace .recon-v11 .recon-results-grid {display:block}
#appShell.ui-workspace .recon-v11 :is(#previewScroll,#marketplaceScroll) {max-width:100%;overflow:auto}
#appShell.ui-workspace .recon-v11 .rv-chart {padding:12px 8px;border:0;border-top:1px solid var(--ui-line);border-radius:0}
#appShell.ui-workspace .recon-v11 .rv-chart summary {cursor:pointer;color:var(--ui-ink-secondary);font-size:12px}
#appShell.ui-workspace .recon-v11 .rv-supporting {padding:12px 16px;border:0;border-bottom:1px solid var(--ui-line);border-radius:0}
#appShell.ui-workspace .recon-v11 .rv-supporting>.rv-supporting-title {margin:0 0 12px;color:var(--ui-ink-secondary);font-size:12px;font-weight:600}
#appShell.ui-workspace .recon-v11 .rv-chart #sparkBox {display:block;padding:14px 0}
#appShell.ui-workspace .rv-dialog {width:min(960px,calc(100vw - 32px));max-height:85dvh;padding:0;border:1px solid var(--ui-line);border-radius:14px;background:var(--ui-surface-solid);color:var(--ui-ink);margin:auto;font-family:var(--workspace-font-sans,inherit)}
#appShell.ui-workspace .rv-dialog::backdrop {background:color-mix(in srgb,var(--ui-ink) 28%,transparent);backdrop-filter:blur(3px)}
#appShell.ui-workspace .rv-dialog>header {display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;border-bottom:1px solid var(--ui-line)}
#appShell.ui-workspace .rv-dialog h2 {font-size:24px;margin:0}
#appShell.ui-workspace .rv-dialog-body {padding:22px 24px;overflow:auto;max-height:65dvh}
#appShell.ui-workspace .rv-finished-results-table {overflow:auto;max-height:48dvh;border:1px solid var(--ui-line);border-radius:8px}
#appShell.ui-workspace .rv-finished-results-table table {width:100%;white-space:nowrap;font-size:12px}
#appShell.ui-workspace .rv-finished-results-table :is(th,td) {padding:10px 12px;border-bottom:1px solid var(--ui-line);text-align:left}
#appShell.ui-workspace .rv-finished-results-pager {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin:16px 0;font-size:12px}
#appShell.ui-workspace .rv-fields {display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,2fr);gap:10px 20px;font-size:12px;margin:0 0 24px}
#appShell.ui-workspace .rv-fields dt {color:var(--ui-ink-secondary)}
#appShell.ui-workspace .rv-fields dd {margin:0;overflow-wrap:anywhere;white-space:pre-wrap}
#appShell.ui-workspace .rv-investigation {width:100%;font-size:12px}
#appShell.ui-workspace .rv-investigation>tbody>tr>td {padding:0}
#appShell.ui-workspace .rv-celebration {position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2}
#appShell.ui-workspace .rv-celebration i {position:absolute;width:7px;height:12px;border-radius:2px;background:var(--ui-blue)}
#appShell.ui-workspace .rv-celebration i:nth-child(2n) {background:var(--ui-green)}
#appShell.ui-workspace .rv-celebration i:nth-child(3n) {background:var(--ui-amber,var(--ui-blue))}
@media(prefers-reduced-motion:reduce){#appShell.ui-workspace .rv-celebration{display:none}}
@media(max-width:950px){
  #appShell.ui-workspace .recon-v11 :is(.rv-mapping-grid,.rv-config-grid) {grid-template-columns:1fr}
  #appShell.ui-workspace .recon-v11 .rv-completion {grid-template-columns:1fr}
  #appShell.ui-workspace .recon-v11 .rv-completion>.rv-closeout {border-left:0;border-top:1px solid var(--ui-line)}
  #appShell.ui-workspace .recon-v11 .recon-source-grid {grid-template-columns:1fr}
  #appShell.ui-workspace .recon-v11 .rv-steps {display:flex;overflow-x:auto}
  /* Size each step to its label; the strip scrolls instead of wrapping the
     title and status into tall, uneven buttons on narrow screens. */
  #appShell.ui-workspace .recon-v11 .rv-steps button {flex:0 0 auto;min-width:130px;white-space:nowrap}
}
@media(max-width:600px){
  #appShell.ui-workspace .recon-v11 .rv-receipt {padding:18px}
  #appShell.ui-workspace .recon-v11 .rv-receipt-row {align-items:flex-start;font-size:12px}
  #appShell.ui-workspace .recon-v11 .rv-receipt-row small {display:block;margin:5px 0 0}
  #appShell.ui-workspace .recon-v11 .rv-receipt-total strong {font-size:26px}
  #appShell.ui-workspace #paneTwo.recon-v11 .rv-rule-merchants :is(.merchant-alias-form,.vendor-tolerance-form) {grid-template-columns:1fr}
  #appShell.ui-workspace .recon-v11 .rv-contract-rule {grid-template-columns:24px minmax(0,1fr);gap:10px}
  #appShell.ui-workspace .recon-v11 .rv-rule-fixed {grid-column:2}
  #appShell.ui-workspace .recon-v11 .rv-map-head {padding:16px}
  #appShell.ui-workspace .recon-v11 .rv-map-fields {padding:0 16px}
  #appShell.ui-workspace .recon-v11 .rv-map-field {grid-template-columns:1fr;gap:8px}
  #appShell.ui-workspace .recon-v11 .rv-map-label {display:flex;justify-content:space-between;align-items:baseline;gap:10px}
  #appShell.ui-workspace .recon-v11 .rv-map-arrow {display:none}
  #appShell.ui-workspace .recon-v11 .rv-config-head {padding:18px}
  #appShell.ui-workspace .recon-v11 .rv-settings-row {grid-template-columns:1fr;padding:0 18px 18px}
  #appShell.ui-workspace .recon-v11 .rv-run-setup {align-items:stretch;flex-direction:column;gap:12px;padding:16px}
  #appShell.ui-workspace .recon-v11 .rv-run-setup>div {width:100%}
  #appShell.ui-workspace .recon-v11 .rv-readiness {text-align:left}
  #appShell.ui-workspace .recon-v11 .recon-source-card {padding:16px!important}
  #appShell.ui-workspace .recon-v11 .rv-metrics {grid-template-columns:1fr;padding:16px;gap:12px}
  #appShell.ui-workspace .recon-v11 .rv-metrics>div {display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center}
  #appShell.ui-workspace .recon-v11 .rv-metrics>div+div {padding:12px 0 0;border:0;border-top:1px solid var(--ui-line)}
  #appShell.ui-workspace .recon-v11 .rv-metrics strong {grid-column:2;grid-row:1/3;font-size:24px;letter-spacing:-.5px;white-space:nowrap;margin:0}
  #appShell.ui-workspace .recon-v11 .rv-footer {padding:12px}
  #appShell.ui-workspace .rv-fields {grid-template-columns:1fr;gap:5px}
  #appShell.ui-workspace .rv-fields dd {margin-bottom:9px}
}
