/* WP EasyCart Admin — Store setup ( 6.0.7 ): the overview on the Settings home and the setup pages.
   Accent follows the admin colorizer ( --ec-brand ) as the settings pages do. */
.ecsu-overview, .ecsu-worth, .ecsu-history, .ecsu-wrap, .ecsu-all-head { --ecsu-accent: var(--ec-brand, var(--ecv2-primary)); --ecsu-accent-soft: var(--ec-brand-soft, var(--ecv2-primary-light)); }

/* section headings */
.ecsu-section-head { display:flex; align-items:baseline; flex-wrap:wrap; gap:4px 10px; margin:0 0 8px; }
.ecsu-section-head h2 { margin:0; font-size:15px; font-weight:700; line-height:1.3; color:var(--ecv2-g900); }
.ecsu-section-head span { font-size:12.5px; color:var(--ecv2-g600); }
.ecsu-all-head { margin-top:26px; padding-top:18px; border-top:1px solid var(--ecv2-g200); }

/* the overview */
.ecsu-overview { margin:0 0 18px; }
.ecsu-stage { margin:0 0 14px; }
.ecsu-stage-title { margin:0 0 6px; font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--ecv2-g600); }
.ecsu-stage-title span { font-weight:400; letter-spacing:0; text-transform:none; color:var(--ecv2-g600); margin-left:6px; font-size:12px; }
.ecsu-areas { list-style:none; margin:0; padding:0; background:#fff; border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); }
.ecsu-area { display:grid; grid-template-columns:34px minmax(0,1fr) auto auto; align-items:center; gap:10px 14px; padding:12px 14px; margin:0; }
.ecsu-area + .ecsu-area { border-top:1px solid var(--ecv2-g100); }
.ecsu-area-ic { width:34px; height:34px; border-radius:9px; background:var(--ecsu-accent-soft); color:var(--ecv2-g800); display:flex; align-items:center; justify-content:center; }
.ecsu-area-ic svg { width:17px; height:17px; }
.ecsu-area-text { display:flex; flex-direction:column; gap:2px; min-width:0; }
.ecsu-area-title { font-size:13.5px; color:var(--ecv2-g900); }
.ecsu-area-sum { font-size:13px; line-height:1.45; color:var(--ecv2-g700); overflow-wrap:anywhere; }
.ecsu-area-line { font-size:12px; line-height:1.4; color:var(--ecv2-g500); overflow-wrap:anywhere; }
.ecsu-area-btn { white-space:nowrap; }

/* status chips */
.ecsu-chip { display:inline-flex; align-items:center; gap:5px; padding:2px 9px; border-radius:999px; font-size:11.5px; font-weight:600; line-height:1.6; white-space:nowrap; background:var(--ecv2-g100); color:var(--ecv2-g700); }
.ecsu-chip::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor; opacity:.8; }
.ecsu-chip.is-ready { background:#dcfce7; color:#166534; }
.ecsu-chip.is-attention { background:var(--ecv2-amber-light, #fef3c7); color:#92400e; }
.ecsu-chip.is-todo { background:#e0e7ff; color:#3730a3; }
.ecsu-chip.is-off, .ecsu-chip.is-own { background:var(--ecv2-g100); color:var(--ecv2-g600); }
.ecsu-chip.is-plan { background:var(--ecv2-plan-bg, #ede9fe); color:var(--ecv2-plan-fg, #5b21b6); } /* 6.0.7: a state that is the plan it needs: the one plan chip look */

/* worth a look */
.ecsu-worth { margin:0 0 18px; }
.ecsu-worth-list { list-style:none; margin:0; padding:0; background:#fff; border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); }
.ecsu-worth-item { display:grid; grid-template-columns:10px minmax(0,1fr) auto; gap:10px 12px; align-items:center; padding:11px 14px; margin:0; }
.ecsu-worth-item + .ecsu-worth-item { border-top:1px solid var(--ecv2-g100); }
.ecsu-dot { width:8px; height:8px; border-radius:50%; background:#d97706; }
.ecsu-worth-item.is-bad .ecsu-dot { background:#b91c1c; }
.ecsu-worth-item.is-info .ecsu-dot { background:#2563eb; }
.ecsu-worth-text { display:flex; flex-direction:column; gap:2px; min-width:0; font-size:13px; line-height:1.45; color:var(--ecv2-g700); }
.ecsu-worth-text b { color:var(--ecv2-g900); }
.ecsu-worth-area { font-style:normal; color:var(--ecv2-g500); font-size:12px; margin-left:4px; }
.ecsu-worth-actions { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.ecsu-aside-list { margin-top:8px; font-size:12.5px; color:var(--ecv2-g600); }
.ecsu-aside-list summary { cursor:pointer; }
.ecsu-aside-list ul { margin:6px 0 0; padding:0 0 0 16px; }
.ecsu-aside-list li { margin:2px 0; }
.ecsu-link { background:none; border:0; padding:0; color:var(--ecsu-accent); font:inherit; text-decoration:underline; cursor:pointer; }

/* recent changes */
.ecsu-history { margin:0 0 18px; }
.ecsu-history-body { background:#fff; border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); }
.ecsu-history-list { list-style:none; margin:0; padding:0; }
.ecsu-history-item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:6px 14px; align-items:center; padding:10px 14px; margin:0; }
.ecsu-history-item + .ecsu-history-item { border-top:1px solid var(--ecv2-g100); }
.ecsu-history-item.is-undone .ecsu-history-changes { opacity:.6; }
.ecsu-history-changes { display:flex; flex-direction:column; gap:2px; min-width:0; font-size:13px; line-height:1.45; color:var(--ecv2-g700); }
.ecsu-history-change { overflow-wrap:anywhere; }
.ecsu-history-change b { color:var(--ecv2-g900); font-weight:600; }
.ecsu-history-from { color:var(--ecv2-g500); }
.ecsu-history-to { color:var(--ecv2-g900); }
.ecsu-history-more { font-size:12px; color:var(--ecv2-g500); }
.ecsu-history-meta { display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:flex-end; font-size:12px; color:var(--ecv2-g500); }
.ecsu-empty { margin:0; padding:12px 14px; font-size:12.5px; color:var(--ecv2-g500); }

/* a setup page */
.ecsu-wrap { display:flex; flex-direction:column; gap:18px; }
.ecsu-wrap > .ecst-header { margin:0; }
.ecsu-summary { display:flex; align-items:flex-start; gap:12px; background:#fff; border:1px solid var(--ecv2-g200); border-left:4px solid var(--ecv2-g300); border-radius:var(--ecv2-r); padding:14px 16px; }
.ecsu-summary.is-ready { border-left-color:#16a34a; }
.ecsu-summary.is-attention { border-left-color:#d97706; }
.ecsu-summary.is-todo { border-left-color:#4f46e5; }
.ecsu-summary-text { min-width:0; }
.ecsu-summary-sentence { margin:0; font-size:15px; line-height:1.45; color:var(--ecv2-g900); font-weight:600; }
.ecsu-summary-line { margin:4px 0 0; font-size:13px; line-height:1.45; color:var(--ecv2-g600); }
.ecsu-wrap #ecsu_worth_wrap:empty { display:none; }
.ecsu-wrap .ecsu-worth, .ecsu-wrap .ecsu-history { margin:0; }
.ecsu-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:18px; align-items:start; }
.ecsu-main { min-width:0; display:flex; flex-direction:column; gap:14px; }
.ecsu-preview { min-width:0; background:#fff; border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); padding:14px 16px; }
@container (min-width: 980px) { .ecsu-layout.has-preview { grid-template-columns:minmax(0,1fr) 340px; } .ecsu-preview { position:sticky; top:56px; } }
.ecsu-fine .ecst-embed { background:#fff; border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); padding:4px 0; }
.ecsu-fine .ecst-savebar-embed { position:sticky; bottom:12px; margin:8px 12px; }
.ecsu-allset-list { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); gap:10px; }
.ecsu-allset-list li { margin:0; }
.ecsu-allset-list a { display:flex; flex-direction:column; gap:3px; height:100%; box-sizing:border-box; background:#fff; border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); padding:11px 14px; text-decoration:none; color:var(--ecv2-g700); font-size:12.5px; line-height:1.4; }
.ecsu-allset-list a:hover, .ecsu-allset-list a:focus-visible { border-color:var(--ecsu-accent); outline:none; }
.ecsu-allset-list b { color:var(--ecv2-g900); font-size:13px; }

/* the settings home's tile for a setup page */
.ecst-tile.is-setup { border-color:var(--ec-brand, var(--ecv2-primary)); }

@media (max-width: 782px) {
	.ecsu-area { grid-template-columns:34px minmax(0,1fr); }
	.ecsu-area .ecsu-chip { grid-column:2; justify-self:start; }
	.ecsu-area-btn { grid-column:2; justify-self:start; }
	.ecsu-worth-item { grid-template-columns:10px minmax(0,1fr); }
	.ecsu-worth-actions { grid-column:2; justify-content:flex-start; }
	.ecsu-history-item { grid-template-columns:minmax(0,1fr); }
	.ecsu-history-meta { justify-content:flex-start; }
}

/* Not now and Undo: a plain outlined button ( the settings save bar's ghost button is white text for a dark bar ) */
.ecsu-btn-quiet { background:#fff; border-color:var(--ecv2-g300); color:var(--ecv2-g700); }
.ecsu-btn-quiet:hover, .ecsu-btn-quiet:focus-visible { border-color:var(--ecv2-g500); color:var(--ecv2-g900); }

/* a setup page's cards ( questions, steps ) */
.ecsu-card { background:#fff; border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); padding:16px 18px; display:flex; flex-direction:column; gap:12px; }
.ecsu-card-head h2 { margin:0; font-size:15px; font-weight:700; line-height:1.3; color:var(--ecv2-g900); }
.ecsu-card-head p { margin:3px 0 0; font-size:12.5px; line-height:1.45; color:var(--ecv2-g500); }
.ecsu-note { margin:0; font-size:12.5px; color:var(--ecv2-g600); }
.ecsu-row-line { margin:0; font-size:13px; line-height:1.5; color:var(--ecv2-g700); display:flex; flex-wrap:wrap; gap:4px 12px; align-items:baseline; }

/* ways: one card each, the one in use marked */
.ecsu-ways { display:grid; grid-template-columns:repeat(auto-fill, minmax(230px, 1fr)); gap:10px; }
.ecsu-way { border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); padding:12px 14px; display:flex; flex-direction:column; gap:6px; min-width:0; }
.ecsu-way.is-current { border-color:var(--ecsu-accent); box-shadow:inset 0 0 0 1px var(--ecsu-accent); background:var(--ecsu-accent-soft); }
.ecsu-way.is-locked .ecsu-way-desc { color:var(--ecv2-g500); }
.ecsu-way-head { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
.ecsu-way-title { font-size:13.5px; line-height:1.35; color:var(--ecv2-g900); }
.ecsu-way-desc { margin:0; font-size:12.5px; line-height:1.45; color:var(--ecv2-g700); flex:1; }
.ecsu-way-foot { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.ecsu-plan { display:inline-block; padding:1px 7px; border-radius:999px; font-size:10.5px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; background:var(--ecv2-plan-bg, #ede9fe); color:var(--ecv2-plan-fg, #5b21b6); white-space:nowrap; }
.ecsu-plan.is-free { background:var(--ecv2-g100); color:var(--ecv2-g600); }

/* steps ( 6.0.7, Matt's review: the steps card read flat ): the head with what is done in words and as a bar ( as the product
   builder's head ); a step to do or one that needs attention is a tinted panel, the first of them a little raised; done and optional
   steps are quiet rows between thin rules. */
.ecsu-step-mark { width:26px; height:26px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:700; background:var(--ecv2-g100); color:var(--ecv2-g600); }
.ecsu-steps-card { gap:14px; }
.ecsu-steps-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px 24px; padding-bottom:14px; border-bottom:1px solid var(--ecv2-g100); }
.ecsu-steps-head-t { flex:1 1 280px; min-width:0; }
.ecsu-steps-progress { flex:0 0 auto; display:flex; flex-direction:column; align-items:flex-end; gap:6px; min-width:160px; }
.ecsu-steps-count { font-size:12.5px; color:var(--ecv2-g600); white-space:nowrap; font-variant-numeric:tabular-nums; }
.ecsu-steps-count b { color:var(--ecv2-g900); font-weight:700; }
.ecsu-steps-bar { position:relative; display:block; width:160px; height:6px; border-radius:999px; background:var(--ecv2-g100); overflow:hidden; }
.ecsu-steps-bar > span { position:absolute; left:0; top:0; bottom:0; border-radius:inherit; background:var(--ecsu-accent); transition:width .25s; }
.ecsu-steps-complete .ecsu-steps-bar > span { background:#16a34a; }
.ecsu-steps-complete .ecsu-steps-count { color:#166534; }
.ecsu-steps-complete .ecsu-steps-count b { color:#166534; }
.ecsu-steps { list-style:none; margin:0 -10px; padding:0; display:flex; flex-direction:column; }
.ecsu-step { display:grid; grid-template-columns:26px minmax(0,1fr); gap:10px 14px; padding:14px 10px; margin:0; border:1px solid transparent; scroll-margin-top:72px; }
.ecsu-step + .ecsu-step { border-top-color:var(--ecv2-g100); }
.ecsu-step.is-todo, .ecsu-step.is-warn { border-radius:10px; margin:6px 0; }
.ecsu-step.is-todo:first-child, .ecsu-step.is-warn:first-child { margin-top:0; }
.ecsu-step.is-todo:last-child, .ecsu-step.is-warn:last-child { margin-bottom:0; }
.ecsu-step.is-todo + .ecsu-step:not(.is-todo):not(.is-warn), .ecsu-step.is-warn + .ecsu-step:not(.is-todo):not(.is-warn) { border-top-color:transparent; }
.ecsu-step.is-todo { background:var(--ecsu-accent-soft); background:color-mix(in srgb, var(--ecsu-accent) 5%, #fff); border-color:var(--ecv2-g300); border-color:color-mix(in srgb, var(--ecsu-accent) 32%, #fff); }
.ecsu-step.is-warn { background:#fffbeb; border-color:#fcd34d; }
.ecsu-step.ecsu-step-next { box-shadow:0 1px 3px rgba(15,23,42,.08); }
.ecsu-step.is-done .ecsu-step-mark { background:#dcfce7; color:#15803d; }
.ecsu-step.is-todo .ecsu-step-mark { background:var(--ecsu-accent); color:var(--ec-on-brand, #fff); }
.ecsu-step.is-warn .ecsu-step-mark { background:#b45309; color:#fff; }
.ecsu-step.is-optional .ecsu-step-mark { background:#fff; color:var(--ecv2-g500); box-shadow:inset 0 0 0 1px var(--ecv2-g300); }
.ecsu-step-mark svg { display:block; }
.ecsu-step-body { min-width:0; display:flex; flex-direction:column; gap:4px; }
.ecsu-step-head { display:flex; flex-wrap:wrap; align-items:center; gap:4px 10px; min-height:26px; }
.ecsu-step-title { font-size:14px; font-weight:600; line-height:1.35; color:var(--ecv2-g900); }
.ecsu-step.is-done .ecsu-step-title, .ecsu-step.is-optional .ecsu-step-title { color:var(--ecv2-g800); }
.ecsu-step-state { display:inline-flex; align-items:center; padding:1px 8px; border-radius:999px; font-size:11px; font-weight:600; line-height:1.6; white-space:nowrap; background:var(--ecv2-g100); color:var(--ecv2-g600); }
.ecsu-step-state.is-todo { background:#fff; color:var(--ecv2-g800); box-shadow:inset 0 0 0 1px var(--ecv2-g300); box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ecsu-accent) 40%, #fff); }
.ecsu-step-state.is-warn { background:#fef3c7; color:#92400e; }
.ecsu-step-text { margin:0; font-size:13px; line-height:1.5; color:var(--ecv2-g700); }
.ecsu-step.is-done .ecsu-step-text, .ecsu-step.is-optional .ecsu-step-text { color:var(--ecv2-g600); }
.ecsu-step.is-warn .ecsu-step-text { color:#78350f; }
.ecsu-step-fix { display:flex; flex-direction:column; gap:10px; align-items:flex-start; margin-top:6px; min-width:0; }
.ecsu-step-fix > * { max-width:100%; }
.ecsu-step-fix .ecsu-actions { gap:8px 14px; }
/* 6.0.7: a card with one step is one row ( mark, title and words, the action beside them ). */
.ecsu-steps-one { padding-top:14px; padding-bottom:14px; }
.ecsu-steps-one > .ecsu-step { display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px; padding:0; border:0; box-shadow:none; }
.ecsu-steps-one > .ecsu-step > .ecsu-step-body { flex:1 1 260px; }
.ecsu-steps-one > .ecsu-step > .ecsu-step-fix { flex:0 1 auto; margin:0; align-items:flex-end; }
.ecsu-steps-one .ecsu-step-title { margin:0; padding:0; font-size:14px; }
@media (max-width: 600px) {
	.ecsu-steps-progress { flex:1 1 100%; align-items:flex-start; }
	.ecsu-steps-bar { width:100%; }
	.ecsu-steps { margin:0 -8px; }
	.ecsu-step { grid-template-columns:24px minmax(0,1fr); gap:8px 10px; padding:12px 8px; }
	.ecsu-step .ecsu-step-mark { width:24px; height:24px; font-size:11.5px; }
	.ecsu-step-head { min-height:24px; }
}

/* controls inside steps */
.ecsu-pills { display:flex; flex-wrap:wrap; gap:6px; }
.ecsu-pill { border:1px solid var(--ecv2-g300); background:#fff; color:var(--ecv2-g700); border-radius:999px; padding:5px 12px; font-size:12.5px; cursor:pointer; line-height:1.4; }
.ecsu-pill:hover, .ecsu-pill:focus-visible { border-color:var(--ecsu-accent); }
.ecsu-pill.is-on { background:var(--ecsu-accent); border-color:var(--ecsu-accent); color:var(--ec-on-brand, #fff); font-weight:600; }
.ecsu-pill[disabled] { opacity:.6; cursor:wait; }
.ecsu-actions { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.ecsu-step-line { margin:0 0 10px; font-size:13.5px; line-height:1.5; color:var(--ecv2-g800); }
.ecsu-rates, .ecsu-preview-rates { list-style:none; margin:0; padding:0; width:100%; max-width:440px; }
.ecsu-rates li, .ecsu-preview-rates li { display:flex; justify-content:space-between; gap:12px; padding:5px 0; margin:0; font-size:13px; border-bottom:1px dashed var(--ecv2-g200); font-variant-numeric:tabular-nums; }
.ecsu-rates li:last-child, .ecsu-preview-rates li:last-child { border-bottom:0; }
.ecsu-more { font-size:12px; color:var(--ecv2-g500); }
.ecsu-inline { display:flex; flex-wrap:wrap; gap:8px; align-items:center; font-size:12.5px; color:var(--ecv2-g700); }
.ecsu-in { min-height:34px; border:1px solid var(--ecv2-g300); border-radius:var(--ecv2-rs, 6px); padding:4px 8px; font-size:13px; max-width:100%; box-sizing:border-box; }
.ecsu-in:focus { border-color:var(--ecsu-accent); outline:2px solid var(--ecsu-accent-soft); outline-offset:0; }
input.ecsu-in { width:110px; }
.ecsu-unit { display:inline-flex; align-items:center; gap:4px; }
.ecsu-unit > span { font-size:12px; color:var(--ecv2-g500); }
.ecsu-table { border-collapse:collapse; width:100%; max-width:560px; font-size:13px; }
/* admin.css draws a frame on every table in the content area ( .ec_admin_content_area table ). */
.ecsu-wrap table.ecsu-table { border:0; }
.ecsu-table th { text-align:left; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--ecv2-g500); padding:4px 8px 6px 0; }
.ecsu-table td { padding:5px 8px 5px 0; border-top:1px solid var(--ecv2-g100); vertical-align:middle; }
.ecsu-table td small { color:var(--ecv2-g500); }
.ecsu-weights { display:flex; flex-direction:column; gap:8px; width:100%; }
.ecsu-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:4px; }
.ecsu-list li { display:flex; align-items:center; gap:8px; margin:0; font-size:13px; }

/* a switch with its words beside it, the whole line its label ( a step's on / off ) */
.ecsu-switch { display:inline-flex; align-items:center; gap:10px; padding:8px 14px 8px 10px; border:1px solid var(--ecv2-g200); border-radius:8px; background:#fff; font-size:13px; font-weight:500; line-height:1.35; color:var(--ecv2-g900); cursor:pointer; }
.ecsu-switch:hover { border-color:var(--ecv2-g300); }
.ecsu-switch:has(input:focus-visible) { border-color:var(--ecsu-accent); }
.ecsu-switch .ecst-toggle { flex:0 0 auto; }

/* rates as a small table: each place a group, the price in a column of its own, free over under the rate's name */
.ecsu-wrap table.ecsu-rates-table { width:100%; max-width:520px; border:1px solid var(--ecv2-g200); border-radius:8px; border-collapse:separate; border-spacing:0; overflow:hidden; background:#fff; }
.ecsu-rates-table thead th { padding:8px 12px; background:var(--ecv2-g50, #f9fafb); border-bottom:1px solid var(--ecv2-g200); }
.ecsu-rates-table td { padding:9px 12px; border-top:1px solid var(--ecv2-g100); }
.ecsu-rates-table tbody:first-of-type tr:first-child td { border-top:0; }
.ecsu-rates-table th.ecsu-rates-price, .ecsu-rates-table td.ecsu-rates-price { text-align:right; white-space:nowrap; padding-right:14px; }
.ecsu-rates-table td.ecsu-rates-price { font-weight:600; color:var(--ecv2-g900); font-variant-numeric:tabular-nums; }
.ecsu-rates-table .ecsu-rates-place th { padding:7px 12px; font-size:12.5px; font-weight:600; letter-spacing:0; text-transform:none; color:var(--ecv2-g700); text-align:left; border-top:1px solid var(--ecv2-g200); background:var(--ecv2-g50, #f9fafb); }
.ecsu-rates-table tbody:first-of-type .ecsu-rates-place th { border-top:0; }
.ecsu-rates-table.has-places thead th { border-bottom-color:var(--ecv2-g100); }
.ecsu-rates-place + tr td { border-top:0; }
.ecsu-rates-name { display:block; color:var(--ecv2-g900); overflow-wrap:anywhere; }
.ecsu-rates-hint { display:inline-flex; align-items:center; gap:5px; margin-top:2px; font-size:12px; color:#15803d; }
.ecsu-rates-hint::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor; }

/* a field on one line with its label and its Save, one height */
.ecsu-field-line { gap:8px 12px; }
.ecsu-field-line > label { font-size:13px; font-weight:600; color:var(--ecv2-g800); }
.ecsu-field-line-in { display:inline-flex; align-items:stretch; gap:8px; }
.ecsu-field-line-in > .ecsu-money, .ecsu-field-line-in > .ecsu-unit, .ecsu-field-line-in > .ecv2-btn { height:36px; box-sizing:border-box; }
.ecsu-field-line-in > .ecv2-btn { padding-top:0; padding-bottom:0; }
.ecsu-wrap .ecsu-field-line-in input.ecsu-in.ecsu-money-in { min-height:0; height:100%; }
.ecsu-step-fix .ecsu-field-line-note { margin:-4px 0 0; font-size:12px; color:var(--ecv2-g500); }

/* labels question */
.ecsu-label-list { list-style:none; margin:0; padding:0; }
.ecsu-label-item { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 0; margin:0; }
.ecsu-label-item + .ecsu-label-item { border-top:1px solid var(--ecv2-g100); }
.ecsu-label-item.is-current .ecsu-label-text > b { color:var(--ecv2-g900); }
.ecsu-label-text { display:flex; flex-wrap:wrap; align-items:baseline; gap:2px 8px; min-width:0; font-size:13px; color:var(--ecv2-g900); }
.ecsu-label-text > span:last-child { flex-basis:100%; font-size:12.5px; line-height:1.45; color:var(--ecv2-g600); }

/* preview */
.ecsu-preview-head h2 { margin:0 0 10px; font-size:14px; font-weight:700; color:var(--ecv2-g900); }
.ecsu-preview-form { display:flex; flex-direction:column; gap:8px; }
.ecsu-preview-form label { display:flex; flex-direction:column; gap:3px; font-size:12px; color:var(--ecv2-g600); }
.ecsu-preview-form .ecsu-in { width:100%; }
.ecsu-preview-form .ecv2-btn { align-self:flex-start; }
.ecsu-preview-out { margin-top:12px; }
.ecsu-preview-note, .ecsu-preview-empty { margin:0; font-size:12.5px; line-height:1.45; color:var(--ecv2-g600); }
.ecsu-preview-empty { color:#92400e; }
.ecsu-label-item > a { white-space:nowrap; }
/* Fine-tune rows stand alone: no child indent or group rail from their settings page */
.ecst-embed .ecst-row.is-child { padding-left:16px; background:transparent; }
/* the settings page draws a tree line and branch through a dependent row ( at 26px, under its label here ): none in Fine-tune */
.ecst-embed .ecst-row.is-child:before, .ecst-embed .ecst-row.is-child:after { content:none; display:none; }
.ecst-embed .ecst-row.is-child .ecst-bar { display:block; }
.ecst-embed .ecst-rows > .ecst-row + .ecst-row { border-top:1px solid var(--ecv2-g100); }
/* Fine-tune shows a page's advanced rows too: they are the reason it is there ( 6.0.7; they were hidden as on the settings page ). */
.ecst-embed .ecst-row.is-advanced:not(.is-shown):not([hidden]) { display:grid; }

/* tax */
.ecsu-way-note { font-size:11.5px; font-weight:600; color:#166534; }
.ecsu-preview-places { list-style:none; margin:8px 0 0; padding:0; display:flex; flex-direction:column; gap:8px; }
.ecsu-preview-places li { display:flex; flex-direction:column; gap:2px; margin:0; font-size:13px; line-height:1.45; color:var(--ecv2-g700); padding-bottom:8px; border-bottom:1px dashed var(--ecv2-g200); }
.ecsu-preview-places li:last-child { border-bottom:0; padding-bottom:0; }
.ecsu-preview-places b { color:var(--ecv2-g900); }
.ecsu-step-fix .ectx-setup.ecsu-tax-rec { padding:0; width:100%; box-sizing:border-box; }

/* payments ( 6.0.7, Part 2 ) */
.ecsu-wrap .ecst-toggle { --ecst-accent:var(--ecsu-accent); --ecst-accent-soft:var(--ecsu-accent-soft); }
.ecsu-ways .ecsu-way.is-wide { grid-column:1 / -1; }
.ecsu-way-state { font-size:12px; color:var(--ecv2-g600); }
.ecsu-gw-pick select.ecsu-in { min-width:0; max-width:280px; flex:1 1 200px; }
.ecsu-scroll { overflow-x:auto; border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); padding:0 12px; }
.ecsu-methods { max-width:none; }
.ecsu-methods th { padding-top:8px; }
.ecsu-methods td { padding:7px 10px 7px 0; }
.ecsu-methods td:first-child { color:var(--ecv2-g900); }
.ecsu-methods td.ecsu-methods-via { color:var(--ecv2-g600); }
.ecsu-methods td:last-child { text-align:right; }
.ecsu-methods td:last-child .ecsu-actions { justify-content:flex-end; }
.ecsu-methods tr.is-need td:first-child, .ecsu-methods tr.is-na td:first-child { color:var(--ecv2-g500); }
.ecsu-paypv { border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); padding:12px; display:flex; flex-direction:column; gap:6px; background:var(--ecv2-g50, #f9fafb); }
.ecsu-paypv-step { margin:0 0 2px; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--ecv2-g500); }
.ecsu-paypv-lab { margin:6px 0 0; font-size:12px; font-weight:600; color:var(--ecv2-g700); }
.ecsu-paypv-xp { display:grid; grid-template-columns:repeat(auto-fill, minmax(92px, 1fr)); gap:6px; }
.ecsu-paypv-btn { display:flex; align-items:center; justify-content:center; min-height:34px; border-radius:6px; font-size:12px; font-weight:700; background:#111827; color:#fff; padding:0 8px; text-align:center; }
.ecsu-paypv-btn.is-gp { background:#fff; color:#111827; border:1px solid var(--ecv2-g300); }
.ecsu-paypv-btn.is-lk { background:#00d66f; color:#0b2e1b; }
.ecsu-paypv-btn.is-pp { background:#ffc439; color:#111827; }
.ecsu-paypv-btn.is-vm { background:#008cff; color:#fff; }
.ecsu-paypv-btn.is-pl { background:#fff; color:#003087; border:1px solid #ffc439; }
.ecsu-paypv-btn.is-az { background:#ffd814; color:#111827; }
.ecsu-paypv-card { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr); gap:6px; }
.ecsu-paypv-card.is-one { grid-template-columns:minmax(0,1fr); }
.ecsu-paypv-card span { border:1px solid var(--ecv2-g300); border-radius:6px; background:#fff; padding:7px 8px; font-size:12px; color:var(--ecv2-g500); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ecsu-paypv-opt { display:flex; flex-direction:column; gap:2px; border:1px solid var(--ecv2-g300); border-radius:6px; background:#fff; padding:8px 10px; font-size:12.5px; color:var(--ecv2-g900); margin-top:4px; }
.ecsu-paypv-opt small { font-size:11.5px; color:var(--ecv2-g500); }
.ecsu-paypv + .ecsu-preview-note { margin-top:10px; }

/* Checkout and accounts ( 6.0.7 Part 2 ): question rows, the policy pages and the checkout preview. */
.ecsu-qs { display:flex; flex-direction:column; margin-top:2px; }
.ecsu-q { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 16px; padding:9px 0; border-top:1px solid var(--ecv2-g100); }
.ecsu-q:first-child { border-top:0; padding-top:2px; }
.ecsu-q-label { display:flex; flex-direction:column; gap:2px; flex:1 1 220px; min-width:0; font-size:13px; color:var(--ecv2-g900); }
.ecsu-q-label b { font-weight:600; }
.ecsu-q-label small { font-size:12px; color:var(--ecv2-g500); line-height:1.45; }
.ecsu-q-control { display:flex; flex-wrap:wrap; align-items:center; gap:6px; }
.ecsu-step-note { margin:8px 0 0; font-size:12.5px; color:var(--ecv2-g600); line-height:1.5; }
.ecsu-policies { list-style:none; margin:4px 0 0; padding:0; display:flex; flex-direction:column; }
.ecsu-policy { display:grid; grid-template-columns:auto minmax(0,1fr); gap:4px 10px; align-items:start; padding:10px 0; border-top:1px solid var(--ecv2-g100); margin:0; }
.ecsu-policy:first-child { border-top:0; padding-top:2px; }
.ecsu-policy-dot { width:9px; height:9px; border-radius:50%; margin-top:5px; background:var(--ecv2-g300); }
.ecsu-policy.is-ok .ecsu-policy-dot { background:#16a34a; }
.ecsu-policy.is-warn .ecsu-policy-dot { background:#d97706; }
.ecsu-policy-text { display:flex; flex-direction:column; gap:1px; min-width:0; font-size:13px; color:var(--ecv2-g900); }
.ecsu-policy-text span { font-size:12px; color:var(--ecv2-g600); overflow-wrap:anywhere; }
.ecsu-policy .ecsu-actions { grid-column:2; display:flex; flex-wrap:wrap; gap:6px; align-items:center; }
.ecsu-policy-pick.ecsu-in { width:auto; max-width:220px; min-height:30px; font-size:12px; }
.ecsu-paypv-card.is-two { grid-template-columns:repeat(2, minmax(0,1fr)); }
.ecsu-paypv-card span i { font-style:normal; color:var(--ecv2-g400, #9ca3af); }
.ecsu-chkpv-s { margin:2px 0 0; font-size:11.5px; color:var(--ecv2-g500); }
.ecsu-chkpv-code { display:flex; gap:6px; margin-top:6px; }
.ecsu-chkpv-code span { flex:1; border:1px solid var(--ecv2-g300); border-radius:6px; background:#fff; padding:7px 8px; font-size:12px; color:var(--ecv2-g500); }
.ecsu-chkpv-code b { border:1px solid var(--ecv2-g300); border-radius:6px; background:#fff; padding:7px 10px; font-size:12px; color:var(--ecv2-g700); }
.ecsu-chkpv-box { margin:6px 0 0; font-size:12px; color:var(--ecv2-g700); line-height:1.45; }
.ecsu-chkpv-box u.is-bad { color:#b91c1c; }
.ecsu-chkpv-place { display:flex; align-items:center; justify-content:center; min-height:36px; margin-top:8px; border-radius:6px; background:#111827; color:#fff; font-size:12.5px; font-weight:700; text-transform:uppercase; letter-spacing:.02em; }
.ecsu-chkpv-foot { margin:8px 0 0; text-align:center; font-size:11.5px; color:var(--ecv2-g600); }

/* Emails and documents ( 6.0.7 Part 3 ): the sender and business forms, the delivery checks, the email list and the preview frame. */
.ecsu-form { display:flex; flex-direction:column; gap:10px; max-width:560px; }
.ecsu-field { display:flex; flex-direction:column; gap:4px; font-size:12.5px; color:var(--ecv2-g600); }
.ecsu-field[hidden] { display:none; }
.ecsu-field > span { font-weight:600; color:var(--ecv2-g800, #1f2937); }
.ecsu-wrap .ecsu-in.ecsu-wide { width:100%; max-width:100%; }
.ecsu-wrap input.ecsu-in.ecsu-mid { width:260px; max-width:100%; }
.ecsu-wrap textarea.ecsu-in { min-height:0; padding:6px 8px; font-family:inherit; }
.ecsu-check { display:flex; gap:8px; align-items:flex-start; font-size:13px; color:var(--ecv2-g700); }
.ecsu-check input { margin-top:2px; }
.ecsu-biz { margin-top:12px; padding-top:12px; border-top:1px solid var(--ecv2-g100); }
.ecsu-logo { display:inline-flex; align-items:center; justify-content:center; min-width:40px; max-width:140px; height:40px; border:1px dashed var(--ecv2-g300); border-radius:6px; overflow:hidden; background:#fff; }
.ecsu-logo img { max-height:36px; max-width:136px; display:block; }
.ecsu-logo:empty { display:none; }
.ecsu-policy.is-bad .ecsu-policy-dot { background:#dc2626; }
.ecsu-policy.is-off .ecsu-policy-dot { background:var(--ecv2-g300); }
.ecsu-record { display:block; width:100%; margin-top:4px; font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size:11.5px; color:var(--ecv2-g700); overflow-wrap:anywhere; }
.ecsu-mail-list { max-width:none; }
.ecsu-mail-list td { padding:8px 10px 8px 0; vertical-align:middle; }
.ecsu-mail-list td b { display:block; font-weight:600; color:var(--ecv2-g900); }
.ecsu-mail-list td small { display:block; font-size:11.5px; color:var(--ecv2-g500); }
.ecsu-mail-list td:last-child { text-align:right; white-space:nowrap; }
.ecsu-mail-sent { font-size:12px; color:var(--ecv2-g600); }
.ecsu-mail-always { font-size:12px; color:var(--ecv2-g500); }
.ecsu-mail-tabs { margin-bottom:8px; }
.ecsu-mail-frame { display:block; width:100%; height:640px; border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); background:#fff; }
.ecsu-mail-frame[aria-busy="true"] { opacity:.5; }
/* 6.0.7 ( Matt's review ): Settings › Email leads with what the store needs now ( mail_state() ): the setup guide, troubleshooting,
   or deliverability. */
.ecsu-mail-lead.is-failing { border-color:#fca5a5; box-shadow:inset 4px 0 0 #dc2626; }
.ecsu-mail-lead .ecsu-card-head h2 { display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; }
.ecsu-mail-chip { display:inline-block; padding:2px 10px; border-radius:999px; font-size:12px; font-weight:600; line-height:1.5; background:var(--ecv2-g100); color:var(--ecv2-g700); }
.ecsu-mail-chip.is-ok { background:#dcfce7; color:#166534; }
.ecsu-mail-chip.is-warn { background:#fef3c7; color:#92400e; }
.ecsu-mail-chip.is-bad { background:#fee2e2; color:#991b1b; }
.ecsu-mail-lead-body { display:flex; flex-direction:column; gap:10px; min-width:0; }
.ecsu-mail-sub { margin:6px 0 0; font-size:13px; font-weight:600; line-height:1.4; color:var(--ecv2-g900); }
.ecsu-mail-text { margin:0; font-size:13px; line-height:1.5; color:var(--ecv2-g700); }
.ecsu-mail-note { margin:0; padding:8px 12px; border-radius:8px; background:#fef3c7; color:#78350f; font-size:12.5px; line-height:1.45; }
/* 6.0.7: an established store's lead is the Email health card ( flat inside the lead ), then Deliverability, the pre-flight checks. */
.ecsu-mail-lead .ecem-health.is-lead { margin:0; padding:0; border:0; border-radius:0; box-shadow:none; background:transparent; }
.ecsu-mail-lead .ecem-health.is-lead .ecem-kpis { grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); }
.ecsu-mail-lead .ecem-health.is-lead .ecem-kpi b { font-size:16px; line-height:1.25; white-space:normal; overflow-wrap:anywhere; }
.ecsu-mail-sub-main { display:flex; flex-wrap:wrap; align-items:center; gap:6px 10px; margin-top:8px; padding-top:14px; border-top:1px solid var(--ecv2-g100); font-size:14px; }
.ecsu-mail-queue { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 12px; padding:10px 12px; border-radius:8px; background:#fffbeb; border:1px solid #fde68a; font-size:13px; color:#78350f; }
.ecsu-mail-facts { display:grid; grid-template-columns:repeat(auto-fit, minmax(180px, 1fr)); gap:8px 16px; margin:0; }
.ecsu-mail-facts > div { min-width:0; }
.ecsu-mail-facts dt { font-size:12px; color:var(--ecv2-g600); }
.ecsu-mail-facts dd { margin:2px 0 0; font-size:13px; color:var(--ecv2-g900); overflow-wrap:anywhere; }
.ecsu-mail-error { margin:0; padding:10px 12px; border-radius:8px; background:#fef2f2; border:1px solid #fecaca; color:#7f1d1d; font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size:12px; line-height:1.5; white-space:pre-wrap; overflow-wrap:anywhere; max-height:160px; overflow:auto; }
.ecsu-mail-guide { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; }
.ecsu-mail-guide-item { display:grid; grid-template-columns:28px minmax(0,1fr) auto; gap:10px 12px; align-items:center; padding:10px 0; margin:0; }
.ecsu-mail-guide-item + .ecsu-mail-guide-item { border-top:1px solid var(--ecv2-g100); }
.ecsu-mail-guide-item.is-done .ecsu-step-mark { background:#16a34a; color:#fff; }
.ecsu-mail-guide-item.is-todo .ecsu-step-mark { background:#e0e7ff; color:#3730a3; }
.ecsu-mail-guide-item.is-next .ecsu-step-mark { background:var(--ecsu-accent); color:var(--ec-on-brand, #fff); }
.ecsu-mail-guide-text { display:flex; flex-direction:column; gap:2px; min-width:0; }
.ecsu-mail-guide-text b { font-size:13.5px; color:var(--ecv2-g900); }
.ecsu-mail-guide-text span { font-size:12.5px; line-height:1.45; color:var(--ecv2-g700); overflow-wrap:anywhere; }
.ecsu-mail-guide-item.is-done .ecsu-mail-guide-text b { color:var(--ecv2-g700); }
@media (max-width: 600px) {
	.ecsu-mail-guide-item { grid-template-columns:28px minmax(0,1fr); }
	.ecsu-mail-guide-item > .ecv2-btn { grid-column:2; justify-self:start; }
	.ecsu-mail-lead .ecsu-actions .ecsu-in { width:100%; }
}

/* Grow ( 6.0.7 Part 3 ): ideas under Worth a look on the Settings home. */
.ecsu-grow { display:flex; flex-direction:column; gap:8px; }
.ecsu-grow .ecsu-worth-item.is-info .ecsu-dot { background:var(--ecsu-accent, #2563eb); }
.ecsu-grow .ecsu-worth-text b { display:inline-flex; flex-wrap:wrap; align-items:center; gap:6px; }
.ecsu-grow-tick { color:#16a34a; font-weight:700; }
.ecsu-grow-done li { display:flex; flex-wrap:wrap; align-items:center; gap:6px; }
.ecsu-more-warn { color:#92400e; }

/* 6.0.7 review: saves redraw in place, money boxes, dialogs, the email preview tiles, Stripe's local ways in the methods list. */
.ecsu-wrap[aria-busy="true"] .ecsu-summary, .ecsu-wrap[aria-busy="true"] .ecsu-preview { transition:opacity .15s; opacity:.7; }
.ecsu-money { display:inline-flex; align-items:stretch; border:1px solid var(--ecv2-g300); border-radius:var(--ecv2-rs, 6px); background:#fff; overflow:hidden; }
.ecsu-money:focus-within { border-color:var(--ecsu-accent); outline:2px solid var(--ecsu-accent-soft); outline-offset:0; }
.ecsu-money-sym { display:flex; align-items:center; padding:0 9px; background:var(--ecv2-g50, #f9fafb); color:var(--ecv2-g700); font-size:13px; font-weight:600; border-right:1px solid var(--ecv2-g200); }
.ecsu-money.is-after .ecsu-money-sym { border-right:0; border-left:1px solid var(--ecv2-g200); }
.ecsu-wrap input.ecsu-in.ecsu-money-in { border:0; border-radius:0; width:110px; font-variant-numeric:tabular-nums; }
.ecsu-wrap input.ecsu-in.ecsu-money-in:focus { outline:none; }
.ecsu-min-box[hidden] { display:none; }
.ecsu-methods-note { display:block; margin-top:1px; font-size:11.5px; color:var(--ecv2-g500); }
/* Searchable choices ( select[data-ecsu-combo], setup-v2.js ): a button that opens a search box over the options */
.ecsu-combo { position:relative; min-width:0; max-width:100%; }
.ecsu-combo .ecsu-combo-src { position:absolute; width:1px; height:1px; margin:-1px; padding:0; border:0; overflow:hidden; clip:rect(0 0 0 0); opacity:0; pointer-events:none; }
.ecsu-combo-btn { display:flex; align-items:center; gap:10px; width:100%; min-height:44px; padding:6px 12px 6px 8px; border:1px solid var(--ecv2-g300); border-radius:8px; background:#fff; color:var(--ecv2-g900); font:inherit; font-size:14px; text-align:left; cursor:pointer; }
.ecsu-combo-btn:hover { border-color:var(--ecv2-g400); }
.ecsu-combo-btn:focus-visible, .ecsu-combo.is-open .ecsu-combo-btn { border-color:var(--ecsu-accent); outline:2px solid var(--ecsu-accent-soft); outline-offset:0; }
.ecsu-combo-mark { flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; min-width:30px; height:30px; padding:0 6px; box-sizing:border-box; border-radius:7px; background:var(--ecsu-accent-soft); color:var(--ecv2-g900); font-size:13px; font-weight:700; line-height:1; white-space:nowrap; }
.ecsu-combo-mark[hidden] { display:none; }
.ecsu-combo-text { flex:1 1 auto; display:flex; align-items:baseline; flex-wrap:wrap; gap:0 8px; min-width:0; }
.ecsu-combo-name { font-weight:600; overflow-wrap:anywhere; }
.ecsu-combo-sub { font-size:12px; font-weight:600; letter-spacing:.03em; color:var(--ecv2-g600); }
.ecsu-combo-chev { flex:0 0 auto; width:8px; height:8px; margin-right:4px; border-right:2px solid var(--ecv2-g600); border-bottom:2px solid var(--ecv2-g600); transform:translateY(-3px) rotate(45deg); transition:transform .15s; }
.ecsu-combo.is-open .ecsu-combo-chev { transform:translateY(2px) rotate(225deg); }
.ecsu-combo-pop { position:absolute; z-index:50; top:calc(100% + 4px); left:0; right:0; min-width:260px; background:#fff; border:1px solid var(--ecv2-g300); border-radius:10px; box-shadow:0 12px 32px rgba(17,24,39,.16); overflow:hidden; }
.ecsu-combo-pop[hidden] { display:none; }
.ecsu-combo-search { padding:8px; border-bottom:1px solid var(--ecv2-g100); }
.ecsu-wrap input.ecsu-combo-q, .ecsu-combo-q { width:100%; min-height:38px; box-sizing:border-box; padding:6px 10px 6px 32px; border:1px solid var(--ecv2-g300); border-radius:7px; font:inherit; font-size:14px; color:var(--ecv2-g900); background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 9px center; }
.ecsu-combo-q:focus { border-color:var(--ecsu-accent); outline:2px solid var(--ecsu-accent-soft); outline-offset:0; }
.ecsu-combo-list { list-style:none; margin:0; padding:4px; max-height:300px; overflow:auto; position:relative; }
.ecsu-combo-group { margin:8px 8px 3px; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--ecv2-g600); }
.ecsu-combo-opt { display:flex; align-items:center; gap:10px; margin:0; padding:7px 8px; border-radius:7px; font-size:13.5px; color:var(--ecv2-g900); cursor:pointer; }
.ecsu-combo-opt .ecsu-combo-mark { min-width:30px; height:26px; font-size:12px; background:var(--ecv2-g100); }
.ecsu-combo-opt.is-active { background:var(--ecsu-accent-soft); }
.ecsu-combo-opt.is-active .ecsu-combo-mark { background:#fff; }
.ecsu-combo-opt[aria-selected="true"] .ecsu-combo-name { font-weight:700; }
.ecsu-combo-tick { margin-left:auto; padding-left:8px; color:var(--ecsu-accent); font-weight:700; }
.ecsu-combo-none { padding:12px 10px; font-size:13px; color:var(--ecv2-g600); }
@media (prefers-reduced-motion: reduce) { .ecsu-combo-chev { transition:none; } }

.ecsu-dialog { padding:0; border:0; border-radius:12px; box-shadow:0 20px 60px rgba(17,24,39,.3); width:min(640px, calc(100vw - 32px)); max-height:calc(100vh - 48px); color:var(--ecv2-g800, #1f2937); }
.ecsu-dialog::backdrop { background:rgba(17,24,39,.5); }
.ecsu-dialog-head { position:sticky; top:0; z-index:1; display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px; padding:14px 18px; background:#fff; border-bottom:1px solid var(--ecv2-g200); }
.ecsu-dialog-head h2 { margin:0; flex:1 1 auto; font-size:16px; font-weight:700; color:var(--ecv2-g900); }
.ecsu-dialog .ecsu-dialog-x { order:9; display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; padding:0; border:0; border-radius:8px; background:transparent; color:var(--ecv2-g600); font-size:24px; font-weight:400; line-height:1; cursor:pointer; }
.ecsu-dialog .ecsu-dialog-x:hover, .ecsu-dialog .ecsu-dialog-x:focus-visible { background:var(--ecv2-g100); color:var(--ecv2-g900); }
.ecsu-dialog-body { padding:16px 18px; display:flex; flex-direction:column; gap:12px; }
.ecsu-dialog-intro { margin:0; font-size:13px; line-height:1.5; color:var(--ecv2-g700); }
.ecsu-dialog-foot { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px 12px; }
.ecsu-dialog-body .ecsu-dialog-foot { padding-top:12px; border-top:1px solid var(--ecv2-g100); }
.ecsu-tax-dialog .ectx-setup.ecsu-tax-rec { padding:0; }
.ecsu-tpl-list { list-style:none; margin:0 0 10px; padding:0; display:grid; grid-template-columns:minmax(0,1fr); gap:8px; }
.ecsu-tpl-list li { margin:0; }
.ecsu-tpl { display:grid; grid-template-columns:46px minmax(0,1fr) auto; gap:2px 12px; align-items:center; width:100%; height:100%; box-sizing:border-box; text-align:left; padding:10px; border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); background:#fff; cursor:pointer; font:inherit; color:inherit; }
.ecsu-tpl:hover, .ecsu-tpl:focus-visible { border-color:var(--ecsu-accent); box-shadow:0 0 0 1px var(--ecsu-accent); outline:none; }
.ecsu-tpl-art { display:block; line-height:0; }
.ecsu-tpl-art svg .is-page { fill:var(--ecv2-g50, #f9fafb); stroke:var(--ecv2-g300); stroke-width:1.5; }
.ecsu-tpl-art svg rect:not(.is-page), .ecsu-tpl-art svg path { fill:var(--ecv2-g300); }
.ecsu-tpl-art svg .is-accent { fill:var(--ecsu-accent); }
.ecsu-tpl-art svg .is-line { fill:none; stroke:var(--ecv2-g400, #9ca3af); stroke-width:1.5; }
.ecsu-tpl-text { display:flex; flex-direction:column; gap:1px; min-width:0; }
.ecsu-tpl-text b { font-size:13px; color:var(--ecv2-g900); }
.ecsu-tpl-text span { font-size:11.5px; line-height:1.35; color:var(--ecv2-g500); }
.ecsu-tpl-go { font-size:12px; font-weight:600; color:var(--ecsu-accent); white-space:nowrap; }
.ecsu-mail-dialog { width:min(1040px, calc(100vw - 32px)); height:calc(100vh - 48px); }
.ecsu-mail-dialog[open] { display:flex; flex-direction:column; }
.ecsu-mail-dialog .ecsu-dialog-head h2 { flex:0 1 auto; margin-right:auto; }
.ecsu-mail-dialog .ecsu-mail-tabs { margin:0; }
.ecsu-mail-stage { flex:1 1 auto; min-height:0; display:flex; justify-content:center; padding:16px; background:var(--ecv2-g100); overflow:auto; }
.ecsu-mail-stage .ecsu-mail-frame { width:100%; max-width:820px; height:auto; min-height:100%; box-shadow:0 1px 3px rgba(17,24,39,.12); transition:max-width .2s; }
.ecsu-mail-dialog.is-phone .ecsu-mail-frame { max-width:390px; }
.ecsu-mail-dialog > .ecsu-dialog-foot { padding:10px 18px; border-top:1px solid var(--ecv2-g200); justify-content:space-between; }
@media (max-width: 600px) {
	.ecsu-dialog { width:100vw; max-width:100vw; max-height:100vh; height:100vh; border-radius:0; }
	.ecsu-mail-stage { padding:8px; }
}

/* Fine-tune's boxes for some stores only ( 6.0.7: Settings › Checkout's withdrawal button, pickup times, text messages ): each a
   closed box above the rows, open while it applies. */
.ecsu-fine.has-groups .ecst-embed { background:transparent; border:0; padding:0; }
.ecst-embed-body { display:flex; flex-direction:column; gap:14px; }
.ecsu-fine.has-groups .ecst-rows-fine { background:#fff; border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); padding:4px 0; }
/* Only drawers ( Carriers & labels, Taxes ): no rows to frame, so nothing shows until a drawer opens. */
.ecsu-fine.is-drawers .ecst-rows-fine { display:none; }
.ecsu-fine.has-groups .ecst-rows-fine:not(:has(> *)) { display:none; } /* 6.0.7: a page whose settings are all in its boxes */
.ecst-embed-groups { display:flex; flex-direction:column; gap:10px; }
.ecst-embed-group { background:#fff; border:1px solid var(--ecv2-g200); border-radius:var(--ecv2-r); scroll-margin-top:72px; }
.ecst-embed-group > summary { display:flex; align-items:center; gap:10px 14px; padding:14px 16px; cursor:pointer; list-style:none; }
.ecst-embed-group > summary::-webkit-details-marker { display:none; }
.ecst-embed-group > summary:focus-visible { outline:2px solid var(--ecsu-accent); outline-offset:-2px; border-radius:var(--ecv2-r); }
.ecst-embed-group-text { flex:1 1 320px; display:flex; flex-direction:column; gap:2px; min-width:0; }
.ecst-embed-group-text b { font-size:14px; color:var(--ecv2-g900); }
.ecst-embed-group-text span { font-size:12.5px; line-height:1.45; color:var(--ecv2-g600); }
.ecst-embed-group-state { flex:0 0 auto; padding:2px 10px; border-radius:999px; font-size:12px; font-weight:600; white-space:nowrap; background:var(--ecv2-g100); color:var(--ecv2-g700); }
.ecst-embed-group-state.is-ok { background:#dcfce7; color:#166534; }
.ecst-embed-group-state.is-warn { background:#fef3c7; color:#92400e; }
.ecst-embed-group-state.is-bad { background:#fee2e2; color:#991b1b; } /* 6.0.7: a service that refuses the store's key ( Settings › Email marketing ) */
.ecst-embed-group-state.is-plan { background:var(--ecv2-plan-bg, #ede9fe); color:var(--ecv2-plan-fg, #5b21b6); text-transform:uppercase; letter-spacing:.04em; font-size:10.5px; }
.ecst-embed-group-chev { flex:0 0 auto; width:8px; height:8px; border:solid var(--ecv2-g500); border-width:0 2px 2px 0; transform:rotate(45deg); margin-top:-4px; transition:transform .15s; }
.ecst-embed-group[open] > summary .ecst-embed-group-chev { transform:rotate(-135deg); margin-top:4px; }
.ecst-embed-group[open] > summary { border-bottom:1px solid var(--ecv2-g100); }
.ecst-embed-group .ecst-group-rows { padding:4px 0; }
.ecst-embed-group .ecst-action { margin:0 16px 14px; }
/* 6.0.7 ( Matt's review: a title off line, double borders ): a whole declared section in a box. Its own title lines up with the
   box's words; a section with no rows of its own ( a document's editor, a grid ) draws no empty rows box and no second rule under
   the box's; two sections in one box are parted by one rule. */
.ecst-embed-group .ecst-group-section-title { margin:0; padding:14px 16px 4px; font-size:13px; line-height:1.4; font-weight:600; color:var(--ecv2-g900); }
.ecst-embed-group .ecst-group-section + .ecst-group-section { border-top:1px solid var(--ecv2-g100); }
.ecst-embed-group .ecst-group-section > .ecst-group-rows:not(:last-child),
.ecst-embed-group .ecst-group-section:not(:last-child) > .ecst-group-rows:last-child { padding-bottom:0; margin-bottom:-1px; } /* the last row's rule and the one under it are one */
.ecst-embed-group .ecst-group-rows:not(:has(.ecst-row)) { display:none; }
.ecst-embed-group .ecst-group-rows:not(:has(.ecst-row)) + .ecst-custom { border-top:0; }
.ecst-embed-group .ecst-custom:empty { display:none; } /* a panel with nothing to show ( WP EasyCart PRO's status while it is not licensed ) */
.ecsu-section-head .ecsu-section-link { font-size:12.5px; font-weight:600; color:var(--ecsu-accent); text-decoration:underline; }

/* 6.0.7: a setting reached from the admin search ( setup-v2.js point() ), on every setup page. */
.ecsu-wrap .is-ecsu-flash { animation:ecsu-flash 2.2s ease-out 1; border-radius:8px; }
@keyframes ecsu-flash { 0%, 30% { box-shadow:0 0 0 3px var(--ecsu-accent-soft), 0 0 0 5px var(--ecsu-accent); } 100% { box-shadow:0 0 0 0 transparent; } }
@media (prefers-reduced-motion: reduce) { .ecsu-wrap .is-ecsu-flash { animation:none; box-shadow:0 0 0 3px var(--ecsu-accent); } }
