:root {
  --ink: #17132f;
  --muted: #7b7392;
  --line: rgba(118, 92, 172, .14);
  --line-strong: rgba(118, 92, 172, .25);
  --panel: #ffffff;
  --bg: #f8f5ff;
  --nav: #f3edff;
  --brand: #8f62d9;
  --brand-dark: #7048bd;
  --brand-soft: rgba(143, 98, 217, .12);
  --good: #24a469;
  --warn: #e58d34;
  --bad: #d04465;
  --accent: #f05ac6;
  --accent-blue: #37a3e8;
  --radius: 8px;
  --shadow: 0 14px 34px rgba(80, 54, 140, .08);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; text-size-adjust: 100%; -webkit-text-size-adjust: 100%; }
body { margin: 0; color: var(--ink); background: linear-gradient(135deg, #fbfaff 0%, #f5efff 48%, #f8f7fb 100%); font: 14px/1.5 Inter, ui-sans-serif, system-ui, -apple-system, sans-serif; }
button, input, select, textarea { font: inherit; }
input, select, textarea { font-size: 13px; font-weight: 400; }
button, .button-link { min-height: 34px; cursor: pointer; border: 1px solid var(--line-strong); border-radius: 7px; background: #ffffff; color: var(--ink); padding: 6px 10px; text-decoration: none; transition: border-color .18s, transform .18s, box-shadow .18s, background .18s; }
button:hover, .button-link:hover { border-color: rgba(143, 98, 217, .58); box-shadow: 0 8px 20px rgba(80, 54, 140, .12); transform: translateY(-1px); }
button:focus-visible, .button-link:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, [contenteditable]:focus-visible { outline: 3px solid rgba(98, 91, 246, .22); outline-offset: 2px; }
button:disabled { cursor: not-allowed; opacity: .45; transform: none; box-shadow: none; }
.primary { border-color: var(--brand); background: linear-gradient(135deg, #a983e8, var(--brand-dark)); color: #ffffff; font-weight: 750; }
.primary:hover { border-color: var(--brand-dark); background: var(--brand-dark); }
button[type="submit"], button[id^="save-"], button[id$="-save"], button[data-save-lookup], button[data-update-question], button[data-update-answer], button[data-update-variant], button[data-update-experiment], button[data-update-advertorial], button[data-update-field] { border-color: #1f7ae0; background: #1f7ae0; color: #ffffff; font-weight: 750; }
button[type="submit"]:hover, button[id^="save-"]:hover, button[id$="-save"]:hover, button[data-save-lookup]:hover, button[data-update-question]:hover, button[data-update-answer]:hover, button[data-update-variant]:hover, button[data-update-experiment]:hover, button[data-update-advertorial]:hover, button[data-update-field]:hover { border-color: #155fba; background: #155fba; }
button.danger { border-color: #d92d20; background: #d92d20; color: #ffffff; font-weight: 750; }
button.danger:hover { border-color: #b42318; background: #b42318; }
button[type="submit"].danger, button[data-cancel-edit-lookup], button[data-close-dialog], button[data-close-user-dialog], button[data-close-password-dialog], button[data-close-security-dialog], button[data-close-changes-dialog], button[data-close-lead-dialog], button[data-close-campaign-clone-dialog], button[data-close-campaign-edit-dialog], button[data-close-campaign-delete-dialog], button[data-close-campaign-lander-reassign], button[data-close-campaign-lander-unassign], button[data-close-source-edit-dialog], #close-customizer { border-color: #d92d20; background: #d92d20; color: #ffffff; font-weight: 750; }
button[type="submit"].danger:hover, button[data-cancel-edit-lookup]:hover, button[data-close-dialog]:hover, button[data-close-user-dialog]:hover, button[data-close-password-dialog]:hover, button[data-close-security-dialog]:hover, button[data-close-changes-dialog]:hover, button[data-close-lead-dialog]:hover, button[data-close-campaign-clone-dialog]:hover, button[data-close-campaign-edit-dialog]:hover, button[data-close-campaign-delete-dialog]:hover, button[data-close-campaign-lander-reassign]:hover, button[data-close-campaign-lander-unassign]:hover, button[data-close-source-edit-dialog]:hover, #close-customizer:hover { border-color: #b42318; background: #b42318; }
button[data-loading="true"] { display: inline-flex; align-items: center; justify-content: center; gap: 8px; opacity: .85; }
.button-spinner { width: 14px; height: 14px; border: 2px solid rgba(255, 255, 255, .45); border-top-color: #ffffff; border-radius: 999px; animation: spin .75s linear infinite; }
.text-button { min-height: auto; border: 0; background: transparent; padding: 5px; color: inherit; box-shadow: none; }
.hidden { display: none !important; }
.muted, .field-help { color: var(--muted); }
.field-help { margin: 3px 0 8px; }
.error { min-height: 20px; color: var(--bad); }
#login-error { margin: 12px 0 0; padding: 10px 14px; font-size: 13px; font-weight: 500; background: rgba(255, 107, 125, .12); border: 1px solid rgba(255, 107, 125, .45); border-radius: 8px; opacity: 0; max-height: 0; overflow: hidden; transition: opacity .25s, max-height .25s, margin .25s, padding .25s; }
#login-error.show { opacity: 1; max-height: 60px; }
.eyebrow, .step-label { margin: 0; color: var(--brand); font-size: 10px; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }

.auth-loading #login-view, .auth-loading #admin-view { display: none !important; }
body:not(.auth-loading) #boot-view { display: none !important; }
.boot-shell { display: grid; min-height: 100vh; place-items: center; padding: 24px; background: linear-gradient(135deg, #fbfaff, #f0e7ff 58%, #ffffff); }
.boot-card { display: flex; align-items: center; gap: 12px; padding: 18px 22px; color: var(--brand-dark); border: 1px solid var(--line); border-radius: 8px; background: rgba(255, 255, 255, .92); box-shadow: var(--shadow); }
.boot-card span { width: 12px; height: 12px; border-radius: 999px; background: var(--brand); animation: pulse 1s infinite; }

.login-shell { display: grid; min-height: 100vh; place-items: center; padding: 24px; background: linear-gradient(135deg, #fbfaff, #f0e7ff 58%, #ffffff); }
.login-card { width: min(430px, 100%); padding: 40px; background: rgba(255, 255, 255, .96); border: 1px solid var(--line); border-radius: 12px; box-shadow: 0 28px 80px rgba(80, 54, 140, .14); backdrop-filter: blur(16px); }
.login-card h1 { margin: 6px 0; font-size: 30px; letter-spacing: 0; }
.login-card label { display: grid; gap: 7px; margin: 18px 0; font-weight: 700; }
.login-card input { width: 100%; padding: 12px; border: 1px solid var(--line-strong); border-radius: 8px; }
.dialog-form label:not(.checkbox-line) { display: grid; gap: 5px; margin: 0; font-weight: 700; }
.dialog-form input, .dialog-form select { width: 100%; padding: 7px 9px; border: 1px solid var(--line-strong); border-radius: 7px; }
.dialog-form input[type="checkbox"], .dialog-form input[type="radio"] { width: auto; padding: 0; }
.dialog-form > label:not(.checkbox-line), .dialog-form > label.checkbox-line { margin-top: 8px; }
.login-card .primary { width: 100%; margin-top: 8px; }
.login-card .text-button { width: 100%; margin-top: 10px; }
.two-factor-qr { display: block; width: 220px; height: 220px; margin: 16px auto; border: 1px solid var(--line); }
.two-factor-secret { display: block; padding: 12px; text-align: center; overflow-wrap: anywhere; background: #f7f4fc; border-radius: 6px; }
#recovery-code-list { padding: 14px; columns: 2; line-height: 1.8; background: #f7f4fc; border: 1px solid var(--line); border-radius: 6px; }

.app-shell { display: grid; width: 100%; min-width: 0; grid-template-columns: 224px minmax(0, 1fr); min-height: 100vh; }
.sidebar { position: sticky; top: 0; display: flex; min-width: 0; height: 100vh; flex-direction: column; padding: 16px 12px; background: linear-gradient(180deg, #f5efff, #ffffff); color: #605777; border-right: 1px solid var(--line); }
.brand { display: flex; align-items: baseline; gap: 7px; margin: 0 8px 16px; color: var(--brand-dark); font-size: 22px; font-weight: 900; letter-spacing: 0; }
.brand small { color: #9489aa; font-size: 12px; letter-spacing: 0; }
.sidebar nav { display: grid; gap: 3px; }
.nav-button { display: flex; align-items: center; gap: 9px; border: 0; background: transparent; color: inherit; text-align: left; padding: 7px 10px; }
.nav-button span { display: grid; width: 23px; height: 23px; place-items: center; border-radius: 7px; color: #9d86c7; }
.nav-button:hover, .nav-button.active { background: #eee4ff; color: var(--brand-dark); box-shadow: none; transform: none; }
.nav-button.active span { background: var(--brand); color: #fff; }
.sidebar-footer { display: flex; justify-content: space-between; align-items: center; margin-top: auto; padding: 10px 8px 0; color: #7b7392; border-top: 1px solid var(--line); }
.signed-in-user, .user-identity { display: flex; min-width: 0; align-items: center; gap: 9px; }
.signed-in-user #user-name { max-width: 88px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.user-avatar { display: inline-grid; width: 32px; height: 32px; flex: 0 0 32px; place-items: center; overflow: hidden; border-radius: 50%; background: var(--brand-soft) center / cover no-repeat; color: var(--brand-dark); font-size: 11px; font-weight: 800; }
img.user-avatar { object-fit: cover; }
.user-avatar-large { width: 64px; height: 64px; flex-basis: 64px; font-size: 18px; }
.user-photo-editor { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px; align-items: center; }
.user-photo-editor .field-help { display: block; margin: 3px 0 0; }
.user-photo-editor .text-button { color: var(--bad); }

.workspace { min-width: 0; padding: 18px 22px 40px; }
.topbar, .panel-heading, .toolbar, .editor-top, .dialog-actions, .modal-header, .modal-footer, .section-heading-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.topbar { margin-bottom: 14px; }
.topbar h1 { margin: 2px 0; font-size: 24px; letter-spacing: 0; }
.panel { margin-bottom: 14px; padding: 14px; background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); }
.panel > .panel-heading:first-child { margin: -14px -14px 14px; padding: 10px 12px; border-bottom: 1px solid rgba(118, 92, 172, .16); border-radius: var(--radius) var(--radius) 0 0; background: #f6f1ff; }
.panel > .panel-heading:first-child .field-help { margin-bottom: 0; }
.panel h2, .welcome-panel h2 { margin: 0; font-size: 17px; letter-spacing: 0; }
.panel h3 { margin-top: 0; }
.welcome-panel { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 14px; padding: 16px 18px; overflow: hidden; border: 1px solid rgba(143, 98, 217, .16); border-radius: 8px; background: linear-gradient(125deg, #a983e8, #8f62d9 58%, #f05ac6); color: #ffffff; }
.welcome-panel .muted, .welcome-panel .field-help, .welcome-panel p:not(.eyebrow) { color: rgba(255, 255, 255, .78); }
.welcome-panel p:not(.eyebrow) { margin-bottom: 0; }
.quick-create { display: flex; gap: 8px; }
.quick-create input { min-width: 250px; padding: 11px 13px; border: 1px solid var(--line-strong); border-radius: 8px; }

.metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
.metric { position: relative; overflow: hidden; padding: 14px; border: 1px solid var(--line); border-radius: var(--radius); background: #ffffff; box-shadow: var(--shadow); }
.metric::after { position: absolute; right: 0; bottom: 0; width: 90px; height: 4px; background: linear-gradient(90deg, var(--brand), var(--accent), var(--accent-blue)); content: ''; }
.metric strong { display: block; font-size: 25px; letter-spacing: 0; }
.metric span { color: var(--muted); }
.compact-grid { grid-template-columns: repeat(4, minmax(140px, 1fr)); }
.compact-grid .metric { padding: 16px; }
.compact-grid .metric strong { font-size: 24px; }
.campaign-workspace-hero .panel-heading > div:first-child { display: grid; gap: 4px; }
.campaign-workspace-hero { padding-bottom: 0; }
.campaign-workspace-hero > .panel-heading:first-child { margin-bottom: 0; }
.campaign-workspace-hero #back-from-campaign-workspace { justify-self: start; margin-bottom: 8px; }
.campaign-workspace-tabs { position: sticky; top: 0; z-index: 5; padding-top: 5px; background: var(--bg); }
.campaign-workspace-panel { min-height: 260px; }
.campaign-workspace-journey { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.campaign-workspace-stage { display: grid; min-width: 0; gap: 5px; padding: 16px; border: 1px solid var(--line); border-top: 4px solid var(--bad); border-radius: var(--radius); background: #fff; }
.campaign-workspace-stage.ready { border-top-color: var(--good); }
.campaign-workspace-stage span, .campaign-workspace-stage small { color: var(--muted); }
.campaign-workspace-stage strong { overflow-wrap: anywhere; font-size: 16px; }
.campaign-assignment-card { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; padding: 12px; border: 1px solid var(--line); border-radius: var(--radius); background: #fbf9ff; }
.campaign-assignment-card h3 { margin: 8px 0 2px; }
.campaign-assignment-card .field-help { margin-bottom: 0; overflow-wrap: anywhere; }
.campaign-workspace-panel .inline-form { align-items: end; margin: 16px 0; }
.campaign-workspace-panel .inline-form select { min-width: min(360px, 100%); }
.campaign-workspace-row-actions { flex-wrap: wrap; min-width: 190px; }
.campaign-workspace-row-actions button { white-space: nowrap; }
.workspace-rule-row { grid-template-columns: minmax(150px, 1.2fr) minmax(130px, 1fr) minmax(130px, 1fr) minmax(130px, 1fr) 90px; }
.validation-policy-row { grid-template-columns: minmax(180px, 280px) minmax(180px, 240px) auto; justify-content: start; }
.validation-provider-row { grid-template-columns: minmax(220px, 360px) minmax(180px, 260px) auto; justify-content: start; }
.campaign-validation-advanced, .campaign-workspace-automation { margin-top: 14px; }
.campaign-validation-advanced .campaign-simple-row { grid-template-columns: repeat(4, minmax(130px, 1fr)) auto; }
.campaign-workspace-automation .campaign-simple-row { grid-template-columns: repeat(3, minmax(160px, 1fr)); }
.campaign-workspace-automation .table-wrap { margin-top: 12px; }
.workspace-inline-form.buyer-delivery-config-form .form-error { margin-right: 0; margin-left: 0; }
.workspace-inline-form.buyer-delivery-config-form .delivery-config-section { padding-right: 0; padding-left: 0; }
.workspace-inline-form.buyer-delivery-config-form .delivery-config-section > .panel-heading { margin-right: 0; margin-left: 0; }
.workspace-inline-form.buyer-delivery-config-form .modal-footer { padding-right: 0; padding-left: 0; }
.workspace-inline-editor-host:empty { display: none; }
.workspace-inline-editor-host { margin-top: 16px; }
.workspace-inline-dialog[open] { position: static; inset: auto; width: 100%; max-width: none; max-height: none; margin: 0; padding: 0; overflow: visible; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 8px 24px rgba(80, 54, 140, .08); }
.workspace-inline-dialog::backdrop { display: none; }
.workspace-inline-dialog .dialog-form { max-height: none; overflow: visible; }
.workspace-inline-dialog .modal-header, .workspace-inline-dialog .modal-footer { position: static !important; }
.workspace-embedded-settings { margin-top: 16px; }
.workspace-empty, .health-clear { padding: 14px; border: 1px dashed var(--line-strong); border-radius: var(--radius); color: var(--muted); background: #fbfaff; }
.workspace-empty p { margin-bottom: 0; }
.campaign-workspace-issues { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 10px; margin-top: 12px; }
.campaign-assignment-conflicts { display: grid; gap: 8px; margin: 16px 0; }
.campaign-assignment-conflicts article { padding: 12px; border-left: 4px solid var(--warn); background: #faf7ff; }
.campaign-assignment-conflicts p { margin: 3px 0 0; color: var(--muted); }
.answer-insights { margin-top: 14px; overflow: hidden; border: 1px solid rgba(143, 98, 217, .2); border-radius: 8px; background: linear-gradient(145deg, #fcfaff, #f7f2ff); box-shadow: var(--shadow); }
.answer-insights-heading { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 12px 14px; border-bottom: 1px solid rgba(143, 98, 217, .15); background: #f6f1ff; }
.answer-insights-heading h4 { margin: 2px 0 1px; font-size: 18px; }
.answer-insights-heading p { margin: 0; color: var(--muted); font-size: 12px; }
.answer-insights-icon { display: grid; width: 43px; height: 43px; place-items: center; border-radius: 13px; color: #fff; background: linear-gradient(135deg, var(--brand), var(--accent)); box-shadow: 0 9px 20px rgba(143, 98, 217, .25); }
.answer-insights-icon svg { width: 23px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.answer-total { display: grid; min-width: 80px; padding: 8px 12px; text-align: center; border: 1px solid rgba(143, 98, 217, .18); border-radius: 12px; background: rgba(255, 255, 255, .8); color: var(--brand-dark); font-size: 20px; font-weight: 900; line-height: 1.1; }
.answer-total small { color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.answer-insights-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); gap: 10px; padding: 12px; }
.answer-question-card { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 13px; background: rgba(255, 255, 255, .94); box-shadow: 0 8px 24px rgba(80, 54, 140, .06); transition: transform .18s, box-shadow .18s, border-color .18s; }
.answer-question-card:hover { border-color: rgba(143, 98, 217, .34); box-shadow: 0 14px 32px rgba(80, 54, 140, .1); transform: translateY(-2px); }
.answer-question-card header { position: relative; padding: 11px 12px 10px; border-bottom: 1px solid var(--line); background: #fbfaff; }
.answer-question-card h5 { margin: 9px 0 5px; overflow-wrap: anywhere; font-size: 15px; line-height: 1.4; }
.answer-step { display: inline-flex; padding: 4px 8px; border-radius: 999px; color: var(--brand-dark); background: var(--brand-soft); font-size: 9px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.answer-response-count { color: var(--muted); font-size: 11px; }
.answer-options { display: grid; gap: 10px; padding: 11px 12px; }
.answer-option { display: grid; gap: 7px; }
.answer-option-copy { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.answer-option-label { display: flex; min-width: 0; align-items: center; gap: 8px; overflow-wrap: anywhere; font-weight: 750; }
.answer-option-label i { flex: 0 0 auto; width: 9px; height: 9px; border: 2px solid #fff; border-radius: 50%; background: var(--brand); box-shadow: 0 0 0 2px rgba(143, 98, 217, .2); }
.answer-option-value { display: flex; flex: 0 0 auto; align-items: baseline; gap: 5px; }
.answer-option-value strong { color: var(--ink); font-size: 16px; }
.answer-option-value small { color: var(--muted); font-size: 10px; font-weight: 800; }
.answer-progress { height: 7px; overflow: hidden; border-radius: 999px; background: #eee8f8; }
.answer-progress span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--brand), var(--accent), var(--accent-blue)); box-shadow: 0 0 10px rgba(143, 98, 217, .28); }
.answer-disqualified { justify-self: start; padding: 3px 8px; border-radius: 999px; color: var(--bad); background: rgba(208, 68, 101, .1); font-size: 9px; font-weight: 850; text-transform: uppercase; }
.answer-insights-empty { display: grid; justify-items: center; gap: 4px; margin-top: 14px; padding: 20px 14px; text-align: center; border: 1px dashed rgba(143, 98, 217, .3); border-radius: 8px; color: var(--muted); background: #fbfaff; }
.answer-insights-empty > span { color: var(--brand); font-size: 28px; }
.answer-insights-empty strong { color: var(--ink); font-size: 15px; }
.answer-insights-empty p { margin: 0; font-size: 12px; }
.health-clear { margin-bottom: 12px; padding: 10px 12px; border: 1px solid rgba(71, 209, 140, .25); border-radius: 8px; background: rgba(71, 209, 140, .1); color: var(--good); font-weight: 800; }
.campaign-journey-shell { margin: 4px 0 14px; padding: 12px; overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: #ffffff; }
.campaign-journey-heading, .campaign-health-detail-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.campaign-journey-heading h3, .campaign-health-detail-heading h3 { margin: 2px 0 0; font-size: 18px; }
.campaign-journey-legend { display: flex; flex-wrap: wrap; gap: 12px; color: var(--muted); font-size: 11px; }
.campaign-journey-legend span { display: inline-flex; align-items: center; gap: 5px; }
.campaign-journey-legend i { width: 8px; height: 8px; border-radius: 50%; background: var(--muted); }
.campaign-journey-legend i.healthy { background: var(--good); }
.campaign-journey-legend i.warning { background: var(--warn); }
.campaign-journey-legend i.blocked { background: var(--bad); }
.campaign-journey { display: grid; grid-template-columns: repeat(6, minmax(120px, 1fr)); gap: 10px; margin: 12px 0; }
.journey-stage { position: relative; display: grid; min-width: 0; min-height: 120px; align-content: start; justify-items: start; gap: 7px; padding: 10px; text-align: left; border-width: 2px; background: #fff; box-shadow: 0 8px 22px rgba(80, 54, 140, .06); }
.journey-stage::after { position: absolute; z-index: 0; top: 42px; left: calc(100% + 2px); width: 10px; height: 3px; content: ''; background: var(--good); }
.journey-stage:last-child::after { display: none; }
.journey-stage.healthy { border-color: rgba(36, 164, 105, .35); }
.journey-stage.warning { border-color: rgba(229, 141, 52, .48); background: #fffaf3; }
.journey-stage.blocked { border-color: rgba(208, 68, 101, .55); background: #fff7f9; }
.journey-stage.warning::after { background: var(--warn); }
.journey-stage.blocked::after, .journey-stage.after-break::after { background: var(--bad); }
.journey-stage.after-break { opacity: .58; border-style: dashed; }
.journey-stage.active { box-shadow: 0 0 0 3px rgba(143, 98, 217, .14), 0 12px 26px rgba(80, 54, 140, .12); transform: translateY(-2px); }
.journey-stage-icon { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; color: #fff; background: var(--good); font-weight: 900; }
.journey-stage.warning .journey-stage-icon { background: var(--warn); }
.journey-stage.blocked .journey-stage-icon { background: var(--bad); }
.journey-stage-copy { display: grid; gap: 3px; min-width: 0; }
.journey-stage-copy strong, .journey-stage-copy small { overflow-wrap: anywhere; }
.journey-stage-copy small { color: var(--muted); line-height: 1.35; }
.journey-stage-count { margin-top: auto; color: var(--muted); font-size: 10px; font-weight: 850; letter-spacing: .04em; text-transform: uppercase; }
.buyer-journey-branches { display: grid; grid-template-columns: 150px 1fr; gap: 10px; padding: 10px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.buyer-journey-label { display: grid; align-content: start; gap: 4px; }
.buyer-journey-label span { font-weight: 850; }
.buyer-journey-label small, .buyer-journey-card small { color: var(--muted); }
.buyer-journey-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 9px; }
.buyer-journey-card { display: grid; grid-template-columns: 10px 1fr auto; gap: 9px; align-items: center; min-width: 0; padding: 10px; border: 1px solid var(--line); border-radius: 8px; }
.buyer-journey-card div { display: grid; min-width: 0; }
.buyer-journey-card strong, .buyer-journey-card small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.buyer-journey-card > span:last-child { color: var(--muted); font-size: 10px; }
.buyer-journey-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--good); }
.buyer-journey-card.warning .buyer-journey-dot { background: var(--warn); }
.buyer-journey-card.blocked .buyer-journey-dot { background: var(--bad); }
.buyer-journey-empty { padding: 12px; color: var(--muted); border: 1px dashed var(--line-strong); border-radius: 8px; }
.campaign-health-stage-detail { margin-top: 16px; padding-top: 18px; border-top: 1px solid var(--line); }
.journey-stage-status { padding: 5px 9px; border-radius: 999px; color: var(--good); background: rgba(36, 164, 105, .12); font-size: 10px; font-weight: 850; text-transform: uppercase; }
.journey-stage-status.warning { color: var(--warn); background: rgba(229, 141, 52, .12); }
.journey-stage-status.blocked { color: var(--bad); background: rgba(208, 68, 101, .12); }
.campaign-health-issue-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 10px; margin-top: 14px; }
.campaign-health-issue { padding: 14px; border: 1px solid var(--line); border-left: 4px solid var(--brand); border-radius: 8px; background: #fff; }
.campaign-health-issue.critical { border-left-color: var(--bad); }
.campaign-health-issue.warning { border-left-color: var(--warn); }
.campaign-health-issue-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 10px; color: var(--muted); font-size: 11px; }
.campaign-health-issue p { margin: 6px 0 12px; color: var(--muted); }
.campaign-health-fix { padding: 9px; border-radius: 7px; background: #f8f5ff; }
.campaign-health-fix span { display: block; margin-bottom: 3px; color: var(--brand-dark); font-size: 9px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.campaign-health-fix p { margin: 6px 0 0; color: var(--ink); font-size: 12px; }
.campaign-health-fix button { margin-top: 9px; }
.health-action-button { display: inline-flex; margin-top: 10px; border-color: #1f7ae0; background: #1f7ae0; color: #fff; font-weight: 750; }
.health-action-button:hover { border-color: #155fba; background: #155fba; }
.health-action-focus { animation: healthFocus 1.2s ease-in-out 3; border-color: #1f7ae0 !important; box-shadow: 0 0 0 4px rgba(31, 122, 224, .16), var(--shadow) !important; }

.toolbar { justify-content: flex-start; margin-bottom: 10px; }
.toolbar input { min-width: 280px; }
.toolbar input, .toolbar select, .inline-form input, .inline-form select, .inline-form textarea, .field input, .field select, .field textarea { padding: 7px 9px; border: 1px solid var(--line-strong); border-radius: 7px; background: #ffffff; color: var(--ink); }
.table-wrap { overflow: auto; border: 1px solid var(--line); border-radius: 8px; }
table { width: 100%; border-collapse: collapse; background: #ffffff; }
th, td { padding: 8px 10px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
tbody tr:last-child td { border-bottom: 0; }
tbody tr:hover { background: #faf7ff; }
th { color: var(--muted); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; }
.actions { display: flex; gap: 5px; flex-wrap: wrap; }
.actions button, .actions a { min-height: 30px; padding: 4px 8px; font-size: 12px; }
.table-actions { position: relative; width: 48px; text-align: center; }
.table-action-menu { position: relative; display: inline-block; }
.table-action-menu summary { display: grid; width: 32px; height: 30px; cursor: pointer; list-style: none; place-items: center; border: 1px solid var(--line-strong); border-radius: 7px; background: #ffffff; color: var(--brand-dark); font-size: 15px; font-weight: 900; letter-spacing: 0; transition: border-color .18s, box-shadow .18s, background .18s; }
.table-action-menu summary::-webkit-details-marker { display: none; }
.table-action-menu summary:hover, .table-action-menu[open] summary { border-color: rgba(143, 98, 217, .58); background: var(--brand-soft); box-shadow: 0 8px 20px rgba(80, 54, 140, .12); }
.table-action-menu summary:focus-visible { outline: 3px solid rgba(98, 91, 246, .22); outline-offset: 2px; }
.table-action-menu-items { position: absolute; z-index: 30; top: calc(100% + 6px); right: 0; display: grid; width: 150px; overflow: hidden; padding: 5px; border: 1px solid var(--line); border-radius: 10px; background: #ffffff; box-shadow: 0 16px 38px rgba(51, 35, 90, .18); }
.table-action-menu:not([open]) .table-action-menu-items { display: none; }
.table-action-menu-items button { width: 100%; min-height: 34px; border: 0; padding: 7px 10px; background: transparent; box-shadow: none; text-align: left; transform: none; }
.table-action-menu-items button:hover { background: var(--brand-soft); box-shadow: none; transform: none; }
.table-action-menu-items button.is-danger { color: var(--bad); }
.table-wrap:has(.table-action-menu[open]) { overflow: visible; }
.badge { display: inline-block; padding: 4px 9px; border-radius: 20px; background: #f0e9ff; color: var(--brand-dark); font-size: 10px; font-weight: 850; text-transform: uppercase; }
.status-1 { background: rgba(71, 209, 140, .15); color: var(--good); }
.status-0 { background: rgba(255, 107, 125, .15); color: var(--bad); }
.status-3 { background: rgba(247, 185, 85, .16); color: var(--warn); }
.inline-form { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 12px; }
.inline-form input { min-width: 220px; height: 33px; }
.inline-form textarea { width: min(420px, 100%); min-height: 42px; resize: vertical; }
.audit-filter-grid { display: grid; grid-template-columns: minmax(220px, 2fr) repeat(4, minmax(130px, 1fr)); gap: 9px; align-items: end; }
.audit-filter-grid label { display: grid; min-width: 0; gap: 4px; color: var(--muted); font-size: 11px; font-weight: 750; }
.audit-filter-grid input, .audit-filter-grid select, .audit-results-toolbar select { min-width: 0; width: 100%; padding: 7px 9px; border: 1px solid var(--line-strong); border-radius: 7px; background: #fff; color: var(--ink); }
.audit-filter-actions { display: flex; gap: 7px; align-items: end; }
.audit-results-toolbar, .audit-pagination { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 9px; }
.audit-results-toolbar label { display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: 11px; }
.audit-results-toolbar select { width: 76px; }
.audit-pagination { justify-content: flex-end; margin: 10px 0 0; }
.audit-detail-summary dl { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 5px 10px; }
.audit-detail-summary dt { color: var(--muted); font-weight: 750; }
.audit-detail-summary dd { min-width: 0; margin: 0; overflow-wrap: anywhere; }
.audit-detail-summary + h3, #changes-table table + h3 { margin-top: 14px; }
.audit-detail-summary pre, #changes-table pre { max-height: 300px; overflow: auto; padding: 9px; border: 1px solid var(--line); border-radius: 7px; background: #f8f5ff; white-space: pre-wrap; overflow-wrap: anywhere; }
.checkbox-line { display: inline-flex; align-items: center; gap: 8px; min-height: 39px; margin: 0; color: var(--ink); font-weight: 700; }
.checkbox-line input { min-width: 0; width: auto; }
.rule-preview { display: grid; grid-template-columns: minmax(220px, 1fr) auto minmax(220px, 1fr); gap: 10px; align-items: start; margin-bottom: 16px; }
.rule-preview textarea { min-height: 76px; padding: 10px 11px; border: 1px solid var(--line-strong); border-radius: 8px; background: #ffffff; color: var(--ink); resize: vertical; }
.platform-form { align-items: stretch; padding: 10px; border: 1px solid var(--line); border-radius: 8px; background: #fbfaff; }
.platform-hero { border-color: rgba(143, 98, 217, .22); background: linear-gradient(135deg, #a983e8, #8f62d9 62%, #f05ac6); color: #ffffff; }
.platform-hero .eyebrow, .platform-hero .field-help, .platform-hero .muted { color: rgba(255, 255, 255, .8); }
.platform-hero h2 { max-width: 860px; font-size: 24px; color: #000000; }
.platform-panel { border-color: rgba(96, 165, 250, .28); }
.campaign-wizard-panel { border-color: rgba(143, 98, 217, .24); background: linear-gradient(180deg, #ffffff, #fbfaff); }
.campaign-wizard-shell { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 12px; align-items: start; }
.campaign-wizard-steps { position: sticky; top: 70px; display: grid; gap: 4px; padding: 7px; border: 1px solid var(--line); border-radius: 8px; background: #ffffff; box-shadow: var(--shadow); }
.campaign-wizard-steps button { display: flex; align-items: center; justify-content: flex-start; gap: 8px; min-height: 36px; border: 0; background: transparent; color: var(--muted); text-align: left; }
.campaign-wizard-steps button span { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 7px; background: #f0e9ff; color: var(--brand-dark); font-size: 11px; font-weight: 900; }
.campaign-wizard-steps button.active { background: var(--brand-soft); color: var(--brand-dark); box-shadow: none; transform: none; }
.campaign-wizard-steps button.active span { background: var(--brand); color: #fff; }
.campaign-wizard-body { min-width: 0; }
.campaign-wizard-step { min-height: 360px; padding: 14px; border: 1px solid var(--line); border-radius: 8px; background: #ffffff; box-shadow: var(--shadow); }
.campaign-wizard-step > .section-heading-row:first-child { margin: -14px -14px 14px; padding: 10px 12px; border-bottom: 1px solid rgba(118, 92, 172, .16); border-radius: 8px 8px 0 0; background: #f6f1ff; }
.campaign-wizard-step:not(.hidden) { margin-bottom: 14px; }
.campaign-wizard-step:not(.hidden):last-of-type { margin-bottom: 0; }
.campaign-wizard-step h3 { margin: 2px 0 0; font-size: 17px; letter-spacing: 0; }
.campaign-wizard-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 10px; padding: 9px; border: 1px solid var(--line); border-radius: 8px; background: #ffffff; }
.wizard-field-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 9px; margin-bottom: 12px; }
.wizard-field-card { display: grid; gap: 9px; padding: 10px; border: 1px solid var(--line); border-radius: 8px; background: #fbfaff; }
.campaign-field-import { display: grid; gap: 8px; margin: 0 0 12px; padding: 10px; border: 1px solid var(--line); border-radius: 8px; background: #fbfaff; }
.import-field-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; border-top: 1px solid var(--line); }
.import-field-row > div { display: grid; gap: 3px; }
.sync-diff-panel { display: grid; gap: 12px; padding: 12px; border: 1px solid #d9ccff; border-radius: 8px; background: #ffffff; }
.sync-diff-list { display: grid; gap: 8px; }
.sync-diff-row { display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: start; padding: 8px; border: 1px solid var(--line); border-radius: 8px; background: #fbfaff; }
.campaign-context-summary { display: grid; gap: 3px; min-width: 0; padding: 0 0 8px 16px; border-left: 3px solid var(--brand); }
.campaign-context-summary strong, .campaign-context-summary span { overflow-wrap: anywhere; }
.campaign-context-summary span { color: var(--muted); font-size: 12px; }
.campaign-config-section { margin: 14px 0; padding: 0 0 14px; border-bottom: 1px solid var(--line); }
.campaign-config-section > .panel-heading { margin: 0 0 10px; padding: 8px 10px; background: #f6f1ff; }
.campaign-simple-form { display: grid; gap: 10px; }
.campaign-simple-row { display: grid; gap: 9px; align-items: end; }
.campaign-field-basic-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.campaign-simple-row .field { min-width: 0; margin: 0; }
.mapping-default-scope { min-height: 64px; justify-content: end; padding: 9px 11px; border: 1px solid var(--line); border-radius: 8px; background: #fbfaff; }
.mapping-default-scope strong { overflow-wrap: anywhere; }
.advanced-settings { padding-top: 12px; border-top: 1px solid var(--line); }
.advanced-settings summary { width: fit-content; color: var(--brand-dark); cursor: pointer; font-size: 13px; font-weight: 800; }
.advanced-settings[open] summary { margin-bottom: 14px; }
.advanced-settings .field-grid { margin: 0; }
.campaign-config-section .actions { justify-content: flex-end; }
#campaign-fields-table { margin-top: 12px; }
#campaign-fields-table table { min-width: 820px; }
.wizard-field-card .field-grid { grid-template-columns: 120px minmax(0, 1fr); gap: 10px; }
.wizard-mapping-list { display: grid; gap: 7px; }
.wizard-map-row { display: grid; grid-template-columns: minmax(140px, .7fr) minmax(160px, 1fr) minmax(160px, 1fr) minmax(220px, auto); gap: 8px; align-items: end; padding: 8px; border: 1px solid var(--line); border-radius: 7px; background: #fbfaff; }
.wizard-map-row.buyer-only { grid-template-columns: minmax(160px, .8fr) minmax(220px, 1.2fr) minmax(220px, auto); }
.wizard-map-identity { display: grid; gap: 3px; align-content: center; min-width: 0; }
.wizard-map-title-line { display: flex; align-items: center; gap: 6px; min-width: 0; flex-wrap: wrap; }
.wizard-map-title-line .badge { flex: 0 0 auto; padding: 3px 7px; white-space: nowrap; }
.wizard-map-key { color: var(--muted); font-size: 12px; overflow-wrap: anywhere; }
.wizard-map-buyer-field { display: grid; gap: 4px; min-width: 0; }
.wizard-map-buyer-field > .field { min-width: 0; }
.wizard-map-buyer-field > .checkbox-line { gap: 6px; min-height: 0; font-size: 12px; line-height: 1.2; white-space: nowrap; }
.wizard-system-field-note { align-self: center; color: var(--muted); font-size: 12px; }
.wizard-map-advanced { align-self: center; min-width: 180px; }
.wizard-map-advanced .wizard-map-transforms { margin-top: 10px; }
.wizard-map-transforms { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; min-height: 39px; }
.wizard-map-transforms label { display: inline-flex; gap: 5px; align-items: center; color: var(--muted); font-size: 12px; font-weight: 750; }
.buyer-static-fields-heading { margin-top: 12px; }
.buyer-static-fields { display: grid; gap: 7px; }
.buyer-static-field-row { display: grid; grid-template-columns: minmax(180px, 1fr) minmax(220px, 1.4fr) auto; gap: 8px; align-items: end; padding: 8px; border: 1px solid var(--line); border-radius: 7px; background: #fbfaff; }
.buyer-static-field-row > button { min-height: 34px; }
.wizard-info { display: grid; gap: 7px; margin: 14px 0; padding: 13px; border: 1px solid var(--line); border-radius: 8px; background: #f8f5ff; color: var(--muted); }
.wizard-info strong { color: var(--brand-dark); }
.wizard-info p { margin: 0; overflow-wrap: anywhere; }
.wizard-info code, .wizard-summary-grid code { display: inline-block; max-width: 100%; overflow: auto; padding: 2px 6px; border-radius: 5px; background: #ffffff; color: var(--brand-dark); }
.wizard-summary-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; }
.wizard-summary-grid article { display: grid; gap: 5px; min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 8px; background: #fbfaff; }
.wizard-summary-grid span { color: var(--muted); font-size: 11px; font-weight: 850; letter-spacing: .05em; text-transform: uppercase; }
.wizard-summary-grid strong { overflow-wrap: anywhere; }
.wizard-summary-grid small { color: var(--muted); }
.dashboard-report-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 14px; }
.dashboard-report-heading { display: flex; min-width: 0; align-items: center; gap: 12px; }
.dashboard-report-heading h2 { margin: 1px 0 0; font-size: 21px; }
.dashboard-report-heading .field-help { margin: 2px 0 0; }
.dashboard-report-icon { display: grid; width: 40px; height: 40px; flex: 0 0 40px; place-items: center; border-radius: 8px; background: rgba(55, 163, 232, .12); color: #2685c4; font-size: 21px; font-weight: 850; }
.dashboard-report-actions { display: flex; flex: 0 0 auto; gap: 7px; }
.dashboard-report-actions button { display: inline-flex; align-items: center; gap: 6px; font-weight: 750; }
.dashboard-report-actions [data-view="landers"] { border-color: var(--brand); background: var(--brand); color: #ffffff; }
.dashboard-report-actions [data-view="leads"] { border-color: #525b70; background: #525b70; color: #ffffff; }
.dashboard-kpi-grid { display: grid; gap: 10px; margin-bottom: 14px; }
.dashboard-kpi-grid-primary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.dashboard-kpi-grid-secondary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.dashboard-kpi { --kpi-color: var(--brand); display: grid; min-width: 0; min-height: 120px; align-content: start; gap: 5px; padding: 13px 14px; border: 1px solid var(--line); border-left: 4px solid var(--kpi-color); border-radius: var(--radius); background: #ffffff; box-shadow: var(--shadow); }
.dashboard-kpi-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; color: var(--muted); font-size: 11px; font-weight: 850; text-transform: uppercase; }
.dashboard-kpi-heading i { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 8px; background: #f7f3fd; color: var(--kpi-color); font-size: 13px; font-style: normal; }
.dashboard-kpi > strong { margin-top: 2px; color: var(--ink); font-size: 28px; line-height: 1.05; }
.dashboard-kpi > small { color: var(--muted); overflow-wrap: anywhere; }
.dashboard-kpi-leads { --kpi-color: #28a5bd; }
.dashboard-kpi-sold { --kpi-color: var(--good); }
.dashboard-kpi-rejected { --kpi-color: var(--warn); }
.dashboard-kpi-errors { --kpi-color: var(--bad); }
.dashboard-kpi-open { --kpi-color: var(--brand); }
.dashboard-kpi-delivery { --kpi-color: #3f5168; }
.dashboard-overview-panel .panel-heading { align-items: flex-start; }
.dashboard-chart-legend { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px 12px; color: var(--muted); font-size: 11px; }
.dashboard-chart-legend span { display: inline-flex; align-items: center; gap: 5px; }
.dashboard-chart-legend i { width: 10px; height: 10px; border-radius: 2px; background: var(--accent-blue); }
.dashboard-chart-legend i.sold { background: #5bc49a; }
.dashboard-chart-legend i.rejected { background: #f0b34f; }
.dashboard-chart-legend i.errors { background: var(--bad); }
.dashboard-chart-scroll { max-width: 100%; overflow-x: auto; }
.dashboard-bars { display: grid; min-width: 620px; min-height: 230px; grid-template-columns: repeat(7, minmax(64px, 1fr)); gap: 14px; align-items: end; padding: 16px 10px 0; background: repeating-linear-gradient(to bottom, transparent 0, transparent 49px, rgba(118, 92, 172, .11) 50px); }
.dashboard-bar { display: grid; min-width: 0; grid-template-rows: 18px 180px 20px; gap: 4px; align-items: end; justify-items: center; color: var(--muted); font-size: 11px; }
.dashboard-bar > strong { color: var(--ink); font-size: 11px; }
.dashboard-chart-bars { display: flex; width: 100%; height: 180px; align-items: end; justify-content: center; gap: 4px; border-bottom: 1px solid var(--line-strong); }
.dashboard-chart-bar { display: block; width: min(13px, 20%); min-height: 0; border-radius: 3px 3px 0 0; background: var(--accent-blue); transition: height .24s ease; }
.dashboard-chart-bar.sold { background: #5bc49a; }
.dashboard-chart-bar.rejected { background: #f0b34f; }
.dashboard-chart-bar.errors { background: var(--bad); }
.dashboard-chart-day > small { white-space: nowrap; }
.dashboard-alerts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.dashboard-alerts article { display: grid; min-width: 0; align-content: start; gap: 8px; padding: 11px; border: 1px solid var(--line); border-left: 3px solid var(--brand); border-radius: 7px; background: #fbfaff; }
.dashboard-alerts strong { overflow-wrap: anywhere; font-size: 12px; }
.dashboard-breakdown { display: grid; gap: 13px; }
.dashboard-breakdown-row { display: grid; gap: 7px; }
.dashboard-breakdown-row > div:first-child { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.dashboard-breakdown-row strong { color: var(--ink); }
.dashboard-progress { height: 8px; overflow: hidden; border-radius: 999px; background: #f2edf9; }
.dashboard-progress span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--brand), var(--accent)); }
.dashboard-journey { display: grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); gap: 12px; }
.dashboard-journey article { display: grid; gap: 5px; min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 8px; background: #ffffff; }
.dashboard-journey strong { font-size: 25px; line-height: 1; }
.dashboard-journey p { margin: 0; font-weight: 800; }
.dashboard-journey small { color: var(--muted); line-height: 1.35; }
.report-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.report-grid-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.report-grid section { min-width: 0; }
.report-grid h3 { margin: 0 0 10px; }
.lander-list-table { min-width: 960px; table-layout: fixed; }
.lander-list-table td { vertical-align: middle; }
.lander-list-id-heading, .lander-list-id-cell { width: 58px; text-align: center; }
.lander-list-url-heading, .lander-list-url-cell { width: 32%; }
.lander-list-status-heading, .lander-list-status-cell { width: 130px; }
.lander-list-actions-heading, .lander-list-actions-cell { width: 252px; }
.lander-list-id-cell > span { display: inline-grid; min-width: 34px; height: 25px; padding: 0 7px; place-items: center; border-radius: 999px; background: #f1ecfb; color: var(--brand-dark); font-size: 11px; font-weight: 800; }
.lander-list-summary-cell { min-width: 0; padding-top: 11px; padding-bottom: 11px; }
.lander-list-title { display: block; color: var(--ink); font-size: 13px; line-height: 1.35; }
.lander-report-label { display: block; margin-top: 7px; color: var(--muted); font-size: 9px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.lander-today-leads { display: flex; gap: 5px; flex-wrap: wrap; margin-top: 4px; }
.lander-report-chip { display: inline-flex; align-items: center; gap: 4px; padding: 3px 7px; border: 1px solid #d8e3ea; border-radius: 999px; background: #f5fbfd; color: #26758c; font-size: 10px; font-weight: 700; white-space: nowrap; }
.lander-report-chip.sold { border-color: #cce9db; background: #f0faf5; color: #277655; }
.lander-report-chip.rejected { border-color: #f0dfb5; background: #fff9e9; color: #8a671e; }
.lander-report-chip.error { border-color: #f1ced2; background: #fff4f5; color: #a23545; }
.lander-report-chip strong { color: inherit; }
.lander-url-slot { display: grid; gap: 4px; margin: 7px 0 0; font-size: 11px; }
.lander-list-url-cell .lander-url-slot:first-child { margin-top: 0; }
.lander-list-url-cell .lander-url-slot + .lander-url-slot { padding-top: 7px; border-top: 1px solid var(--line); }
.lander-url-slot-actions { display: flex; gap: 5px; flex-wrap: wrap; margin-top: 0; }
.lander-url-slot-actions a { color: inherit; font-size: 9px; }
.lander-test-link { display: inline-flex; align-items: center; gap: 3px; padding: 3px 6px; border: 1px solid #ead9ad; border-radius: 999px; background: #fff8e6; color: #7e621f !important; font-weight: 750; }
.lander-test-link.view { border-color: #b9dce9; background: #eef9fc; color: #216b83 !important; }
.lander-test-link.sold { border-color: #cce9db; background: #eefaf4; color: #277655 !important; }
.lander-list-meta { display: flex; align-items: center; gap: 5px 12px; flex-wrap: wrap; margin-top: 7px; color: var(--muted); font-size: 10px; }
.lander-list-meta strong { color: #475467; }
.lander-list-meta small { font-size: inherit; }
.lander-list-meta .badge { padding: 3px 7px; font-size: 9px; }
.lander-meta-warning { color: var(--warn); }
.lander-meta-action { min-height: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: var(--good); font-size: 10px; font-weight: 750; transform: none; }
.lander-meta-action:hover { background: transparent; box-shadow: none; color: var(--brand-dark); text-decoration: underline; transform: none; }
.lander-meta-action.has-issues { color: var(--bad); }
.lander-list-variants { margin-top: 7px; font-size: 10px; }
.lander-list-variants > summary { width: fit-content; cursor: pointer; color: var(--brand); font-weight: 750; }
.lander-variant-summary { display: grid; gap: 4px; margin-top: 6px; }
.lander-variant-row { display: flex; align-items: center; gap: 8px; font-size: 10px; }
.lander-variant-row .muted { color: var(--muted); }
.variant-dot { width: 8px; height: 8px; border-radius: 50%; flex: none; }
.variant-dot.is-on { background: var(--good); }
.variant-dot.is-off { background: var(--bad); }
.lander-status-control { display: flex; align-items: center; gap: 7px; }
.lander-status-switch { position: relative; display: inline-flex; flex: none; }
.lander-status-switch input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.lander-status-switch span { position: relative; display: block; width: 34px; height: 19px; cursor: pointer; border-radius: 999px; background: #cbd2da; transition: background .16s ease; }
.lander-status-switch span::after { position: absolute; top: 3px; left: 3px; width: 13px; height: 13px; border-radius: 50%; background: #ffffff; box-shadow: 0 1px 3px rgba(16, 24, 40, .22); content: ''; transition: transform .16s ease; }
.lander-status-switch input:checked + span { background: var(--good); }
.lander-status-switch input:checked + span::after { transform: translateX(15px); }
.lander-status-switch input:focus-visible + span { outline: 3px solid rgba(98, 91, 246, .22); outline-offset: 2px; }
.lander-status-switch input:disabled + span { cursor: default; opacity: .58; }
.lander-row-actions { display: flex; align-items: center; gap: 5px; flex-wrap: wrap; }
.lander-row-action { min-height: 28px; padding: 4px 8px; border-color: var(--brand); border-radius: 6px; background: var(--brand); color: #ffffff; font-size: 11px; font-weight: 750; }
.lander-row-action:hover { border-color: var(--brand-dark); background: var(--brand-dark); }
.lander-row-action.edit { border-color: #287f9f; background: #287f9f; }
.lander-row-action.edit:hover { border-color: #1f657f; background: #1f657f; }
.lander-list-action-menu summary { display: flex; width: auto; min-width: 76px; height: 28px; min-height: 28px; padding: 4px 8px; align-items: center; justify-content: space-between; gap: 7px; border-color: #242a38; border-radius: 6px; background: #242a38; color: #ffffff; font-size: 11px; font-weight: 750; }
.lander-list-action-menu summary::after { content: '▾'; font-size: 9px; }
.lander-list-action-menu summary:hover, .lander-list-action-menu[open] summary { border-color: #101522; background: #101522; color: #ffffff; }

.editor-top { position: sticky; top: 0; z-index: 8; margin: -6px -4px 12px; padding: 7px 4px; background: rgba(248, 245, 255, .9); backdrop-filter: blur(14px); }
.lander-campaign-context { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; padding: 9px 12px; border: 1px solid var(--line); border-left: 4px solid var(--brand); border-radius: var(--radius); background: #fff; }
.lander-campaign-context > div { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; min-width: 0; }
.editor-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.save-state { display: inline-flex; align-items: center; gap: 7px; color: var(--muted); font-size: 12px; font-weight: 750; }
.save-state::before { width: 8px; height: 8px; border-radius: 50%; background: #94a3b8; content: ''; }
.save-state.saved::before { background: #10b981; }
.save-state.unsaved::before { background: #f59e0b; }
.save-state.saving::before { background: var(--brand); animation: pulse 1s infinite; }
.editor-workspace { display: grid; grid-template-columns: 210px minmax(0, 1fr); align-items: start; gap: 12px; }
.section-nav { position: sticky; top: 68px; display: grid; gap: 5px; max-height: calc(100vh - 95px); overflow: auto; padding: 8px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); box-shadow: var(--shadow); }
.section-nav button { display: flex; align-items: center; gap: 8px; min-height: 36px; border: 0; background: transparent; color: #475467; text-align: left; }
.section-nav-icon { flex: 0 0 18px; width: 18px; height: 18px; color: #7d8799; }
.section-nav button:hover { background: #f3edff; box-shadow: none; transform: none; }
.section-nav button.active { background: var(--brand-soft); color: var(--brand); font-weight: 780; }
.section-nav button.active .section-nav-icon { color: var(--brand); }
.editor-form { min-width: 0; overflow-x: hidden; }
.editor-form, .editor-section, .field-grid, .field, .resource-card { min-width: 0; }
.editor-section { min-height: 360px; padding: 16px; background: var(--panel); border: 1px solid var(--line); border-radius: 8px; box-shadow: var(--shadow); }
.editor-section.slide-in-forward { animation: editor-slide-in-forward 280ms cubic-bezier(.22, 1, .36, 1); }
.editor-section.slide-in-backward { animation: editor-slide-in-backward 280ms cubic-bezier(.22, 1, .36, 1); }
@keyframes editor-slide-in-forward { from { opacity: 0; transform: translateY(42px); } to { opacity: 1; transform: translateY(0); } }
@keyframes editor-slide-in-backward { from { opacity: 0; transform: translateY(-42px); } to { opacity: 1; transform: translateY(0); } }
.editor-section > .section-heading-row { margin: -16px -16px 14px; padding: 10px 12px; border-bottom: 1px solid rgba(118, 92, 172, .16); border-radius: 8px 8px 0 0; background: #f6f1ff; }
.editor-section h2 { margin: 2px 0 0; font-size: 18px; letter-spacing: 0; }
.field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.field { display: grid; gap: 4px; }
.field.full { grid-column: 1 / -1; }
.field > span, .field-label { font-size: 12px; font-weight: 780; }
.field input, .field select, .field textarea { width: 100%; max-width: 100%; }
.auto-field-label { margin: 0; min-width: 0; align-content: start; }
.inline-form > .auto-field-label { flex: 1 1 220px; }
.field textarea { min-height: 84px; resize: vertical; }
.field textarea.code { min-height: 160px; font-family: ui-monospace, SFMono-Regular, monospace; }
.rich-text-field > .tox-tinymce { border-color: var(--line-strong); border-radius: 8px; }
.rich-text-field > .tox-tinymce:focus-within { border-color: var(--brand); box-shadow: 0 0 0 3px rgba(98, 91, 246, .14); }
.toggle-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.toggle { display: flex; align-items: center; gap: 7px; padding: 8px; border: 1px solid var(--line); border-radius: 8px; background: #ffffff; }
.toggle:has(input:checked) { border-color: #c7c4ff; background: var(--brand-soft); }
.toggle input { width: auto; accent-color: var(--brand); }
.day-grid { display: flex; gap: 9px; flex-wrap: wrap; }
.day-grid label { display: flex; gap: 5px; }
.resource-list { display: grid; gap: 8px; margin-top: 10px; }
.resource-card { padding: 10px; border: 1px solid var(--line); border-radius: 8px; background: #d92d2012; }
.resource-card .resource-row { display: grid; grid-template-columns: 1fr 120px 120px auto; gap: 8px; }
.question-answers { margin: 10px 0 0 20px; }
.drag-handle { cursor: grab; color: var(--muted); font-weight: 700; }
.dragging { opacity: .42; }
.variant-card, .question-card, .advertorial-card { display: grid; gap: 10px; background-color: beige; }
.resource-edit-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.resource-edit-grid input, .resource-edit-grid select, .resource-edit-grid textarea { width: 100%; min-width: 0; padding: 9px; border: 1px solid var(--line-strong); border-radius: 8px; background: #ffffff; color: var(--ink); }
.json-detail { max-width: 340px; white-space: pre-wrap; word-break: break-word; font: 12px ui-monospace, SFMono-Regular, monospace; }
.modal-json { max-height: 240px; overflow: auto; white-space: pre-wrap; word-break: break-word; background: #fbfaff; border: 1px solid var(--line); border-radius: 8px; padding: 10px; color: var(--ink); font-size: 12px; }
.health-good { color: var(--good); }
.health-bad { color: var(--bad); }

.template-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(310px, 1fr)); gap: 12px; }
.template-card { overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); box-shadow: var(--shadow); }
.template-thumb { position: relative; min-height: 150px; padding: 18px; background: linear-gradient(145deg, #efe7ff, #f8d9f2); }
.template-thumb > span { font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.template-thumb > div { display: grid; gap: 7px; width: 72%; margin: 22px auto 0; padding: 13px; border-radius: 8px; background: #ffffff; box-shadow: 0 15px 30px rgba(80, 54, 140, .14); }
.template-thumb i { display: block; height: 10px; border-radius: 3px; background: #dfe3ea; }
.template-thumb .block-hero { height: 31px; background: #c9c8ff; }
.template-thumb .block-questionnaire { height: 23px; background: #d9f5ea; }
.template-card-body { padding: 12px; }
.template-card h3 { margin: 0; }
.template-card p { margin: 3px 0 0; color: var(--muted); }
.template-card .actions { margin-top: 12px; }

.customizer-shell { display: grid; grid-template-columns: 320px minmax(0, 1fr); min-height: calc(100vh - 150px); overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); box-shadow: var(--shadow); }
.customizer-panel { display: grid; align-content: start; gap: 12px; padding: 16px; overflow: auto; border-right: 1px solid var(--line); }
.customizer-panel h2 { margin: -9px 0 0; }
.customizer-panel p { margin: -9px 0 3px; }
.preview-stage { min-width: 0; background: #f5f0ff; }
.preview-toolbar { display: flex; align-items: center; justify-content: space-between; padding: 8px 10px; border-bottom: 1px solid var(--line); background: #ffffff; color: var(--muted); font-size: 12px; }
.device-switcher { display: flex; gap: 4px; padding: 3px; border-radius: 10px; background: #f0f2f6; }
.device-switcher button { min-height: 30px; border: 0; padding: 3px 10px; background: transparent; }
.device-switcher button.active { background: var(--brand); color: #ffffff; box-shadow: 0 2px 8px rgba(80, 54, 140, .16); }
.preview-canvas { display: grid; min-height: calc(100vh - 207px); place-items: start center; overflow: auto; padding: 16px; }
.preview-canvas iframe { width: 100%; min-height: calc(100vh - 255px); border: 0; border-radius: 10px; background: #fff; box-shadow: 0 20px 50px rgba(30, 41, 59, .18); transition: width .25s; }
.preview-canvas iframe[data-device="tablet"] { width: 768px; max-width: 100%; }
.preview-canvas iframe[data-device="mobile"] { width: 390px; max-width: 100%; }

.builder-shell { display: grid; grid-template-columns: 220px minmax(360px, 1fr) 280px; align-items: start; gap: 12px; }
.builder-library, .builder-inspector { position: sticky; top: 70px; padding: 14px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); box-shadow: var(--shadow); }
.builder-library h2 { margin: 4px 0; }
.library-block { display: grid; width: 100%; gap: 2px; margin-top: 8px; text-align: left; }
.library-block span { color: var(--muted); font-size: 11px; }
.block-list { display: grid; gap: 11px; }
.builder-block { padding: 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); box-shadow: var(--shadow); }
.builder-block-head { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; }
.builder-block-head p { margin: 2px 0 0; color: var(--muted); font-size: 12px; }
.builder-settings { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--line); }
.mini-preview { margin-top: 15px; padding: 8px; border-radius: 8px; background: #f5f0ff; }
.mini-preview iframe { width: 100%; min-height: 390px; border: 0; border-radius: 8px; background: #fff; }
.builder-inspector > button { width: 100%; margin-top: 12px; }

.page-alert { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin: 0 0 14px; padding: 12px 14px; border: 1px solid; border-radius: 8px; font-weight: 650; overflow-wrap: anywhere; }
.page-alert.success { border-color: #88d4ae; background: #eaf8f0; color: #17623f; }
.page-alert.error { border-color: #ef9ca7; background: #fff0f1; color: #9f1d2f; }
.page-alert-dismiss { min-width: 28px; min-height: 28px; padding: 0 7px; border-color: currentColor; background: transparent; color: inherit; font-size: 20px; line-height: 1; }
.page-alert-dismiss:hover { border-color: currentColor; background: rgba(255, 255, 255, .55); box-shadow: none; transform: none; }
dialog.app-modal {
  width: min(540px, calc(100% - 24px));
  max-height: calc(100vh - 24px);
  max-height: calc(100dvh - 24px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 8px;
  color: var(--ink);
  background: var(--panel);
  box-shadow: 0 24px 70px rgba(0, 0, 0, .2);
}
dialog.app-modal:not(.workspace-inline-dialog) {
  opacity: 0;
  transform: translateY(-24px);
  transition: opacity .15s linear, transform .3s ease-out, overlay .3s ease-out allow-discrete, display .3s ease-out allow-discrete;
}
dialog.app-modal[open]:not(.workspace-inline-dialog) { opacity: 1; transform: translateY(0); }
@starting-style {
  dialog.app-modal[open]:not(.workspace-inline-dialog) { opacity: 0; transform: translateY(-24px); }
}
#campaign-edit-dialog { width: min(900px, calc(100% - 32px)); }
.campaign-config-dialog { width: min(840px, calc(100% - 32px)); }
#user-dialog { width: min(780px, calc(100% - 32px)); }
#campaign-activation-error-dialog { width: min(720px, calc(100% - 32px)); }
dialog.app-modal:not(.workspace-inline-dialog)::backdrop {
  background-color: rgba(0, 0, 0, 0);
  transition: background-color .15s linear, overlay .15s linear allow-discrete, display .15s linear allow-discrete;
}
dialog.app-modal[open]:not(.workspace-inline-dialog)::backdrop { background-color: rgba(0, 0, 0, .5); }
@starting-style {
  dialog.app-modal[open]:not(.workspace-inline-dialog)::backdrop { background-color: rgba(0, 0, 0, 0); }
}
.dialog-form { padding: 10px; }
dialog.app-modal:not(.workspace-inline-dialog) .dialog-form {
  max-height: calc(100vh - 24px);
  max-height: calc(100dvh - 24px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
  overflow-y: auto;
  overscroll-behavior: contain;
  padding: 0 12px;
}
.modal-title { min-width: 0; margin: 0; font-size: 18px; font-weight: 500; line-height: 1.5; letter-spacing: 0; overflow-wrap: anywhere; }
dialog.app-modal:not(.workspace-inline-dialog) .modal-header {
  position: sticky;
  z-index: 4;
  top: 0;
  margin: 0 -12px 12px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--line);
  background: #ffffff;
}
dialog.app-modal:not(.workspace-inline-dialog) .modal-close {
  display: inline-grid;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  min-height: 32px;
  margin: -4px -6px -4px auto;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #000000;
  font-size: 28px;
  font-weight: 300;
  line-height: 1;
  opacity: .5;
  box-shadow: none;
}
dialog.app-modal:not(.workspace-inline-dialog) .modal-close:hover { border: 0; background: transparent; color: #000000; opacity: .75; box-shadow: none; transform: none; }
dialog.app-modal:not(.workspace-inline-dialog) .modal-footer {
  position: sticky;
  z-index: 4;
  bottom: 0;
  justify-content: flex-end;
  margin: 14px -12px 0;
  padding: 10px 16px;
  border-top: 1px solid var(--line);
  background: #ffffff;
}
.dialog-actions, .modal-footer { justify-content: flex-end; margin-top: 14px; }
.buyer-delivery-config-form .form-error { margin: 10px 12px 0; }
.delivery-instruction-import { margin: 10px 12px 0; padding: 12px; border: 1px solid var(--line); border-radius: 8px; background: #faf9fc; }
.delivery-instruction-import > div:first-child { margin-bottom: 9px; }
.delivery-instruction-import .field-help { margin: 3px 0 0; }
.delivery-instruction-import-controls { display: grid; grid-template-columns: minmax(240px, 1fr) auto; align-items: end; gap: 10px; }
.delivery-import-preview { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--line); }
.delivery-import-preview ul { margin: 6px 0 10px; padding-left: 20px; color: var(--muted); font-size: 12px; }
.delivery-import-preview .delivery-import-summary-grid { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 6px; }
.delivery-config-tabs { display: flex; gap: 6px; margin: 10px 12px 12px; padding-bottom: 4px; overflow-x: auto; scrollbar-width: thin; }
.delivery-config-tabs button { flex: 0 0 auto; padding: 8px 12px; border-color: var(--line-strong); background: #ffffff; color: var(--muted); font-size: 12px; font-weight: 700; white-space: nowrap; }
.delivery-config-tabs button[aria-selected="true"] { border-color: var(--brand); background: var(--brand); color: #ffffff; }
.delivery-config-tabs button:focus-visible { outline: 3px solid rgba(118, 92, 172, .25); outline-offset: 2px; }
.delivery-config-section { margin: 0; padding: 0 12px 12px; border-bottom: 1px solid var(--line); }
.delivery-config-section[hidden] { display: none; }
.delivery-config-tab-actions { display: flex; justify-content: flex-end; align-items: center; gap: 8px; margin-bottom: 8px; }
.delivery-config-section + .delivery-config-section { padding-top: 10px; }
.delivery-config-section > .panel-heading { align-items: flex-start; margin: 0 -12px 8px; padding: 7px 12px; background: #f6f1ff; }
.delivery-config-section > .panel-heading h3 { margin: 0; font-size: 14px; }
.delivery-config-section > .panel-heading .field-help { margin: 1px 0 0; font-size: 11px; }
.delivery-config-section .checkbox-line { align-self: end; min-height: 35px; margin: 0; }
.delivery-config-section > .field-grid ~ .field-grid, .delivery-config-section > .field, .delivery-config-section > .checkbox-line { margin-top: 8px; }
.buyer-delivery-config-form .field-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px 10px; }
.buyer-delivery-config-form .field { gap: 3px; }
.buyer-delivery-config-form .field > span { font-size: 11px; }
.buyer-delivery-config-form .field textarea { min-height: 70px; }
.buyer-delivery-config-form .wizard-map-row { grid-template-columns: minmax(120px, .7fr) minmax(140px, 1fr) minmax(140px, 1fr) minmax(170px, auto); }
.buyer-delivery-config-form .wizard-map-row.buyer-only { grid-template-columns: minmax(120px, .7fr) minmax(180px, 1.3fr) auto; align-items: center; }
.buyer-delivery-config-form .wizard-map-row.buyer-only .wizard-map-advanced { min-width: 0; padding-top: 0; border-top: 0; }
.buyer-delivery-config-form .wizard-map-row.buyer-only .wizard-map-advanced[open] { grid-column: 1 / -1; width: 100%; padding-top: 8px; border-top: 1px solid var(--line); }
.buyer-delivery-config-form .wizard-map-row.buyer-only .wizard-map-advanced[open] summary { margin-bottom: 8px; }
.buyer-testing-note { margin-bottom: 8px; padding: 8px 10px; border-left: 3px solid var(--brand); background: #f6f1ff; color: var(--muted); font-size: 12px; }
.buyer-testing-note code { color: var(--brand-dark); font-weight: 700; overflow-wrap: anywhere; }
.buyer-testing-actions { display: flex; align-items: center; gap: 8px; margin-top: 9px; }
.buyer-testing-result { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--line); }
.buyer-testing-result-heading { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; color: var(--muted); font-size: 12px; }
.buyer-testing-result-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.buyer-testing-result-grid strong { display: block; margin-bottom: 4px; font-size: 11px; }
.buyer-testing-result-grid pre { max-height: 220px; margin: 0; padding: 8px; overflow: auto; border: 1px solid var(--line); border-radius: 6px; background: #faf9fc; color: var(--ink); font-size: 11px; white-space: pre-wrap; overflow-wrap: anywhere; }
.campaign-activation-error-list { display: grid; gap: 12px; max-height: min(52vh, 520px); overflow: auto; margin-top: 18px; }
.campaign-activation-error-item { padding: 15px; border: 1px solid rgba(180, 35, 24, .2); border-left: 4px solid var(--bad); border-radius: 8px; background: #fff7f6; }
.campaign-activation-error-item h3 { margin: 0 0 7px; color: #912018; font-size: 15px; }
.campaign-activation-error-item p { margin: 5px 0 0; color: var(--muted); }
.campaign-activation-error-item .recommended-fix { margin-top: 10px; color: var(--ink); }
.campaign-activation-error-item .recommended-fix strong { color: #912018; }
.icon-button { display: inline-grid; flex: 0 0 32px; width: 32px; height: 32px; min-height: 32px; place-items: center; padding: 0; border: 1px solid rgba(118, 92, 172, .18); border-radius: 999px; background: #ffffff; color: var(--brand-dark); font-size: 21px; line-height: 1; }
.icon-button:hover { border-color: rgba(208, 68, 101, .28); background: #fff4f6; color: #b42318; box-shadow: none; transform: none; }
.permission-fieldset { margin: 14px 0 0; padding: 12px; border: 1px solid var(--line); border-radius: 8px; }
.permission-fieldset legend { padding: 0 6px; font-weight: 800; }
.permission-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.permission-row { display: grid; grid-template-columns: minmax(0, 1fr) 120px; align-items: center; gap: 10px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 8px; background: #ffffff; }
.permission-row select { min-width: 0; padding: 8px; border: 1px solid var(--line-strong); border-radius: 8px; background: #ffffff; color: var(--ink); }
.permission-summary { display: flex; max-width: 420px; gap: 5px; flex-wrap: wrap; }
.permission-chip { padding: 3px 7px; border-radius: 12px; background: #eef1f5; color: #4b5565; font-size: 10px; font-weight: 750; }
.permission-chip.manage { background: var(--brand-soft); color: var(--brand-dark); }
#lead-dialog { width: min(720px, calc(100% - 32px)); }
.lead-tab { padding: 6px 14px; border: 1px solid var(--line-strong); border-radius: 8px; background: #ffffff; cursor: pointer; font-weight: 600; font-size: 13px; }
.lead-tab.active { background: var(--brand); color: #ffffff; border-color: var(--brand); }
.lead-journey-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(125px, 1fr)); gap: 10px; margin-bottom: 14px; }
.lead-journey-summary article { display: grid; gap: 6px; min-width: 0; padding: 12px; border: 1px solid var(--line); border-radius: 8px; background: #fbfaff; }
.lead-journey-summary strong { overflow-wrap: anywhere; font-size: 13px; }
.detail-table { width: 100%; border-collapse: collapse; }
.detail-table td { padding: 6px 10px; border-bottom: 1px solid var(--line); font-size: 13px; }
.detail-table td:first-child { width: 120px; color: var(--muted); }
.lifecycle-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-bottom: 16px; }
.lifecycle-summary div, .lifecycle-card { border: 1px solid var(--line); border-radius: 8px; background: #ffffff; padding: 12px; }
.lifecycle-summary span { display: block; color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: 0; }
.lifecycle-summary strong { display: block; margin-top: 4px; overflow-wrap: anywhere; }
.lifecycle-section { margin-top: 12px; }
.lifecycle-section h3 { margin: 0 0 10px; font-size: 14px; }
.lifecycle-timeline { display: grid; gap: 10px; }
.lifecycle-item { display: grid; grid-template-columns: 12px 1fr; gap: 10px; align-items: start; }
.lifecycle-dot { width: 10px; height: 10px; border-radius: 999px; margin-top: 6px; background: var(--muted); }
.lifecycle-dot.status-1 { background: var(--good); }
.lifecycle-dot.status-0 { background: var(--bad); }
.lifecycle-dot.status-3 { background: var(--warn); }
.lifecycle-item-head { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.lifecycle-item-head span { color: var(--muted); font-size: 12px; }
.lifecycle-item p, .lifecycle-card p { margin: 5px 0 0; color: var(--muted); font-size: 13px; overflow-wrap: anywhere; }
.lifecycle-card { margin-bottom: 10px; }
.lifecycle-json { margin-top: 8px; }
.lifecycle-json summary { cursor: pointer; color: var(--accent); font-size: 12px; }
.lifecycle-json pre { max-height: 220px; overflow: auto; white-space: pre-wrap; word-break: break-word; background: #fbfaff; border: 1px solid var(--line); border-radius: 8px; padding: 10px; color: var(--ink); font-size: 12px; }
hr { margin: 16px 0; border: 0; border-top: 1px solid var(--line); }

.question-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 8px; }
.question-toolbar h3, .question-toolbar p { margin: 0; }
.question-list, .answer-editor-list { display: grid; gap: 8px; }
.question-summary-card { overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: #8f62d908; box-shadow: 0 2px 10px rgba(31, 39, 51, .04); }
.question-summary-card.is-child { border-left: 4px solid #1686a0; }
.question-summary-card.is-split { border-left: 4px solid #d99016; }
.question-summary-header { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 11px; border-bottom: 1px solid var(--line); background: #fbfcfe; }
.question-summary-title { display: flex; align-items: flex-start; gap: 12px; min-width: 0; }
.question-summary-title strong { display: block; overflow-wrap: anywhere; }
.question-select { width: 18px; height: 18px; margin-top: 5px; accent-color: var(--brand); }
.question-number, .answer-number { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 8px; background: #edf5ff; color: #245f98; font-weight: 800; font-size: 12px; }
.question-actions, .question-badges, .question-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; }
.question-actions { flex: 0 0 auto; }
.question-summary-body { padding: 9px 11px; }
.question-meta { margin-bottom: 12px; color: var(--muted); font-size: 12px; }
.question-meta > span { padding: 5px 8px; border: 1px solid var(--line); border-radius: 7px; background: #f8f9fb; }
.question-badges { margin-top: 6px; }
.question-badge { display: inline-flex; padding: 3px 8px; border-radius: 999px; font-size: 11px; font-weight: 700; background: #eef1f5; color: #536171; }
.question-badge.child { background: #e7f7fb; color: #147d94; }
.question-badge.split { background: #fff3df; color: #a96509; }
.question-badge.variant { background: #f0eafe; color: #6941c6; }
.question-badge.qualified { background: #e9f8ef; color: #187842; }
.question-badge.disqualified { background: #fdebed; color: #b42336; }
.question-badge.submitted { font-family: ui-monospace, monospace; }
.answer-summary-list { display: grid; gap: 7px; }
.answer-summary { display: flex; align-items: center; gap: 10px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 8px; background: #f8f9fb; }
.answer-summary > strong { flex: 1; }
.answer-summary .answer-number { width: 23px; height: 23px; border-radius: 6px; background: #e8ebef; color: #536171; }
.question-status-toggle input { position: absolute; opacity: 0; }
.question-status-toggle span { display: block; width: 38px; height: 22px; border-radius: 999px; background: #c8ced7; cursor: pointer; position: relative; }
.question-status-toggle span::after { content: ''; position: absolute; width: 16px; height: 16px; left: 3px; top: 3px; border-radius: 50%; background: white; transition: transform .15s; }
.question-status-toggle input:checked + span { background: var(--good); }
.question-status-toggle input:checked + span::after { transform: translateX(16px); }
dialog.question-dialog { width: min(920px, calc(100vw - 32px)); }
.question-form-section { margin-bottom: 8px; padding: 10px; border: 1px solid var(--line); border-radius: 8px; background: #fbfcfe; }
.question-form-section h3 { margin-top: 0; }
.answer-editor-row { display: grid; grid-template-columns: auto 1.3fr 1fr 100px 1fr auto auto; align-items: end; gap: 8px; padding: 8px; border: 1px solid var(--line); border-radius: 8px; background: white; }
.qualified-control { align-self: center; white-space: nowrap; }
.percent-input { display: flex; align-items: center; }
.percent-input input { border-radius: 8px 0 0 8px; }
.percent-input span { padding: 10px; border: 1px solid var(--line); border-left: 0; border-radius: 0 8px 8px 0; background: #f5f6f8; }
.form-error { padding: 10px 12px; border-radius: 8px; background: #fdebed; color: #a3152a; }

.phone-routing-editor { margin-top: 14px; overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.phone-routing-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 12px; background: #f6f1ff; }
.phone-routing-header h3, .phone-routing-header p { margin: 0; }
.phone-routing-header p { margin-top: 3px; color: var(--muted); font-size: 12px; }
.switch-row { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 8px; font-weight: 700; }
.switch-row input { width: 18px; height: 18px; margin: 0; accent-color: var(--brand); }
.phone-routing-fields { padding: 12px; }
.phone-routing-column-headings, .phone-mapping-row { display: grid; grid-template-columns: minmax(160px, 1fr) minmax(180px, 1fr) 34px; gap: 8px; align-items: end; }
.phone-routing-column-headings { padding: 0 2px 5px; color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.phone-mapping-list { display: grid; gap: 7px; }
.phone-mapping-row { padding: 8px; border: 1px solid var(--line); border-radius: 8px; background: #fbfaff; }
.phone-mapping-row label { min-width: 0; }
.phone-mapping-row input, .phone-mapping-row select { width: 100%; padding: 7px 9px; border: 1px solid var(--line-strong); border-radius: 7px; background: #fff; }
.phone-mapping-row .icon-button { align-self: end; }
.phone-routing-actions { display: flex; align-items: center; gap: 10px; margin-top: 9px; }
.phone-routing-actions small { color: var(--muted); }
.mobile-only-label { display: none; }

.tabs { display: flex; gap: 6px; margin: 12px 0; border-bottom: 1px solid var(--line); overflow: auto; }
.tabs button { border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: transparent; color: var(--muted); }
.tabs button.active { border-color: var(--brand); color: var(--brand-dark); background: transparent; }

@keyframes pulse { 50% { opacity: .35; } }
@keyframes spin { to { transform: rotate(360deg); } }
@keyframes healthFocus { 50% { box-shadow: 0 0 0 7px rgba(31, 122, 224, .24), var(--shadow); } }
@media (max-width: 1180px) {
  .builder-shell { grid-template-columns: 210px 1fr; }
  .builder-inspector { position: static; grid-column: 1 / -1; }
  .mini-preview iframe { min-height: 520px; }
  .report-grid { grid-template-columns: 1fr; }
  .report-grid-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-alerts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-bars { grid-template-columns: repeat(7, minmax(42px, 1fr)); }
  .campaign-wizard-shell { grid-template-columns: 1fr; }
  .campaign-workspace-journey { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workspace-rule-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .campaign-validation-advanced .campaign-simple-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .campaign-wizard-steps { position: static; display: flex; overflow: auto; }
  .campaign-wizard-steps button { flex: 0 0 auto; }
  .wizard-map-row, .wizard-map-row.buyer-only { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wizard-map-identity, .wizard-map-advanced { grid-column: 1 / -1; }
  .buyer-static-field-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .buyer-static-field-row > button { grid-column: 1 / -1; justify-self: end; }
  .campaign-journey { grid-template-columns: repeat(3, minmax(150px, 1fr)); }
  .journey-stage:nth-child(3)::after, .journey-stage:nth-child(6)::after { display: none; }
}
@media (max-width: 930px) {
  input, select, textarea { font-size: 16px; }
  .app-shell { max-width: 100vw; grid-template-columns: minmax(0, 1fr); grid-auto-rows: max-content; align-content: start; overflow-x: hidden; }
  .sidebar { position: relative; z-index: 10; width: 100%; max-width: 100vw; height: auto; padding: 14px; }
  .brand { margin: 0 8px 12px; }
  .sidebar nav { display: flex; min-width: 0; max-width: 100%; overflow: auto; }
  .nav-button { flex: 0 0 auto; }
  .sidebar-footer { margin-top: 12px; }
  .workspace { width: 100%; max-width: 100vw; padding: 8px 16px 16px; }
  .workspace > .topbar { margin-top: 0; }
  .view-panel > :first-child { margin-top: 0; }
  .metric-grid { grid-template-columns: repeat(2, 1fr); }
  .dashboard-kpi-grid-primary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .report-grid-two { grid-template-columns: 1fr; }
  .field-grid, .toggle-grid, .resource-edit-grid { grid-template-columns: 1fr; }
  .permission-grid { grid-template-columns: 1fr; }
  .resource-card .resource-row { grid-template-columns: 1fr; }
  .editor-workspace { grid-template-columns: 1fr; }
  .section-nav { position: static; display: flex; overflow: auto; }
  .section-nav button { flex: 0 0 auto; }
  .customizer-shell { grid-template-columns: 1fr; }
  .customizer-panel { border-right: 0; border-bottom: 1px solid var(--line); }
  .campaign-journey { grid-template-columns: repeat(2, minmax(150px, 1fr)); }
  .journey-stage:nth-child(3)::after { display: block; }
  .journey-stage:nth-child(even)::after { display: none; }
  .campaign-simple-row { grid-template-columns: 1fr; }
  .campaign-validation-advanced .campaign-simple-row,
  .campaign-workspace-automation .campaign-simple-row { grid-template-columns: 1fr; }
  .campaign-context-summary { padding: 8px 0 8px 12px; }
  .wizard-field-card .field-grid { grid-template-columns: 1fr; }
  .buyer-journey-branches { grid-template-columns: 1fr; }
  .database-table-panel { position: static; }
  .database-table-list { max-height: 280px; }
  .answer-editor-row { grid-template-columns: 28px 1fr 1fr; }
  .buyer-delivery-config-form .field-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .buyer-delivery-config-form .wizard-map-row, .buyer-delivery-config-form .wizard-map-row.buyer-only { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .buyer-delivery-config-form .wizard-map-identity, .buyer-delivery-config-form .wizard-map-advanced { grid-column: 1 / -1; }
  .buyer-delivery-config-form .wizard-map-row.buyer-only { grid-template-columns: minmax(110px, .7fr) minmax(0, 1.3fr); }
  .buyer-delivery-config-form .wizard-map-row.buyer-only > .wizard-map-identity { grid-column: auto; }
  .buyer-delivery-config-form .wizard-map-row.buyer-only .wizard-map-advanced { grid-column: 1 / -1; }
  .buyer-delivery-config-form .wizard-map-row.buyer-only .wizard-map-advanced[open] { grid-column: 1 / -1; }
}
@media (pointer: coarse) {
  input, select, textarea { font-size: 16px; }
  button, .button-link { min-height: 40px; touch-action: manipulation; }
  dialog.app-modal:not(.workspace-inline-dialog) .modal-close { width: 40px; height: 40px; min-height: 40px; }
}
@media (max-width: 680px) {
  .workspace { padding: 6px 12px 12px; }
  dialog.app-modal:not(.workspace-inline-dialog) .modal-footer { flex-wrap: wrap; }
  .topbar, .welcome-panel, .editor-top { align-items: stretch; flex-direction: column; }
  .topbar .primary, .quick-create input, .quick-create button { width: 100%; min-width: 0; }
  .quick-create { flex-direction: column; }
  .metric-grid { grid-template-columns: 1fr; }
  .dashboard-report-header { align-items: stretch; flex-direction: column; }
  .dashboard-report-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .dashboard-report-actions button { justify-content: center; }
  .dashboard-kpi-grid-primary, .dashboard-kpi-grid-secondary { grid-template-columns: 1fr; }
  .dashboard-overview-panel .panel-heading { align-items: stretch; flex-direction: column; }
  .dashboard-chart-legend { justify-content: flex-start; }
  .dashboard-alerts { grid-template-columns: 1fr; }
  .toolbar, .inline-form { align-items: stretch; flex-direction: column; }
  #lander-table.table-wrap { overflow: visible; border: 0; border-radius: 0; background: transparent; }
  .lander-list-table { min-width: 0; background: transparent; table-layout: auto; }
  .lander-list-table thead { display: none; }
  .lander-list-table tbody { display: grid; gap: 10px; }
  .lander-list-table tr { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 8px 10px; padding: 11px; border: 1px solid var(--line); border-radius: 8px; background: #ffffff; box-shadow: 0 7px 20px rgba(51, 35, 90, .06); }
  .lander-list-table td { width: auto; padding: 0; border: 0; }
  .lander-list-id-cell { grid-column: 1; grid-row: 1; text-align: left; }
  .lander-list-summary-cell { grid-column: 2; grid-row: 1; }
  .lander-list-url-cell { grid-column: 1 / -1; grid-row: 2; padding-top: 9px !important; border-top: 1px solid var(--line) !important; }
  .lander-list-status-cell { grid-column: 2; grid-row: 3; }
  .lander-list-actions-cell { grid-column: 1 / -1; grid-row: 4; padding-top: 9px !important; border-top: 1px solid var(--line) !important; }
  .lander-list-meta { display: grid; grid-template-columns: 1fr; gap: 4px; }
  .lander-list-meta > * { justify-self: start; }
  .lander-variant-row { align-items: flex-start; flex-wrap: wrap; }
  .lander-row-actions { display: grid; grid-template-columns: repeat(auto-fit, minmax(82px, 1fr)); }
  .lander-row-action, .lander-list-action-menu, .lander-list-action-menu summary { width: 100%; }
  .lander-row-action, .lander-list-action-menu summary { justify-content: center; }
  .audit-filter-grid { grid-template-columns: 1fr 1fr; }
  .inline-form > .auto-field-label { flex: 0 0 auto; width: 100%; }
  .rule-preview { grid-template-columns: 1fr; }
  .toolbar input, .inline-form input { min-width: 0; }
  .editor-section { min-height: 0; padding: 12px; }
  .editor-section > .section-heading-row { margin: -12px -12px 12px; }
  .editor-actions { width: 100%; }
  .editor-actions > * { flex: 1; text-align: center; }
  .save-state { flex-basis: 100%; }
  .builder-shell { grid-template-columns: 1fr; }
  .builder-library, .builder-inspector { position: static; }
  .builder-inspector { grid-column: auto; }
  .builder-settings { grid-template-columns: 1fr; }
  .preview-canvas { padding: 12px; }
  .campaign-journey-heading, .campaign-health-detail-heading { align-items: stretch; flex-direction: column; }
  .campaign-journey { grid-template-columns: 1fr; }
  .campaign-workspace-journey { grid-template-columns: 1fr; }
  .campaign-assignment-card { align-items: stretch; flex-direction: column; }
  .lander-campaign-context { align-items: stretch; flex-direction: column; }
  .journey-stage { min-height: 0; }
  .journey-stage::after { display: none !important; }
  .campaign-wizard-step { min-height: 0; padding: 12px; }
  .campaign-wizard-step > .section-heading-row:first-child { margin: -12px -12px 12px; }
  .campaign-wizard-footer { align-items: stretch; flex-direction: column; }
  .wizard-map-row, .wizard-map-row.buyer-only { grid-template-columns: 1fr; }
  .wizard-map-identity, .wizard-map-advanced { grid-column: auto; }
  .buyer-static-field-row { grid-template-columns: 1fr; }
  .buyer-static-field-row > button { grid-column: auto; justify-self: stretch; }
  .buyer-delivery-config-form .field-grid, .buyer-delivery-config-form .wizard-map-row, .buyer-delivery-config-form .wizard-map-row.buyer-only { grid-template-columns: 1fr; }
  .buyer-delivery-config-form .wizard-map-identity, .buyer-delivery-config-form .wizard-map-advanced { grid-column: auto; }
  .buyer-delivery-config-form .wizard-map-row.buyer-only { grid-template-columns: minmax(0, 1fr); gap: 6px; }
  .buyer-delivery-config-form .wizard-map-row.buyer-only .wizard-map-advanced { grid-column: 1 / -1; }
  .delivery-config-section > .panel-heading { flex-wrap: wrap; }
  .buyer-testing-actions { align-items: stretch; flex-direction: column; }
  .buyer-testing-actions button { width: 100%; }
  .buyer-testing-result-grid { grid-template-columns: 1fr; }
  .delivery-instruction-import-controls { grid-template-columns: 1fr; }
  .phone-routing-header { align-items: stretch; flex-direction: column; }
  .phone-routing-column-headings { display: none; }
  .phone-mapping-row { grid-template-columns: minmax(0, 1fr); }
  .phone-mapping-row label { grid-column: 1 / -1; }
  .phone-mapping-row .icon-button { grid-column: 1; justify-self: end; }
  .phone-routing-actions { align-items: stretch; flex-direction: column; }
  .mobile-only-label { display: block; margin-bottom: 4px; color: var(--muted); font-size: 11px; font-weight: 700; }
  .question-toolbar, .question-summary-header, .answer-summary { align-items: stretch; flex-direction: column; }
  .answer-editor-row { grid-template-columns: 1fr; }
  .answer-insights-heading { grid-template-columns: auto minmax(0, 1fr); padding: 17px; }
  .answer-total { grid-column: 1 / -1; grid-template-columns: auto auto; justify-content: center; gap: 6px; align-items: baseline; }
  .answer-insights-grid { grid-template-columns: 1fr; padding: 12px; }
  .table-wrap:has(.table-action-menu[open]) { overflow: auto; }
  .table-action-menu-items {
    position: fixed;
    top: var(--table-menu-top, 12px);
    right: auto;
    left: var(--table-menu-left, 12px);
    width: min(150px, calc(100vw - 24px));
    max-height: calc(100vh - 24px);
    overflow-y: auto;
  }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
  dialog.app-modal, dialog.app-modal::backdrop { transition: none !important; }
}

/* Brand workspace */
.brand-tabs { display: flex; gap: 12px; flex-wrap: wrap; margin: 10px 0 14px; }
.brand-tabs button { color: var(--text, #172033); }
.brand-assets { display: grid; grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)); gap: 10px; margin: 14px 0; }
.brand-asset { min-width: 0; padding: 12px; border: 1px solid #dce2ea; border-radius: 8px; }
.brand-asset h4 { margin-top: 0; }
.brand-image-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.brand-image-pair > div { display: grid; min-height: 100px; place-items: center; border: 1px solid #dce2ea; border-radius: 8px; background: #fff; }
.brand-image-pair > .dark { background: #172033; }
.brand-image-pair img { max-width: 100%; max-height: 120px; object-fit: contain; }
.brand-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px; align-items: end; }
.brand-approval { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin: 10px 0; }
.brand-notice { padding: 10px; border-radius: 8px; background: #fff5dc; color: #604100; }
.brand-preview-grid { display: flex; gap: 12px; overflow: auto; }
.brand-preview-grid > div { min-width: 0; flex: 1; }
.brand-preview-grid iframe { display: block; width: 100%; min-width: 320px; height: 700px; border: 1px solid #dce2ea; background: #fff; }
.brand-preview-grid:has(#brand-published-preview:not(.hidden)) { display: grid; grid-template-columns: 1fr 1fr; }
#brand-workspace pre { white-space: pre-wrap; overflow-wrap: anywhere; }
#brand-workspace input[type=file] { max-width: 100%; }
#brand-workspace .panel { scroll-margin-top: 16px; }
#brand-workspace form { margin-bottom: 12px; }
#brand-workspace label { display: block; margin: 8px 0; }
#brand-workspace textarea { width: 100%; min-height: 80px; box-sizing: border-box; padding: 9px; resize: vertical; border: 1px solid var(--line-strong); border-radius: 7px; background: #fff; color: var(--ink); }
#brand-workspace input[type=color] { width: 100%; min-height: 38px; padding: 3px; border: 1px solid var(--line-strong); border-radius: 7px; background: #fff; cursor: pointer; }
#brand-workspace input[type=checkbox] { width: auto; margin-right: 6px; }
