/* Invoice Flow v5 component styles consume the shared tokens from shell/tokens.css. */
html {
  color-scheme: light;
  scroll-behavior: smooth;
}

body {
  background: var(--app-bg) !important;
}

/* ===================== Customers v2 ===================== */
.customers-v2,.customer-v2{width:100%;max-width:none;margin:0;padding:4px 0 34px;color:var(--text-primary)}
.customers-v2-head,.customer-v2-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}
.customers-v2-eyebrow{margin-bottom:7px;color:var(--brand-accent-strong);font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.customers-v2 h1,.customer-v2 h1{margin:0;font:700 clamp(30px,3.3vw,42px)/1.04 var(--font-heading);letter-spacing:-.045em}
.customers-v2-head p,.customer-v2-head p{margin:8px 0 0;color:var(--text-muted);font-size:14px;line-height:1.5}
.customers-v2-new{flex:none;min-height:46px!important;padding-inline:18px!important}
.customers-v2-header-actions{display:flex;align-items:center;gap:8px;flex:none}.customers-v2-header-actions .workspace-toolbar-view{margin:0!important}
.customers-v2-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.customers-v2-search{display:flex;align-items:center;gap:9px;min-width:min(100%,280px);height:44px;padding:0 13px;border:1px solid var(--border-default);border-radius:12px;background:var(--surface-primary);color:var(--text-muted);box-shadow:var(--shadow-xs)}
.customers-v2-search span{font:500 23px/1 var(--font-heading);transform:rotate(-20deg)}
.customers-v2-search input{width:100%;min-width:0;height:100%!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--text-primary);font-size:13px}
.customers-v2-filters{display:flex;align-items:center;gap:5px;padding:4px;border:1px solid var(--border-subtle);border-radius:12px;background:color-mix(in srgb,var(--surface-primary) 56%,transparent)}
.customers-v2-filter,.customer-v2-segmented button{min-height:34px;padding:0 11px;border:0;border-radius:8px!important;background:transparent;color:var(--text-muted);font-size:12px;font-weight:750;cursor:pointer;white-space:nowrap}
.customers-v2-filter:hover,.customer-v2-segmented button:hover{color:var(--text-primary);background:var(--surface-primary)}
.customers-v2-filter.is-active,.customer-v2-segmented button.is-active{background:var(--selected-bg);color:var(--selected-text);box-shadow:var(--shadow-low)}
.customers-v2-count{margin-left:auto;color:var(--text-muted);font-size:12px;font-weight:700}
.customers-v2-layout{display:block}
.customers-v2-list{overflow:hidden;border:1px solid var(--border-default);border-radius:16px;background:var(--surface-primary);box-shadow:var(--shadow-xs)}
.customers-v2-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:15px 16px;border:0;border-bottom:1px solid var(--border-subtle);border-radius:0!important;background:var(--surface-primary);color:var(--text-primary);text-align:left;cursor:pointer;transition:background .15s ease,transform .15s ease}
.customers-v2-row:last-child{border-bottom:0}.customers-v2-row:hover{background:var(--hover-bg)}.customers-v2-row:focus-visible{position:relative;z-index:1;outline:2px solid var(--brand-accent);outline-offset:-2px}
.customers-v2-avatar,.customer-v2-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--brand-accent-soft);color:var(--brand-accent-strong);font-size:12px;font-weight:900;letter-spacing:.02em}
.customers-v2-row-copy{display:grid;gap:2px;min-width:0}.customers-v2-row-copy strong{overflow:hidden;font-size:14px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.customers-v2-row-copy small{overflow:hidden;color:var(--text-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.customers-v2-row-status{display:grid;justify-items:end;gap:3px;min-width:128px}.customers-v2-row-status>strong{font-size:14px;font-variant-numeric:tabular-nums}.customers-v2-row-status small{color:var(--text-subtle);font-size:11px}.customers-v2-row-status em{color:var(--status-error);font-size:10px;font-style:normal;font-weight:800}
.customers-v2-health{display:inline-flex;align-items:center;justify-content:center;width:max-content;min-height:22px;padding:2px 7px;border-radius:999px;background:var(--surface-secondary);color:var(--text-muted);font-size:10px;font-weight:850;letter-spacing:.02em;line-height:1.15;text-transform:uppercase}.customers-v2-health.is-overdue,.customers-v2-health.overdue{background:var(--status-error-bg);color:var(--status-error)}.customers-v2-health.is-attention,.customers-v2-health.partial{background:var(--status-warning-bg);color:var(--status-warning)}.customers-v2-health.is-current,.customers-v2-health.paid,.customers-v2-health.approved{background:var(--status-success-bg);color:var(--status-success)}.customers-v2-health.sent,.customers-v2-health.viewed{background:var(--status-info-bg);color:var(--status-info)}
.customers-v2-empty{display:grid;gap:5px;padding:31px 20px;text-align:center}.customers-v2-empty strong{font:700 15px/1.3 var(--font-heading)}.customers-v2-empty span{color:var(--text-muted);font-size:13px}
.customers-v2-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:12px}.customers-v2-card{display:grid;gap:15px;min-height:206px;padding:16px;border:1px solid var(--border-default);border-radius:16px!important;background:var(--surface-primary);color:var(--text-primary);text-align:left;box-shadow:var(--shadow-xs);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.customers-v2-card:hover{border-color:color-mix(in srgb,var(--brand-accent) 48%,var(--border-default));box-shadow:var(--shadow-low);transform:translateY(-1px)}.customers-v2-card:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px}.customers-v2-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.customers-v2-card-copy{display:grid;gap:4px;min-width:0}.customers-v2-card-copy strong{overflow:hidden;font:var(--heading-weight) 16px/1.25 var(--font-heading);letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap}.customers-v2-card-copy small{overflow:hidden;color:var(--text-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.customers-v2-card-bottom{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto;padding-top:12px;border-top:1px solid var(--border-subtle)}.customers-v2-card-bottom span{display:grid;gap:4px;min-width:0}.customers-v2-card-bottom small{color:var(--text-subtle);font-size:9px;font-weight:var(--label-weight);letter-spacing:.08em;text-transform:uppercase}.customers-v2-card-bottom strong{overflow:hidden;font-size:13px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.customers-v2-card>em{margin-top:-8px;color:var(--status-error);font-size:10px;font-style:normal;font-weight:var(--label-weight)}
.customer-v2-back{display:inline-flex;align-items:center;gap:6px;margin:0 0 18px;padding:0;border:0;background:transparent;color:var(--text-muted);font-size:12px;font-weight:800;cursor:pointer}.customer-v2-back:hover{color:var(--brand-accent-strong)}
.customer-v2-identity{display:flex;align-items:center;gap:13px;min-width:0}.customer-v2-identity .customer-v2-avatar{width:52px;height:52px;border-radius:16px;font-size:14px}.customer-v2-identity h1{font-size:clamp(27px,3vw,38px)}.customer-v2-identity p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-v2-actions{position:relative;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.customer-v2-more{position:relative}.customer-v2-menu{position:absolute;z-index:20;top:calc(100% + 7px);right:0;display:grid;min-width:176px;padding:5px;border:1px solid var(--border-default);border-radius:12px;background:var(--dropdown-bg);box-shadow:var(--shadow-high)}.customer-v2-menu button{padding:10px;border:0;border-radius:8px!important;background:transparent;color:var(--text-primary);font-size:12px;font-weight:var(--button-weight);text-align:left;cursor:pointer}.customer-v2-menu button:hover{background:var(--hover-bg)}.customer-v2-menu button.is-danger{color:var(--status-error)}.customer-v2-menu button.is-danger:hover{background:var(--status-error-bg)}
.customer-v2-contact{display:flex;gap:24px;flex-wrap:wrap;padding:14px 0 22px}.customer-v2-contact>div{display:grid;gap:3px;max-width:300px}.customer-v2-contact span,.customer-v2-metrics span{color:var(--text-subtle);font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.customer-v2-contact strong{font-size:12.5px;font-weight:650;line-height:1.45;white-space:pre-line}
.customer-v2-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:28px}.customer-v2-metrics>div{display:grid;gap:10px;min-height:132px;padding:20px;border:1px solid var(--border-default);border-radius:15px;background:var(--card-bg);color:var(--text-primary);box-shadow:var(--shadow-low)}.customer-v2-metrics>div.is-urgent{border:1px solid color-mix(in srgb,var(--status-error) 24%,var(--border-default));background:color-mix(in srgb,var(--status-error-bg) 72%,var(--card-bg));box-shadow:var(--shadow-low)}.customer-v2-metrics span{color:var(--text-primary);font-size:11px;font-weight:var(--label-weight);letter-spacing:.1em}.customer-v2-metric-value{color:var(--text-primary)!important;font-family:var(--font-heading)!important;font-size:37px!important;font-weight:var(--heading-strong-weight)!important;line-height:1.05!important;font-variant-numeric:tabular-nums;letter-spacing:-.045em}.customer-v2-metrics small{align-self:end;color:var(--text-primary);font-size:12.5px;font-weight:var(--body-medium-weight)}
.customer-v2-tabs{display:flex;gap:4px;margin-bottom:18px;border-bottom:1px solid var(--border-default)}.customer-v2-tabs button{position:relative;min-height:42px;padding:0 14px;border:0;border-radius:0!important;background:transparent;color:var(--text-muted);font-size:13px;font-weight:800;cursor:pointer}.customer-v2-tabs button:after{position:absolute;right:10px;bottom:-1px;left:10px;height:2px;background:var(--brand-accent);content:"";opacity:0}.customer-v2-tabs button.is-active{color:var(--text-primary)}.customer-v2-tabs button.is-active:after{opacity:1}
.customer-v2-pane{border:1px solid var(--border-default);border-radius:16px;background:var(--surface-primary);box-shadow:var(--shadow-xs)}.customer-v2-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 20px 15px}.customer-v2-section-head h2{margin:0;font:700 19px/1.15 var(--font-heading);letter-spacing:-.02em}.customer-v2-section-head p{margin:4px 0 0;color:var(--text-muted);font-size:12px}.customer-v2-text-action{padding:6px 0;border:0;background:transparent;color:var(--brand-accent-strong);font-size:12px;font-weight:850;cursor:pointer}.customer-v2-text-action:hover{text-decoration:underline}
.customer-v2-open-items{border-top:1px solid var(--border-subtle)}.customer-v2-open-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:20px;width:100%;padding:14px 20px;border-bottom:1px solid var(--border-subtle);cursor:pointer;transition:background .15s ease}.customer-v2-open-row:last-child{border-bottom:0}.customer-v2-open-row:hover{background:var(--hover-bg)}.customer-v2-open-row:focus-visible{position:relative;z-index:1;outline:2px solid var(--brand-accent);outline-offset:-2px}.customer-v2-open-main{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:10px}.customer-v2-open-main>strong{color:var(--text-primary);font-size:13px;font-weight:var(--body-medium-weight)}.customer-v2-open-row:hover .customer-v2-open-main>strong{color:var(--brand-accent-strong)}.customer-v2-open-main small{overflow:hidden;color:var(--text-muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.customer-v2-open-row>strong{font-size:13px;font-variant-numeric:tabular-nums}
.customer-v2-subsection{margin-top:18px;border-top:1px solid var(--border-default)}.customer-v2-estimates{border-top:1px solid var(--border-subtle)}.customer-v2-estimates>button{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;width:100%;padding:13px 20px;border:0;border-bottom:1px solid var(--border-subtle);border-radius:0!important;background:var(--surface-primary);color:var(--text-primary);text-align:left;cursor:pointer}.customer-v2-estimates>button:hover{background:var(--surface-primary)}.customer-v2-estimates>button>span:first-child{display:grid;gap:3px}.customer-v2-estimates small{color:var(--text-muted);font-size:11px}.customer-v2-estimates>button>strong{font-size:13px;font-variant-numeric:tabular-nums}
.customer-v2-payment-list{border-top:1px solid var(--border-subtle);overflow-x:auto}.customer-v2-payment-list-head,.customer-v2-payment-row{display:grid;grid-template-columns:minmax(175px,1.5fr) minmax(130px,1fr) 120px 110px 22px;align-items:center;gap:14px;min-width:660px;padding:13px 20px}.customer-v2-payment-list-head{background:var(--surface-primary);color:var(--text-subtle);font-size:10px;font-weight:var(--table-heading-weight);letter-spacing:.08em;text-transform:uppercase}.customer-v2-payment-row{width:100%;border:0;border-top:1px solid var(--border-subtle);border-radius:0!important;background:var(--table-bg);color:var(--text-primary);font-size:12px;text-align:left;cursor:pointer;transition:background .15s ease}.customer-v2-payment-row:hover{background:var(--hover-bg)}.customer-v2-payment-row:focus-visible{position:relative;z-index:1;outline:2px solid var(--brand-accent);outline-offset:-2px}.customer-v2-payment-row>span:first-child{display:grid;gap:3px;min-width:0}.customer-v2-payment-row>span:first-child strong{font-size:13px}.customer-v2-payment-row small{overflow:hidden;color:var(--text-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.customer-v2-payment-row>strong{font-size:13px;font-variant-numeric:tabular-nums}.customer-v2-payment-arrow{color:var(--brand-accent-strong);font-size:17px;font-weight:800;text-align:right}
.customer-v2-activity-search{min-width:220px;height:38px}.customer-v2-timeline{position:relative;padding:0 20px 14px;border-top:1px solid var(--border-subtle)}.customer-v2-timeline:before{position:absolute;top:23px;bottom:23px;left:31px;width:1px;background:var(--border-default);content:""}.customer-v2-timeline>button{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;width:100%;padding:16px 0;border:0;border-bottom:1px solid var(--border-subtle);background:transparent;color:var(--text-primary);text-align:left;cursor:pointer}.customer-v2-timeline>button:hover strong{color:var(--brand-accent-strong)}.customer-v2-timeline>button:last-child{border-bottom:0}.customer-v2-timeline-dot{z-index:1;display:block;width:10px;height:10px;margin:5px 0 0 6px;border:2px solid var(--card-bg);border-radius:50%;background:var(--brand-accent);box-shadow:0 0 0 1px var(--brand-accent)}.customer-v2-timeline>button>span:last-child{display:grid;gap:3px}.customer-v2-timeline small{color:var(--text-subtle);font-size:10px;font-weight:var(--label-weight);text-transform:uppercase}.customer-v2-timeline strong{font-size:13px}.customer-v2-timeline em{color:var(--text-muted);font-size:12px;font-style:normal;line-height:1.45}

@media (max-width:920px){.customer-v2-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-v2-metrics>div:last-child{grid-column:1/-1}}
@media (max-width:640px){.customers-v2,.customer-v2{padding-bottom:18px}.customers-v2-head,.customer-v2-head{gap:14px;margin-bottom:18px}.customers-v2-head{align-items:flex-end}.customers-v2-head p{display:none}.customers-v2-new{min-height:42px!important;padding-inline:12px!important;font-size:12px!important}.customers-v2-header-actions{gap:6px}.customers-v2-tools{gap:8px}.customers-v2-search{order:1;width:100%;min-width:0}.customers-v2-filters{order:2;max-width:100%;overflow:auto}.customers-v2-count{order:3;margin-left:0}.customers-v2-row{grid-template-columns:38px minmax(0,1fr);gap:10px;padding:13px}.customers-v2-avatar{width:38px;height:38px;border-radius:12px}.customers-v2-row-copy small:last-child{display:none}.customers-v2-row-status{grid-column:2;grid-row:2;display:flex;align-items:center;justify-items:start;gap:8px;min-width:0}.customers-v2-row-status>strong{font-size:12px}.customers-v2-row-status small{display:none}.customers-v2-row-status em{margin-left:auto}.customers-v2-card-grid{grid-template-columns:1fr}.customer-v2-head{display:grid}.customer-v2-actions{width:100%}.customer-v2-actions>.btn:not(.icon-btn){flex:1}.customer-v2-contact{gap:13px;padding-bottom:18px}.customer-v2-contact>div{flex-basis:100%}.customer-v2-metrics{grid-template-columns:1fr;gap:8px;margin-bottom:19px}.customer-v2-metrics>div,.customer-v2-metrics>div:last-child{grid-column:auto;min-height:92px}.customer-v2-tabs{justify-content:space-between}.customer-v2-tabs button{flex:1;padding:0 4px;font-size:12px}.customer-v2-section-head{align-items:flex-start;padding:16px}.customer-v2-section-head .btn{flex:none}.customer-v2-open-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:13px 16px}.customer-v2-open-row>.customer-v2-text-action{grid-column:1/-1;justify-self:start}.customer-v2-open-main{grid-template-columns:auto minmax(0,1fr)}.customer-v2-open-main small{grid-column:1/-1}.customer-v2-estimates>button{gap:8px;padding:13px 16px}.customer-v2-estimates .customers-v2-health{display:none}.customer-v2-payment-list-head,.customer-v2-payment-row{padding-inline:16px}.customer-v2-activity-search{width:100%;min-width:0}.customer-v2-timeline{padding-inline:16px}.customer-v2-timeline:before{left:27px}}

/* Invoice Flow visual language. Typography deliberately remains in the shell system. */
.app {
  position: relative;
  isolation: isolate;
  background: var(--app-bg) !important;
}

.app:before,
.app:after {
  content: "";
  position: absolute;
  z-index: 0;
  border: 1px solid color-mix(in srgb, var(--brand-accent) 12%, transparent);
  border-radius: 50%;
  pointer-events: none;
}

.app:before {
  width: min(47vw, 590px);
  aspect-ratio: 1;
  right: -18vw;
  top: -32vw;
  box-shadow: 0 0 0 54px color-mix(in srgb, var(--brand-accent) 2.5%, transparent), 0 0 0 126px color-mix(in srgb, var(--brand-accent) 1.8%, transparent);
}

.app:after {
  width: min(36vw, 460px);
  aspect-ratio: 1;
  left: 16vw;
  bottom: -28vw;
  border-color: color-mix(in srgb, var(--text-primary) 8%, transparent);
}

.app > .sidebar,
.app > .main { position: relative; z-index: 1; }

.main { background: var(--workspace-bg, var(--app-bg)); }

.topbar {
  border-bottom-color: var(--divider) !important;
  background: var(--topbar-bg, var(--surface-primary)) !important;
  backdrop-filter: blur(14px);
}

.content { padding-top: 26px !important; }

input,
select,
textarea,
.bc-combo-trigger,
.bc-combobox-search {
  border-color: var(--border-default) !important;
  border-radius: 8px !important;
  background: var(--input-bg) !important;
  transition: border-color 160ms cubic-bezier(.2,.7,.2,1), background-color 160ms cubic-bezier(.2,.7,.2,1), box-shadow 160ms cubic-bezier(.2,.7,.2,1) !important;
}

input:hover,
select:hover,
textarea:hover,
.bc-combo-trigger:hover { border-color: var(--border-strong) !important; }

input:focus,
select:focus,
textarea:focus,
.bc-combo-trigger:focus-visible,
.bc-combobox-search:focus-within,
.search-box:focus-within {
  border-color: var(--border-default) !important;
  background-color:var(--surface-primary) !important;
  box-shadow: none !important;
  outline: none !important;
}

/* The global search keeps its existing quiet surface; focus adds nothing. */
.search-box:focus-within { box-shadow: var(--shadow-low) !important; }

/* The picker owns the surface: its text input is intentionally borderless. */
.bc-combobox-search input,
.bc-combobox-search input:focus,
.bc-combobox-search input:focus-visible {
  min-width: 0;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.v3-primary-button {
  border-radius: 8px !important;
  background: var(--brand-accent) !important;
  border-color: var(--brand-accent) !important;
  color: var(--action-primary-text) !important;
  box-shadow: 0 8px 18px color-mix(in srgb, var(--brand-accent) 26%, transparent) !important;
}

.v3-primary-button:hover {
  background: var(--brand-accent-strong) !important;
  border-color: var(--brand-accent-strong) !important;
  color: var(--action-primary-text) !important;
}

button {
  border-radius: 8px !important;
}

.card,
.pop,
.modal,
.v3-product-card,
.v3-modal-panel,
.v3-empty,
.v3-offline-payment,
.v3-payment-summary {
  border-color: var(--border-default) !important;
  border-radius: var(--r-md) !important;
  box-shadow: var(--shadow-medium) !important;
}

.v3-product-card,
.v3-empty,
.v3-payment-summary { background: var(--card-bg) !important; }

.v3-product-card:hover,
.v3-card-surface:hover,
.v3-card-surface:focus-visible {
  border-color: color-mix(in srgb, var(--brand-accent) 42%, var(--border-default)) !important;
  box-shadow: var(--shadow-medium) !important;
}

.v3-record-button:hover,
.v3-click-surface:hover,
.v3-click-surface:focus-visible { background: var(--hover-bg) !important; }

.v3-inline-alert[data-tone="success"],
.v3-offline-payment { border-color: var(--brand-accent-border) !important; background: var(--brand-accent-faint) !important; color: var(--brand-accent-text) !important; }

.v3-login {
  min-height: 100vh;
  min-height: 100svh;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  overflow-x: hidden;
  overflow-y: auto;
  background: var(--app-bg);
  color: var(--text-primary);
}

.v3-login-brand,
.v3-login-panel {
  min-width: 0;
  min-height: 100vh;
  min-height: 100svh;
}

.v3-login-brand {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: clamp(32px, 4.6vw, 72px);
  background:
    radial-gradient(circle at 82% 12%, color-mix(in srgb, var(--brand-accent) 16%, transparent) 0, transparent 31%),
    var(--sidebar-surface, var(--sidebar-bg));
  color: var(--sidebar-text);
}

.v3-login-brand::before,
.v3-login-brand::after {
  position: absolute;
  z-index: -1;
  content: "";
  border-radius: 999px;
  pointer-events: none;
}

.v3-login-brand::before {
  width: min(58vw, 660px);
  aspect-ratio: 1;
  top: -38%;
  right: -36%;
  border: 1px solid color-mix(in srgb, var(--brand-accent) 28%, transparent);
}

.v3-login-brand::after {
  width: min(34vw, 420px);
  aspect-ratio: 1;
  right: 8%;
  bottom: -28%;
  border: 1px solid color-mix(in srgb, var(--sidebar-text) 8%, transparent);
}

.v3-login-motif {
  position: absolute;
  z-index: -1;
  top: 31%;
  right: clamp(-86px, -5vw, -38px);
  display: grid;
  gap: 16px;
  width: min(48vw, 310px);
  transform: rotate(-9deg);
  opacity: .19;
  pointer-events: none;
}

.v3-login-motif span {
  display: block;
  height: clamp(17px, 2vw, 24px);
  border: 1px solid color-mix(in srgb, var(--sidebar-text) 22%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--sidebar-text) 52%, transparent);
  box-shadow: var(--shadow-medium);
}

.v3-login-motif span:nth-child(2) {
  margin-left: 28px;
  border-color: color-mix(in srgb, var(--brand-accent) 72%, transparent);
  background: var(--brand-accent);
}

.v3-login-motif span:nth-child(3) { margin-left: 56px; }

.v3-login-logo,
.v3-login-mobile-logo {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  width: max-content;
  color: inherit;
  font-size: 21px;
  font-weight: 750;
  letter-spacing: -.04em;
  line-height: 1;
}

.v3-login-logo-mark {
  display: grid;
  gap: 3px;
  width: 29px;
  flex: none;
}

.v3-login-logo-mark span {
  display: block;
  width: 21px;
  height: 6px;
  border-radius: 3px;
  background: currentColor;
}

.v3-login-logo-mark span:nth-child(2) {
  margin-left: 4px;
  background: var(--brand-accent);
}

.v3-login-logo-mark span:nth-child(3) { margin-left: 8px; }

.v3-login-story {
  width: min(100%, 580px);
  margin: auto 0;
  padding: 72px 0;
}

.v3-login-kicker,
.v3-login-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  color: var(--brand-accent);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .15em;
  line-height: 1.3;
  text-transform: uppercase;
}

.v3-login-kicker::before,
.v3-login-eyebrow::before {
  width: 20px;
  height: 2px;
  content: "";
  background: currentColor;
}

.v3-login-story h1 {
  max-width: 570px;
  margin: 20px 0 0;
  font-size: clamp(44px, 5vw, 72px);
  font-weight: 700;
  letter-spacing: -.06em;
  line-height: .98;
}

.v3-login-story h1 span { color: var(--brand-accent); }

.v3-login-story > p {
  max-width: 470px;
  margin: 26px 0 0;
  color: color-mix(in srgb, var(--sidebar-text) 68%, transparent);
  font-size: clamp(14px, 1.2vw, 16px);
  font-weight: 500;
  line-height: 1.75;
}

.v3-login-momentum {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 34px 0 0 !important;
  color: color-mix(in srgb, var(--sidebar-text) 62%, transparent) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .04em;
}

.v3-login-momentum::before {
  width: 38px;
  height: 1px;
  flex: none;
  background: var(--brand-accent);
  content: "";
}

.v3-workflow-notice {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
  padding: 13px 15px;
  border: 1px solid var(--brand-accent-border);
  border-left: 4px solid var(--brand-accent);
  background: var(--brand-accent-faint);
}

.v3-workflow-notice > div { min-width: 0; }

.v3-workflow-notice strong,
.v3-workflow-notice span { display: block; }

.v3-workflow-notice strong {
  color: var(--brand-accent-text);
  font-size: 13px;
}

.v3-workflow-notice span {
  margin-top: 3px;
  color: var(--text-muted);
  font-size: 12px;
  line-height: 1.45;
}

.v3-workflow-notice .btn { flex: none; }

.v3-workflow-notice.viewed {
  border-color: color-mix(in srgb, var(--status-info) 28%, var(--border-default));
  border-left-color: var(--status-info);
  background: var(--status-info-bg);
}

@media (max-width: 560px) {
  .v3-workflow-notice { align-items: flex-start; flex-direction: column; }
  .v3-workflow-notice .btn { width: 100%; }
}

.v3-login-brand-foot {
  display: flex;
  align-items: center;
  gap: 10px;
  color: color-mix(in srgb, var(--sidebar-text) 46%, transparent);
  font-size: 10px;
  font-weight: 750;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.v3-login-brand-foot span {
  width: 3px;
  height: 3px;
  border-radius: 999px;
  background: var(--brand-accent);
}

.v3-login-panel {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow-y: auto;
  padding: clamp(36px, 6vw, 88px);
  background:
    radial-gradient(circle at 100% 0, color-mix(in srgb, var(--brand-accent) 7%, transparent) 0, transparent 29rem),
    var(--surface-primary);
  overscroll-behavior-y: contain;
  scroll-padding-bottom: 38vh;
  -webkit-overflow-scrolling: touch;
}

.v3-login-card {
  width: min(100%, 430px);
  margin: auto;
  animation: v3-login-enter 420ms cubic-bezier(.2, .8, .2, 1) both;
}

.v3-login-mobile-logo { display: none; }

.v3-login-card h2 {
  margin: 17px 0 0;
  font-size: clamp(34px, 4vw, 42px);
  font-weight: 720;
  letter-spacing: -.05em;
  line-height: 1.02;
}

.v3-login-subtitle {
  margin: 11px 0 0;
  color: var(--text-muted);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.65;
}

.v3-login-form {
  display: grid;
  gap: 19px;
  margin-top: 32px;
}

.v3-login-field { min-width: 0; }

.v3-login-field-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 8px;
}

.v3-login-field label {
  display: block;
  color: var(--text-secondary);
  font-size: 11px;
  font-weight: var(--label-weight);
  letter-spacing: .1em;
  line-height: 1.3;
  text-transform: uppercase;
}

.v3-login-input-wrap { position: relative; }

.v3-login-field input[type="email"],
.v3-login-field input[type="password"],
.v3-login-field input[type="text"] {
  width: 100%;
  min-height: 56px;
  margin: 0;
  padding: 0 15px;
  border: 1px solid var(--border-default);
  border-radius: 10px;
  outline: 0;
  background:var(--input-bg);
  box-shadow: var(--shadow-low);
  color: var(--text-primary);
  font-size: 16px;
  font-weight: var(--input-weight);
  line-height: 1;
  transition: border-color 150ms ease, box-shadow 150ms ease, background-color 150ms ease;
  -webkit-appearance: none;
  appearance: none;
}

.v3-login-field input:hover { border-color: var(--border-strong); }

.v3-login-field input:focus {
  border-color: var(--border-default);
  box-shadow: none;
}

.v3-login-field.has-error input {
  border-color: var(--status-error);
  background: var(--status-error-bg);
}

.v3-login-field.has-error input:focus { box-shadow: none; }

.v3-login-password input { padding-right: 66px !important; }

.v3-login-password-toggle,
.v3-login-link {
  min-height: 44px;
  padding: 0;
  border: 0 !important;
  border-radius: 7px !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--brand-accent-strong);
  cursor: pointer;
  font-size: 12px;
  font-weight: 750;
  text-decoration: none;
}

.v3-login-password-toggle {
  position: absolute;
  top: 6px;
  right: 7px;
  min-width: 52px;
  height: 44px;
}

.v3-login-link:hover,
.v3-login-password-toggle:hover {
  color: var(--text-primary) !important;
  text-decoration: underline;
  text-decoration-color: var(--brand-accent);
  text-underline-offset: 3px;
}

.v3-login-error {
  margin: 7px 0 0;
  color: var(--status-error);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.45;
}

.v3-login-alert {
  padding: 12px 13px;
  border: 1px solid color-mix(in srgb, var(--brand-accent) 28%, var(--border-default));
  border-radius: 9px;
  background: color-mix(in srgb, var(--brand-accent) 7%, var(--surface-primary));
  color: var(--brand-accent-text);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.5;
}

.v3-login-options {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.v3-login-remember {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 44px;
  color: var(--text-secondary);
  cursor: pointer;
  font-size: 13px;
  font-weight: 650;
}

.v3-login-remember input {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--brand-accent);
}

.v3-login-primary,
.v3-login-secondary {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 56px;
  padding: 0 18px;
  border-radius: 10px !important;
  cursor: pointer;
  font-size: 13px;
  font-weight: var(--button-weight);
  letter-spacing: .04em;
  line-height: 1.2;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.v3-login-primary {
  border: 1px solid var(--action-primary) !important;
  background: var(--action-primary) !important;
  box-shadow: var(--shadow-medium) !important;
  color: var(--action-primary-text) !important;
}

.v3-login-primary:hover {
  border-color: var(--action-primary-hover) !important;
  background: var(--action-primary-hover) !important;
  box-shadow: var(--shadow-medium) !important;
}

.v3-login-secondary {
  border: 1px solid var(--border-default) !important;
  background:var(--action-secondary) !important;
  box-shadow: var(--shadow-low) !important;
  color: var(--action-secondary-text) !important;
}

.v3-login-secondary:hover {
  border-color: var(--border-strong) !important;
  background: var(--action-secondary-hover) !important;
}

.v3-login-primary:disabled,
.v3-login-secondary:disabled {
  cursor: wait !important;
  opacity: .7;
}

.v3-login-spinner {
  width: 17px;
  height: 17px;
  margin-right: 9px;
  border: 2px solid color-mix(in srgb, var(--action-primary-text) 34%, transparent);
  border-top-color: var(--action-primary-text);
  border-radius: 999px;
  animation: v3-login-spin 720ms linear infinite;
}

.v3-login-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 25px 0 16px;
}

.v3-login-divider::before,
.v3-login-divider::after {
  height: 1px;
  flex: 1;
  content: "";
  background: var(--border-default);
}

.v3-login-divider span {
  color: var(--text-subtle);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.v3-login-trust {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 18px 0 0;
  color: var(--text-muted);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.45;
  text-align: center;
}

.v3-login-trust::before {
  color: var(--brand-accent-strong);
  content: "●";
  font-size: 8px;
}

.v3-login-support {
  margin: 13px 0 0;
  color: var(--text-subtle);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.55;
  text-align: center;
}

.v3-login-support a {
  color: var(--brand-accent-strong);
  font-weight: 750;
}

@keyframes v3-login-enter {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes v3-login-spin {
  to { transform: rotate(360deg); }
}

button,
[role="button"] {
  -webkit-tap-highlight-color: transparent;
}

button:hover {
  transform: none !important;
}

button:focus-visible,
[role="button"]:focus-visible,
a:focus-visible {
  outline: 3px solid var(--focus-ring) !important;
  outline-offset: 2px !important;
}

input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: none !important;
}

button:disabled,
input:disabled,
select:disabled,
textarea:disabled {
  cursor: not-allowed !important;
  opacity: .55 !important;
  box-shadow: none !important;
}

button[aria-busy="true"] {
  pointer-events: none;
}

/* Shared workspace chrome. List, detail, and editor views use the same toolbar
   language; individual variants only change behavior, not their visual grammar. */
.workspace-toolbar,
.v3-page-head {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 60px;
  padding: 8px 12px 8px 16px;
  margin-bottom: 18px;
  border: 1px solid var(--border-default);
  border-radius: 12px;
  background: color-mix(in srgb, var(--surface-primary) 82%, transparent);
  box-shadow: var(--shadow-low);
  backdrop-filter: blur(14px);
}

.workspace-toolbar-title,
.v3-page-title {
  min-width: 0;
}

.workspace-toolbar-title,
.v3-page-title h1 {
  margin: 0;
  color: var(--text-primary);
  font: var(--heading-weight) clamp(23px, 2.4vw, 30px)/1.15 var(--font-heading);
  letter-spacing: -.045em;
}

.workspace-toolbar-subtitle,
.v3-page-title p {
  margin: 5px 0 0;
  color: var(--text-muted);
  font-size: 13px;
  line-height: 1.45;
}

.workspace-toolbar-actions,
.v3-page-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
  margin-left: auto;
}

.workspace-toolbar-view {
  display: flex;
  align-items: center;
  flex: none;
  border: 1px solid var(--border-default);
  border-radius: 10px;
  overflow: hidden;
  background:var(--surface-primary);
}

.v5-doc-more-mobile-only {
  display: none !important;
}

/* One button controls both layouts: every activation flips to the other view. */
.workspace-view-toggle {
  gap: 3px;
  padding: 3px;
  border-radius: 10px;
  box-shadow: inset 0 1px 2px color-mix(in srgb, var(--text-primary) 4%, transparent);
}

.workspace-view-flip {
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
}

.workspace-view-flip:hover,
.workspace-view-flip:active {
  transform: none !important;
}

.workspace-view-flip:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--text-primary) 18%, transparent);
  outline-offset: 2px;
}

.workspace-view-toggle .workspace-view-toggle-option {
  display: grid !important;
  place-items: center;
  width: 38px;
  height: 36px;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 7px !important;
  background: transparent !important;
  color: var(--text-muted) !important;
  box-shadow: none !important;
  transition: background-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard);
}

.workspace-view-toggle .workspace-view-toggle-option.is-active {
  background: var(--selected-bg) !important;
  color: var(--selected-text) !important;
  box-shadow: var(--shadow-low) !important;
}

.workspace-toolbar-back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: none;
  border: 0;
  background: transparent;
  color: var(--brand-accent-strong);
  font: var(--button-weight) 13px/1 var(--font-ui);
  cursor: pointer;
  white-space: nowrap;
}

.workspace-toolbar-divider {
  width: 1px;
  height: 20px;
  flex: none;
  background: var(--border-default);
}

/* The editor keeps the full-bleed sticky behavior of its specialized toolbar. */
.workspace-toolbar--builder {
  border: 0;
  border-bottom: 1px solid var(--border-default);
  border-radius: 0;
  margin: 0;
  box-shadow: none;
}

.v3-empty {
  display: grid;
  place-items: center;
  min-height: 230px;
  padding: 32px 20px;
  border: 1px dashed var(--brand-accent-border);
  border-radius: 14px;
  background: color-mix(in srgb, var(--surface-primary) 70%, transparent);
  text-align: center;
}

.v3-empty-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  margin: 0 auto 12px;
  border-radius: 13px;
  background: var(--brand-accent-soft);
  color: var(--brand-accent);
  font-size: 20px;
  font-weight: 800;
}

.v3-empty strong {
  display: block;
  color: var(--text-primary);
  font-size: 15px;
}

.v3-empty p {
  max-width: 390px;
  margin: 6px auto 0;
  color: var(--text-muted);
  font-size: 13px;
  line-height: 1.5;
}

.v3-field-error {
  margin-top: 5px;
  color: var(--status-error);
  font-size: 12px;
  font-weight: 650;
}

.v3-inline-alert {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 11px 13px;
  border: 1px solid var(--brand-accent-border);
  border-radius: 9px;
  background: var(--status-warning-bg);
  color: var(--status-warning);
  font-size: 12.5px;
  line-height: 1.5;
}

.v3-inline-alert[data-tone="danger"] {
  border-color: color-mix(in srgb, var(--status-error) 28%, var(--border-default));
  background: var(--status-error-bg);
  color: var(--status-error);
}

.v3-inline-alert[data-tone="success"] {
  border-color: color-mix(in srgb, var(--status-success) 28%, var(--border-default));
  background: var(--status-success-bg);
  color: var(--status-success);
}

.v3-status-dot {
  width: 8px;
  height: 8px;
  margin-top: 5px;
  flex: none;
  border-radius: 50%;
  background: currentColor;
}

.v3-icon-button {
  display: inline-grid !important;
  place-items: center !important;
  min-width: 36px !important;
  width: 36px !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 !important;
  border: 1px solid transparent !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: var(--text-muted) !important;
  box-shadow: none !important;
}

.v3-icon-button:hover {
  border-color: color-mix(in srgb, var(--status-error) 28%, var(--border-default)) !important;
  background: var(--status-error-bg) !important;
  color: var(--status-error) !important;
}

.v3-modal-backdrop {
  animation: v3-fade .14s ease;
}

.v3-modal-panel {
  border: 1px solid var(--border-default);
  border-radius: 14px !important;
  box-shadow: var(--shadow-high);
  animation: v3-modal-in .18s cubic-bezier(.2, .8, .2, 1);
}

/* Desktop dialogs sit at the 45% visual center; mobile keeps its sheet layout. */
@media (min-width: 561px) {
  div[style*="z-index:220"] {
    align-items: center !important;
  }

  .v3-modal-backdrop > .v3-modal-panel,
  .v3-customer-scrim > .v3-customer-popup,
  div[style*="z-index:220"] > div[style*="width:900px"] {
    translate: 0 -5vh;
  }
}

.v3-dialog-heading {
  margin: 0;
  color: var(--text-primary);
  font: var(--heading-weight) 18px/1.25 var(--font-heading);
  letter-spacing: -.025em;
}

.v3-dialog-copy {
  margin: 6px 0 0;
  color: var(--text-muted);
  font-size: 13px;
  line-height: 1.55;
}

.v3-danger-button {
  color:var(--action-primary-text) !important;
  border-color: var(--status-error) !important;
  background: var(--status-error) !important;
}

.v3-record-button {
  width: 100%;
  border: 0;
  border-radius: 0 !important;
  background: transparent;
  box-shadow: none;
  text-align: left;
}

.v3-record-button:hover {
  background: var(--hover-bg) !important;
}

.v3-click-surface {
  position: relative;
  cursor: pointer;
  outline: none;
  transition:
    border-color 150ms ease,
    background-color 150ms ease,
    box-shadow 150ms ease;
}

.v3-click-surface:hover {
  background: var(--hover-bg) !important;
}

.v3-click-surface:focus-visible {
  z-index: 1;
  outline: 3px solid var(--focus-ring);
  outline-offset: -3px;
  background: var(--hover-bg) !important;
}

.v3-click-surface:active {
  background: var(--selected-bg) !important;
}

.v3-card-surface:hover,
.v3-card-surface:focus-visible {
  border-color: var(--brand-accent-border) !important;
  box-shadow: var(--shadow-medium);
}

.v3-row-surface:focus-visible {
  box-shadow: inset 3px 0 0 var(--brand-accent);
}

.v3-products-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(245px, 1fr));
  gap: 12px;
}

.v3-products-list {
  overflow: hidden;
  border: 1px solid var(--border-default);
  border-radius: 10px;
  background:var(--surface-primary);
}

.v3-product-list-row {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) minmax(120px, .55fr) minmax(90px, auto);
  align-items: center;
  gap: 14px;
  min-height: 72px;
  padding: 13px 16px;
  border-bottom: 1px solid var(--border-subtle);
  cursor: pointer;
}

.v3-product-list-row:last-child { border-bottom: 0; }

.v3-product-list-image {
  width: 44px;
  height: 44px;
  border: 1px solid var(--border-default);
  border-radius: 11px;
  background-color: var(--surface-secondary);
  background-position: center;
  background-size: cover;
}

.v3-product-list-row .v3-product-icon {
  width: 44px;
  height: 44px;
}

.v3-product-list-copy { min-width: 0; }

.v3-product-list-copy h3 {
  overflow: hidden;
  margin: 0;
  color: var(--text-primary);
  font-size: 14px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.v3-product-list-copy p {
  overflow: hidden;
  margin: 3px 0 0;
  color: var(--text-muted);
  font-size: 12px;
  line-height: 1.4;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.v3-product-list-meta {
  display: grid;
  gap: 2px;
  color: var(--text-muted);
  font-size: 12px;
}

.v3-product-list-meta strong {
  color: var(--text-primary);
  font-size: 12px;
  font-weight: 650;
}

.v3-product-list-price {
  color: var(--text-primary);
  font: 700 15px/1.2 var(--font-mono);
  text-align: right;
}

.v3-product-card {
  display: flex;
  min-height: 150px;
  flex-direction: column;
  gap: 10px;
  padding: 16px;
  border: 1px solid var(--border-default);
  border-radius: 13px;
  background:var(--surface-primary);
  box-shadow: var(--shadow-low);
}

.v3-product-card-top {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.v3-product-icon {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  flex: none;
  border-radius: 10px;
  background: var(--brand-accent-soft);
  color: var(--brand-accent);
  font: 800 10px/1 var(--font-mono);
}

.v3-product-card h3 {
  margin: 0;
  color: var(--text-primary);
  font-size: 14px;
  line-height: 1.35;
}

.v3-product-card p {
  margin: 4px 0 0;
  color: var(--text-muted);
  font-size: 12px;
  line-height: 1.45;
}

.v3-product-price {
  margin-top: auto;
  padding-top: 10px;
  border-top: 1px solid var(--divider);
  color: var(--text-primary);
  font: 700 16px/1.2 var(--font-mono);
}

.v3-payment-summary {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  padding: 11px;
  border-radius: 9px;
  background: var(--surface-secondary);
}

.v3-payment-summary span {
  display: block;
  color: var(--text-muted);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.v3-payment-summary strong {
  display: block;
  margin-top: 3px;
  color: var(--text-primary);
  font: 700 13px/1.3 var(--font-mono);
}

.v3-offline-payment {
  padding: 18px;
  border: 1px solid var(--brand-accent-border);
  border-radius: 12px;
  background: var(--status-success-bg);
}

.v3-offline-payment strong {
  display: block;
  color: var(--brand-accent-text);
}

.v3-offline-payment p {
  margin: 7px 0 0;
  color: var(--status-success);
  font-size: 13px;
  line-height: 1.55;
}

.v3-doc-line-head,
.v3-doc-line {
  min-width: 0;
}

.v3-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@keyframes v3-fade {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes v3-modal-in {
  from { opacity: 0; transform: translateY(8px) scale(.99); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (max-width: 900px) {
  .v3-login { grid-template-columns: 1fr; }

  .v3-login-brand {
    min-height: auto;
    padding: 22px clamp(20px, 5vw, 34px);
  }

  .v3-login-story,
  .v3-login-brand-foot { display: none; }

  .v3-login-panel {
    min-height: calc(100vh - 76px);
    min-height: calc(100svh - 76px);
    align-items: flex-start;
    padding: clamp(28px, 7vw, 54px) clamp(20px, 6vw, 44px) max(32px, env(safe-area-inset-bottom));
  }

  .v3-login-card {
    width: min(100%, 460px);
    margin: auto;
  }
}

@media (max-width: 560px) {
  .v3-login-brand { padding: 20px 18px; }
  .v3-login-logo { font-size: 19px; }

  .v3-login-panel {
    min-height: calc(100vh - 70px);
    min-height: calc(100svh - 70px);
    padding: 27px 18px max(28px, env(safe-area-inset-bottom));
    background: var(--surface-primary);
  }

  .v3-login-card {
    width: 100%;
    margin: 0 auto;
  }

  .v3-login-card h2 { font-size: 34px; }
  .v3-login-form { gap: 17px; margin-top: 27px; }
  .v3-login-options { align-items: flex-start; }
  .v3-login-remember { flex: 1; }
}

@media (max-width: 360px) {
  .v3-login-brand { padding-inline: 14px; }
  .v3-login-panel { padding-inline: 14px; }
  .v3-login-card h2 { font-size: 31px; }
  .v3-login-options { flex-direction: column; gap: 2px; }
}

@media (min-width: 901px) and (max-height: 760px) {
  .v3-login-brand { padding-block: 32px; }
  .v3-login-story { padding: 38px 0; }
  .v3-login-story h1 { font-size: clamp(40px, 4.6vw, 58px); }
  .v3-login-momentum { margin-top: 24px !important; }
  .v3-login-panel { align-items: flex-start; padding-block: 34px; }
}

@media (prefers-reduced-motion: reduce) {
  .v3-login-card,
  .v3-login-spinner { animation: none !important; }
}

@media (max-width: 760px) {

  .v3-mobile-topbar {
    flex-wrap: nowrap !important;
    gap: 8px !important;
    min-height: 60px;
    padding: 8px 12px !important;
  }

  .v3-mobile-topbar .v3-mobile-page-context {
    display: none !important;
  }

  .v3-mobile-topbar .search-wrap {
    display: block !important;
    order: 2;
    flex: 1 1 auto;
    min-width: 0;
    width: auto !important;
    max-width: none !important;
  }

  .v3-mobile-topbar .search-box {
    width: 100% !important;
    max-width: none !important;
    min-height: 40px !important;
    height: 40px !important;
    padding: 0 10px !important;
    border: 1px solid var(--border-default) !important;
    border-radius: 10px !important;
    background:var(--surface-primary) !important;
    box-shadow: var(--shadow-low) !important;
  }

  .v3-mobile-topbar .search-box input {
    min-width: 0 !important;
    font-size: 14px !important;
  }

  .v3-mobile-topbar .search-box:focus-within {
    border-color: var(--border-default) !important;
    background-color:var(--surface-primary) !important;
    box-shadow: var(--shadow-low) !important;
  }

  .v3-mobile-topbar .notification-anchor {
    order: 3;
    flex: none;
  }

  .v3-mobile-topbar .search-panel {
    position: fixed !important;
    top: 66px !important;
    right: 12px !important;
    left: 12px !important;
    width: auto !important;
    max-height: min(60vh,480px) !important;
  }

  .workspace-toolbar,
  .v3-page-head {
    align-items: stretch;
    flex-direction: column;
    padding: 12px;
  }

  .workspace-toolbar-actions,
  .v3-page-actions {
    justify-content: flex-start;
    margin-left: 0 !important;
  }

  .workspace-toolbar-actions > button,
  .v3-page-actions > button {
    flex: 1 1 auto;
  }

  .workspace-toolbar-view {
    align-self: flex-start;
    margin-left: 0 !important;
  }

  .workspace-toolbar--collection {
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 48px !important;
    padding: 0 !important;
    margin-bottom: 14px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    white-space: nowrap;
  }

  .workspace-toolbar--collection .workspace-toolbar-title {
    flex: 0 1 auto;
    overflow: hidden;
    font-size: 22px !important;
    line-height: 1 !important;
    text-overflow: ellipsis;
  }

  .workspace-toolbar--collection .workspace-toolbar-view {
    align-self: center;
    flex: none;
    height: 40px;
    margin-left: auto !important;
    padding: 2px;
    border-radius: 9px;
  }

  .workspace-toolbar--collection .workspace-view-toggle-option {
    width: 34px;
    height: 34px;
  }

  .workspace-toolbar--collection > .v3-primary-button {
    flex: none;
    min-height: 40px !important;
    padding: 0 12px !important;
    border-radius: 9px !important;
    font-size: 12.5px !important;
    white-space: nowrap;
  }

  .v3-toolbar {
    align-items: stretch;
  }

  .v3-toolbar select {
    flex: 1 1 100%;
    width: 100%;
  }

  .v3-results-count {
    margin: 0;
  }

  .v3-products-grid {
    grid-template-columns: 1fr;
  }

  .v3-product-list-row {
    grid-template-columns: 40px minmax(0, 1fr) auto;
    gap: 11px;
    padding: 12px 13px;
  }

  .v3-product-list-image {
    width: 40px;
    height: 40px;
  }

  .v3-product-list-row .v3-product-icon {
    width: 40px;
    height: 40px;
  }

  .v3-product-list-meta { display: none; }

  .v3-payment-summary {
    grid-template-columns: 1fr;
  }

  .v3-doc-line-head {
    display: none !important;
  }

  div[style*="grid-template-columns:1fr 50px"][style*="font-size:10px"] {
    display: none !important;
  }

  div[style*="grid-template-columns:1fr 50px"][style*="font-size:13px"] {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 9px 12px !important;
    padding: 13px 0 !important;
  }

  div[style*="grid-template-columns:1fr 50px"][style*="font-size:13px"] > div:first-child {
    grid-column: 1 / -1;
  }

  .v3-doc-line {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 9px 12px !important;
    padding: 13px 0 !important;
  }

  .v3-doc-description {
    grid-column: 1 / -1;
    min-width: 0;
  }

  .v3-doc-qty,
  .v3-doc-price,
  .v3-doc-amount {
    min-width: 0;
    text-align: left !important;
    font-size: 12px;
  }

  .v3-doc-qty:before,
  .v3-doc-price:before,
  .v3-doc-amount:before {
    content: attr(data-label);
    display: block;
    margin-bottom: 3px;
    color: var(--text-muted);
    font-size: 9px;
    font-weight: 750;
    letter-spacing: .07em;
    text-transform: uppercase;
  }

  .topbar .topbar-title {
    display: none !important;
  }

  .topbar .topbar-logo {
    width: 130px !important;
  }
}

@media (max-width: 360px) {
  .workspace-toolbar--collection .workspace-toolbar-title {
    font-size: 20px !important;
  }

  .workspace-toolbar--collection > .v3-primary-button[data-mobile-label] {
    font-size: 0 !important;
  }

  .workspace-toolbar--collection > .v3-primary-button[data-mobile-label]::after {
    content: attr(data-mobile-label);
    font-size: 12px;
  }
}

@media (max-width: 520px) {
  .topbar .topbar-logo {
    display: none !important;
  }

  .topbar {
    padding-inline: 12px !important;
  }

  .topbar .search-wrap {
    max-width: none !important;
  }
}

/* Company logos share one rendering contract across builders, documents, receipts, and public links. */
.v3-document-logo {
  display: block;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

.v3-document-logo--fit {
  width: 100%;
  height: 100%;
}

.v3-document-logo--hero {
  max-width: min(100%, var(--logo-hero-width, 220px));
  max-height: var(--logo-hero-height, 52px);
  margin: 0 auto;
}

.v3-document-logo--document {
  max-width: min(100%, var(--logo-document-width, 215px));
  max-height: var(--logo-document-height, 54px);
  margin-bottom: 4px;
}

.v3-document-logo--center {
  max-width: min(100%, var(--logo-document-width, 215px));
  max-height: var(--logo-document-height, 54px);
  margin: 0 auto 4px;
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,
  *:before,
  *:after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

@media print {
  body {
    background:var(--surface-primary) !important;
  }

  .sidebar,
  .topbar,
  [data-no-print],
  .workspace-toolbar,
  .v3-page-head,
  .v3-toolbar,
  .v3-toast,
  .v3-mobile-nav,
  .v3-mobile-more-scrim {
    display: none !important;
  }

  .app,
  main,
  .content {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .content > * {
    margin: 0 !important;
  }

  .v3-document-logo {
    display: block !important;
    visibility: visible !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
}

/* List controls — compact, labeled, and consistent across every record page. */
.v3-toolbar{display:flex!important;align-items:flex-end!important;flex-wrap:wrap!important;gap:10px!important;padding:0!important;margin:0 0 20px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.v3-filter-menu{position:relative;min-width:188px;z-index:12}
.v3-filter-menu:has(.v3-filter-popover){z-index:40}
.v3-filter-trigger{display:grid;grid-template-columns:minmax(0,1fr) 20px;grid-template-rows:auto auto;column-gap:12px;width:100%;min-height:56px;padding:8px 11px 8px 13px;border:1px solid var(--border-default);border-radius:10px;background:var(--surface-primary);box-shadow:var(--shadow-low);color:var(--text-primary);cursor:pointer;text-align:left;transition:border-color 150ms ease,background-color 150ms ease,box-shadow 150ms ease}
.v3-filter-trigger:hover{border-color:var(--border-strong);background:var(--surface-primary)}
.v3-filter-trigger:focus-visible,.v3-filter-trigger[aria-expanded="true"]{border-color:var(--brand-accent);background:var(--surface-primary);box-shadow:0 0 0 3px var(--focus-ring),var(--shadow-low);outline:0}
.v3-filter-label{grid-column:1;color:var(--text-subtle);font-size:9px;font-weight:800;line-height:1.15;letter-spacing:.13em;text-transform:uppercase}
.v3-filter-value{grid-column:1;overflow:hidden;font-size:13px;font-weight:700;line-height:22px;text-overflow:ellipsis;white-space:nowrap}
.v3-filter-chevron{grid-column:2;grid-row:1/3;align-self:center;display:grid;place-items:center;width:20px;height:20px;color:var(--text-muted);transition:transform 160ms ease,color 160ms ease}
.v3-filter-trigger[aria-expanded="true"] .v3-filter-chevron{color:var(--brand-accent-strong);transform:rotate(180deg)}
.v3-filter-popover{position:absolute;left:0;top:calc(100% + 8px);min-width:224px;padding:6px;border:1px solid var(--border-default);border-radius:12px;background:var(--dropdown-bg);box-shadow:var(--shadow-high);z-index:80;animation:v3FilterIn 140ms cubic-bezier(.2,.8,.2,1)}
.v3-filter-option{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:9px;width:100%;min-height:42px;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--text-primary);cursor:pointer;font-size:13px;font-weight:650;text-align:left;transition:background-color 120ms ease,color 120ms ease}
.v3-filter-option:hover,.v3-filter-option:focus-visible{background:var(--surface-secondary);outline:0}
.v3-filter-option.is-selected{background:var(--brand-accent-soft);color:var(--brand-accent-strong)}
.v3-filter-check{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;color:transparent}
.v3-filter-option.is-selected .v3-filter-check{color:var(--brand-accent-strong)}
.v3-filter-empty{padding:12px 10px;color:var(--text-muted);font-size:12px;line-height:1.45}
.v3-template-option .v3-template-icon{display:grid;place-items:center;width:20px;height:20px;color:var(--brand-accent-strong)}
.ib3-template-menu{min-width:210px;flex:none}
.ib3-template-menu .v3-filter-trigger{min-height:44px;padding:6px 10px 6px 12px}
.ib3-template-menu .v3-filter-label{font-size:8px}
.ib3-template-menu .v3-filter-value{font-size:12.5px;line-height:19px}
.ib3-template-menu .v3-filter-popover{right:0;left:auto;min-width:240px}
.ib3-template-menu .v3-template-option{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:9px;min-height:42px;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:var(--text-primary);font-size:13px;font-weight:650;text-align:left}
.ib3-template-menu .v3-template-option:hover,.ib3-template-menu .v3-template-option:focus-visible{background:var(--surface-secondary);outline:0}
.ib3-template-menu .v3-template-icon{width:20px;height:20px;color:var(--brand-accent-strong)}
.ib3-template-menu .v3-template-option>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ib3-template-sheet-scrim,.ib3-template-sheet-head{display:none}
.ib3-template-sheet-list{display:grid;gap:4px}
@keyframes v3FilterIn{from{opacity:0;transform:translateY(-4px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.v3-filter-popover{animation:none}.v3-filter-chevron{transition:none}}
.v3-results-count{display:inline-flex!important;align-items:center!important;gap:8px!important;align-self:center!important;min-height:32px!important;margin:0 0 0 auto!important;padding:0!important;color:var(--text-muted)!important;font-size:11px!important;font-weight:700!important;letter-spacing:.02em!important;white-space:nowrap!important}
.v3-results-count:before{content:"";width:6px;height:6px;flex:none;border-radius:50%;background:var(--brand-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-accent) 18%,transparent)}
@media(max-width:760px){.v3-toolbar{align-items:stretch!important;gap:8px!important}.v3-filter-menu{flex:1 1 100%;width:100%;min-width:0}.v3-filter-popover{left:0;right:0;min-width:0}.v3-results-count{margin:4px 0 0!important}}

/* Curated appearance themes. Each option is a complete accessible accent system. */
.v3-theme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.v3-theme-option{position:relative;display:grid!important;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:10px;min-height:52px!important;padding:9px 10px!important;border:1px solid var(--border-default)!important;border-radius:10px!important;background:var(--surface-primary)!important;box-shadow:none!important;color:var(--text-primary)!important;cursor:pointer;text-align:left!important;transform:none!important}
.v3-theme-option:hover{border-color:var(--border-strong)!important;background:var(--surface-primary)!important;transform:none!important}
.v3-theme-option:focus-visible{border-color:var(--brand-accent)!important;outline:3px solid var(--focus-ring)!important;outline-offset:1px!important}
.v3-theme-option.is-selected{border-color:var(--theme-color)!important;background:var(--surface-primary)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--theme-color) 18%,transparent)!important}
.v3-theme-swatch{display:block;width:30px;height:30px;border:1px solid var(--border-default);border-radius:9px;background:var(--theme-color);box-shadow:inset 0 1px color-mix(in srgb,var(--text-inverse) 18%,transparent)}
.v3-theme-name{overflow:hidden;font-size:12px;font-weight:750;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}
.v3-theme-check{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:transparent;color:transparent}
.v3-theme-option.is-selected .v3-theme-check{background:var(--theme-color);color:var(--theme-on)}
@media(max-width:480px){.v3-theme-grid{grid-template-columns:1fr}}

/* Mobile navigation — deliberately independent from the seven-item desktop sidebar. */
.v3-mobile-nav{position:fixed;right:0;bottom:0;left:0;z-index:90;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:7px 8px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--sidebar-border);background:var(--mobile-nav-bg,var(--sidebar-bg));box-shadow:var(--shadow-high);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.v3-mobile-nav-item{position:relative;min-width:0!important;min-height:54px!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:5px 2px!important;border:0!important;border-radius:10px!important;background:transparent!important;box-shadow:none!important;color:var(--sidebar-muted)!important;cursor:pointer;font-size:10px!important;font-weight:var(--nav-weight)!important;line-height:1!important;letter-spacing:.01em;transition:background-color 140ms ease,color 140ms ease,transform 140ms ease}
.v3-mobile-nav-item:before{content:"";position:absolute;top:2px;left:50%;width:20px;height:2px;border-radius:999px;background:transparent;transform:translateX(-50%)}
.v3-mobile-nav-item:hover,.v3-mobile-nav-item:focus-visible{background:var(--sidebar-hover)!important;color:var(--sidebar-text)!important;outline:0!important}
.v3-mobile-nav-item:active{transform:scale(.97)}
.v3-mobile-nav-item.active{background:color-mix(in srgb,var(--brand-accent) 18%,transparent)!important;color:var(--brand-accent)!important}
.v3-mobile-nav-item.active:before{background:var(--brand-accent)}
.v3-mobile-nav-icon{display:grid;place-items:center;width:24px;height:24px}

.v3-mobile-more-scrim{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;padding:16px 12px calc(86px + env(safe-area-inset-bottom));background:var(--backdrop-bg);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:v3-fade 140ms ease}
.v3-mobile-more-sheet{width:100%;max-width:540px;margin:0 auto;overflow:hidden;border:1px solid var(--border-default);border-radius:18px!important;background:var(--modal-bg);box-shadow:var(--shadow-high);animation:v3-mobile-sheet-in 180ms cubic-bezier(.2,.8,.2,1)}
.v3-mobile-more-head{position:relative;display:flex;align-items:center;justify-content:space-between;padding:18px 18px 14px;overflow:hidden;background:var(--action-primary);color:var(--action-primary-text)}
.v3-mobile-more-head:after{content:"";position:absolute;width:130px;height:130px;right:-42px;top:-85px;border:1px solid color-mix(in srgb,var(--brand-accent) 42%,transparent);border-radius:50%;pointer-events:none}
.v3-mobile-more-eyebrow{position:relative;z-index:1;margin-bottom:4px;color:var(--brand-accent);font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.v3-mobile-more-head h2{position:relative;z-index:1;margin:0;font-size:20px;line-height:1.15}
.v3-mobile-more-close{position:relative;z-index:1;width:36px!important;height:36px!important;min-height:36px!important;display:grid!important;place-items:center;padding:0!important;border:1px solid color-mix(in srgb,var(--action-primary-text) 15%,transparent)!important;border-radius:50%!important;background:color-mix(in srgb,var(--action-primary-text) 7%,transparent)!important;box-shadow:none!important;color:var(--action-primary-text)!important;cursor:pointer;font-size:23px!important;font-weight:var(--body-weight)!important;line-height:1!important}
.v3-mobile-more-close:hover,.v3-mobile-more-close:focus-visible{border-color:var(--brand-accent)!important;background:var(--brand-accent)!important;color:var(--action-primary-text)!important;outline:0!important}
.v3-mobile-more-list{display:flex;flex-direction:column;padding:8px}
.v3-mobile-more-item{width:100%;min-height:68px!important;display:grid!important;grid-template-columns:42px minmax(0,1fr) 20px;align-items:center;gap:12px;padding:9px 10px!important;border:0!important;border-radius:12px!important;background:transparent!important;box-shadow:none!important;color:var(--text-primary)!important;cursor:pointer;text-align:left!important;transition:background-color 140ms ease,color 140ms ease}
.v3-mobile-more-item+.v3-mobile-more-item{border-top:1px solid var(--border-subtle)!important}
.v3-mobile-more-item:hover,.v3-mobile-more-item:focus-visible{background:var(--surface-secondary)!important;outline:0!important}
.v3-mobile-more-item.active{background:var(--brand-accent-soft)!important;color:var(--brand-accent-strong)!important}
.v3-mobile-more-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--surface-secondary);color:var(--text-muted)}
.v3-mobile-more-item.active .v3-mobile-more-icon{background:var(--brand-accent);color:var(--action-primary-text)}
.v3-mobile-more-copy{display:flex;min-width:0;flex-direction:column;gap:3px}
.v3-mobile-more-copy strong{font-size:14px;line-height:1.2}
.v3-mobile-more-copy small{overflow:hidden;color:var(--text-muted);font-size:11px;font-weight:600;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.v3-mobile-more-arrow{color:var(--text-muted);font-size:24px;font-weight:300;line-height:1}
@keyframes v3-mobile-sheet-in{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(min-width:761px){.v3-mobile-nav,.v3-mobile-more-scrim{display:none!important}}

/* ===================== V4 redesign finish ===================== */
.v3-primary-button{
  border-radius:10px!important;background:var(--action-primary)!important;border:1px solid var(--action-primary)!important;color:var(--action-primary-text)!important;
  text-transform:none!important;letter-spacing:0!important;font-weight:var(--button-weight)!important;
  box-shadow:var(--shadow-medium)!important;
  transition:background var(--dur-base) var(--ease-standard),border-color var(--dur-base) var(--ease-standard),transform var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard)!important;
}
.v3-primary-button:hover{background:var(--action-primary-hover)!important;border-color:var(--action-primary-hover)!important;color:var(--action-primary-text)!important;transform:translateY(-1px);box-shadow:var(--shadow-medium)!important}
.v3-primary-button:active{transform:translateY(0) scale(.99)}
.v3-primary-button:focus-visible{outline:3px solid var(--focus-ring)!important;outline-offset:2px}
.v3-primary-button[disabled]{opacity:.55;transform:none!important}

/* selectable chips (product modal category/unit) */
.v4-chip{padding:8px 13px;border:1px solid var(--border-default);border-radius:999px;background:var(--surface-primary);color:var(--text-secondary);font-size:12.5px;font-weight:600;cursor:pointer;min-height:34px;transition:background var(--dur-base) ease,border-color var(--dur-base) ease,color var(--dur-base) ease,box-shadow var(--dur-base) ease}
.v4-chip:hover{border-color:var(--border-strong);background:var(--surface-primary)}
.v4-chip.is-on{background:var(--selected-bg);border-color:var(--brand-accent-border);color:var(--selected-text);box-shadow:var(--shadow-low)}
.v4-chip:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px}
.v4-chip-sm{padding:4px 10px;min-height:26px;font-size:11.5px;color:var(--text-muted)}
.v4-chip-sm.is-on{color:var(--selected-text)}

/* classless secondary buttons (white, hairline border) */
.content button[style*="border:1px solid var(--border-default)"][style*="background:var(--surface-primary)"]{
  border-radius:10px!important;box-shadow:var(--shadow-xs);
  transition:background var(--dur-base) ease,border-color var(--dur-base) ease,box-shadow var(--dur-base) ease,transform var(--dur-base) ease;
}
.content button[style*="border:1px solid var(--border-default)"][style*="background:var(--surface-primary)"]:hover{background:var(--surface-primary)!important;border-color:var(--border-strong)!important;box-shadow:var(--shadow-low);transform:translateY(-1px)}
.content button[style*="border:1px solid var(--border-default)"][style*="background:var(--surface-primary)"]:active{transform:translateY(0)}

/* clickable cards + rows */
.v3-card-surface{border-radius:14px!important;box-shadow:var(--shadow-xs);transition:box-shadow .18s var(--ease-standard),border-color .18s var(--ease-standard),transform .18s var(--ease-standard)}
.v3-card-surface:hover{border-color:color-mix(in srgb,var(--brand-accent) 42%,var(--border-default))!important;box-shadow:var(--shadow-high);transform:translateY(-2px)}
.v3-card-surface:active{transform:translateY(0)}
.v3-card-surface:focus-visible,.v3-row-surface:focus-visible{outline:2px solid var(--brand-accent)!important;outline-offset:2px}
.v3-row-surface{transition:background .12s ease}
.v3-row-surface:hover{background:var(--brand-accent-faint)!important}

/* list containers and panels breathe a little */
.v3-toolbar{align-items:center}
.v3-filter-trigger{border-radius:10px!important}
.v3-filter-popover{border-radius:12px!important;overflow:hidden}

/* Settings: choose a populated demo workspace or a clean one. */
.v3-data-mode-card{padding:18px;border:1px solid var(--border-default);border-radius:10px;background:var(--surface-primary)}
.v3-data-mode-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}
.v3-data-mode-badge{display:inline-flex;align-items:center;flex:none;min-height:25px;padding:0 9px;border-radius:999px;background:var(--brand-accent-soft);color:var(--brand-accent-strong);font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.v3-data-mode-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.v3-data-mode-option{display:grid!important;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:9px;min-height:68px!important;padding:10px!important;border:1px solid var(--border-default)!important;border-radius:10px!important;background:var(--surface-primary)!important;box-shadow:none!important;color:var(--text-primary)!important;cursor:pointer;text-align:left!important;transform:none!important}
.v3-data-mode-option:hover{border-color:var(--border-strong)!important;background:var(--surface-primary)!important;transform:none!important}
.v3-data-mode-option.is-selected{border-color:var(--brand-accent)!important;background:var(--brand-accent-soft)!important;box-shadow:0 0 0 1px var(--brand-accent)!important}
.v3-data-mode-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--surface-primary);color:var(--text-muted);border:1px solid var(--border-default)}
.v3-data-mode-option.is-selected .v3-data-mode-icon{border-color:transparent;background:var(--brand-accent);color:var(--action-primary-text)}
.v3-data-mode-option strong{display:block;font-size:12.5px;line-height:1.25}
.v3-data-mode-option small{display:block;margin-top:2px;color:var(--text-muted);font-size:10.5px;font-weight:500;line-height:1.25}
.v3-data-mode-check{display:grid;place-items:center;width:18px;height:18px;color:transparent}
.v3-data-mode-option.is-selected .v3-data-mode-check{color:var(--brand-accent-strong)}
.v3-data-mode-note{display:flex;align-items:flex-start;gap:7px;margin-top:10px;color:var(--text-muted);font-size:11.5px;line-height:1.45}
.v3-data-mode-note span{color:var(--brand-accent);font-size:10px;line-height:1.6}
@media(max-width:520px){.v3-data-mode-picker{grid-template-columns:1fr}}

/* Guided Wave / QuickBooks migration */
.v5-import-card{padding:18px;border:1px solid var(--border-default);border-radius:10px;background:var(--surface-primary)}
.v5-import-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.v5-import-eyebrow{margin-bottom:3px;color:var(--brand-accent-strong);font-size:10px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.v5-import-card-title{font-size:15px;font-weight:900;letter-spacing:-.01em}
.v5-import-safe-badge,.v5-import-ready-badge{display:inline-flex;align-items:center;flex:none;min-height:25px;padding:0 9px;border-radius:999px;background:var(--brand-accent-soft);color:var(--brand-accent-strong);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.v5-import-card-copy{margin:8px 0 13px;color:var(--text-muted);font-size:12px;line-height:1.5}
.v5-import-providers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.v5-import-provider{display:grid!important;grid-template-columns:36px minmax(0,1fr) 18px;align-items:center;gap:10px;min-height:68px!important;padding:10px 11px!important;border:1px solid var(--border-default)!important;border-radius:11px!important;background:var(--surface-primary)!important;box-shadow:none!important;text-align:left!important;cursor:pointer;transform:none!important}
.v5-import-provider:hover{border-color:var(--brand-accent)!important;background:var(--brand-accent-faint)!important;transform:none!important}
.v5-import-provider>span:nth-child(2){min-width:0}.v5-import-provider strong,.v5-import-provider small{display:block}.v5-import-provider strong{font-size:12.5px;line-height:1.25}.v5-import-provider small{margin-top:2px;color:var(--text-muted);font-size:10.5px;font-weight:500;line-height:1.25}.v5-import-provider>svg{width:17px;height:17px;fill:none;stroke:var(--text-muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.v5-import-provider-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;color:var(--action-primary-text);font-size:15px;font-weight:900;letter-spacing:-.05em;text-transform:none}.v5-import-provider-mark.wave{background:#486CC7}.v5-import-provider-mark.quickbooks{background:#2CA01C;font-size:12px}
.v5-import-utility-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.v5-import-utility-row button{min-height:36px;padding:7px 10px;border:1px solid var(--border-default);border-radius:9px;background:var(--surface-primary);color:var(--text-muted);font-size:11px;font-weight:700;cursor:pointer}.v5-import-utility-row button:hover{border-color:var(--border-strong);color:var(--text-primary);background:var(--surface-primary)}
.v5-import-local-note{display:flex;align-items:flex-start;gap:7px;margin-top:10px;color:var(--text-subtle);font-size:10.5px;line-height:1.45}.v5-import-local-note svg{width:13px;height:13px;flex:none;margin-top:1px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.v5-import-backdrop{position:fixed;inset:0;z-index:92;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--backdrop-bg)}
.v5-import-modal{display:flex;flex-direction:column;width:680px;max-width:100%;max-height:92vh;overflow:hidden;background:var(--surface-primary)}
.v5-import-modal-head{display:flex;align-items:center;gap:14px;padding:20px 22px 16px;border-bottom:1px solid var(--border-subtle)}
.v5-import-modal-title-wrap{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.v5-import-modal-title-wrap h2{margin:0;font-size:20px;font-weight:900;letter-spacing:-.025em}.v5-import-modal-head>.v3-icon-button{flex:none}
.v5-import-modal-body{min-height:300px;padding:20px 22px;overflow:auto}
.v5-import-instructions{display:flex;flex-direction:column;gap:3px;margin-bottom:13px}.v5-import-instructions strong{font-size:14px}.v5-import-instructions span{color:var(--text-muted);font-size:12px;line-height:1.5}
.v5-import-dropzone{display:flex;min-height:190px;flex-direction:column;align-items:center;justify-content:center;padding:24px;border:1.5px dashed var(--border-strong);border-radius:14px;background:var(--surface-primary);text-align:center;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.v5-import-dropzone:hover,.v5-import-dropzone:focus-visible{border-color:var(--brand-accent);outline:0;background:var(--brand-accent-faint);box-shadow:0 0 0 3px var(--focus-ring)}
.v5-import-upload-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:10px;border:1px solid var(--brand-accent-border);border-radius:12px;background:var(--surface-primary);color:var(--brand-accent-strong)}.v5-import-upload-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.v5-import-dropzone>strong{font-size:14px}.v5-import-dropzone>span:not(.v5-import-upload-icon){margin-top:3px;color:var(--text-muted);font-size:12px}.v5-import-dropzone>small{margin-top:8px;color:var(--text-subtle);font-size:10.5px}
.v5-import-format-note,.v5-import-error{margin-top:12px;padding:10px 12px;border-radius:10px;font-size:11.5px;line-height:1.45}.v5-import-format-note{border:1px solid var(--border-subtle);background:var(--surface-primary);color:var(--text-muted)}.v5-import-error{border:1px solid color-mix(in srgb,var(--status-error) 28%,var(--border-default));background:var(--status-error-bg);color:var(--status-error);font-weight:var(--body-medium-weight)}
.v5-import-reading{display:flex;min-height:275px;flex-direction:column;align-items:center;justify-content:center;text-align:center}.v5-import-reading strong{margin-top:14px;font-size:16px}.v5-import-reading>span:last-child{max-width:420px;margin-top:5px;color:var(--text-muted);font-size:12px;line-height:1.5}.v5-import-spinner{width:36px;height:36px;border:3px solid var(--border-subtle);border-top-color:var(--brand-accent-strong);border-radius:50%;animation:v5ImportSpin .8s linear infinite}@keyframes v5ImportSpin{to{transform:rotate(360deg)}}
.v5-import-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.v5-import-preview-head>div{display:flex;min-width:0;flex-direction:column;gap:3px}.v5-import-preview-head strong{font-size:16px}.v5-import-preview-head span:not(.v5-import-ready-badge){overflow:hidden;color:var(--text-muted);font-size:11.5px;text-overflow:ellipsis;white-space:nowrap}
.v5-import-count-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:16px}.v5-import-count{display:flex;min-width:0;min-height:72px;flex-direction:column;align-items:center;justify-content:center;padding:9px 5px;border:1px solid var(--border-subtle);border-radius:11px;background:var(--surface-primary)}.v5-import-count strong{font-size:21px;font-weight:900;font-variant-numeric:tabular-nums}.v5-import-count span{margin-top:2px;color:var(--text-muted);font-size:10.5px}
.v5-import-plan{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:12px;border:1px solid var(--brand-accent-border);border-radius:11px;background:var(--brand-accent-faint)}.v5-import-plan>svg{width:21px;height:21px;flex:none;padding:3px;border-radius:50%;background:var(--brand-accent);color:var(--action-primary-text);fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.v5-import-plan>div{display:flex;flex-direction:column;gap:3px}.v5-import-plan strong{color:var(--brand-accent-strong);font-size:12.5px}.v5-import-plan span{color:var(--text-muted);font-size:11.5px;line-height:1.45}
.v5-import-warnings{margin-top:11px;border:1px solid color-mix(in srgb,var(--status-warning) 28%,var(--border-default));border-radius:10px;background:var(--status-warning-bg);color:var(--status-warning);font-size:11.5px}.v5-import-warnings summary{padding:10px 12px;font-weight:var(--body-medium-weight);cursor:pointer}.v5-import-warnings ul{max-height:150px;margin:0;padding:0 28px 11px;overflow:auto}.v5-import-warnings li+li{margin-top:5px}
.v5-import-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:13px 22px;border-top:1px solid var(--border-subtle);background:var(--surface-primary)}.v5-import-modal-actions button{min-height:44px;border-radius:10px;padding:9px 14px;font-weight:var(--button-weight);cursor:pointer}.v5-import-cancel,.v5-import-secondary{border:1px solid var(--border-default);background:var(--action-secondary);color:var(--action-secondary-text)}.v5-import-secondary{margin-left:auto}.v5-import-apply{border:1px solid var(--action-primary)!important;background:var(--action-primary)!important;color:var(--action-primary-text)!important}
@media(max-width:620px){.v5-import-providers{grid-template-columns:1fr}.v5-import-backdrop{align-items:flex-end;padding:0}.v5-import-modal{width:100%;max-height:94dvh;border-radius:18px 18px 0 0!important}.v5-import-modal-head{padding:15px 14px 12px}.v5-import-modal-body{min-height:0;padding:14px}.v5-import-dropzone{min-height:165px}.v5-import-count-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v5-import-count{min-height:62px}.v5-import-modal-actions{display:grid;grid-template-columns:1fr 1.25fr;padding:10px 12px calc(10px + env(safe-area-inset-bottom))}.v5-import-modal-actions .v5-import-cancel{display:none}.v5-import-secondary{margin:0}.v5-import-apply{width:100%}}

/* status chips read as pills now (inline radius already 999px); soften weight */
[style*="border-radius:999px"][style*="text-transform:uppercase"]{font-weight:800!important}

/* ===================== V5 polish ===================== */
/* page-swap micro transition */
@keyframes v5PageIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.content>*{animation:v5PageIn .22s var(--ease-standard) backwards}
/* ---- Global overlay layer scale ----
   0-40: in-page chrome (sticky bars, card badges)
   100-199: floating UI (menus, popovers, trays, search results)
   200-299: modal dialogs
   300+: toasts. Animation fill is 'backwards' so page blocks release their stacking context after entry — the root cause of overlays painting underneath. */
.v3-filter-popover,[role="menu"],.notification-tray,.search-panel,.notification-anchor .pop{z-index:120!important}
.v3-modal-backdrop{z-index:200!important}
.v3-toast,.toast{z-index:300!important}
.bc-combobox-portal{z-index:100000!important}
.content>[style*="position: fixed"],.content>[style*="position:fixed"],.content>.v3-modal-backdrop{animation:none}
@media (prefers-reduced-motion:reduce){.content>*{animation:none}}
/* combobox surfaces match card geometry */
.bc-combobox-portal{border-radius:14px!important;box-shadow:var(--shadow-high)!important}
.bc-combobox-menu{overflow-x:hidden!important;overflow-y:auto}
.bc-combobox-option{border-radius:10px!important;margin:0}
.bc-combobox-option[aria-selected="true"],.bc-combobox-option:hover{background:var(--brand-accent-faint)!important}
/* toast: slide up, pill, stronger presence */
.v3-toast{border-radius:12px!important;box-shadow:var(--shadow-high)!important;animation:v5ToastIn .25s var(--ease-standard) both}
@keyframes v5ToastIn{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
/* empty states: friendlier icon */
.v3-empty-icon{border-radius:16px!important;background:var(--brand-accent-soft)!important;color:var(--brand-accent-strong)!important;font-size:22px!important;border:none!important}
/* list rows: comfortable height + separation rhythm */
.v3-row-surface{min-height:64px}
/* modals: consistent radius + entrance */
.v3-modal-panel{border-radius:16px!important;animation:v5ModalIn .22s var(--ease-standard) both}
@keyframes v5ModalIn{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
.v3-modal-backdrop{animation:v5Fade .18s ease both}
@keyframes v5Fade{from{opacity:0}to{opacity:1}}
/* filter popover entrance */
.v3-filter-popover{animation:v5PopIn .16s var(--ease-standard) both;transform-origin:top left}
@keyframes v5PopIn{from{opacity:0;transform:scale(.97) translateY(-3px)}to{opacity:1;transform:none}}
/* buttons: uniform min-height */
.content button{font-family:inherit}
/* focus ring consistency for faux buttons */
[role="button"][tabindex="0"]:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px;border-radius:10px}
/* customer-facing document typography */
.v3-customer-document .v3-doc-sheet,.v3-doc-paper{letter-spacing:.01em}

/* V5 final pass: docs + mobile */
.v5-ob-dot{width:8px;height:8px;border-radius:50%;background:var(--border-subtle)}
.v5-ob-dot[class~="1"]{background:var(--brand-accent)}
.v5-pay-spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--border-subtle);border-top-color:var(--brand-accent);animation:v5spin .8s linear infinite}
@keyframes v5spin{to{transform:rotate(360deg)}}
input,select{border:1px solid var(--border-default)!important}
/* Selects are quiet, utility controls—not accent surfaces. */
select{
  appearance:none;
  -webkit-appearance:none;
  padding-right:38px!important;
  border-color:var(--border-default)!important;
  background-color:var(--surface-primary)!important;
  background-image:linear-gradient(45deg,transparent 50%,var(--icon-muted) 50%),linear-gradient(135deg,var(--icon-muted) 50%,transparent 50%)!important;
  background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%!important;
  background-repeat:no-repeat!important;
  background-size:5px 5px!important;
  color:var(--text-primary)!important;
}
select:hover{border-color:var(--border-strong)!important}
select:focus{border-color:var(--border-default)!important;box-shadow:none!important;outline:0!important}
select option{background:var(--surface-primary);color:var(--text-primary)}
/* customer-facing sheet: calmer, more paper-like */
.v3-doc-sheet{box-shadow:var(--shadow-medium)!important;border-radius:6px!important}
.v3-customer-document body,.v3-customer-document .main{scroll-behavior:auto}
/* mobile: bigger tap targets on dock + toolbar chips */
@media (max-width: 760px){
  .v3-toolbar .v3-filter-trigger{min-height:44px}
  .v3-mobile-nav button{min-height:52px}
  .v4-chip{min-height:40px;padding:9px 14px}
  .v3-row-surface{min-height:60px}
  .content{padding-inline:12px}
}
/* results count quieter */
.v3-results-count{font-size:12px;color:var(--text-subtle)!important}

/* ===================== Mobile-native document builder ===================== */
.ib3-mobile-steps,
.ib3-mobile-actions,
.ib3-mobile-field-label,
.ib3-mobile-control-label,
.ib3-mobile-top-title,
.ib3-mobile-menu-trigger,
.ib3-mobile-menu-scrim,
.ib3-mobile-menu,
.v3-composer-menu-trigger,
.v3-composer-menu-scrim,
.v3-composer-menu{display:none}
.ib3-price-wrap{display:block;min-width:0}
.ib3-price-wrap .ib3-price{display:block;width:100%;max-width:100%}
.ib3-project-panel-mobile{display:none}

@keyframes ib3SheetUp{from{opacity:.65;transform:translateY(28px)}to{opacity:1;transform:none}}

/* Builder preview: keep the customer document on a true US Letter canvas.
   aspect-ratio preserves the full 8.5 x 11 sheet at smaller viewport widths,
   while normal document flow can still extend the paper for long content. */
.content.ib3-takeover div[style*="z-index: 220"]{
  padding:clamp(20px,4vw,48px)!important;
  overflow-x:auto!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  background:var(--surface-subtle-contrast)!important
}
.content.ib3-takeover div[style*="z-index: 220"]>div[style*="width: 900px"]{
  width:min(8.5in,100%)!important;
  max-width:8.5in!important;
  flex:none;
  background:transparent!important;
  box-shadow:none!important
}
.content.ib3-takeover div[style*="z-index: 220"]>div>div[style*="position: sticky"]{
  margin-bottom:12px;
  border:1px solid var(--border-default)!important;
  border-radius:12px!important;
  box-shadow:var(--shadow-medium)
}
.content.ib3-takeover div[style*="z-index: 220"]>div>.v3-document-sheet{
  width:100%!important;
  height:auto!important;
  min-height:11in!important;
  aspect-ratio:auto;
  overflow:visible!important;
  box-sizing:border-box;
  background:var(--surface-primary)!important;
  border-radius:2px!important;
  box-shadow:var(--shadow-high)!important
}

@media (max-width:760px){
  html{scroll-padding-top:164px}
  .main:has(.content.ib3-takeover){background:var(--app-bg)}
  .content.ib3-takeover{padding:0!important;overflow:visible}
  .content.ib3-takeover>div{min-height:100dvh!important;background:var(--app-bg)!important}

  /* The builder owns the mobile chrome so editing feels like a focused app. */
  .content.ib3-takeover .ib3-toolbar{
    position:sticky!important;top:0!important;z-index:40!important;
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    height:auto!important;min-height:58px!important;padding:8px 12px!important;
    gap:8px!important;border-bottom:1px solid color-mix(in srgb,var(--border-default) 82%,transparent)!important;
    background:color-mix(in srgb,var(--surface-primary) 94%,transparent)!important;box-shadow:var(--shadow-medium)!important;
    backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important
  }
  .content.ib3-takeover .ib3-toolbar-left{height:38px!important;overflow:visible!important}
  .content.ib3-takeover .ib3-toolbar-left .ib3-link{
    min-width:44px;min-height:38px;padding:0 8px!important;border-radius:10px;
    color:var(--brand-accent-strong);font-size:13px!important;font-weight:800!important
  }
  .content.ib3-takeover .ib3-toolbar-divider,
  .content.ib3-takeover .ib3-topbar-title,
  .content.ib3-takeover .ib3-topbar-pill,
  .content.ib3-takeover .ib3-toolbar-spacer,
  .content.ib3-takeover .ib3-toolbar-actions{display:none!important}
  .content.ib3-takeover .ib3-toolbar>.ib3-segwrap{display:none!important}
  .content.ib3-takeover .ib3-segwrap{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%;min-height:44px;padding:3px!important;border-radius:12px!important;
    background:var(--surface-secondary)!important;border:1px solid var(--border-subtle)!important
  }
  .content.ib3-takeover .ib3-seg{width:100%;min-height:36px!important;border-radius:9px!important;font-size:13px!important}
  .content.ib3-takeover .ib3-toolbar+.ib3-canvas .ib3-mobile-steps{top:58px}
  .content.ib3-takeover .ib3-toolbar+.ib3-canvas #ib3-mobile-details,
  .content.ib3-takeover .ib3-toolbar+.ib3-canvas #ib3-mobile-items,
  .content.ib3-takeover .ib3-toolbar+.ib3-canvas #ib3-mobile-pricing,
  .content.ib3-takeover .ib3-toolbar+.ib3-canvas #ib3-mobile-message{scroll-margin-top:116px}

  /* A full-width editor replaces the desktop paper card. */
  .content.ib3-takeover .ib3-canvas{display:block!important;padding:0 0 calc(92px + env(safe-area-inset-bottom))!important;background:var(--app-bg)!important}
  .content.ib3-takeover .ib3-sheet{
    width:100%!important;max-width:none!important;min-height:calc(100dvh - 104px)!important;
    padding:18px 16px 44px!important;border:0!important;border-radius:0!important;background:var(--app-bg)!important;
    box-shadow:none!important
  }
  .content.ib3-takeover .ib3-meta{
    display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    align-items:end!important;gap:10px 12px!important
  }
  .content.ib3-takeover .ib3-meta>span[style*="flex:1"]{display:none!important}
  .content.ib3-takeover .ib3-meta>.v3-filter-menu{grid-column:1/-1;width:100%;margin-top:2px}
  .content.ib3-takeover .ib3-meta>.v3-filter-menu .v3-filter-trigger{width:100%;min-height:50px;padding:8px 12px!important}
  .content.ib3-takeover .ib3-meta>label{display:grid!important;gap:5px!important;align-items:stretch!important;font-size:11px!important;letter-spacing:.04em;text-transform:uppercase}
  .content.ib3-takeover .ib3-meta>label .ib3-field{min-width:0!important}

  .ib3-mobile-steps{
    position:sticky;top:58px;z-index:30;display:flex;gap:7px;margin:14px -16px 0;padding:8px 16px;
    overflow-x:auto;scrollbar-width:none;border-block:1px solid var(--border-subtle);
    background:color-mix(in srgb,var(--surface-primary) 94%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)
  }
  .ib3-mobile-steps::-webkit-scrollbar{display:none}
  .ib3-mobile-steps button{
    flex:1;min-width:72px;min-height:36px;padding:0 10px;border:1px solid var(--border-default)!important;border-radius:999px;
    background:var(--surface-primary);color:var(--text-muted);font-size:12px;font-weight:800;box-shadow:var(--shadow-xs);cursor:pointer
  }
  .ib3-mobile-steps button:active{background:var(--brand-accent-soft);border-color:var(--brand-accent)!important;color:var(--brand-accent-strong);transform:scale(.98)}
  #ib3-mobile-details,#ib3-mobile-items,#ib3-mobile-pricing,#ib3-mobile-message{scroll-margin-top:162px}

  .ib3-mobile-field-label,.ib3-mobile-control-label{display:block;color:var(--text-muted);font-size:10.5px;font-weight:800;letter-spacing:.075em;text-transform:uppercase}
  .ib3-mobile-field-label{margin:22px 0 7px}
  .content.ib3-takeover .ib3-title{
    width:100%!important;min-height:58px;margin:0!important;padding:12px 13px!important;
    border:1px solid var(--border-default)!important;border-radius:14px!important;background:var(--surface-primary)!important;
    font-size:22px!important;line-height:1.24!important;box-shadow:var(--shadow-xs)
  }
  .content.ib3-takeover .ib3-title::placeholder{font-size:16px;color:var(--text-subtle)}

  .content.ib3-takeover .ib3-details-section{
    display:flex!important;flex-direction:column!important;gap:22px!important;margin-top:22px!important;
    padding:0 0 28px!important;border-bottom:1px solid var(--border-default)!important
  }
  .content.ib3-takeover .ib3-customer-panel,
  .content.ib3-takeover .ib3-project-panel{width:100%;min-width:0!important}
  .content.ib3-takeover .bc-combo-trigger{min-height:50px;border-radius:12px}
  .content.ib3-takeover .bc-empty-combo-trigger{width:100%;justify-content:center;min-height:48px!important}
  .content.ib3-takeover .ib3-customer-panel>div[style*="display:flex"]>button:last-child{width:50px!important;min-height:50px}

  .content.ib3-takeover input.ib3-field,
  .content.ib3-takeover textarea.ib3-field{
    width:100%!important;min-height:48px;margin-left:0!important;padding:12px!important;
    border:1px solid var(--border-default)!important;border-radius:12px!important;background:var(--surface-primary)!important;
    font-size:16px!important;box-shadow:var(--shadow-xs)
  }
  .content.ib3-takeover textarea.ib3-field{min-height:82px;resize:vertical!important}

  .ib3-items-section{padding-top:26px}
  .ib3-items-section:before,
  .ib3-totals-wrap:before{
    display:block;margin-bottom:12px;color:var(--text-primary);font:700 20px/1.2 var(--font-heading);letter-spacing:-.02em
  }
  .ib3-items-section:before{content:"Line items"}
  .content.ib3-takeover .ib3-line-head{display:none!important}
  .content.ib3-takeover .ib3-item-row{
    display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:12px!important;margin-bottom:12px;padding:14px!important;border:1px solid var(--border-default)!important;
    border-radius:16px;background:var(--surface-primary);box-shadow:var(--shadow-xs)
  }
  .content.ib3-takeover .ib3-item-row>.ib3-cat,
  .content.ib3-takeover .ib3-item-row>.ib3-desc{grid-column:1/-1!important;margin:0!important}
  .content.ib3-takeover .ib3-item-row>.ib3-desc{min-height:64px!important}
  .content.ib3-takeover .ib3-qty{
    position:relative;display:grid!important;grid-template-columns:44px minmax(0,1fr) 44px!important;
    align-items:center;min-height:70px!important;padding:21px 2px 2px!important;border:1px solid var(--border-default)!important;
    border-radius:12px!important;background:var(--surface-primary)!important
  }
  .content.ib3-takeover .ib3-qty>.ib3-mobile-control-label{position:absolute;top:7px;left:10px}
  .content.ib3-takeover .ib3-qty input{min-height:44px;font-size:16px!important}
  .content.ib3-takeover .ib3-step{width:44px;height:44px;opacity:1!important;color:var(--text-primary);font-size:20px}
  .content.ib3-takeover .ib3-price-wrap{position:relative;padding-top:21px}
  .content.ib3-takeover .ib3-price-wrap>.ib3-mobile-control-label{position:absolute;top:3px;left:2px}
  .content.ib3-takeover .ib3-price{height:49px;text-align:left!important}
  .content.ib3-takeover .ib3-amt{
    grid-column:1;display:flex;flex-direction:column;justify-content:center;gap:4px;
    min-height:44px;padding:0!important;text-align:left!important;font-size:16px!important
  }
  .content.ib3-takeover .ib3-del{
    grid-column:2;justify-self:end;align-self:end;width:44px!important;height:44px!important;margin:0!important;
    opacity:1!important;background:var(--status-error-bg)!important;color:var(--status-error)!important;border-radius:12px!important
  }
  .content.ib3-takeover .ib3-items-section>div:last-child{padding-top:0!important;border-top:0!important}
  .content.ib3-takeover .bc-line-combo-trigger{width:100%;justify-content:center;min-height:48px!important;border-radius:12px!important}

  .content.ib3-takeover .ib3-totals-wrap{display:block!important;margin-top:32px!important}
  .ib3-totals-wrap:before{content:"Pricing & deposit"}
  .content.ib3-takeover .ib3-totals{width:100%!important;padding:16px;border:1px solid var(--border-default);border-radius:16px;background:var(--surface-primary);box-shadow:var(--shadow-xs)}
  .content.ib3-takeover .ib3-totals .ib3-input{min-height:42px}
  .content.ib3-takeover .ib3-discount-row{align-items:flex-start!important;gap:10px;padding:7px 0}
  .content.ib3-takeover .ib3-discount-controls{justify-content:flex-end;flex-wrap:wrap}
  .content.ib3-takeover .ib3-deposit-controls{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px!important}
  .content.ib3-takeover .ib3-deposit-controls .ib3-input{display:none!important}
  .content.ib3-takeover .ib3-chip-dep{min-height:42px!important}

  .content.ib3-takeover .ib3-message-heading{margin:34px 0 14px!important}
  .content.ib3-takeover .ib3-message-heading span:first-child,
  .content.ib3-takeover .ib3-message-heading span:last-child{display:none}
  .content.ib3-takeover .ib3-message-heading span:nth-child(2){font:700 20px/1.2 var(--font-heading)!important;letter-spacing:-.02em!important;color:var(--text-primary)!important}
  .content.ib3-takeover .ib3-message-panel{gap:16px!important;margin:0!important;padding:16px!important;border-radius:16px!important;background:var(--surface-primary)!important;box-shadow:var(--shadow-xs)}
  .content.ib3-takeover .ib3-message-panel textarea{min-height:96px;padding:12px!important;border-radius:12px;font-size:16px!important}
  .content.ib3-takeover .ib3-sheet-actions{display:none!important}

  /* Thumb-friendly document actions remain reachable while the user scrolls. */
  .ib3-mobile-actions{
    position:fixed;right:0;bottom:0;left:0;z-index:50;display:grid;
    grid-template-columns:50px minmax(0,.9fr) minmax(0,1.2fr);gap:8px;
    padding:10px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--border-default);
    background:color-mix(in srgb,var(--surface-elevated) 94%,transparent);box-shadow:var(--shadow-high);
    backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)
  }
  .ib3-mobile-actions button{min-width:0;min-height:50px;border-radius:13px;font-size:13px;font-weight:800;cursor:pointer}
  .ib3-mobile-preview{display:grid;place-items:center;border:1px solid var(--border-default);background:var(--surface-primary);color:var(--text-primary)}
  .ib3-mobile-save{border:1px solid var(--border-default);background:var(--surface-primary);color:var(--text-primary)}
  .ib3-mobile-send{border:1px solid var(--action-primary);background:var(--action-primary);color:var(--action-primary-text);box-shadow:var(--shadow-medium)}
  .ib3-mobile-actions button:active{transform:scale(.98)}
  .ib3-mobile-actions button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}

  /* Keep the whole Letter sheet visible on mobile, scaled to the viewport. */
  .content.ib3-takeover div[style*="z-index: 220"]{padding:12px!important;align-items:flex-start!important;background:var(--surface-subtle-contrast)!important}
  .content.ib3-takeover div[style*="z-index: 220"]>div[style*="width: 900px"]{width:100%!important;max-width:8.5in!important;min-height:0!important;box-shadow:none!important}
  .content.ib3-takeover div[style*="z-index: 220"]>div>div[style*="position: sticky"]{padding:10px 12px!important;min-height:60px;margin-bottom:10px}
  .content.ib3-takeover div[style*="z-index: 220"]>div>div[style*="position: sticky"] span{display:block;margin:2px 0 0!important;font-size:10.5px!important}
  .content.ib3-takeover div[style*="z-index: 220"]>div>.v3-document-sheet{min-height:calc((100vw - 24px) * 1.294117647)!important}
  .content.ib3-takeover .v3-document-sheet{padding:20px 16px 40px!important;box-shadow:none!important}
  .content.ib3-takeover .v3-document-header{align-items:flex-start;gap:12px!important}
  .content.ib3-takeover .v3-document-brand svg{width:164px!important;height:32px!important}
  .content.ib3-takeover .v3-document-brand .v3-document-logo--document{max-width:min(100%,var(--logo-mobile-width,164px))!important;max-height:var(--logo-mobile-height,42px)!important}
  .content.ib3-takeover .v3-document-type{min-width:76px}
  .content.ib3-takeover .v3-document-details>div{min-width:0!important;flex:1 1 140px}
  .content.ib3-takeover .v3-doc-line-head,
  .content.ib3-takeover .v3-doc-line{grid-template-columns:minmax(0,1fr) 32px 58px 68px!important;gap:5px!important;font-size:11px!important}
  .content.ib3-takeover div:has(>[role="dialog"][aria-label="Document preview"]){padding:12px!important;align-items:flex-start!important;background:var(--surface-subtle-contrast)!important}
  .content.ib3-takeover [role="dialog"][aria-label="Document preview"]{width:100%!important;max-width:8.5in!important;min-height:0!important;box-shadow:none!important}

  /* Every builder-related dialog behaves like a native bottom sheet. */
  .v3-customer-scrim{align-items:flex-end!important;padding:0!important;background:var(--backdrop-bg)!important}
  .v3-customer-popup{
    width:100%!important;max-width:none!important;max-height:94dvh!important;border-width:1px 0 0!important;
    border-radius:24px 24px 0 0!important;animation:ib3SheetUp .24s var(--ease-standard) both!important
  }
  .v3-customer-popup .head{padding:18px 18px 0!important}
  .v3-customer-popup .close{width:44px!important;height:44px!important}
  .v3-customer-popup .body{height:auto!important;min-height:0;flex:1;padding:18px!important;overscroll-behavior:contain}
  .v3-customer-popup .foot{padding:12px 18px calc(12px + env(safe-area-inset-bottom))!important}
  .v3-customer-popup .btn,.v3-customer-popup .btn-primary{min-height:48px!important}
  .v3-customer-popup input{font-size:16px!important}
  .v3-customer-popup .row{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%;gap:14px!important}
  .v3-customer-popup .row>*{width:100%!important;min-width:0!important;flex:none!important}
  .v3-customer-popup .close svg{width:18px;height:18px}

  .v3-modal-backdrop{align-items:flex-end!important;padding:0!important;background:var(--backdrop-bg)!important}
  .v3-modal-backdrop>.v3-modal-panel{
    width:100%!important;max-width:none!important;max-height:94dvh!important;margin:0!important;
    border-width:1px 0 0!important;border-radius:24px 24px 0 0!important;
    animation:ib3SheetUp .24s var(--ease-standard) both!important;overflow:auto!important;overscroll-behavior:contain
  }
  .v3-modal-panel>div[style*="padding:20px 24px 0"]{padding:18px 18px 0!important}
  .v3-modal-panel>div[style*="padding:18px 24px 20px"]{padding:16px 18px 20px!important}
  .v3-modal-panel .v3-icon-button{width:44px!important;height:44px!important;flex:none}
  .v3-modal-panel .v3-icon-button svg{width:18px;height:18px}
  .v3-modal-panel input,.v3-modal-panel textarea,.v3-modal-panel select{font-size:16px!important}
  .v3-modal-panel [style*="min-width:200px"],.v3-modal-panel [style*="min-width:220px"]{min-width:0!important;flex-basis:100%!important}
  .v3-modal-panel>div[style*="position:sticky"]{
    display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important;
    padding:12px 18px calc(12px + env(safe-area-inset-bottom))!important
  }
  .v3-modal-panel>div[style*="position:sticky"]>button:first-child{grid-column:1/-1;margin:0!important}
  .v3-modal-panel>div[style*="position:sticky"]>button{min-height:48px!important}
  .v3-modal-panel>.v3-composer-actions{
    display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;
    padding:12px 18px calc(12px + env(safe-area-inset-bottom))!important
  }
  .v3-modal-panel>.v3-composer-actions>.v3-composer-mark{grid-column:1/-1;margin:0!important}
  .v3-modal-panel>.v3-composer-actions>button{min-height:48px!important}

  .bc-combobox-portal{
    position:fixed!important;top:auto!important;right:0!important;bottom:0!important;left:0!important;
    width:100%!important;max-width:none!important;max-height:76dvh!important;padding:10px 10px calc(10px + env(safe-area-inset-bottom))!important;
    border-width:1px 0 0!important;border-radius:22px 22px 0 0!important;box-shadow:var(--shadow-high),0 -100vh 0 100vh var(--backdrop-bg)!important;
    animation:ib3SheetUp .22s var(--ease-standard) both
  }
  .bc-combobox-search{min-height:48px}.bc-combobox-search input{font-size:16px!important}.bc-combobox-search kbd{display:none}
  .bc-combobox-option{min-height:52px}
}

@media (max-width:370px){
  .ib3-mobile-actions{grid-template-columns:48px minmax(0,.82fr) minmax(0,1.18fr);gap:6px;padding-inline:8px}
  .ib3-mobile-actions button{font-size:12px}
  .content.ib3-takeover .ib3-sheet{padding-inline:13px!important}
  .ib3-mobile-steps{margin-inline:-13px;padding-inline:13px}
  .ib3-mobile-steps{gap:5px}
  .ib3-mobile-steps button{min-width:0;padding-inline:5px;font-size:11.5px}
  .content.ib3-takeover .ib3-meta>label{grid-column:1/-1}
  .content.ib3-takeover .ib3-totals{padding:14px}
}

@media (prefers-reduced-motion:reduce){
  .ib3-mobile-steps button,.ib3-mobile-actions button{scroll-behavior:auto;transition:none}
}

/* ===================== Mobile builder density refinement ===================== */
@media (max-width:760px){
  /* One compact, non-wrapping header row. */
  .content.ib3-takeover .ib3-toolbar{
    grid-template-columns:auto minmax(0,1fr) 42px!important;
    min-height:52px!important;height:52px!important;padding:4px 8px!important;gap:3px!important;z-index:60!important;
    box-shadow:var(--shadow-low)!important
  }
  .content.ib3-takeover .ib3-toolbar-left{height:44px!important;min-width:0!important}
  .content.ib3-takeover .ib3-toolbar-left .ib3-link{
    min-width:0;max-width:112px;min-height:44px;padding:0 7px!important;overflow:hidden;text-overflow:ellipsis
  }
  .ib3-mobile-top-title{
    display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    color:var(--text-primary);font-size:13px;font-weight:800;text-align:center
  }
  .ib3-mobile-menu-trigger{
    display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:12px;
    background:transparent;color:var(--text-primary);font-size:24px;font-weight:800;line-height:1;cursor:pointer
  }
  .ib3-mobile-menu-trigger:active{background:var(--surface-secondary);transform:scale(.97)}
  .ib3-mobile-menu-scrim{display:block;position:fixed;inset:0;z-index:70;background:var(--backdrop-bg)}
  .ib3-mobile-menu{
    position:fixed;top:48px;right:8px;z-index:80;display:grid;width:min(236px,calc(100vw - 16px));padding:6px;
    border:1px solid var(--border-default);border-radius:15px;background:color-mix(in srgb,var(--dropdown-bg) 98%,transparent);box-shadow:var(--shadow-high);
    backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)
  }
  .ib3-mobile-menu button{
    display:flex;flex-direction:column;align-items:flex-start;justify-content:center;width:100%;min-height:44px;padding:8px 10px;
    border:0;border-radius:10px;background:transparent;color:var(--text-primary);font-size:13px;font-weight:750;text-align:left;cursor:pointer
  }
  .ib3-mobile-menu button:hover,.ib3-mobile-menu button:focus-visible{background:var(--brand-accent-faint);outline:0}
  .ib3-mobile-menu button small{margin-top:2px;color:var(--text-muted);font-size:10.5px;font-weight:600}
  .ib3-mobile-menu-label{padding:8px 10px 4px;color:var(--text-subtle);font-size:9.5px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}

  /* The editor starts immediately below the header; section jumps live in More. */
  .content.ib3-takeover .ib3-canvas{padding-bottom:calc(68px + env(safe-area-inset-bottom))!important}
  .content.ib3-takeover .ib3-sheet{
    min-height:calc(100dvh - 52px)!important;padding:12px 12px 30px!important
  }
  .content.ib3-takeover .ib3-sheet>[role="alert"]{margin-bottom:9px!important;padding:9px 11px!important;font-size:12px!important}
  .ib3-mobile-steps{display:none!important}
  #ib3-mobile-details,#ib3-mobile-items,#ib3-mobile-pricing,#ib3-mobile-message{scroll-margin-top:62px!important}

  /* Compact metadata: no repeated document badge; dates and template share useful rows. */
  .content.ib3-takeover .ib3-meta{
    display:grid!important;align-items:end!important;gap:7px 8px!important;margin:0!important
  }
  .content.ib3-takeover .ib3-meta>span{display:none!important}
  .content.ib3-takeover .ib3-meta--estimate{grid-template-columns:minmax(0,1fr) 132px!important}
  .content.ib3-takeover .ib3-meta--invoice{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .content.ib3-takeover .ib3-meta--estimate>.v3-filter-menu{grid-column:1!important;width:100%;margin:0}
  .content.ib3-takeover .ib3-meta--invoice>.v3-filter-menu{grid-column:1/-1!important;width:100%;margin:0}
  .content.ib3-takeover .ib3-meta>.v3-filter-menu .v3-filter-trigger{
    grid-template-rows:1fr!important;align-items:center;width:100%;min-height:44px;height:44px;padding:0 11px!important;
    border-radius:11px!important;background:var(--surface-primary)!important
  }
  .content.ib3-takeover .ib3-template-menu .v3-filter-label{display:none}
  .content.ib3-takeover .ib3-template-menu .v3-filter-value{
    grid-row:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px!important
  }
  .content.ib3-takeover .ib3-template-menu .v3-filter-chevron{grid-row:1;align-self:center}
  .content.ib3-takeover .ib3-template-sheet-scrim{display:block;position:fixed;inset:0;z-index:119;background:var(--backdrop-bg);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
  .content.ib3-takeover .ib3-template-sheet{
    position:fixed!important;top:auto!important;right:0!important;bottom:0!important;left:0!important;z-index:120!important;
    display:flex;flex-direction:column;width:100%!important;min-width:0!important;max-height:72dvh;margin:0!important;padding:0 10px calc(10px + env(safe-area-inset-bottom))!important;
    overflow:hidden;border-width:1px 0 0!important;border-radius:22px 22px 0 0!important;background:var(--surface-primary)!important;
    box-shadow:var(--shadow-high)!important;animation:ib3SheetUp .22s var(--ease-standard) both!important;transform-origin:bottom
  }
  .content.ib3-takeover .ib3-template-sheet-head{
    display:flex;align-items:center;gap:8px;min-height:54px;padding:6px 2px 6px 6px;border-bottom:1px solid var(--border-subtle)
  }
  .content.ib3-takeover .ib3-template-sheet-head strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 18px/1.2 var(--font-heading)}
  .content.ib3-takeover .ib3-template-sheet-head button{
    display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:11px;background:transparent;color:var(--text-muted);
    font-size:24px;line-height:1;cursor:pointer
  }
  .content.ib3-takeover .ib3-template-sheet-head button:active{background:var(--surface-secondary);color:var(--text-primary);transform:scale(.97)}
  .content.ib3-takeover .ib3-template-sheet-list{display:grid;gap:7px;min-height:0;padding:9px 0;overflow:auto;overscroll-behavior:contain}
  .content.ib3-takeover .ib3-template-sheet .v3-template-option{
    display:grid!important;grid-template-columns:38px minmax(0,1fr) auto!important;align-items:center;gap:10px;width:100%;min-height:56px!important;
    padding:8px 10px!important;border:1px solid var(--border-default)!important;border-radius:12px!important;background:var(--surface-primary)!important;box-shadow:none!important;
    color:var(--text-primary);font-size:13.5px;font-weight:750;transform:none!important
  }
  .content.ib3-takeover .ib3-template-sheet .v3-template-option:after{content:"Apply";color:var(--brand-accent-strong);font-size:11px;font-weight:800}
  .content.ib3-takeover .ib3-template-sheet .v3-template-option:hover,
  .content.ib3-takeover .ib3-template-sheet .v3-template-option:focus-visible{border-color:var(--brand-accent)!important;background:var(--brand-accent-faint)!important;outline:0}
  .content.ib3-takeover .ib3-template-sheet .v3-template-icon{width:36px;height:36px;border-radius:10px;background:var(--brand-accent-soft)}
  .content.ib3-takeover .ib3-template-sheet .v3-template-icon svg{width:17px;height:17px}
  .content.ib3-takeover .ib3-template-sheet .v3-filter-empty{padding:24px 14px;color:var(--text-muted);font-size:13px;text-align:center}
  .content.ib3-takeover .ib3-meta>label{
    display:grid!important;grid-column:auto;gap:3px!important;align-items:stretch!important;min-width:0;
    font-size:9.5px!important;font-weight:850!important;letter-spacing:.07em!important
  }
  .content.ib3-takeover .ib3-meta>label .ib3-field{
    min-width:0!important;min-height:44px!important;height:44px!important;padding:8px!important;font-size:14px!important
  }

  .ib3-mobile-field-label{margin:14px 0 5px;font-size:9.5px}
  .content.ib3-takeover .ib3-title{
    min-height:48px!important;height:48px;padding:9px 11px!important;border-radius:12px!important;font-size:19px!important
  }
  .content.ib3-takeover .ib3-title::placeholder{font-size:15px}
  .content.ib3-takeover .ib3-details-section{
    gap:15px!important;margin-top:14px!important;padding-bottom:20px!important
  }
  .content.ib3-takeover .ib3-project-panel--desktop{display:none!important}
  .content.ib3-takeover .ib3-customer-panel>div[style*="letter-spacing"]{display:none!important}
  .content.ib3-takeover .ib3-project-panel>div[style*="letter-spacing"]{font-size:9.5px!important}
  .content.ib3-takeover .ib3-customer-panel .bc-combo-trigger{margin-top:0!important;min-height:46px}
  .content.ib3-takeover .ib3-customer-panel>div[style*="display:flex"]{margin-top:0!important}
  .content.ib3-takeover .ib3-customer-panel>div[style*="display:flex"] .bc-combo-trigger{margin-top:0!important}
  .content.ib3-takeover .ib3-customer-panel>div[style*="display:flex"]>button:last-child{width:46px!important;min-height:46px}
  .content.ib3-takeover .ib3-customer-row{
    display:grid!important;grid-template-columns:minmax(0,1fr) 52px;align-items:stretch!important;
    gap:8px!important;height:52px;margin-top:0!important
  }
  .content.ib3-takeover .ib3-customer-row .bc-combo-trigger{
    width:100%;height:52px!important;min-height:52px!important;margin:0!important;padding:7px 9px!important
  }
  .content.ib3-takeover .ib3-customer-row .ib3-customer-edit{
    width:52px!important;height:52px!important;min-height:52px!important;margin:0!important;align-self:stretch
  }
  .content.ib3-takeover input.ib3-field,
  .content.ib3-takeover textarea.ib3-field{min-height:44px;padding:10px!important;border-radius:11px!important}
  .content.ib3-takeover textarea.ib3-field{min-height:64px}

  /* Line items are true mobile cards, with only one two-up control row. */
  .ib3-items-section{padding-top:20px}
  .ib3-items-section:before,.ib3-totals-wrap:before{margin-bottom:9px;font-size:19px}
  .content.ib3-takeover .ib3-item-row{
    gap:9px!important;margin-bottom:10px;padding:12px!important;border-radius:14px
  }
  .content.ib3-takeover .ib3-item-row>.ib3-cat{min-height:44px!important}
  .content.ib3-takeover .ib3-item-row>.ib3-desc{min-height:56px!important}
  .content.ib3-takeover .ib3-qty{
    min-height:62px!important;padding:17px 1px 1px!important;border-radius:11px!important
  }
  .content.ib3-takeover .ib3-qty>.ib3-mobile-control-label{top:6px;left:9px}
  .content.ib3-takeover .ib3-step{width:42px;height:42px}
  .content.ib3-takeover .ib3-qty input{min-height:42px}
  .content.ib3-takeover .ib3-price-wrap{padding-top:18px}
  .content.ib3-takeover .ib3-price-wrap>.ib3-mobile-control-label{top:1px}
  .content.ib3-takeover .ib3-price{height:44px!important;min-height:44px!important}
  .content.ib3-takeover .ib3-amt{min-height:42px;font-size:15px!important}
  .content.ib3-takeover .ib3-del{width:42px!important;height:42px!important}
  .content.ib3-takeover .bc-line-combo-trigger{min-height:46px!important}

  .content.ib3-takeover .ib3-totals-wrap{margin-top:24px!important}
  .content.ib3-takeover .ib3-totals{padding:14px;border-radius:14px}
  .content.ib3-takeover .ib3-totals>div[style*="min-height:34px"]{min-height:30px!important}
  .content.ib3-takeover .ib3-totals>div[style*="border-top:2px"]{margin-top:6px!important;padding:10px 0!important}
  .content.ib3-takeover .ib3-deposit-controls{gap:6px!important}
  .content.ib3-takeover .ib3-chip-dep{min-height:40px!important}

  .content.ib3-takeover .ib3-message-heading{margin:27px 0 9px!important}
  .content.ib3-takeover .ib3-message-heading span:nth-child(2){font-size:19px!important}
  .content.ib3-takeover .ib3-message-panel{gap:11px!important;padding:13px!important;border-radius:14px!important}
  .content.ib3-takeover .ib3-message-panel textarea{min-height:76px;padding:10px!important}
  .content.ib3-takeover .ib3-project-panel-mobile{
    display:grid;gap:12px;margin-top:24px;padding:14px;border:1px solid var(--border-default);border-radius:14px;
    background:var(--surface-primary);box-shadow:var(--shadow-xs)
  }
  .content.ib3-takeover .ib3-project-panel-mobile h2{
    margin:0;color:var(--text-primary);font:700 19px/1.2 var(--font-heading);letter-spacing:-.02em
  }
  .content.ib3-takeover .ib3-project-panel-mobile label{display:grid;gap:5px;color:var(--text-muted);font-size:9.5px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
  .content.ib3-takeover .ib3-project-panel-mobile label small{color:var(--text-subtle);font-size:10px;font-weight:650;letter-spacing:0;text-transform:none}
  .content.ib3-takeover .ib3-project-panel-mobile input{min-height:44px!important}
  .content.ib3-takeover .ib3-project-panel-mobile textarea{min-height:64px!important;resize:vertical}

  /* One-handed actions: only Save and Send stay permanently visible. */
  .ib3-mobile-actions{
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:7px;
    padding:7px 10px calc(7px + env(safe-area-inset-bottom))
  }
  .ib3-mobile-preview{display:none!important}
  .ib3-mobile-actions button{min-height:48px;border-radius:12px}
  .ib3-mobile-actions button,.v3-composer-actions button{white-space:nowrap}

  /* Customer editor: single-line title bar, compact steps, no decorative progress row. */
  .v3-customer-popup{max-height:96dvh!important}
  .v3-customer-popup .head{padding:11px 14px 0!important}
  .v3-customer-popup .popup-brand,.v3-customer-popup .step-label,.v3-customer-popup .bar{display:none!important}
  .v3-customer-popup .head-row{min-height:42px;margin:0!important;gap:8px}
  .v3-customer-popup .title{font-size:18px}
  .v3-customer-popup .close{width:40px!important;height:40px!important}
  .v3-customer-popup .tabs{min-height:38px;margin-top:8px!important;padding:2px}
  .v3-customer-popup .tab{padding:7px 8px;font-size:12px}
  .v3-customer-popup .body{padding:13px 14px!important}
  .v3-customer-popup .stack{gap:12px}
  .v3-customer-popup .row{gap:12px!important}
  .v3-customer-popup .customer-name-row,.v3-customer-popup .customer-channel-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .v3-customer-popup .customer-address-row{grid-template-columns:minmax(0,1.6fr) minmax(58px,.7fr) minmax(64px,.8fr)!important;gap:8px!important}
  .v3-customer-popup .label{margin-bottom:5px;font-size:10.5px}
  .v3-customer-popup .field{min-height:44px;padding:9px 11px}
  .v3-customer-popup .foot{
    flex-wrap:nowrap;gap:6px;padding:8px 14px calc(8px + env(safe-area-inset-bottom))!important
  }
  .v3-customer-popup .btn,.v3-customer-popup .btn-primary{min-height:44px!important;padding:8px 12px}
  .v3-customer-popup .back{display:grid;place-items:center;width:40px;height:40px;overflow:hidden;font-size:0}
  .v3-customer-popup .back:before{content:"←";font-size:18px}

  /* Send composer: one-line header and action bar; secondary send mode lives in More. */
  .v3-modal-panel .v3-composer-head{
    position:sticky;top:0;z-index:4;min-height:54px;padding:6px 12px!important;border-bottom:1px solid var(--border-subtle);background:var(--surface-primary)
  }
  .v3-composer-head .v3-dialog-heading{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:18px}
  .v3-composer-head .v3-icon-button{width:40px!important;height:40px!important}
  .v3-composer-menu-trigger{
    display:grid;place-items:center;width:40px;height:40px;padding:0;border:0!important;border-radius:11px;background:transparent!important;
    color:var(--text-primary);font-size:23px;font-weight:800;line-height:1;cursor:pointer;box-shadow:none!important
  }
  .v3-composer-menu-scrim{display:block;position:fixed;inset:0;z-index:1;background:var(--backdrop-bg)}
  .v3-composer-menu{
    position:absolute;top:48px;right:52px;z-index:3;display:grid;width:min(224px,calc(100vw - 28px));padding:6px;
    border:1px solid var(--border-default);border-radius:14px;background:var(--dropdown-bg);box-shadow:var(--shadow-high)
  }
  .v3-composer-menu button{min-height:44px;padding:8px 10px;border:0;border-radius:9px;background:transparent;color:var(--text-primary);font-size:12.5px;font-weight:750;text-align:left}
  .v3-composer-menu button:hover,.v3-composer-menu button:focus-visible{background:var(--brand-accent-faint);outline:0}
  .v3-modal-panel>.v3-composer-body{gap:11px!important;padding:12px 14px 14px!important}
  .v3-composer-intro{font-size:12px;line-height:1.45}
  .v3-composer-body input{min-height:44px!important;padding:9px 10px!important}
  .v3-composer-body textarea{min-height:170px;padding:10px!important}
  .v3-modal-panel>.v3-composer-actions{
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;gap:7px!important;
    padding:8px 14px calc(8px + env(safe-area-inset-bottom))!important
  }
  .v3-modal-panel>.v3-composer-actions>.v3-composer-mark{display:none!important}
  .v3-modal-panel>.v3-composer-actions>button{min-height:46px!important}
}

@media (max-width:370px){
  .content.ib3-takeover .ib3-meta--estimate{grid-template-columns:minmax(0,1fr) 122px!important}
  .content.ib3-takeover .ib3-meta--estimate>label{grid-column:auto}
  .content.ib3-takeover .ib3-meta--invoice>label{grid-column:1/-1}
  .ib3-mobile-actions{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);padding-inline:8px}
}

/* Mobile shell search is one composed control. The input itself must stay
   visually transparent so global form-field rules cannot create a field-in-field. */
@media (max-width:760px){
  .v3-mobile-topbar .v3-mobile-brandname{
    flex:none;white-space:nowrap;font-size:15.5px!important
  }
  .v3-mobile-topbar .search-box{
    overflow:hidden;background:var(--surface-primary)!important
  }
  .v3-mobile-topbar .search-box>input#tfg-global-search,
  .v3-mobile-topbar .search-box>input#tfg-global-search:hover,
  .v3-mobile-topbar .search-box>input#tfg-global-search:focus,
  .v3-mobile-topbar .search-box>input#tfg-global-search:focus-visible{
    -webkit-appearance:none!important;appearance:none!important;
    display:block!important;flex:1 1 auto!important;width:100%!important;min-width:0!important;
    height:auto!important;min-height:0!important;margin:0!important;padding:0!important;
    border:0!important;border-radius:0!important;outline:0!important;
    background:transparent!important;box-shadow:none!important
  }

  .workspace-toolbar--document{
    flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;
    gap:6px!important;min-height:52px!important;padding:6px!important;margin-bottom:10px!important;
    border-radius:12px!important;background:color-mix(in srgb,var(--surface-primary) 92%,transparent)!important;white-space:nowrap
  }
  .workspace-toolbar--document .workspace-toolbar-back{
    display:grid;place-items:center;flex:none;width:40px;height:40px;min-height:40px;padding:0;
    overflow:hidden;border:0;background:transparent;font-size:0
  }
  .workspace-toolbar--document .workspace-toolbar-back:before{content:none}
  .workspace-toolbar--document .workspace-toolbar-back span{display:none}
  .workspace-toolbar--document .workspace-toolbar-back-icon{display:block;width:18px;height:18px;margin:0}
  .workspace-toolbar--document .workspace-toolbar-divider{display:none!important}
  .workspace-toolbar--document .workspace-document-number{
    flex:none;max-width:92px;margin:0!important;overflow:hidden;font-size:18px!important;
    line-height:1!important;text-overflow:ellipsis;white-space:nowrap
  }
  .workspace-toolbar--document .workspace-document-status{
    flex:none;padding:4px 7px!important;font-size:9px!important
  }
  .workspace-toolbar--document .workspace-document-due{display:none!important}
  .workspace-toolbar--document .workspace-document-actions{
    flex:none;justify-content:flex-end;flex-wrap:nowrap!important;gap:6px!important;
    min-width:0;margin-left:auto!important
  }
  .workspace-toolbar--document .workspace-document-action:not(.v3-primary-button){display:none!important}
  .workspace-toolbar--document .workspace-document-action.v3-primary-button{
    flex:none;min-height:40px!important;height:40px;padding:0 10px!important;border-radius:9px!important;
    font-size:0!important;white-space:nowrap
  }
  .workspace-toolbar--document .workspace-document-action.v3-primary-button:after{
    content:attr(data-mobile-label);font-size:12px
  }
  .workspace-toolbar--document .workspace-document-action.v3-primary-button svg{width:15px;height:15px}
  .workspace-toolbar--document .v5-doc-more{flex:none}
  .workspace-toolbar--document .v5-doc-more-trigger{
    display:flex;align-items:center;justify-content:center;width:40px;height:40px;min-height:40px!important;
    gap:0!important;padding:0!important;overflow:hidden;font-size:0!important
  }
  .workspace-toolbar--document .v5-doc-more-icon{display:block;flex:none;width:18px;height:18px;margin:0}
  .workspace-toolbar--document .v5-doc-more-mobile-only{display:flex!important}
}

@media (max-width:350px){
  .workspace-toolbar--document .workspace-document-status{display:none!important}
  .workspace-toolbar--document .workspace-document-action.v3-primary-button{
    width:40px;padding:0!important;gap:0!important;font-size:0!important
  }
  .workspace-toolbar--document .workspace-document-action.v3-primary-button:after{display:none}
}

/* Settings — focused, category-based workspace preferences. */
.v5-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.v5-settings-page{width:min(1120px,100%);margin:0 auto;padding-bottom:24px}
.v5-settings-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:66px;margin-bottom:18px;padding:2px 2px 14px;border-bottom:1px solid var(--border-default)}
.v5-settings-hero-copy{min-width:0}.v5-settings-hero h1{margin:0;font:700 clamp(24px,2.4vw,31px)/1.1 var(--font-heading);letter-spacing:-.035em;color:var(--text-primary)}
.v5-settings-hero p{margin:6px 0 0;color:var(--text-muted);font-size:13px;line-height:1.45}
.v5-settings-save-state{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:0 11px;border:1px solid var(--brand-accent-border);border-radius:999px;background:var(--brand-accent-faint);color:var(--brand-accent-strong);font-size:11.5px;font-weight:750;white-space:nowrap}
.v5-settings-save-short{display:none}
.v5-settings-layout{display:grid;grid-template-columns:218px minmax(0,1fr);align-items:start;gap:22px}
.v5-settings-nav{position:sticky;top:18px;display:flex;flex-direction:column;gap:3px;padding:5px;border:1px solid var(--border-default);border-radius:14px;background:color-mix(in srgb,var(--surface-primary) 82%,transparent);box-shadow:var(--shadow-xs)}
.v5-settings-nav-item{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:9px;width:100%;min-height:55px;padding:7px 9px;border:0;border-radius:10px;background:transparent;color:var(--text-muted);cursor:pointer;text-align:left;transition:background-color 140ms ease,color 140ms ease,box-shadow 140ms ease}
.v5-settings-nav-item:hover{background:var(--surface-primary);color:var(--text-primary)}
.v5-settings-nav-item:focus-visible{outline:2px solid var(--brand-accent);outline-offset:1px}
.v5-settings-nav-item.is-active{background:var(--settings-selected-bg,var(--selected-bg));color:var(--settings-selected-text,var(--selected-text));box-shadow:var(--shadow-low)}
.v5-settings-nav-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;color:var(--text-muted)}
.v5-settings-nav-item.is-active .v5-settings-nav-icon{background:var(--brand-accent-soft);color:var(--brand-accent-strong)}
.v5-settings-nav-copy{min-width:0}.v5-settings-nav-copy strong,.v5-settings-nav-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v5-settings-nav-copy strong{font-size:12.5px;line-height:1.25}.v5-settings-nav-copy small{margin-top:2px;color:var(--text-subtle);font-size:9.8px;line-height:1.2}
.v5-settings-panel{min-width:0;overflow:hidden;border:1px solid var(--border-default);border-radius:15px;background:var(--surface-primary);box-shadow:var(--shadow-xs)}
.v5-settings-panel-head{padding:23px 26px 20px;border-bottom:1px solid var(--border-subtle);background:linear-gradient(180deg,var(--surface-primary) 0%,color-mix(in srgb,var(--surface-secondary) 72%,transparent) 100%)}
.v5-settings-eyebrow{margin-bottom:4px;color:var(--brand-accent-strong);font-size:9.5px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.v5-settings-panel-head h2{margin:0;font:700 22px/1.2 var(--font-heading);letter-spacing:-.025em;color:var(--text-primary)}
.v5-settings-panel-head p{margin:5px 0 0;color:var(--text-muted);font-size:12px;line-height:1.45}
.v5-settings-group{padding:23px 26px}.v5-settings-group+.v5-settings-group{border-top:1px solid var(--border-subtle)}
.v5-settings-group-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:17px}
.v5-settings-group-head>div{min-width:0}.v5-settings-group-head h3{margin:0;font:700 15px/1.3 var(--font-heading);letter-spacing:-.012em;color:var(--text-primary)}
.v5-settings-group-head p{max-width:620px;margin:4px 0 0;color:var(--text-muted);font-size:11.5px;line-height:1.5}
.v5-settings-status-pill{display:inline-flex;align-items:center;flex:none;min-height:25px;padding:0 9px;border:1px solid var(--border-default);border-radius:999px;background:var(--surface-primary);color:var(--text-muted);font-size:9.5px;font-weight:800;letter-spacing:.04em;white-space:nowrap;text-transform:uppercase}
.v5-settings-logo-row{display:grid;grid-template-columns:116px minmax(0,1fr);align-items:center;gap:15px;margin-bottom:19px;padding-bottom:19px;border-bottom:1px solid var(--border-subtle)}
.address-display{white-space:pre-line}
.v3-document-details>div>div:nth-child(4){white-space:pre-line}
.v5-settings-logo{display:flex;align-items:center;justify-content:center;width:116px;height:65px;margin:0;padding:7px;border:1px solid var(--border-default);border-radius:11px;background:var(--surface-primary);color:var(--text-muted);cursor:pointer;box-shadow:var(--shadow-xs)}
.v5-settings-logo:hover{border-color:var(--brand-accent)}.v5-settings-logo:focus-visible{outline:2px solid var(--brand-accent);outline-offset:2px}
.v5-settings-logo--empty{flex-direction:column;gap:3px;border-style:dashed;background:var(--surface-primary);font-size:10.5px;font-weight:750}
.v5-settings-logo-copy{display:flex;min-width:0;flex-direction:column}.v5-settings-logo-copy>strong{font-size:12.5px}.v5-settings-logo-copy>span{margin-top:2px;color:var(--text-muted);font-size:11px;line-height:1.4}
.v5-settings-logo-actions{display:flex;align-items:center;gap:11px;margin-top:8px}.v5-settings-logo-copy button{margin:0;padding:0;border:0;background:none;color:var(--brand-accent-strong);font-size:11px;font-weight:750;cursor:pointer}.v5-settings-logo-copy button.is-muted{color:var(--text-muted)}.v5-settings-logo-copy button:hover{text-decoration:underline}
.v5-logo-size-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;margin-top:14px;padding-top:13px;border-top:1px solid var(--border-subtle)}
.v5-logo-size-head{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;gap:12px}.v5-logo-size-head label{color:var(--text-primary);font-size:11.5px;font-weight:750}.v5-logo-size-head output{display:grid;place-items:center;min-width:45px;height:25px;padding:0 8px;border:1px solid var(--border-default);border-radius:999px;background:var(--surface-primary);color:var(--brand-accent-strong);font-size:10.5px;font-weight:800;font-variant-numeric:tabular-nums}
.v5-logo-size-control input[type="range"]{grid-column:1/-1;width:100%;height:22px;margin:0;accent-color:var(--brand-accent);cursor:pointer}
.v5-logo-size-control input[type="range"]:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;border-radius:999px}
.v5-logo-size-scale{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;margin-top:-5px;color:var(--text-subtle);font-size:8.5px;font-weight:700}.v5-logo-size-control>small{grid-column:1/-1;color:var(--text-muted);font-size:9.5px;line-height:1.4}
.v5-settings-field-grid{display:grid;gap:13px}.v5-settings-field-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.v5-settings-field-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.v5-settings-field--wide{grid-column:1/-1}.v5-settings-field-stack{display:flex;flex-direction:column;gap:13px;margin-top:14px}
.v5-settings-field{display:flex;min-width:0;flex-direction:column;gap:5px}.v5-settings-field>span{color:var(--text-muted);font-size:10.5px;font-weight:750;line-height:1.25}.v5-settings-field>span small{margin-left:4px;color:var(--text-subtle);font-size:9.5px;font-weight:600}
.v5-settings-input{display:block;width:100%;min-width:0;min-height:42px;padding:9px 11px!important;border:1px solid var(--border-default)!important;border-radius:9px!important;background:var(--surface-primary)!important;color:var(--text-primary)!important;box-shadow:none!important;font:500 12.5px/1.35 var(--font-body);transition:border-color 140ms ease,background-color 140ms ease,box-shadow 140ms ease}
textarea.v5-settings-input{min-height:67px;resize:vertical}.v5-settings-input:hover{border-color:var(--border-strong)!important;background:var(--surface-primary)!important}.v5-settings-input:focus{outline:0!important;border-color:var(--brand-accent)!important;background:var(--surface-primary)!important;box-shadow:0 0 0 3px var(--focus-ring)!important}
.v5-settings-page .v3-template-option{border-radius:11px}.v5-settings-page .v3-template-picker{gap:9px}
.v5-settings-disclosure{border-top:1px solid var(--border-subtle);background:var(--surface-primary)}.v5-settings-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:68px;padding:12px 26px;list-style:none;cursor:pointer}.v5-settings-disclosure>summary::-webkit-details-marker{display:none}.v5-settings-disclosure>summary:hover{background:var(--surface-primary)}
.v5-settings-disclosure>summary>span{min-width:0}.v5-settings-disclosure>summary strong,.v5-settings-disclosure>summary small{display:block}.v5-settings-disclosure>summary strong{font-size:12.5px}.v5-settings-disclosure>summary small{margin-top:2px;color:var(--text-muted);font-size:10.5px;line-height:1.35}.v5-settings-disclosure>summary>svg{flex:none;color:var(--text-muted);transition:transform 140ms ease}.v5-settings-disclosure[open]>summary>svg{transform:rotate(180deg)}
.v5-settings-disclosure-body{padding:4px 26px 23px}
.v5-settings-connection-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;border:1px solid var(--border-default);border-radius:12px;background:var(--surface-primary)}
.v5-settings-connection-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--border-default);border-radius:10px;background:var(--surface-primary);color:var(--text-muted)}
.v5-settings-connection-row>div{min-width:0}.v5-settings-connection-row strong,.v5-settings-connection-row div>span{display:block}.v5-settings-connection-row strong{font-size:12.5px}.v5-settings-connection-row div>span{margin-top:2px;color:var(--text-muted);font-size:10.5px;line-height:1.4}.v5-settings-connection-state{flex:none;color:var(--text-muted);font-size:10.5px;font-weight:800}
.v5-settings-info-row{display:flex;align-items:flex-start;gap:8px;margin-top:12px;color:var(--text-muted);font-size:11px;line-height:1.5}.v5-settings-info-row svg{flex:none;margin-top:1px;color:var(--brand-accent-strong)}
.v5-settings-page .v3-data-mode-picker{max-width:600px}.v5-settings-page .v3-data-mode-note{margin-bottom:0}.v5-settings-page .v5-import-providers{max-width:650px}.v5-settings-page .v5-import-utility-row{margin-top:12px}
.v5-settings-account-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;border:1px solid var(--border-default);border-radius:12px;background:var(--surface-primary)}
.v5-settings-account-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--brand-accent);color:var(--action-primary-text);font-size:12px;font-weight:850;letter-spacing:.03em}.v5-settings-account-row>div{min-width:0}.v5-settings-account-row strong,.v5-settings-account-row div>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v5-settings-account-row strong{font-size:12.5px}.v5-settings-account-row div>span{margin-top:2px;color:var(--text-muted);font-size:11px}
.v5-settings-danger .v5-settings-group-head{align-items:center;margin-bottom:0}.v5-settings-signout{flex:none;min-height:38px;padding:8px 13px;border:1px solid color-mix(in srgb,var(--status-error) 28%,var(--border-default));border-radius:9px;background:var(--surface-primary);color:var(--status-error);font-size:11.5px;font-weight:var(--button-weight);cursor:pointer}.v5-settings-signout:hover{background:var(--status-error-bg)}

@media(max-width:900px){
  .v5-settings-layout{grid-template-columns:188px minmax(0,1fr);gap:15px}
  .v5-settings-nav-copy small{display:none}.v5-settings-nav-item{min-height:48px}
  .v5-settings-panel-head,.v5-settings-group{padding-left:21px;padding-right:21px}.v5-settings-disclosure>summary{padding-left:21px;padding-right:21px}.v5-settings-disclosure-body{padding-left:21px;padding-right:21px}
}

@media(max-width:760px){
  .v5-settings-page{padding-bottom:7px}
  .v5-settings-hero{min-height:46px;margin-bottom:10px;padding:0 0 9px}.v5-settings-hero h1{font-size:22px}.v5-settings-hero p{display:none}.v5-settings-save-state{min-height:28px;padding:0 9px;font-size:10.5px}.v5-settings-save-long{display:none}.v5-settings-save-short{display:inline}
  .v5-settings-layout{display:flex;min-width:0;flex-direction:column;gap:10px}
  .v5-settings-nav{position:relative;top:auto;z-index:2;display:flex;width:100%;max-width:100%;flex-direction:row;gap:4px;padding:4px;overflow-x:auto;overscroll-behavior-x:contain;border-radius:12px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.v5-settings-nav::-webkit-scrollbar{display:none}
  .v5-settings-nav-item{display:flex;flex:0 0 auto;min-height:38px;width:auto;grid-template-columns:none;gap:6px;padding:5px 9px;white-space:nowrap}.v5-settings-nav-icon{width:25px;height:25px;border-radius:7px}.v5-settings-nav-icon svg{width:15px;height:15px}.v5-settings-nav-copy strong{font-size:11.5px}.v5-settings-nav-copy small{display:none}
  .v5-settings-panel{width:100%;border-radius:13px}
  .v5-settings-panel-head{padding:16px 15px 14px}.v5-settings-eyebrow{font-size:8.5px}.v5-settings-panel-head h2{font-size:19px}.v5-settings-panel-head p{margin-top:3px;font-size:10.5px}
  .v5-settings-group{padding:17px 15px}.v5-settings-group-head{gap:10px;margin-bottom:13px}.v5-settings-group-head h3{font-size:14px}.v5-settings-group-head p{font-size:10.5px;line-height:1.4}.v5-settings-status-pill,.v3-data-mode-badge,.v5-import-safe-badge{min-height:23px;padding:0 7px;font-size:8.5px}
  .v5-settings-logo-row{grid-template-columns:94px minmax(0,1fr);align-items:start;gap:12px;margin-bottom:15px;padding-bottom:15px}.v5-settings-logo{width:94px;height:58px}.v5-settings-logo-copy>strong{font-size:11.5px}.v5-settings-logo-copy>span{font-size:10px}.v5-settings-logo-actions{margin-top:6px}.v5-settings-logo-copy button{font-size:10.5px}.v5-logo-size-control{grid-column:1/-1;margin-top:11px;padding-top:10px}.v5-logo-size-head label{font-size:11px}.v5-logo-size-control>small{font-size:9px}
  .v5-settings-field-grid--two{grid-template-columns:1fr}.v5-settings-field--wide{grid-column:auto}.v5-settings-field-grid{gap:10px}.v5-settings-field-stack{gap:10px;margin-top:11px}.v5-settings-field>span{font-size:10px}.v5-settings-input{min-height:43px;padding:9px 10px!important;font-size:13px}textarea.v5-settings-input{min-height:70px}
  .v5-settings-number-defaults{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.v5-settings-number-defaults .v5-settings-field>span{min-height:24px;font-size:9.5px}.v5-settings-number-defaults .v5-settings-input{padding-left:8px!important;padding-right:8px!important}
  .v5-settings-page .v3-template-picker{grid-template-columns:1fr}.v5-settings-page .v3-template-option{grid-template-columns:112px minmax(0,1fr);min-height:86px}.v5-settings-page .v3-template-preview{height:64px}
  .v5-settings-disclosure>summary{min-height:61px;padding:10px 15px}.v5-settings-disclosure>summary strong{font-size:12px}.v5-settings-disclosure>summary small{font-size:10px}.v5-settings-disclosure-body{padding:2px 15px 17px}
  .v5-settings-connection-row{grid-template-columns:38px minmax(0,1fr) auto;gap:9px;padding:11px}.v5-settings-connection-icon{width:38px;height:38px}.v5-settings-connection-row div>span{font-size:10px}.v5-settings-connection-state{font-size:9.5px}
  .v5-settings-page .v3-data-mode-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.v5-settings-page .v3-data-mode-option{grid-template-columns:28px minmax(0,1fr) 15px;min-height:62px!important;padding:8px!important}.v5-settings-page .v3-data-mode-icon{width:28px;height:28px}.v5-settings-page .v3-data-mode-option strong{font-size:11px}.v5-settings-page .v3-data-mode-option small{font-size:9px}
  .v5-settings-page .v5-import-providers{grid-template-columns:1fr}.v5-settings-page .v5-import-provider{min-height:60px!important}.v5-settings-page .v5-import-utility-row{display:grid;grid-template-columns:1fr}.v5-settings-page .v5-import-utility-row button{width:100%;min-height:40px}
  .v5-settings-account-row{grid-template-columns:40px minmax(0,1fr) auto;padding:11px}.v5-settings-account-avatar{width:40px;height:40px}.v5-settings-danger .v5-settings-group-head{align-items:center}.v5-settings-danger .v5-settings-group-head p{max-width:170px}
  .v5-settings-page .v3-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:360px){
  .v5-settings-nav-item{padding-inline:7px}.v5-settings-nav-icon{display:none}
  .v5-settings-number-defaults .v5-settings-field>span{font-size:8.8px}.v5-settings-number-defaults .v5-settings-field>span small{display:block;margin:1px 0 0}
  .v5-settings-page .v3-data-mode-picker{grid-template-columns:1fr}
}

/* Email templates */
.v5-email-template-tabs{display:flex;gap:6px;margin-bottom:16px;padding:4px;overflow-x:auto;border:1px solid var(--border-default);border-radius:11px;background:var(--surface-primary);scrollbar-width:none}.v5-email-template-tabs::-webkit-scrollbar{display:none}.v5-email-template-tabs button{flex:0 0 auto;min-height:34px;padding:7px 11px;border:0;border-radius:8px;background:transparent;color:var(--text-muted);font-size:11px;font-weight:750;cursor:pointer;white-space:nowrap}.v5-email-template-tabs button:hover{background:var(--surface-primary);color:var(--text-primary)}.v5-email-template-tabs button.is-active{background:var(--surface-primary);color:var(--text-primary);box-shadow:var(--shadow-low)}.v5-email-template-editor{display:grid;gap:13px}.v5-email-template-body{min-height:230px!important;font-family:var(--font-mono)!important;font-size:11.5px!important;line-height:1.6!important}.v5-email-variable-wrap{display:grid;gap:7px}.v5-email-variable-wrap>span{color:var(--text-muted);font-size:10.5px;font-weight:750}.v5-email-variables{display:flex;flex-wrap:wrap;gap:6px}.v5-email-variables button{min-height:28px;padding:4px 8px;border:1px solid var(--border-default);border-radius:7px;background:var(--surface-primary);color:var(--brand-accent-strong);font:650 9.5px/1.2 var(--font-mono);cursor:pointer}.v5-email-variables button:hover{border-color:var(--brand-accent);background:var(--brand-accent-faint)}.v5-email-template-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.v5-email-template-actions button{padding:0;border:0;background:transparent;color:var(--brand-accent-strong);font-size:11px;font-weight:750;cursor:pointer}.v5-email-template-actions button:hover{text-decoration:underline}.v5-email-template-actions span{color:var(--text-subtle);font-size:10px}.v5-email-preview{overflow:hidden;border:1px solid var(--border-default);border-radius:12px;background:var(--surface-primary)}.v5-email-preview>div{display:grid;gap:4px;padding:12px 14px;border-bottom:1px solid var(--border-default)}.v5-email-preview span{color:var(--text-subtle);font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.v5-email-preview strong{font-size:12.5px}.v5-email-preview pre{margin:0;padding:16px 14px;overflow:auto;color:var(--text-primary);font:500 11.5px/1.65 var(--font-ui);white-space:pre-wrap}

/* CSV exports */
.v5-pdf-quality-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.v5-pdf-quality-grid>div{padding:11px 12px;border:1px solid var(--border-default);border-radius:10px;background:var(--surface-primary)}.v5-pdf-quality-grid strong,.v5-pdf-quality-grid span{display:block}.v5-pdf-quality-grid strong{font-size:10.8px}.v5-pdf-quality-grid span{margin-top:3px;color:var(--text-muted);font-size:9.3px;line-height:1.4}
.v5-export-all{flex:none;min-height:36px;padding:7px 11px;border:1px solid var(--brand-accent-border);border-radius:9px;background:var(--brand-accent-faint);color:var(--brand-accent-strong);font-size:10.5px;font-weight:800;cursor:pointer}.v5-export-all:hover{background:var(--brand-accent-soft)}.v5-export-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v5-export-grid>button{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:62px;padding:10px 11px;border:1px solid var(--border-default);border-radius:11px;background:var(--surface-primary);color:var(--text-primary);cursor:pointer;text-align:left}.v5-export-grid>button:hover{border-color:var(--brand-accent);background:var(--brand-accent-faint)}.v5-export-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:var(--surface-primary);color:var(--brand-accent-strong)}.v5-export-grid button>span:nth-child(2){min-width:0}.v5-export-grid strong,.v5-export-grid small{display:block}.v5-export-grid strong{font-size:11.5px}.v5-export-grid small{margin-top:2px;color:var(--text-muted);font-size:9.5px;line-height:1.35}.v5-export-grid em{padding:3px 5px;border:1px solid var(--border-default);border-radius:5px;color:var(--text-subtle);font-size:8px;font-style:normal;font-weight:850;letter-spacing:.06em}

/* Team roles */
.v5-team-note{display:flex;align-items:flex-start;gap:8px;margin-bottom:15px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--status-warning) 28%,var(--border-default));border-radius:10px;background:var(--status-warning-bg);color:var(--status-warning);font-size:10.5px;line-height:1.5}.v5-team-note svg{flex:none;margin-top:1px}.v5-team-invite{display:grid;grid-template-columns:1fr 1.25fr 1fr auto;align-items:end;gap:9px;margin-bottom:16px;padding:13px;border:1px solid var(--border-default);border-radius:12px;background:var(--surface-primary)}.v5-team-invite-button{min-height:42px;padding:8px 12px;border:0;border-radius:9px;background:var(--action-primary);color:var(--action-primary-text);font-size:11px;font-weight:var(--button-weight);cursor:pointer;white-space:nowrap}.v5-team-invite-button:hover{background:var(--action-primary-hover)}.v5-team-list{display:grid;gap:7px}.v5-team-member{display:grid;grid-template-columns:38px minmax(0,1fr) minmax(140px,190px) auto;align-items:center;gap:10px;padding:10px 11px;border:1px solid var(--border-default);border-radius:11px;background:var(--surface-primary)}.v5-team-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--brand-accent-soft);color:var(--brand-accent-strong);font-size:10px;font-weight:var(--label-weight)}.v5-team-person{min-width:0}.v5-team-person strong,.v5-team-person span,.v5-team-person small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v5-team-person strong{font-size:11.5px}.v5-team-person span{margin-top:2px;color:var(--text-muted);font-size:9.8px}.v5-team-person small{margin-top:2px;color:var(--brand-accent-strong);font-size:8.8px;font-weight:var(--label-weight);text-transform:uppercase}.v5-team-member select{width:100%;min-height:36px;padding:6px 9px;border:1px solid var(--border-default);border-radius:8px;background:var(--surface-primary);font-size:10.5px}.v5-team-member select:disabled{color:var(--text-muted);opacity:.7}.v5-team-remove{padding:5px 0;border:0;background:transparent;color:var(--status-error);font-size:10px;font-weight:var(--button-weight);cursor:pointer}.v5-team-remove:hover{text-decoration:underline}.v5-team-owner{color:var(--text-muted);font-size:9.5px;font-weight:var(--label-weight)}.v5-role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v5-role-grid article{padding:11px 12px;border:1px solid var(--border-default);border-radius:10px;background:var(--surface-primary)}.v5-role-grid strong{font-size:10.8px}.v5-role-grid p{margin:3px 0 0;color:var(--text-muted);font-size:9.5px;line-height:1.4}

/* Installable mobile app */
.v5-mobile-install-card{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px;border:1px solid var(--border-default);border-radius:13px;background:linear-gradient(135deg,var(--surface-primary),var(--surface-secondary))}.v5-mobile-app-icon{display:grid;place-items:center;width:54px;height:54px;overflow:hidden;border-radius:13px;background:var(--surface-primary);box-shadow:var(--shadow-low)}.v5-mobile-app-icon img{display:block;width:100%;height:100%;object-fit:cover}.v5-mobile-install-card>div{min-width:0}.v5-mobile-install-card strong,.v5-mobile-install-card div>span{display:block}.v5-mobile-install-card strong{font-size:13px}.v5-mobile-install-card div>span{margin-top:3px;color:var(--text-muted);font-size:10.5px;line-height:1.4}.v5-mobile-install-card button{min-height:39px;padding:8px 13px;border:0;border-radius:9px;background:var(--action-primary);color:var(--action-primary-text);font-size:10.5px;font-weight:var(--button-weight);cursor:pointer}.v5-mobile-install-card button:disabled{background:var(--disabled-bg);color:var(--disabled-text);cursor:default}.v5-mobile-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.v5-mobile-status-grid>div{position:relative;display:grid;gap:2px;padding:10px 10px 10px 28px;border:1px solid var(--border-default);border-radius:10px;background:var(--surface-primary)}.v5-mobile-status-grid>div>span{position:absolute;left:11px;top:13px;width:8px;height:8px;border-radius:50%;background:var(--border-strong)}.v5-mobile-status-grid>div.is-ready>span{background:var(--status-success);box-shadow:0 0 0 3px color-mix(in srgb,var(--status-success) 12%,transparent)}.v5-mobile-status-grid>div.is-warn>span{background:var(--status-warning);box-shadow:0 0 0 3px color-mix(in srgb,var(--status-warning) 12%,transparent)}.v5-mobile-status-grid strong{font-size:10.5px}.v5-mobile-status-grid small{color:var(--text-subtle);font-size:8.8px}.v5-mobile-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v5-mobile-feature-grid article{padding:12px;border:1px solid var(--border-default);border-radius:10px;background:var(--surface-primary)}.v5-mobile-feature-grid strong,.v5-mobile-feature-grid span{display:block}.v5-mobile-feature-grid strong{font-size:11px}.v5-mobile-feature-grid span{margin-top:3px;color:var(--text-muted);font-size:9.5px;line-height:1.45}

/* Print / Save PDF: true US Letter paper with predictable multi-page breaks. */
@page{size:Letter;margin:0}
@media print{
  html,body{width:8.5in!important;min-height:11in!important;background:var(--surface-primary)!important}
  .v3-public-document{width:8.5in!important;min-height:11in!important;margin:0!important;padding:0!important;background:#fff!important}.v3-public-document>div:nth-child(2){width:8.5in!important;max-width:none!important;margin:0!important;padding:0!important;gap:0!important}
  .v3-document-sheet,.v3-doc-paper,.v5-receipt-paper{position:relative!important;width:8.5in!important;max-width:8.5in!important;min-height:11in!important;height:auto!important;margin:0!important;padding:.55in .58in .62in!important;overflow:visible!important;border:0!important;border-radius:0!important;box-shadow:none!important;box-sizing:border-box!important;-webkit-box-decoration-break:clone;box-decoration-break:clone;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  .v5-receipt-wrap{width:8.5in!important;max-width:none!important;margin:0!important}
  .v3-document-header,.v3-document-summary,.v3-document-details,.v3-document-scope,.v3-doc-line,.v3-document-totals,.v3-document-notes,.v3-document-terms,.v3-document-approval{break-inside:avoid-page;page-break-inside:avoid}
  .v3-doc-line-head{break-after:avoid-page;page-break-after:avoid}
  .v3-document-sheet:after,.v3-doc-paper:after,.v5-receipt-paper:after{content:attr(data-print-label) "  ·  Page " counter(page);position:fixed;right:.58in;bottom:.27in;color:#76766f;font:500 8.5pt/1 var(--font-ui);letter-spacing:.02em}
}

/* Mobile safe areas and smaller settings layouts. */
.v3-mobile-nav{padding-bottom:max(0px,env(safe-area-inset-bottom))!important;height:calc(68px + env(safe-area-inset-bottom))!important}.v3-mobile-more-sheet{padding-bottom:max(14px,env(safe-area-inset-bottom))!important}
@media(max-width:760px){
  .v5-export-grid,.v5-role-grid,.v5-mobile-feature-grid,.v5-pdf-quality-grid{grid-template-columns:1fr}
  .v5-team-invite{grid-template-columns:1fr 1fr}.v5-team-invite-button{grid-column:1/-1}
  .v5-team-member{grid-template-columns:36px minmax(0,1fr) auto}.v5-team-member>label{grid-column:2/-1}.v5-team-member select{min-height:40px}.v5-team-remove,.v5-team-owner{grid-column:3;grid-row:1;text-align:right}
  .v5-mobile-install-card{grid-template-columns:48px minmax(0,1fr)}.v5-mobile-app-icon{width:48px;height:48px}.v5-mobile-install-card button{grid-column:1/-1;width:100%}
  .v5-mobile-status-grid{grid-template-columns:1fr}
  .v5-email-template-body{min-height:210px!important}
}
@media(max-width:430px){.v5-team-invite{grid-template-columns:1fr}.v5-team-invite-button{grid-column:auto}.v5-export-all{width:100%}.v5-settings-group-head:has(.v5-export-all){flex-direction:column}.v5-email-template-actions{align-items:flex-start;flex-direction:column}}

/* Full-size, skin-aware Invoice Flow mark for the install card. */
.v5-mobile-app-icon{border:1px solid var(--brand-accent-border);background:var(--brand-accent-soft)}
.v5-mobile-app-icon .invoice-flow-mark--install{display:block;width:38px;height:38px}

/* Guided email template editor */
.v5-email-choose{display:grid;gap:18px;background:linear-gradient(145deg,var(--surface-primary) 35%,var(--brand-accent-faint))}.v5-email-welcome{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:14px;padding-bottom:17px;border-bottom:1px solid var(--border-default)}.v5-email-welcome-mark{position:relative;display:block;width:54px;height:44px;border-radius:12px;background:var(--brand-accent-strong);box-shadow:var(--shadow-medium)}.v5-email-welcome-mark:before{content:"";position:absolute;inset:12px 10px;border:2px solid var(--action-primary-text);border-radius:4px}.v5-email-welcome-mark:after{content:"";position:absolute;left:16px;top:13px;width:20px;height:14px;border-bottom:2px solid var(--action-primary-text);transform:rotate(0deg) skewY(-31deg)}.v5-email-welcome h3{margin:0;color:var(--text-primary);font-size:16px;letter-spacing:-.02em}.v5-email-welcome p{max-width:590px;margin:4px 0 0;color:var(--text-muted);font-size:10.8px;line-height:1.5}.v5-email-ready-badge{display:inline-flex;align-items:center;min-height:27px;padding:0 9px;border:1px solid color-mix(in srgb,var(--status-success) 28%,var(--border-default));border-radius:999px;background:var(--status-success-bg);color:var(--status-success);font-size:9px;font-weight:var(--label-weight);white-space:nowrap}.v5-email-ready-badge:before{content:"✓";margin-right:5px}
.v5-email-step-heading{display:flex;align-items:center;gap:9px}.v5-email-step-heading>span{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:var(--brand-accent-strong);color:var(--action-primary-text);font-size:11px;font-weight:850;box-shadow:0 0 0 4px var(--brand-accent-faint)}.v5-email-step-heading>div{min-width:0}.v5-email-step-heading strong,.v5-email-step-heading small{display:block}.v5-email-step-heading strong{font-size:12.5px}.v5-email-step-heading small{margin-top:2px;color:var(--text-muted);font-size:9.7px;line-height:1.35}
.v5-email-template-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v5-email-template-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:76px;padding:10px;border:1px solid var(--border-default);border-radius:12px;background:var(--surface-primary);color:var(--text-primary);cursor:pointer;text-align:left;transition:border-color .16s,box-shadow .16s,transform .16s}.v5-email-template-card:hover{border-color:var(--brand-accent);box-shadow:var(--shadow-low);transform:translateY(-1px)}.v5-email-template-card.is-active{border-color:var(--brand-accent-strong);box-shadow:0 0 0 2px var(--brand-accent-soft),var(--shadow-low)}.v5-email-card-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:11px;background:var(--status-info-bg);color:var(--status-info);font-size:9px;font-weight:var(--label-weight);letter-spacing:.04em}.v5-email-card-mark.is-invoice{background:var(--status-success-bg);color:var(--status-success)}.v5-email-card-mark.is-reminder{background:var(--status-warning-bg);color:var(--status-warning)}.v5-email-card-mark.is-receipt{background:var(--status-success-bg);color:var(--status-success)}.v5-email-card-mark.is-statement{background:var(--brand-accent-soft);color:var(--brand-accent-text)}.v5-email-card-copy{min-width:0}.v5-email-card-copy strong,.v5-email-card-copy small{display:block}.v5-email-card-copy strong{font-size:11.5px}.v5-email-card-copy small{margin-top:3px;color:var(--text-muted);font-size:9.3px;line-height:1.35}.v5-email-card-state{align-self:start;min-width:44px;padding-top:2px;color:var(--text-subtle);font-size:8.5px;font-weight:var(--label-weight);text-align:right}.v5-email-template-card.is-active .v5-email-card-state{color:var(--brand-accent-strong)}
.v5-email-build{padding-top:22px!important}.v5-email-builder-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);align-items:start;gap:22px}.v5-email-editor-column,.v5-email-preview-column{min-width:0}.v5-email-editor-column>.v5-email-step-heading,.v5-email-preview-column>.v5-email-step-heading{margin-bottom:14px}.v5-email-friendly-note{display:flex;align-items:flex-start;gap:9px;margin-bottom:12px;padding:10px 11px;border:1px solid color-mix(in srgb,var(--status-success) 28%,var(--border-default));border-radius:10px;background:var(--status-success-bg);color:var(--status-success)}.v5-email-friendly-note>span{display:grid;place-items:center;flex:none;width:18px;height:18px;border-radius:50%;background:var(--status-success);color:var(--text-inverse);font-size:10px;font-weight:var(--label-weight)}.v5-email-friendly-note p{margin:0;font-size:9.8px;line-height:1.45}.v5-email-friendly-note strong{font-weight:var(--body-medium-weight)}
.v5-email-template-editor{gap:14px}.v5-email-editor-field{display:grid;gap:4px}.v5-email-editor-field>span{font-size:11px;font-weight:850}.v5-email-editor-field>small{color:var(--text-muted);font-size:9.3px}.v5-email-editor-field .v5-settings-input{background:var(--surface-primary)}.v5-email-template-body{min-height:250px!important;font-family:var(--font-ui)!important;font-size:12px!important;line-height:1.65!important;resize:vertical}.v5-email-variable-wrap{gap:9px;padding:12px;border:1px solid var(--border-default);border-radius:11px;background:var(--surface-primary)}.v5-email-variable-wrap>div:first-child strong,.v5-email-variable-wrap>div:first-child small{display:block}.v5-email-variable-wrap>div:first-child strong{font-size:10.8px}.v5-email-variable-wrap>div:first-child small{margin-top:2px;color:var(--text-muted);font-size:9.2px}.v5-email-variables{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.v5-email-variables button{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:7px;min-height:44px;padding:7px 8px;border-radius:9px;background:var(--surface-primary);color:var(--text-primary);font:inherit;text-align:left}.v5-email-variables button>span:first-child{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:var(--brand-accent-faint);color:var(--brand-accent-strong);font-size:14px;font-weight:800}.v5-email-variables button strong,.v5-email-variables button small{display:block}.v5-email-variables button strong{font-size:9.8px}.v5-email-variables button small{margin-top:1px;color:var(--text-muted);font-size:8.5px}.v5-email-template-actions{padding-top:2px}.v5-email-template-actions span{display:inline-flex;align-items:center;gap:5px;color:var(--status-success);font-size:9.5px;font-weight:750}.v5-email-template-actions span b{display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:var(--status-success-bg);font-size:8px}
.v5-email-preview-column{position:sticky;top:18px}.v5-email-device{overflow:hidden;border:1px solid #d6d8dc;border-radius:14px;background:#e9eaed;box-shadow:0 12px 28px rgba(23,22,29,.12)}.v5-email-device-bar{display:flex;align-items:center;gap:5px;height:35px;padding:0 11px;border-bottom:1px solid #d6d8dc;background:#f4f5f6}.v5-email-device-bar>span{width:7px;height:7px;border-radius:50%;background:#d1d3d6}.v5-email-device-bar>span:first-child{background:#ee8076}.v5-email-device-bar>span:nth-child(2){background:#efc25e}.v5-email-device-bar>span:nth-child(3){background:#69bd7b}.v5-email-device-bar>strong{margin-left:5px;color:#777a80;font-size:8.5px;font-weight:750;letter-spacing:.02em}.v5-email-device .v5-email-preview{margin:10px;border:0;border-radius:10px;background:var(--surface-primary);box-shadow:0 2px 7px rgba(23,22,29,.07)}.v5-email-device .v5-email-preview>header{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;padding:12px 13px;border-bottom:1px solid #ececef}.v5-email-sender-avatar{display:grid!important;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--brand-accent-strong);color:var(--action-primary-text)!important;font-size:9px!important;font-weight:850!important;letter-spacing:.02em!important;text-transform:none!important}.v5-email-preview header div{min-width:0}.v5-email-preview header strong,.v5-email-preview header span,.v5-email-preview header small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v5-email-preview header strong{font-size:10.5px}.v5-email-preview header div>span{margin-top:1px;color:#777a80;font-size:8.5px;font-weight:500;letter-spacing:0;text-transform:none}.v5-email-preview header small{margin-top:1px;color:#9a9ca1;font-size:8px}.v5-email-device .v5-email-preview-subject{display:grid;gap:3px;padding:11px 13px 0;border:0}.v5-email-preview-subject>span{color:#93959a;font-size:7.5px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.v5-email-preview-subject>strong{font-size:12px;line-height:1.35}.v5-email-device .v5-email-preview pre{min-height:150px;margin:0;padding:13px;color:#313238;font:500 10px/1.65 var(--font-ui);white-space:pre-wrap}.v5-email-device .v5-email-preview>button{min-height:34px;margin:0 13px 15px;padding:7px 13px;border:0;border-radius:8px;background:var(--brand-accent-strong);color:var(--action-primary-text);font-size:9.5px;font-weight:850;pointer-events:none}.v5-email-device .v5-email-preview>footer{padding:9px 13px;border-top:1px solid #ececef;color:#a0a2a7;font-size:7.8px;text-align:center}
@media(max-width:1040px){.v5-email-builder-layout{grid-template-columns:1fr}.v5-email-preview-column{position:static}.v5-email-device{max-width:560px}}
@media(max-width:760px){.v5-email-welcome{grid-template-columns:46px minmax(0,1fr)}.v5-email-welcome-mark{width:46px;height:40px}.v5-email-ready-badge{grid-column:1/-1;justify-self:start}.v5-email-template-cards{grid-template-columns:1fr}.v5-email-template-card{min-height:70px}.v5-email-template-body{min-height:230px!important}.v5-email-build{padding-top:18px!important}}
@media(max-width:430px){.v5-email-variables{grid-template-columns:1fr}.v5-email-card-state{display:none}.v5-email-template-card{grid-template-columns:44px minmax(0,1fr)}.v5-email-card-mark{width:44px;height:44px}.v5-email-device{margin-inline:-3px}}

/* Customer-card overdue values carry the same visual weight as the open balance. */
.customers-v2-card>em{font-size:13px;font-variant-numeric:tabular-nums}

/* Email editing is a single, focused top-to-bottom flow. */
.v5-email-builder-layout{grid-template-columns:minmax(0,1fr);gap:34px}.v5-email-editor-column,.v5-email-preview-column{width:100%;max-width:790px;margin:0 auto}.v5-email-preview-column{position:static;padding-top:30px;border-top:1px solid var(--border-default)}
.v5-email-editor-summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:12px;padding:10px 12px;border:1px solid var(--border-default);border-radius:11px;background:var(--surface-primary)}.v5-email-editing-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:7px;background:var(--brand-accent-strong);color:var(--action-primary-text);font-size:8.5px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.v5-email-editor-summary>div{min-width:0}.v5-email-editor-summary strong,.v5-email-editor-summary small{display:block}.v5-email-editor-summary strong{font-size:11px}.v5-email-editor-summary small{margin-top:2px;color:var(--text-muted);font-size:9px}.v5-email-safe-save{display:inline-flex;align-items:center;gap:5px;color:var(--status-success);font-size:9.5px;font-weight:800;white-space:nowrap}.v5-email-safe-save b{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:var(--status-success-bg);font-size:9px}
.v5-email-editor-shell{gap:17px;padding:18px;border:1px solid var(--border-default);border-radius:14px;background:var(--surface-primary);box-shadow:var(--shadow-low)}.v5-email-editor-shell .v5-email-friendly-note{margin:0}.v5-email-editor-field>span{font-size:12px}.v5-email-editor-field>small{font-size:9.8px}.v5-email-subject-field .v5-settings-input{min-height:48px!important;font-size:14px!important;font-weight:650}
.v5-email-composer{overflow:hidden;border:1px solid var(--border-default);border-radius:12px;background:var(--surface-primary)}.v5-email-composer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid var(--border-default);background:var(--surface-primary)}.v5-email-composer-head>div>span,.v5-email-composer-head>div>small{display:block}.v5-email-composer-head>div>span{font-size:12px;font-weight:850}.v5-email-composer-head>div>small{margin-top:2px;color:var(--text-muted);font-size:9.6px}.v5-email-composer-head>span{flex:none;margin-top:1px;padding:4px 7px;border:1px solid var(--border-default);border-radius:999px;background:var(--surface-primary);color:var(--text-muted);font-size:8.5px;font-weight:750;white-space:nowrap}
.v5-email-composer .v5-email-variable-wrap{gap:10px;padding:13px 14px;border:0;border-bottom:1px solid var(--border-default);border-radius:0;background:var(--surface-secondary)}.v5-email-composer .v5-email-variable-wrap>div:first-child strong{font-size:10.8px}.v5-email-composer .v5-email-variable-wrap>div:first-child small{font-size:9.2px}.v5-email-composer .v5-email-variables{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.v5-email-composer .v5-email-variables button{min-height:48px;padding:7px 9px;border-color:var(--border-default);border-radius:9px}.v5-email-composer .v5-email-variables button:hover{border-color:var(--brand-accent);background:var(--brand-accent-faint)}.v5-email-composer .v5-email-variables button:focus-visible{outline:2px solid var(--brand-accent);outline-offset:1px}.v5-email-message-field{display:block}.v5-email-composer .v5-email-template-body{display:block;width:100%;min-height:290px!important;padding:17px!important;border:0!important;border-radius:0;background:var(--surface-primary)!important;font-size:13px!important;line-height:1.68!important;box-shadow:none!important;outline-offset:-3px!important}
.v5-email-template-actions{padding-top:0}.v5-email-template-actions>button{min-height:34px;padding:6px 9px;border:1px solid var(--border-default);border-radius:8px;background:var(--surface-primary);color:var(--text-muted);text-decoration:none!important}.v5-email-template-actions>button:hover{border-color:var(--brand-accent);background:var(--brand-accent-faint);color:var(--brand-accent-strong)}
.v5-email-preview-stage{padding:16px;border:1px solid var(--border-default);border-radius:14px;background:var(--surface-primary)}.v5-email-preview-guide{display:flex;align-items:center;gap:10px;max-width:690px;margin:0 auto 12px;padding:9px 11px;border-radius:9px;background:var(--surface-primary)}.v5-email-preview-guide>span{flex:none;padding:4px 7px;border-radius:999px;background:var(--brand-accent-faint);color:var(--brand-accent-strong);font-size:8.5px;font-weight:900;text-transform:uppercase}.v5-email-preview-guide p{margin:0;color:var(--text-muted);font-size:9.3px;line-height:1.4}.v5-email-preview-stage .v5-email-device{max-width:690px;margin:0 auto}.v5-email-preview-stage .v5-email-preview>header{grid-template-columns:40px minmax(0,1fr);padding:15px 17px}.v5-email-preview-stage .v5-email-sender-avatar{width:40px;height:40px;font-size:10px!important}.v5-email-preview-stage .v5-email-preview header strong{font-size:12px}.v5-email-preview-stage .v5-email-preview header div>span{font-size:9.5px}.v5-email-preview-stage .v5-email-preview header small{font-size:9px}.v5-email-preview-stage .v5-email-preview-subject{padding:15px 17px 0}.v5-email-preview-stage .v5-email-preview-subject>strong{font-size:14px}.v5-email-preview-stage .v5-email-preview pre{min-height:210px;padding:17px;font-size:11.5px;line-height:1.7}.v5-email-preview-stage .v5-email-preview>button{min-height:38px;margin:0 17px 18px;padding:8px 15px;font-size:10.5px}.v5-email-preview-stage .v5-email-preview>footer{padding:11px 17px;font-size:8.5px}
@media(max-width:760px){.v5-email-builder-layout{gap:27px}.v5-email-preview-column{padding-top:23px}.v5-email-editor-shell{padding:13px}.v5-email-composer .v5-email-variables{grid-template-columns:repeat(2,minmax(0,1fr))}.v5-email-composer .v5-email-template-body{min-height:260px!important;padding:14px!important}.v5-email-preview-stage{padding:10px}.v5-email-preview-guide{align-items:flex-start;flex-direction:column;gap:6px}}
@media(max-width:430px){.v5-email-editor-summary{grid-template-columns:auto minmax(0,1fr)}.v5-email-safe-save{grid-column:1/-1}.v5-email-composer-head{align-items:flex-start;flex-direction:column}.v5-email-composer .v5-email-variables{grid-template-columns:1fr}.v5-email-template-actions{gap:9px}.v5-email-template-actions>button{width:100%}.v5-email-preview-stage{margin-inline:-3px;padding:7px}.v5-email-preview-guide{margin:2px 3px 9px}}

/* Customer detail information is grouped by purpose instead of presented as a loose metadata strip. */
.customer-v2-details{overflow:hidden;margin-bottom:25px;border:1px solid var(--border-default);border-radius:16px;background:var(--surface-primary);box-shadow:var(--shadow-xs)}
.customer-v2-contact-links{display:flex;align-items:center;gap:6px}.customer-v2-contact-links>button{max-width:100%;padding:2px 0;border:0;border-bottom:1px solid color-mix(in srgb,var(--brand-accent-strong) 42%,transparent);border-radius:0;background:transparent;color:var(--brand-accent-strong);font:inherit;cursor:pointer}.customer-v2-contact-links>button:hover{border-bottom-color:var(--brand-accent-strong);color:var(--text-primary)}.customer-v2-contact-links>button:focus-visible{outline:2px solid var(--brand-accent);outline-offset:3px;border-radius:2px}.customer-v2-contact-links>.is-missing{color:var(--text-subtle)}
.customer-v2-details-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 20px 17px;border-bottom:1px solid var(--border-subtle)}
.customer-v2-details-head>div{min-width:0}.customer-v2-details-head span,.customer-v2-summary>header span{display:block;margin-bottom:5px;color:var(--brand-accent-strong);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.customer-v2-details-head h2,.customer-v2-summary>header h2{margin:0;font:700 18px/1.2 var(--font-heading);letter-spacing:-.02em}.customer-v2-details-head p{margin:4px 0 0;color:var(--text-muted);font-size:11.5px;line-height:1.45}.customer-v2-details-head>.btn{flex:none}
.customer-v2-details-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(270px,.82fr);align-items:stretch;background:var(--surface-primary)}
.customer-v2-detail-group{min-width:0;padding:18px 20px 20px}.customer-v2-notes-group{border-left:1px solid var(--border-subtle);background:var(--surface-primary)}
.customer-v2-detail-group-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:11px}.customer-v2-detail-group-head strong{font-size:12.5px}.customer-v2-detail-group-head small{color:var(--text-subtle);font-size:9.5px;line-height:1.35;text-align:right}
.customer-v2-location-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.customer-v2-detail-item{position:relative;display:grid;align-content:start;gap:5px;min-height:112px;padding:14px 14px 13px 17px;overflow:hidden;border:1px solid var(--border-default);border-radius:11px;background:var(--surface-primary)}.customer-v2-detail-item:before{position:absolute;top:0;bottom:0;left:0;width:3px;background:var(--brand-accent);content:""}.customer-v2-detail-item>span{color:var(--text-subtle);font-size:8.5px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.customer-v2-detail-item>strong{font-size:12.5px;font-weight:700;line-height:1.48;white-space:pre-line}.customer-v2-detail-item>small{margin-top:auto;color:var(--text-muted);font-size:9px;line-height:1.4}.customer-v2-detail-item.is-empty{border-style:dashed;background:color-mix(in srgb,var(--surface-primary) 56%,transparent)}.customer-v2-detail-item.is-empty:before{background:var(--border-strong)}
.customer-v2-detail-item button,.customer-v2-notes-empty button{justify-self:start;margin-top:auto;padding:4px 0;border:0;background:transparent;color:var(--brand-accent-strong);font-size:10px;font-weight:850;cursor:pointer}.customer-v2-detail-item button:hover,.customer-v2-notes-empty button:hover{text-decoration:underline}
.customer-v2-notes-group>p{min-height:112px;margin:0;padding:14px;border:1px solid var(--border-subtle);border-radius:11px;background:var(--surface-primary);color:var(--text-primary);font-size:12px;line-height:1.6;white-space:pre-line}
.customer-v2-notes-empty{display:grid;align-content:start;gap:5px;min-height:112px;padding:14px;border:1px dashed var(--border-default);border-radius:11px;background:var(--surface-primary)}.customer-v2-notes-empty>strong{font-size:12px}.customer-v2-notes-empty>span{color:var(--text-muted);font-size:10px;line-height:1.45}
.customer-v2-summary{margin-bottom:25px}.customer-v2-summary>header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:11px;padding:0 2px}.customer-v2-summary>header>p{max-width:390px;margin:0;color:var(--text-muted);font-size:10.5px;line-height:1.45;text-align:right}.customer-v2-summary .customer-v2-metrics{margin-bottom:0}.customer-v2-summary .customer-v2-metrics>div{border-color:var(--border-default);box-shadow:var(--shadow-xs)}
@media(max-width:920px){.customer-v2-details-grid{grid-template-columns:1fr}.customer-v2-notes-group{border-top:1px solid var(--border-subtle);border-left:0}.customer-v2-summary>header{align-items:flex-start}.customer-v2-summary>header>p{max-width:330px}}
@media(max-width:640px){.customer-v2-details{margin-bottom:20px;border-radius:14px}.customer-v2-details-head{align-items:flex-start;padding:16px}.customer-v2-details-head p{display:none}.customer-v2-details-head>.btn{min-height:36px!important;padding-inline:10px!important}.customer-v2-detail-group{padding:16px}.customer-v2-detail-group-head{align-items:flex-start;flex-direction:column;gap:2px}.customer-v2-detail-group-head small{text-align:left}.customer-v2-location-list{grid-template-columns:1fr}.customer-v2-detail-item,.customer-v2-notes-group>p,.customer-v2-notes-empty{min-height:102px}.customer-v2-summary{margin-bottom:20px}.customer-v2-summary>header{display:block;padding:0}.customer-v2-summary>header>p{margin-top:4px;text-align:left}.customer-v2-summary .customer-v2-metrics{margin-bottom:0}}

/* Customer detail: reference-led refinement using the existing Invoice Flow tokens. */
.customer-v2{max-width:1120px;margin:0 auto;padding-top:6px}
.customer-v2-back{margin-bottom:25px;color:var(--brand-accent-strong);font-size:12.5px}.customer-v2-back:hover{color:var(--text-primary)}
.customer-v2-head{align-items:flex-start;margin-bottom:30px}.customer-v2-identity{align-items:center;gap:18px}.customer-v2-identity .customer-v2-avatar{width:70px;height:70px;border-radius:18px;background:var(--brand-accent-soft);color:var(--brand-accent-strong);font-size:20px}.customer-v2-identity h1{font-size:clamp(32px,3.4vw,43px);line-height:1.04}.customer-v2-identity .customers-v2-eyebrow{margin-bottom:6px;font-size:9.5px}
.customer-v2-contact-links{display:flex;align-items:center;flex-wrap:wrap;gap:7px 18px;margin-top:9px!important;overflow:visible!important;color:var(--text-secondary);white-space:normal!important}.customer-v2-contact-links>button,.customer-v2-contact-links>.is-missing{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:2px 0;border:0!important;background:transparent;color:var(--text-secondary);font-size:12.5px;line-height:1.35;text-decoration:none;cursor:pointer}.customer-v2-contact-links>button:hover{color:var(--brand-accent-strong)}.customer-v2-contact-icon{display:grid;place-items:center;flex:none;width:20px;height:20px;color:var(--brand-accent-strong);font-size:14px;font-weight:800}.customer-v2-contact-links>.is-missing{color:var(--text-subtle);cursor:default}
.customer-v2-actions{margin-top:7px}.customer-v2-actions>.btn{border-color:var(--border-default);background:var(--surface-primary);box-shadow:var(--shadow-xs)}.customer-v2-actions>.btn.primary{border:0;background:var(--action-primary)!important;color:var(--action-primary-text)!important;box-shadow:var(--shadow-medium)}.customer-v2-actions>.btn.primary:hover{background:var(--action-primary-hover)!important}.customer-v2-actions .icon-btn{background:var(--surface-primary)}
.customer-v2-info-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:30px;padding:3px 0}.customer-v2-info-item{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:12px;min-width:0;padding:7px 26px}.customer-v2-info-item:first-child{padding-left:0}.customer-v2-info-item+ .customer-v2-info-item{border-left:1px solid var(--border-default)}.customer-v2-info-item:last-child{padding-right:0}.customer-v2-info-icon{display:grid;place-items:center;width:32px;height:32px;color:var(--text-muted);font-size:21px;font-weight:700;line-height:1}.customer-v2-info-item>div{min-width:0}.customer-v2-info-item>div>span{display:block;margin-bottom:7px;color:var(--text-subtle);font-size:9.5px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.customer-v2-info-item strong{display:block;color:var(--text-secondary);font-size:12px;font-weight:600;line-height:1.65;white-space:pre-line}.customer-v2-info-item strong.is-missing{color:var(--text-subtle);font-style:normal}
.customer-v2-summary{margin:0 0 24px}.customer-v2-summary .customer-v2-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0}.customer-v2-summary .customer-v2-metrics>div{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:start;gap:15px;min-height:145px;padding:21px;border:1px solid var(--border-default);border-radius:14px;background:var(--surface-primary);box-shadow:var(--shadow-xs)}.customer-v2-summary .customer-v2-metrics>div.is-urgent{border:1px solid color-mix(in srgb,var(--status-error) 24%,var(--border-default));background:color-mix(in srgb,var(--status-error-bg) 72%,var(--card-bg));box-shadow:var(--shadow-low)}.customer-v2-metric-icon{display:grid!important;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--surface-secondary);color:var(--text-primary)!important;font-size:19px!important;font-weight:850!important;letter-spacing:0!important;line-height:1!important;text-transform:none!important}.customer-v2-metrics .is-paid .customer-v2-metric-icon{background:var(--brand-accent-soft);color:var(--brand-accent-strong)!important}.customer-v2-metrics .is-urgent .customer-v2-metric-icon{background:var(--status-error-bg);color:var(--status-error)!important}.customer-v2-metrics>div>div{display:grid;align-content:start;gap:5px;min-width:0}.customer-v2-metrics>div>div>span{color:var(--text-muted)!important;font-size:10px!important;font-weight:850!important;letter-spacing:.07em!important}.customer-v2-summary .customer-v2-metric-value{overflow:hidden;color:var(--text-primary)!important;font-size:27px!important;line-height:1.16!important;text-overflow:ellipsis;white-space:nowrap}.customer-v2-summary .is-paid .customer-v2-metric-value{color:var(--brand-accent-strong)!important}.customer-v2-summary .is-urgent .customer-v2-metric-value,.customer-v2-summary .is-urgent small{color:var(--status-error)!important}.customer-v2-summary .is-last .customer-v2-metric-value{font-size:18px!important;letter-spacing:-.015em}.customer-v2-metrics em{color:var(--text-muted);font-size:11px;font-style:normal;line-height:1.35}.customer-v2-summary .customer-v2-metrics small{align-self:auto;margin-top:6px;color:var(--text-muted);font-size:11px;font-weight:600;line-height:1.4}
.customer-v2-tabs{gap:13px;margin:0 0 20px;border-bottom-color:var(--border-default)}.customer-v2-tabs button{display:inline-flex;align-items:center;gap:8px;min-height:50px;padding:0 12px;color:var(--text-muted);font-size:12.5px}.customer-v2-tabs button>span{display:grid;place-items:center;width:19px;height:19px;color:currentColor;font-size:16px;font-weight:700}.customer-v2-tabs button:after{right:8px;left:8px;height:2px;background:var(--brand-accent-strong)}.customer-v2-tabs button.is-active{color:var(--brand-accent-strong)}
.customer-v2-overview{display:grid;gap:16px}.customer-v2-section-card{overflow:hidden;border:1px solid var(--border-default);border-radius:14px;background:var(--surface-primary);box-shadow:var(--shadow-xs)}.customer-v2-card-head{padding:18px 20px;border-bottom:1px solid var(--border-subtle)}.customer-v2-section-title{display:flex;align-items:center;gap:12px;min-width:0}.customer-v2-section-icon{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:50%;background:var(--brand-accent-soft);color:var(--brand-accent-strong);font-size:17px;font-weight:850}.customer-v2-section-title>div{min-width:0}.customer-v2-section-title h2{font-size:18px}.customer-v2-section-title p{font-size:11px}.customer-v2-card-head>.btn{border-color:color-mix(in srgb,var(--brand-accent) 48%,var(--border-default));background:var(--surface-primary);color:var(--brand-accent-strong);box-shadow:none}.customer-v2-card-head>.btn:hover{background:var(--brand-accent-faint)}
.customer-v2-section-card .customer-v2-open-items,.customer-v2-section-card .customer-v2-estimates{border-top:0}.customer-v2-section-card .customer-v2-open-row{grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:16px 20px;border-bottom:1px solid var(--border-subtle);background:var(--surface-primary)}.customer-v2-section-card .customer-v2-open-row:last-child{border-bottom:0}.customer-v2-section-card .customer-v2-open-main{display:flex;align-items:center;gap:9px;min-width:0}.customer-v2-open-main>strong:before,.customer-v2-open-main>small:before{margin-right:9px;color:var(--border-strong);content:"·"}.customer-v2-open-main small{min-width:0}.customer-v2-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:17px}.customer-v2-row-actions>strong{font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.customer-v2-row-actions .customer-v2-text-action{white-space:nowrap}.customer-v2-chevron{display:grid;place-items:center;width:18px;color:var(--text-muted);font-size:23px;font-weight:500;line-height:1}
.customer-v2-section-card .customer-v2-estimates>button{grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:16px 20px;border-bottom:1px solid var(--border-subtle)}.customer-v2-section-card .customer-v2-estimates>button:last-child{border-bottom:0}.customer-v2-estimate-actions{display:flex!important;align-items:center;justify-content:flex-end;gap:16px}.customer-v2-estimate-actions>strong{font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.customer-v2-estimate-actions .customers-v2-health{display:inline-flex}
@media(max-width:960px){.customer-v2-info-item{padding-inline:18px}.customer-v2-summary .customer-v2-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-v2-summary .customer-v2-metrics>div:last-child{grid-column:1/-1}.customer-v2-summary .is-last{grid-template-columns:48px minmax(0,1fr)}}
@media(max-width:760px){.customer-v2-head{display:grid;gap:18px}.customer-v2-actions{width:100%;margin-top:0}.customer-v2-actions>.btn:not(.icon-btn){flex:1}.customer-v2-info-row{grid-template-columns:1fr;margin-bottom:24px}.customer-v2-info-item,.customer-v2-info-item:first-child,.customer-v2-info-item:last-child{padding:14px 0}.customer-v2-info-item+ .customer-v2-info-item{border-top:1px solid var(--border-subtle);border-left:0}.customer-v2-summary .customer-v2-metrics{grid-template-columns:1fr}.customer-v2-summary .customer-v2-metrics>div,.customer-v2-summary .customer-v2-metrics>div:last-child{grid-column:auto;min-height:118px}.customer-v2-tabs{overflow-x:auto}.customer-v2-section-card .customer-v2-open-row{grid-template-columns:1fr;gap:12px}.customer-v2-row-actions{justify-content:flex-start}.customer-v2-card-head{padding:16px}.customer-v2-section-card .customer-v2-estimates>button{padding:15px 16px}}
@media(max-width:520px){.customer-v2{padding-top:1px}.customer-v2-back{margin-bottom:19px}.customer-v2-identity{align-items:flex-start;gap:12px}.customer-v2-identity .customer-v2-avatar{width:56px;height:56px;border-radius:15px;font-size:16px}.customer-v2-identity h1{font-size:29px}.customer-v2-contact-links{align-items:flex-start;flex-direction:column;gap:5px}.customer-v2-actions{display:grid;grid-template-columns:1fr 1fr auto}.customer-v2-actions>.btn:not(.icon-btn){width:100%;padding-inline:10px}.customer-v2-summary .customer-v2-metrics>div{grid-template-columns:42px minmax(0,1fr);gap:12px;padding:17px}.customer-v2-metric-icon{width:42px;height:42px}.customer-v2-summary .customer-v2-metric-value{font-size:24px!important}.customer-v2-tabs{justify-content:initial}.customer-v2-tabs button{flex:0 0 auto;min-width:96px}.customer-v2-card-head{align-items:flex-start}.customer-v2-card-head>.btn{flex:none}.customer-v2-section-icon{width:34px;height:34px}.customer-v2-section-title{gap:10px}.customer-v2-section-card .customer-v2-open-main{align-items:flex-start;flex-wrap:wrap}.customer-v2-open-main>strong:before{display:none}.customer-v2-open-main>small{flex-basis:100%}.customer-v2-open-main>small:before{display:none}.customer-v2-row-actions{display:grid;grid-template-columns:1fr auto auto;width:100%;gap:12px}.customer-v2-estimate-actions{gap:10px}.customer-v2-estimate-actions .customers-v2-health{display:none}.customer-v2-section-card .customer-v2-estimates>button{gap:10px}}

/* App-wide consistency pass: carry the Customer Detail visual grammar through every workspace page. */
.content:not(.ib3-takeover){max-width:1176px!important;padding:30px 28px 38px!important}.customers-v2,.customer-v2,.v5-settings-page{width:100%;max-width:1120px;margin-inline:auto}
.workspace-toolbar--list{min-height:70px!important;margin-bottom:22px!important;padding:0 2px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important}.workspace-toolbar--list .workspace-toolbar-title{font:700 clamp(30px,3vw,38px)/1.08 var(--font-heading)!important;letter-spacing:-.04em!important}.workspace-toolbar--list .workspace-toolbar-subtitle{margin-top:6px!important;font-size:12.5px!important}.workspace-toolbar--list .workspace-toolbar-actions>button,.workspace-toolbar--collection>.v3-primary-button{min-height:42px!important;border-radius:10px!important}.workspace-toolbar--list .workspace-toolbar-actions>button:not(.v3-primary-button){border-color:var(--border-default)!important;background:var(--surface-primary)!important;box-shadow:var(--shadow-xs)}.workspace-toolbar--collection .workspace-toolbar-view{margin-left:auto!important;border-radius:10px;background:var(--surface-primary);box-shadow:var(--shadow-xs)}
.v3-toolbar{gap:9px!important;margin-bottom:18px!important}.v3-filter-menu{min-width:176px}.v3-filter-trigger{min-height:48px;padding:7px 10px 7px 12px;border-radius:10px!important;background:var(--surface-primary);box-shadow:var(--shadow-xs)}.v3-filter-label{font-size:8.5px}.v3-filter-value{font-size:12.5px;line-height:20px}.v3-filter-popover{border-radius:11px!important;box-shadow:var(--shadow-high)}.v3-results-count{font-size:11.5px!important}
.v5-dashboard-stats{gap:14px!important}.v5-dashboard-stat{display:grid;align-content:start;min-height:132px;padding:19px!important;border-color:var(--border-default)!important;border-radius:14px!important;background:var(--surface-primary)!important;box-shadow:var(--shadow-xs)}.v5-dashboard-stat>div:first-child{font-size:10px!important;font-weight:var(--label-weight)!important;letter-spacing:.07em;text-transform:uppercase}.v5-dashboard-stat>div:nth-child(2){margin-top:9px!important;font-family:var(--font-heading);font-size:27px!important;line-height:1.15}.v5-dashboard-stat>div:last-child{margin-top:5px!important;font-size:11px!important;line-height:1.4}.v5-dashboard-columns{gap:16px!important;margin-top:22px!important}.v5-dashboard-panel{overflow:hidden!important;border-color:var(--border-default)!important;border-radius:14px!important;background:var(--surface-primary)!important;box-shadow:var(--shadow-xs)}.v5-dashboard-panel-head{min-height:58px;padding:18px 19px!important;border-bottom-color:var(--border-subtle)!important;font:var(--heading-weight) 17px/1.25 var(--font-heading)!important;letter-spacing:-.015em}.v5-dashboard-row{min-height:64px;padding:14px 19px!important;border-bottom-color:var(--border-subtle)!important}.v5-dashboard-row:last-child{border-bottom:0!important}
.v5-record-grid,.v3-products-grid{gap:14px!important}.v5-record-card,.v3-product-card{min-height:184px;padding:18px!important;border-color:var(--border-default)!important;border-radius:14px!important;background:var(--surface-primary)!important;box-shadow:var(--shadow-xs)}.v5-record-card>div:first-child>div:first-child{font-weight:800!important}.v5-record-list,.v3-products-list{overflow:hidden;border-color:var(--border-default)!important;border-radius:14px!important;background:var(--surface-primary)!important;box-shadow:var(--shadow-xs)}.v5-record-row,.v3-product-list-row{min-height:72px;padding:15px 18px!important;border-bottom-color:var(--border-subtle)!important}.v5-record-row:last-child,.v3-product-list-row:last-child{border-bottom:0!important}.v5-record-row:hover,.v3-product-list-row:hover{background:var(--brand-accent-faint)!important}.v3-product-card{box-shadow:var(--shadow-xs)}
.customers-v2{padding-top:6px}.customers-v2-head{margin-bottom:25px}.customers-v2-list,.customers-v2-card,.customer-v2-pane,.customer-v2-section-card,.v5-settings-panel{border-radius:14px!important;border-color:var(--border-default)!important;box-shadow:var(--shadow-xs)}.customers-v2-list{overflow:hidden}.customers-v2-row{min-height:70px;padding:15px 18px}.customers-v2-search{height:44px;border-radius:11px;box-shadow:var(--shadow-xs)}.customers-v2-filters{border-radius:11px;background:var(--surface-primary);box-shadow:var(--shadow-xs)}
.v5-settings-hero{min-height:70px;margin-bottom:20px;padding-bottom:16px}.v5-settings-hero h1{font-size:clamp(30px,3vw,38px)}.v5-settings-layout{gap:20px}.v5-settings-nav{border-radius:14px;background:var(--surface-primary)}.v5-settings-panel-head{padding-top:22px;background:var(--surface-primary)}.v5-settings-panel{border-radius:14px!important}.v5-settings-group{padding-top:22px;padding-bottom:22px}
@media(max-width:760px){.content:not(.ib3-takeover){padding:20px 14px 96px!important}.workspace-toolbar--list{min-height:0!important;margin-bottom:18px!important;padding:0!important}.workspace-toolbar--list .workspace-toolbar-title{font-size:28px!important}.workspace-toolbar--collection{display:flex!important;gap:8px!important}.workspace-toolbar--collection .workspace-toolbar-title{flex:1;min-width:0}.workspace-toolbar--collection>.v3-primary-button{flex:none}.v5-dashboard-head{display:grid!important}.v5-dashboard-head .workspace-toolbar-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-left:0!important}.v5-dashboard-head .workspace-toolbar-actions>button{width:100%;min-width:0;padding-inline:10px!important}.v5-dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.v5-dashboard-columns{display:grid!important;grid-template-columns:1fr}.v5-dashboard-panel{min-width:0!important;width:100%}.v3-filter-trigger{min-height:46px}.v5-record-grid,.v3-products-grid{grid-template-columns:1fr!important}.v5-record-row,.v3-product-list-row{padding-inline:15px!important}.customers-v2{padding-top:0}.customers-v2-head{margin-bottom:18px}.v5-settings-hero h1{font-size:28px}}
@media(max-width:430px){.workspace-toolbar--list .workspace-toolbar-title{font-size:25px!important}.workspace-toolbar--collection .workspace-toolbar-view{order:2}.workspace-toolbar--collection>.v3-primary-button{order:3}.v5-dashboard-head .workspace-toolbar-actions{grid-template-columns:1fr}.v5-dashboard-stats{grid-template-columns:1fr!important}.v5-dashboard-stat{min-height:112px}.v5-dashboard-row{align-items:flex-start!important;flex-wrap:wrap}.v5-dashboard-row>div:nth-last-child(-n+2){margin-left:auto}.v5-record-card{min-height:168px}.v5-record-row{gap:7px 10px!important}}
@media print{.content:not(.ib3-takeover){max-width:none!important;padding:0!important}}

/* Narrow workspace rule: toolbars use at most two deliberate rows before the phone layout takes over. */
@media (min-width:761px) and (max-width:1080px){
  .workspace-toolbar--document{display:grid!important;grid-template-columns:auto minmax(92px,1fr) auto minmax(0,auto);align-items:center!important;gap:7px 10px!important;min-height:0!important;padding:10px 12px!important;flex-wrap:nowrap!important}
  .workspace-toolbar--document .workspace-toolbar-back{grid-column:1;grid-row:1}.workspace-toolbar--document .workspace-toolbar-divider{display:none!important}.workspace-toolbar--document .workspace-document-number{grid-column:2;grid-row:1;min-width:0;margin:0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-toolbar--document .workspace-document-status{grid-column:3;grid-row:1;white-space:nowrap}.workspace-toolbar--document .workspace-document-due{grid-column:4;grid-row:1;min-width:0;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}
  .workspace-toolbar--document .workspace-document-actions{grid-column:1/-1;grid-row:2;display:flex!important;justify-content:flex-end!important;width:100%;min-width:0;margin:0!important;padding-top:8px;border-top:1px solid var(--border-subtle);flex-wrap:nowrap!important}.workspace-toolbar--document .workspace-document-action:not(.v3-primary-button){display:none!important}.workspace-toolbar--document .workspace-document-action.v3-primary-button{flex:none;min-height:40px!important;padding:8px 13px!important}.workspace-toolbar--document .v5-doc-more{display:block!important;flex:none}.workspace-toolbar--document .v5-doc-more-trigger{min-height:40px!important;padding:8px 12px!important}.workspace-toolbar--document .v5-doc-more-mobile-only{display:flex!important}
  .content.ib3-takeover .ib3-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;height:auto!important;min-height:0!important;padding:8px 14px!important;gap:8px 12px!important}.content.ib3-takeover .ib3-toolbar-left{grid-column:1;grid-row:1;min-width:0}.content.ib3-takeover .ib3-toolbar-spacer{display:none!important}.content.ib3-takeover .ib3-toolbar>.ib3-segwrap{grid-column:2;grid-row:1}.content.ib3-takeover .ib3-toolbar-actions{grid-column:1/-1;grid-row:2;display:flex!important;justify-content:flex-end;width:100%;padding-top:8px;border-top:1px solid var(--border-subtle);flex-wrap:nowrap!important}
  .v5-dashboard-head,.customer-v2-head,.customers-v2-head{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important}.v5-dashboard-head .workspace-toolbar-actions{display:flex!important;width:100%;margin-left:0!important;overflow-x:auto;overscroll-behavior-x:contain;flex-wrap:nowrap!important;scrollbar-width:none}.v5-dashboard-head .workspace-toolbar-actions::-webkit-scrollbar{display:none}.v5-dashboard-head .workspace-toolbar-actions>button{flex:0 0 auto}.customer-v2-actions,.customers-v2-header-actions{justify-self:end;flex-wrap:nowrap!important}
  .workspace-toolbar--collection{display:flex!important;align-items:center!important;gap:8px!important;flex-direction:row!important;flex-wrap:nowrap!important}.workspace-toolbar--collection .workspace-toolbar-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-toolbar--collection .workspace-toolbar-view,.workspace-toolbar--collection>.v3-primary-button{flex:none}
}
@media (min-width:761px) and (max-width:900px){.workspace-toolbar--document{grid-template-columns:auto minmax(92px,1fr) auto}.workspace-toolbar--document .workspace-document-due{display:none!important}.content.ib3-takeover .ib3-topbar-title,.content.ib3-takeover .ib3-topbar-pill{display:none!important}}
@media (max-width:760px){
  .v5-dashboard-head{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}.v5-dashboard-head .workspace-toolbar-actions{display:flex!important;width:100%;margin-left:0!important;overflow-x:auto;overscroll-behavior-x:contain;flex-wrap:nowrap!important;scrollbar-width:none}.v5-dashboard-head .workspace-toolbar-actions::-webkit-scrollbar{display:none}.v5-dashboard-head .workspace-toolbar-actions>button{flex:0 0 auto!important;width:auto!important;min-width:max-content}
  .customers-v2-head{display:grid!important;grid-template-columns:minmax(0,1fr)!important}.customers-v2-header-actions{justify-self:stretch;flex-wrap:nowrap!important}.customers-v2-header-actions>.customers-v2-new{flex:1}.customer-v2-actions{flex-wrap:nowrap!important}
  .v3-toolbar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important}.v3-toolbar>.v3-filter-menu{width:auto!important;min-width:0!important;flex:none!important}.v3-toolbar>.v3-results-count{grid-column:1/-1;margin:2px 0 0!important}
  .workspace-toolbar--collection{flex-wrap:nowrap!important}.workspace-toolbar--collection .workspace-toolbar-title{min-width:0}.workspace-toolbar--collection .workspace-toolbar-view,.workspace-toolbar--collection>.v3-primary-button{flex:none!important}
}
@media(max-width:430px){.v3-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))!important}.v3-toolbar>.v3-results-count{grid-column:1/-1}.customers-v2-header-actions{justify-self:stretch}.customers-v2-header-actions .workspace-toolbar-view{flex:none}.customer-v2-actions{min-width:0}}

/* Customer tabs use one coherent set of lightweight interface icons. */
.customer-v2-tabs .customer-v2-tab-icon{position:relative;display:block;width:19px;height:19px;flex:none;color:currentColor;font-size:0}
.customer-v2-tab-icon.is-overview:before{position:absolute;inset:2px 1px 2px 2px;border-bottom:1.7px solid currentColor;border-left:1.7px solid currentColor;border-radius:0 0 0 2px;content:""}.customer-v2-tab-icon.is-overview:after{position:absolute;top:5px;left:6px;width:11px;height:7px;border-top:1.8px solid currentColor;border-right:1.8px solid currentColor;content:"";transform:skewY(-28deg) rotate(-7deg);transform-origin:center}
.customer-v2-tab-icon.is-payments{height:15px;margin-block:2px;border:1.7px solid currentColor;border-radius:3px}.customer-v2-tab-icon.is-payments:before{position:absolute;top:4px;right:0;left:0;height:1.7px;background:currentColor;content:""}.customer-v2-tab-icon.is-payments:after{position:absolute;bottom:2px;left:3px;width:5px;height:1.7px;border-radius:2px;background:currentColor;content:""}
.customer-v2-tab-icon.is-activity{width:18px;height:18px;margin:.5px;border:1.7px solid currentColor;border-radius:50%}.customer-v2-tab-icon.is-activity:before{position:absolute;top:3px;left:7px;width:1.7px;height:5px;border-radius:2px;background:currentColor;content:""}.customer-v2-tab-icon.is-activity:after{position:absolute;top:7px;left:7px;width:5px;height:1.7px;border-radius:2px;background:currentColor;content:"";transform:rotate(28deg);transform-origin:left center}

/* Customer information icons match the tab icon stroke and geometry. */
.customer-v2-info-icon{position:relative;display:block;width:32px;height:32px;color:var(--text-muted);font-size:0}
.customer-v2-info-icon.is-billing:before{position:absolute;top:5px;left:9px;width:13px;height:13px;border:1.7px solid currentColor;border-radius:50% 50% 50% 0;content:"";transform:rotate(-45deg)}.customer-v2-info-icon.is-billing:after{position:absolute;top:9px;left:13px;width:5px;height:5px;border:1.5px solid currentColor;border-radius:50%;content:""}
.customer-v2-info-icon.is-project:before{position:absolute;top:5px;left:7px;width:17px;height:20px;border:1.7px solid currentColor;border-radius:2px;background:linear-gradient(currentColor,currentColor) center bottom/5px 6px no-repeat;content:""}.customer-v2-info-icon.is-project:after{position:absolute;top:9px;left:11px;width:2.5px;height:2.5px;border-radius:.5px;background:currentColor;box-shadow:6px 0 currentColor,0 5px currentColor,6px 5px currentColor;content:""}
.customer-v2-info-icon.is-notes:before{position:absolute;top:5px;left:7px;width:17px;height:21px;border:1.7px solid currentColor;border-radius:3px;background:linear-gradient(currentColor,currentColor) center 3px/7px 1.7px no-repeat;content:""}.customer-v2-info-icon.is-notes:after{position:absolute;top:12px;left:11px;width:9px;height:1.7px;border-radius:2px;background:currentColor;box-shadow:0 4px currentColor,0 8px currentColor;content:""}

/* Financial totals are the dominant content in the first two summary cards. */
.customer-v2-summary .customer-v2-metrics>div.is-paid .customer-v2-metric-value,
.customer-v2-summary .customer-v2-metrics>div.is-urgent .customer-v2-metric-value{
  display:block;
  overflow:visible;
  font-size:22px!important;
  line-height:1!important;
  letter-spacing:-.055em;
  text-overflow:clip
}
.customer-v2-summary .customer-v2-metric-value>.sc-interp{
  color:inherit!important;
  font-family:inherit!important;
  font-size:inherit!important;
  font-weight:inherit!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
  text-transform:none!important
}

/* Receipt actions use the same comfortable control scale as the rest of the app. */
.v5-receipt-wrap{width:100%;container-type:inline-size}
.v5-receipt-actions{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin-top:16px;
  white-space:nowrap
}
.v5-receipt-action{
  min-height:42px!important;
  padding:10px 13px!important;
  border:1px solid var(--border-default)!important;
  border-radius:10px!important;
  background:var(--surface-primary)!important;
  color:var(--text-primary)!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1!important;
  box-shadow:none!important;
  cursor:pointer
}
.v5-receipt-action.v3-primary-button{
  border-color:var(--text-primary)!important;
  background:var(--text-primary)!important;
  color:var(--action-primary-text)!important
}
.v5-receipt-action.is-danger{
  border-color:color-mix(in srgb,var(--status-error) 28%,var(--border-default))!important;
  color:var(--status-error)!important
}
.v5-receipt-action:hover{border-color:color-mix(in srgb,var(--brand-accent) 42%,var(--border-default))!important;background:var(--surface-secondary)!important}
.v5-receipt-action.v3-primary-button:hover{background:var(--action-primary-hover)!important}
.v5-receipt-action.is-danger:hover{border-color:color-mix(in srgb,var(--status-error) 42%,var(--border-default))!important;background:var(--status-error-bg)!important}
@container (max-width:540px){
  .v5-receipt-actions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;white-space:normal}
  .v5-receipt-action{width:100%;min-width:0;padding-inline:10px!important}
  .v5-receipt-action:nth-child(-n+2){grid-column:span 3}
  .v5-receipt-action:nth-child(n+3){grid-column:span 2}
}
@media(max-width:620px){
  .v5-receipt-actions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;white-space:normal}
  .v5-receipt-action{width:100%;min-width:0;padding-inline:10px!important}
  .v5-receipt-action:nth-child(-n+2){grid-column:span 3}
  .v5-receipt-action:nth-child(n+3){grid-column:span 2}
}
