/* Halo Marketing: shared workspace, campaign canvas, audience and analytics patterns. */

.marketing-workspace .marketing-hero {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(360px, 0.85fr);
        gap: 16px;
        align-items: center;
        margin-bottom: 16px;
        padding: 20px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .marketing-kicker {
        color: var(--halo-text-secondary);
        font-size: .74rem;
        font-weight: 600;
        letter-spacing: 0;
        text-transform: uppercase;
    }
.marketing-workspace .marketing-hero h2 {
        margin: 4px 0 6px;
        color: var(--halo-text);
        font-size: 1.4rem;
        font-weight: 700;
    }
.marketing-workspace .marketing-hero p {
        max-width: 780px;
        margin: 0;
        color: var(--halo-text-secondary);
        line-height: 1.45;
    }
.marketing-workspace .marketing-metrics {
        display: grid;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 10px;
    }
.marketing-workspace .health-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 10px;
    }
.marketing-workspace .marketing-metrics article,
.marketing-workspace .health-grid article {
        padding: 14px;
        background: var(--halo-surface-sunken);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .marketing-metrics span,
.marketing-workspace .health-grid span {
        display: block;
        color: var(--halo-text);
        font-size: 1.35rem;
        font-weight: 700;
    }
.marketing-workspace .marketing-metrics small,
.marketing-workspace .health-grid small {
        color: var(--halo-text-secondary);
    }
.marketing-workspace .marketing-tabs {
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
        padding: 8px;
    }
.marketing-workspace .marketing-command-grid,
.marketing-workspace .marketing-split {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(420px, .8fr);
        gap: 16px;
        align-items: start;
    }
.marketing-workspace .marketing-command-grid {
        margin-bottom: 16px;
    }
.marketing-workspace .marketing-form-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }
.marketing-workspace .marketing-actions,
.marketing-workspace .marketing-switches {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        align-items: center;
        margin-top: 12px;
    }
.marketing-workspace .preference-record-context {
        display: grid;
        gap: 6px;
        margin-top: 14px;
        padding: 12px;
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-md);
        background: var(--halo-surface-hover);
    }
.marketing-workspace .heatmap-workspace {
        display: grid;
        gap: 16px;
    }
.marketing-workspace .heatmap-website-strip {
        display: grid;
        grid-template-columns: minmax(220px, .42fr) minmax(0, 1fr);
        gap: 14px;
        align-items: stretch;
        padding: 14px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .heatmap-strip-heading {
        display: grid;
        align-content: center;
        gap: 6px;
        min-width: 0;
    }
.marketing-workspace .heatmap-strip-heading strong {
        display: block;
        color: var(--halo-text);
        font-size: 1rem;
        font-weight: 950;
    }
.marketing-workspace .heatmap-strip-heading small {
        color: var(--halo-text-secondary);
        font-size: .76rem;
        line-height: 1.35;
    }
.marketing-workspace .heatmap-website-list {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
        gap: 10px;
        align-items: stretch;
    }
.marketing-workspace .heatmap-website-pill {
        display: grid;
        grid-template-columns: 10px minmax(0, 1fr) max-content 24px;
        gap: 10px;
        align-items: center;
        width: 100%;
        min-height: 64px;
        padding: 10px 12px;
        color: var(--halo-text);
        background: var(--halo-surface-sunken);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
        text-align: left;
        cursor: pointer;
    }
.marketing-workspace .heatmap-website-pill.selected {
        background: var(--halo-surface);
        border-color: var(--halo-action-brand);
        box-shadow: var(--halo-focus-ring);
    }
.marketing-workspace .heatmap-website-pill strong,
.marketing-workspace .heatmap-website-pill small {
        display: block;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.marketing-workspace .heatmap-website-pill strong {
        font-size: .85rem;
        font-weight: 950;
    }
.marketing-workspace .heatmap-website-pill small {
        color: var(--halo-text-secondary);
        font-size: .72rem;
        font-weight: 650;
    }
.marketing-workspace .heatmap-site-status {
        width: 10px;
        height: 10px;
        border-radius: 999px;
        background: var(--halo-text-tertiary);
    }
.marketing-workspace .heatmap-site-status.active {
        background: var(--halo-ink-success);
        box-shadow: 0 0 0 4px var(--halo-surface-hover);
    }
.marketing-workspace .heatmap-site-status.paused {
        background: var(--halo-ink-warning);
        box-shadow: 0 0 0 4px var(--halo-surface-hover);
    }
.marketing-workspace .heatmap-site-stat {
        padding: 5px 8px;
        color: var(--halo-text);
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: 999px;
        font-size: .72rem;
        font-weight: 800;
        white-space: nowrap;
    }
.marketing-workspace .heatmap-kpi-strip {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 10px;
    }
.marketing-workspace .heatmap-kpi-strip article {
        min-height: 76px;
        padding: 14px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .heatmap-kpi-strip span {
        display: block;
        overflow: hidden;
        color: var(--halo-text);
        font-size: 1.28rem;
        font-weight: 950;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.marketing-workspace .heatmap-kpi-strip small {
        color: var(--halo-text-secondary);
        font-size: .74rem;
        font-weight: 700;
    }
.marketing-workspace .heatmap-main-grid {
        display: grid;
        grid-template-columns: minmax(0, 1.55fr) minmax(340px, .85fr);
        gap: 16px;
        align-items: start;
    }
.marketing-workspace .heatmap-side-stack {
        display: grid;
        gap: 16px;
        min-width: 0;
    }
.marketing-workspace .heatmap-insight-grid {
        display: grid;
        grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr);
        gap: 16px;
        align-items: start;
    }
.marketing-workspace .heatmap-performance-header {
        display: grid;
        grid-template-columns: minmax(0, 1fr) max-content;
        gap: 12px;
        align-items: start;
    }
.marketing-workspace .heatmap-performance-header strong,
.marketing-workspace .heatmap-performance-header small {
        display: block;
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.marketing-workspace .heatmap-performance-header strong {
        color: var(--halo-text);
        font-size: .96rem;
        font-weight: 950;
    }
.marketing-workspace .heatmap-performance-header small {
        color: var(--halo-text-secondary);
        font-size: .75rem;
        font-weight: 700;
    }
.marketing-workspace .heatmap-page-badge {
        max-width: 220px;
        overflow: hidden;
        padding: 7px 10px;
        color: var(--halo-action-brand);
        background: var(--halo-surface-hover);
        border: 1px solid rgb(from var(--halo-action-brand) r g b /  .22);
        border-radius: 999px;
        font-size: .72rem;
        font-weight: 900;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.marketing-workspace .automation-recipe {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 20px minmax(0, 1.2fr) 20px minmax(0, 1fr);
        gap: 8px;
        align-items: center;
        margin-bottom: 12px;
        padding: 10px;
        background: var(--halo-surface-sunken);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .automation-recipe > div {
        display: inline-flex;
        gap: 7px;
        justify-content: center;
        align-items: center;
        min-height: 34px;
        padding: 6px 10px;
        color: var(--halo-text);
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline-strong);
        border-radius: var(--halo-radius-lg);
        font-size: .8rem;
        font-weight: 700;
        text-align: center;
    }
.marketing-workspace .marketing-table-wrap {
        overflow-x: auto;
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .marketing-table-wrap  td small {
        display: block;
        color: var(--halo-text-secondary);
    }
.marketing-workspace .operations-tabs {
        display: grid;
        gap: 14px;
    }
.marketing-workspace .reports-shell {
        display: grid;
        gap: 16px;
    }
.marketing-workspace .reports-header {
        display: flex;
        align-items: end;
        justify-content: space-between;
        gap: var(--halo-4);
        padding: var(--halo-4);
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .reports-header > div:first-child {
        display: grid;
        gap: var(--halo-1);
    }
.marketing-workspace .reports-header strong {
        color: var(--halo-text);
        font-size: 1rem;
    }
.marketing-workspace .reports-header small {
        color: var(--halo-text-secondary);
    }
.marketing-workspace .report-period {
        width: min(220px, 100%);
        flex: 0 0 220px;
    }
.marketing-workspace .report-kpis {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 10px;
    }
.marketing-workspace .report-kpis article {
        min-width: 0;
        padding: 13px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .report-kpis span {
        display: block;
        color: var(--halo-text);
        font-size: 1.1rem;
        font-weight: 900;
        line-height: 1.1;
        overflow-wrap: anywhere;
    }
.marketing-workspace .report-kpis small {
        color: var(--halo-text-secondary);
        font-size: .72rem;
        font-weight: 760;
    }
.marketing-workspace .report-grid {
        align-items: start;
    }
.marketing-workspace .report-channel {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        color: var(--halo-text);
        font-weight: 760;
        white-space: nowrap;
    }
.marketing-workspace .delivery-feed,
.marketing-workspace .attribution-feed,
.marketing-workspace .segment-list,
.marketing-workspace .audience-list,
.marketing-workspace .template-list {
        display: grid;
        gap: 8px;
        margin-top: 12px;
    }
.marketing-workspace .delivery-feed article,
.marketing-workspace .attribution-feed article,
.marketing-workspace .audience-list article,
.marketing-workspace .segment-row,
.marketing-workspace .template-row {
        display: flex;
        justify-content: space-between;
        gap: 12px;
        align-items: center;
        padding: 10px;
        color: var(--halo-text);
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .attribution-feed article > span {
        color: var(--halo-text);
        font-weight: 700;
        white-space: nowrap;
    }
.marketing-workspace .segment-row,
.marketing-workspace .template-row {
        width: 100%;
        text-align: left;
        cursor: pointer;
    }
.marketing-workspace .segment-row.selected {
        border-color: var(--halo-text);
        background: var(--halo-surface-sunken);
    }
.marketing-workspace .template-row.selected {
        border-color: var(--halo-action-brand);
        background: var(--halo-surface-hover);
    }
.marketing-workspace .delivery-feed span,
.marketing-workspace .audience-list span,
.marketing-workspace .segment-row strong,
.marketing-workspace .template-row strong {
        display: block;
        font-weight: 600;
    }
.marketing-workspace .delivery-feed small,
.marketing-workspace .attribution-feed small,
.marketing-workspace .audience-list small,
.marketing-workspace .segment-row small,
.marketing-workspace .template-row small {
        display: block;
        color: var(--halo-text-secondary);
    }
.marketing-workspace .token-strip {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin-top: 10px;
    }
.marketing-workspace .token-strip span {
        padding: 5px 8px;
        color: var(--halo-text);
        background: var(--halo-surface-sunken);
        border: 1px solid var(--halo-hairline);
        border-radius: 999px;
        font-size: .76rem;
        font-weight: 600;
    }
.marketing-workspace .segment-builder-header,
.marketing-workspace .sms-guidance,
.marketing-workspace .sms-counter {
        display: grid;
        gap: 3px;
        margin-bottom: 12px;
        padding: 12px;
        background: var(--halo-surface-sunken);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .segment-builder-header span,
.marketing-workspace .sms-guidance span,
.marketing-workspace .sms-counter span {
        color: var(--halo-text);
        font-weight: 700;
    }
.marketing-workspace .snippet-code-block {
        display: grid;
        gap: 10px;
        margin-top: 14px;
        padding: 12px;
        background: var(--halo-surface-sunken);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .snippet-code-block strong,
.marketing-workspace .snippet-code-block small {
        display: block;
    }
.marketing-workspace .snippet-code-block small {
        color: var(--halo-text-secondary);
    }
.marketing-workspace .snippet-code-block textarea {
        width: 100%;
        min-height: 92px;
        resize: vertical;
        padding: 10px;
        color: var(--halo-text);
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline-strong);
        border-radius: var(--halo-radius-lg);
        font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
        font-size: .82rem;
        line-height: 1.45;
    }
.marketing-workspace .segment-builder-header.compact {
        margin-bottom: 10px;
        padding: 10px;
    }
.marketing-workspace .marketing-form-grid.compact {
        grid-template-columns: 1fr;
        gap: 10px;
    }
.marketing-workspace .marketing-switches.compact {
        justify-content: space-between;
        margin-top: 10px;
    }
.marketing-workspace .snippet-install-panel {
        margin-top: 12px;
        border-top: 1px solid var(--halo-hairline);
    }
.marketing-workspace .snippet-install-panel summary {
        display: flex;
        gap: 8px;
        align-items: center;
        padding: 12px 0 0;
        color: var(--halo-text);
        font-size: .78rem;
        font-weight: 900;
        cursor: pointer;
        list-style: none;
    }
.marketing-workspace .snippet-install-panel summary::-webkit-details-marker {
        display: none;
    }
.marketing-workspace .snippet-install-panel .snippet-code-block {
        margin-top: 10px;
    }
.marketing-workspace .security-checklist {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 8px;
        margin-top: 10px;
    }
.marketing-workspace .security-checklist article {
        display: flex;
        gap: 7px;
        align-items: center;
        padding: 9px 10px;
        color: var(--halo-ink-success);
        background: var(--halo-surface-hover);
        border: 1px solid var(--halo-ink-success);
        border-radius: var(--halo-radius-lg);
        font-size: .78rem;
        font-weight: 700;
    }
.marketing-workspace .heatmap-frame {
        margin-top: 14px;
        overflow: hidden;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline-strong);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .heatmap-browser-bar {
        display: flex;
        gap: 7px;
        align-items: center;
        padding: 9px 12px;
        background: var(--halo-surface-sunken);
        border-bottom: 1px solid var(--halo-hairline);
    }
.marketing-workspace .heatmap-browser-bar span {
        width: 9px;
        height: 9px;
        background: var(--halo-hairline-strong);
        border-radius: 999px;
    }
.marketing-workspace .heatmap-browser-bar strong {
        min-width: 0;
        overflow: hidden;
        color: var(--halo-text-secondary);
        font-size: .78rem;
        font-weight: 600;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.marketing-workspace .heatmap-surface {
        position: relative;
        min-height: 360px;
        background:
            linear-gradient(180deg, rgb(from var(--halo-surface) r g b /  .96), rgb(from var(--halo-surface) r g b /  .96)),
            repeating-linear-gradient(0deg, transparent 0, transparent 72px, var(--halo-hairline) 73px),
            repeating-linear-gradient(90deg, transparent 0, transparent 90px, var(--halo-hairline) 91px);
    }
.marketing-workspace .heatmap-surface::before {
        content: "";
        position: absolute;
        inset: 34px 12% auto 12%;
        height: 56px;
        background: var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
        box-shadow: 0 96px 0 var(--halo-surface-sunken), 0 192px 0 var(--halo-surface-sunken);
    }
.marketing-workspace .heatmap-point {
        position: absolute;
        z-index: 1;
        display: block;
        border-radius: 999px;
        transform: translate(-50%, -50%);
        background: radial-gradient(circle, rgb(from var(--halo-ink-critical) r g b /  var(--heat-alpha)) 0, rgb(from var(--halo-ink-warning) r g b /  calc(var(--heat-alpha) * .72)) 48%, rgb(from var(--halo-ink-warning) r g b /  0) 72%);
        pointer-events: auto;
    }
.marketing-workspace .heatmap-point.form {
        background: radial-gradient(circle, rgb(from var(--halo-ink-success) r g b /  var(--heat-alpha)) 0, rgb(from var(--halo-ink-info) r g b /  calc(var(--heat-alpha) * .72)) 48%, rgb(from var(--halo-ink-info) r g b /  0) 72%);
    }
.marketing-workspace .scroll-heatmap {
        display: grid;
        gap: 10px;
        margin-top: 14px;
    }
.marketing-workspace .scroll-heatmap-header {
        display: flex;
        gap: 10px;
        align-items: baseline;
        justify-content: space-between;
    }
.marketing-workspace .scroll-heatmap-header strong {
        color: var(--halo-text);
        font-size: .86rem;
        font-weight: 900;
    }
.marketing-workspace .scroll-heatmap-header small {
        min-width: 0;
        overflow: hidden;
        color: var(--halo-text-secondary);
        font-size: .74rem;
        font-weight: 750;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.marketing-workspace .scroll-heatmap-track {
        display: grid;
        grid-template-columns: repeat(12, minmax(0, 1fr));
        min-height: 126px;
        overflow: hidden;
        border: 1px solid var(--halo-hairline-strong);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .scroll-heatmap-track article {
        display: grid;
        align-content: end;
        gap: 3px;
        min-width: 0;
        padding: 9px 7px;
        background:
            linear-gradient(180deg, rgb(from var(--halo-surface) r g b / .52), rgb(from var(--halo-surface) r g b / .08)),
            rgb(from var(--halo-ink-info) r g b /  calc(.08 + var(--traffic) * .68));
        border-right: 1px solid rgb(from var(--halo-surface) r g b / .75);
        color: var(--halo-text);
    }
.marketing-workspace .scroll-heatmap-track article:last-child {
        border-right: 0;
    }
.marketing-workspace .scroll-heatmap-track article.cold {
        background: var(--halo-surface-sunken);
        color: var(--halo-text-tertiary);
    }
.marketing-workspace .scroll-heatmap-track span,
.marketing-workspace .scroll-heatmap-track small {
        overflow: hidden;
        font-size: .66rem;
        font-weight: 600;
        line-height: 1.2;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.marketing-workspace .scroll-heatmap-track strong {
        overflow: hidden;
        font-size: 1.15rem;
        font-weight: 950;
        line-height: 1;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.marketing-workspace .session-activity-feed {
        display: grid;
        gap: 10px;
        max-height: 440px;
        overflow: auto;
        padding-right: 2px;
    }
.marketing-workspace .session-activity-feed article {
        display: grid;
        gap: 7px;
        padding: 12px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .session-feed-top {
        display: flex;
        gap: 10px;
        align-items: center;
        justify-content: space-between;
        min-width: 0;
    }
.marketing-workspace .session-feed-top span {
        overflow: hidden;
        color: var(--halo-text);
        font-size: .76rem;
        font-weight: 950;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.marketing-workspace .session-feed-top small,
.marketing-workspace .session-activity-feed article > small {
        color: var(--halo-text-secondary);
        font-size: .7rem;
        font-weight: 700;
    }
.marketing-workspace .session-activity-feed article > strong {
        color: var(--halo-text);
        font-size: .92rem;
        font-weight: 950;
    }
.marketing-workspace .session-activity-feed article > small {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.marketing-workspace .session-feed-metrics {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
    }
.marketing-workspace .session-feed-metrics span {
        padding: 5px 7px;
        color: var(--halo-text-secondary);
        background: var(--halo-surface-sunken);
        border: 1px solid var(--halo-hairline);
        border-radius: 999px;
        font-size: .68rem;
        font-weight: 800;
    }
.marketing-workspace .session-table-wrap  td {
        vertical-align: top;
    }
.marketing-workspace .session-table-wrap strong,
.marketing-workspace .session-table-wrap small {
        display: block;
    }
.marketing-workspace .session-table-wrap strong {
        color: var(--halo-text);
        font-size: .78rem;
        font-weight: 900;
    }
.marketing-workspace .session-table-wrap small {
        color: var(--halo-text-secondary);
        font-size: .7rem;
        font-weight: 720;
    }
.marketing-workspace .ai-analyst-header {
        display: grid;
        grid-template-columns: minmax(0, 1fr) max-content;
        gap: 12px;
        align-items: start;
    }
.marketing-workspace .ai-analyst-heading {
        display: grid;
        gap: 4px;
        min-width: 0;
    }
.marketing-workspace .ai-analyst-header strong {
        color: var(--halo-text);
        font-size: .92rem;
        font-weight: 950;
        line-height: 1.35;
    }
.marketing-workspace .ai-analyst-header small,
.marketing-workspace .ai-analyst-summary {
        color: var(--halo-text-secondary);
        font-size: .78rem;
        font-weight: 720;
    }
.marketing-workspace .ai-analyst-summary {
        margin: 12px 0 0;
        line-height: 1.5;
    }
.marketing-workspace .ai-analyze-button {
        align-self: start;
        min-width: 152px;
        min-height: 42px;
        white-space: nowrap;
        flex-shrink: 0;
    }
@media (max-width: 767px) {
.marketing-workspace .ai-analyst-header {
            grid-template-columns: 1fr;
        }
.marketing-workspace .ai-analyze-button {
            width: fit-content;
        }
    }
.marketing-workspace .ai-insight-list,
.marketing-workspace .ai-experiment-list,
.marketing-workspace .ai-limitations {
        display: grid;
        gap: 10px;
        margin-top: 12px;
    }
.marketing-workspace .ai-insight-list article,
.marketing-workspace .ai-experiment-list article {
        display: grid;
        gap: 5px;
        padding: 12px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        box-shadow: inset 3px 0 0 var(--halo-action-brand);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .ai-insight-list article.high {
        border-left-color: var(--halo-ink-critical);
    }
.marketing-workspace .ai-insight-list article.low {
        border-left-color: var(--halo-text-secondary);
    }
.marketing-workspace .ai-insight-list span,
.marketing-workspace .ai-experiment-list span {
        color: var(--halo-action-brand);
        font-size: .69rem;
        font-weight: 900;
        text-transform: uppercase;
    }
.marketing-workspace .ai-insight-list strong,
.marketing-workspace .ai-experiment-list strong {
        color: var(--halo-text);
        font-size: .86rem;
        font-weight: 950;
    }
.marketing-workspace .ai-insight-list small,
.marketing-workspace .ai-experiment-list small,
.marketing-workspace .ai-limitations span {
        color: var(--halo-text-secondary);
        font-size: .72rem;
        font-weight: 720;
    }
.marketing-workspace .ai-insight-list p,
.marketing-workspace .ai-experiment-list p {
        margin: 0;
        color: var(--halo-text);
        font-size: .76rem;
        line-height: 1.45;
    }
.marketing-workspace .ai-insight-list em {
        color: var(--halo-text);
        font-size: .75rem;
        font-style: normal;
        font-weight: 700;
    }
.marketing-workspace .ai-limitations span {
        padding: 8px 10px;
        background: var(--halo-surface-sunken);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .insight-list {
        display: grid;
        gap: 10px;
    }
.marketing-workspace .insight-list article {
        display: grid;
        gap: 4px;
        padding: 12px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        box-shadow: inset 3px 0 0 var(--halo-text-secondary);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .insight-list article.warning {
        border-left-color: var(--halo-ink-critical);
    }
.marketing-workspace .insight-list article.opportunity {
        border-left-color: var(--halo-action-brand);
    }
.marketing-workspace .insight-list span {
        color: var(--halo-text-secondary);
        font-size: .72rem;
        font-weight: 700;
        text-transform: uppercase;
    }
.marketing-workspace .insight-list strong {
        color: var(--halo-text);
        font-weight: 700;
    }
.marketing-workspace .insight-list small,
.marketing-workspace .insight-list p {
        margin: 0;
        color: var(--halo-text-secondary);
        line-height: 1.42;
    }
.marketing-workspace .segment-builder-header small,
.marketing-workspace .sms-guidance small,
.marketing-workspace .sms-counter small {
        color: var(--halo-text-secondary);
    }
.marketing-workspace .preset-grid {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin-bottom: 12px;
    }
.marketing-workspace .segment-studio {
        display: grid;
        grid-template-columns: minmax(0, 1.45fr) minmax(340px, .55fr);
        gap: 16px;
        align-items: start;
    }
.marketing-workspace .segment-command {
        grid-template-columns: minmax(0, 1fr) max-content;
        align-items: center;
    }
.marketing-workspace .segment-command-stats {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        justify-content: flex-end;
    }
.marketing-workspace .segment-meta-grid {
        display: grid;
        grid-template-columns: minmax(220px, 1fr) 120px minmax(180px, .72fr) minmax(150px, .56fr);
        gap: 10px;
        margin-bottom: 12px;
    }
.marketing-workspace .segment-builder-workspace {
        display: grid;
        grid-template-columns: minmax(240px, .72fr) minmax(340px, 1fr) minmax(280px, .78fr);
        gap: 12px;
        align-items: stretch;
        margin-top: 12px;
    }
.marketing-workspace .segment-palette,
.marketing-workspace .segment-rule-canvas,
.marketing-workspace .segment-rule-inspector {
        min-width: 0;
        min-height: 430px;
        padding: 12px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .segment-palette-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(116px, 1fr));
        gap: 8px;
    }
.marketing-workspace .segment-palette-block {
        display: grid;
        gap: 5px;
        justify-items: start;
        min-height: 94px;
        padding: 10px;
        color: var(--halo-text);
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline-strong);
        border-left: 4px solid var(--halo-action-brand);
        border-radius: var(--halo-radius-md);
        text-align: left;
        cursor: grab;
        font: inherit;
    }
.marketing-workspace .segment-palette-block:disabled {
        opacity: .46;
        cursor: not-allowed;
    }
.marketing-workspace .segment-palette-block:hover:not(:disabled) {
        border-color: rgb(from var(--halo-action-brand) r g b /  .34);
        box-shadow: var(--halo-shadow-2);
    }
.marketing-workspace .segment-palette-block span,
.marketing-workspace .segment-palette-block small {
        display: block;
        min-width: 0;
    }
.marketing-workspace .segment-palette-block span {
        color: var(--halo-text);
        font-size: .78rem;
        font-weight: 900;
        line-height: 1.2;
    }
.marketing-workspace .segment-palette-block small {
        color: var(--halo-text-secondary);
        font-size: .68rem;
        font-weight: 700;
        line-height: 1.25;
    }
.marketing-workspace .segment-palette-block.service { border-left-color: var(--halo-ink-success); }
.marketing-workspace .segment-palette-block.commerce { border-left-color: var(--halo-ink-warning); }
.marketing-workspace .segment-palette-block.date { border-left-color: var(--halo-action-brand); }
.marketing-workspace .segment-palette-block.intent { border-left-color: var(--halo-ink-info); }
.marketing-workspace .segment-palette-block.contact { border-left-color: var(--halo-text-secondary); }
.marketing-workspace .segment-rule-canvas {
        display: grid;
        grid-template-rows: auto auto minmax(0, 1fr);
        gap: 10px;
        background:
            linear-gradient(var(--halo-hairline) 1px, transparent 1px),
            linear-gradient(90deg, var(--halo-hairline) 1px, transparent 1px),
            var(--halo-canvas);
        background-size: 28px 28px;
    }
.marketing-workspace .segment-group-bar {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        padding: 8px 10px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-md);
    }
.marketing-workspace .segment-group-chip {
        display: inline-flex;
        align-items: center;
        gap: 2px;
        padding: 2px 6px 2px 2px;
        background: var(--halo-canvas);
        border: 1px solid var(--halo-hairline);
        border-radius: 999px;
    }
.marketing-workspace .segment-group-chip-main {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        padding: 4px 6px 4px 10px;
        background: transparent;
        border: none;
        border-radius: 999px;
        cursor: pointer;
        font: inherit;
    }
.marketing-workspace .segment-group-chip-main span {
        color: var(--halo-text);
        font-size: .78rem;
        font-weight: 800;
    }
.marketing-workspace .segment-group-chip-main em {
        color: var(--halo-text-secondary);
        font-size: .7rem;
        font-style: normal;
        font-weight: 700;
    }
.marketing-workspace .segment-group-chip.active {
        background: var(--halo-surface);
        border-color: var(--halo-action-brand);
        box-shadow: 0 0 0 1px var(--halo-action-brand);
    }
.marketing-workspace .segment-group-or {
        color: var(--halo-text-secondary);
        font-size: .72rem;
        font-weight: 900;
        letter-spacing: .04em;
    }
.marketing-workspace .segment-rule-canvas.drop-ready {
        outline: 2px dashed var(--halo-action-brand);
        outline-offset: -8px;
    }
.marketing-workspace .segment-canvas-heading {
        display: flex;
        justify-content: space-between;
        gap: 10px;
        align-items: flex-start;
        padding: 10px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-md);
    }
.marketing-workspace .segment-canvas-heading strong,
.marketing-workspace .segment-canvas-heading small {
        display: block;
    }
.marketing-workspace .segment-canvas-heading strong {
        color: var(--halo-text);
        font-size: .86rem;
        font-weight: 900;
    }
.marketing-workspace .segment-canvas-heading small {
        color: var(--halo-text-secondary);
        font-size: .72rem;
        font-weight: 700;
        text-align: right;
    }
.marketing-workspace .segment-rule-stack {
        display: grid;
        align-content: start;
        gap: 8px;
        min-height: 0;
        overflow: auto;
        padding-right: 2px;
    }
.marketing-workspace .segment-rule-card {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 32px;
        gap: 8px;
        align-items: center;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-left: 4px solid var(--halo-action-brand);
        border-radius: var(--halo-radius-md);
        box-shadow: none;
    }
.marketing-workspace .segment-rule-card.selected {
        border-color: var(--halo-action-brand);
        background: var(--halo-surface-hover);
        box-shadow: 0 0 0 3px rgb(from var(--halo-action-brand) r g b /  .14);
    }
.marketing-workspace .segment-rule-card.service { border-left-color: var(--halo-ink-success); }
.marketing-workspace .segment-rule-card.commerce { border-left-color: var(--halo-ink-warning); }
.marketing-workspace .segment-rule-card.date { border-left-color: var(--halo-action-brand); }
.marketing-workspace .segment-rule-card.intent { border-left-color: var(--halo-ink-info); }
.marketing-workspace .segment-rule-card.contact { border-left-color: var(--halo-text-secondary); }
.marketing-workspace .segment-rule-select {
        display: grid;
        grid-template-columns: 22px minmax(0, 1fr);
        gap: 8px;
        align-items: center;
        min-width: 0;
        padding: 10px 0 10px 10px;
        color: inherit;
        background: transparent;
        border: 0;
        text-align: left;
        cursor: pointer;
        font: inherit;
    }
.marketing-workspace .segment-rule-select span,
.marketing-workspace .segment-rule-select strong,
.marketing-workspace .segment-rule-select small,
.marketing-workspace .segment-rule-select em {
        display: block;
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.marketing-workspace .segment-rule-select strong {
        color: var(--halo-text);
        font-size: .82rem;
        font-weight: 900;
    }
.marketing-workspace .segment-rule-select small,
.marketing-workspace .segment-rule-select em {
        color: var(--halo-text-secondary);
        font-size: .7rem;
        font-style: normal;
        font-weight: 700;
    }
.marketing-workspace .segment-rule-select em {
        grid-column: 2;
        text-transform: uppercase;
    }
.marketing-workspace .segment-canvas-empty {
        display: grid;
        gap: 8px;
        place-items: center;
        min-height: 220px;
        padding: 20px;
        color: var(--halo-text-secondary);
        background: rgb(from var(--halo-surface) r g b /  .78);
        border: 1px dashed var(--halo-hairline-strong);
        border-radius: var(--halo-radius-md);
        text-align: center;
        font-weight: 800;
    }
.marketing-workspace .segment-rule-inspector {
        display: grid;
        align-content: start;
        gap: 10px;
        overflow: auto;
    }
.marketing-workspace .segment-inspector-grid,
.marketing-workspace .segment-contact-rules {
        display: grid;
        gap: 10px;
    }
.marketing-workspace .studio-shell {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(340px, .36fr);
        gap: 16px;
        align-items: start;
    }
.marketing-workspace .studio-main,
.marketing-workspace .studio-side {
        display: grid;
        gap: 16px;
    }
.marketing-workspace .studio-header-row {
        display: flex;
        justify-content: space-between;
        gap: 16px;
        align-items: flex-start;
        margin-bottom: 14px;
    }
.marketing-workspace .studio-header-row h3 {
        margin: 4px 0 4px;
        color: var(--halo-text);
        font-size: 1.05rem;
        font-weight: 700;
    }
.marketing-workspace .studio-header-row p {
        margin: 0;
        color: var(--halo-text-secondary);
        line-height: 1.45;
    }
.marketing-workspace .studio-controls {
        margin-bottom: 14px;
    }
.marketing-workspace .studio-step-toolbar {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        align-items: center;
        margin-bottom: 14px;
    }
.marketing-workspace .studio-canvas {
        display: grid;
        gap: 12px;
        min-height: 300px;
        overflow-x: auto;
        padding: 14px;
        background:
            linear-gradient(var(--halo-hairline) 1px, transparent 1px),
            linear-gradient(90deg, var(--halo-hairline) 1px, transparent 1px),
            var(--halo-surface-sunken);
        background-size: 28px 28px;
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .studio-lane {
        display: grid;
        grid-template-columns: 172px minmax(0, 1fr);
        gap: 10px;
        align-items: center;
        min-width: max-content;
    }
.marketing-workspace .studio-lane-label {
        display: inline-flex;
        align-items: center;
        min-height: 28px;
        padding: 4px 8px;
        color: var(--halo-text-secondary);
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline-strong);
        border-radius: var(--halo-radius-lg);
        font-size: .72rem;
        font-weight: 700;
        text-transform: uppercase;
    }
.marketing-workspace .studio-path {
        display: flex;
        gap: 10px;
        align-items: center;
    }
.marketing-workspace .studio-node {
        display: grid;
        grid-template-columns: 18px minmax(0, 1fr);
        gap: 6px 8px;
        align-items: center;
        flex: 0 0 190px;
        min-height: 84px;
        padding: 10px;
        text-align: left;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline-strong);
        border-radius: var(--halo-radius-lg);
        box-shadow: 0 8px 22px rgb(from var(--halo-text) r g b /  .05);
        cursor: pointer;
        font: inherit;
    }
.marketing-workspace .studio-node span {
        color: var(--halo-text);
        font-size: .84rem;
        font-weight: 700;
    }
.marketing-workspace .studio-node small {
        grid-column: 1 / -1;
        color: var(--halo-text-secondary);
        line-height: 1.35;
    }
.marketing-workspace .studio-node:hover,
.marketing-workspace .studio-node.selected {
        border-color: var(--halo-action-brand);
        box-shadow: 0 10px 28px rgb(from var(--halo-action-brand) r g b /  .12);
    }
.marketing-workspace .studio-node.selected {
        background: var(--halo-surface-hover);
    }
.marketing-workspace .studio-node.entry {
        border-left-color: var(--halo-action-brand);
    }
.marketing-workspace .studio-node.condition {
        border-left-color: var(--halo-ink-info);
    }
.marketing-workspace .studio-node.wait {
        border-left-color: var(--halo-ink-warning);
    }
.marketing-workspace .studio-node.email {
        border-left-color: var(--halo-ink-success);
    }
.marketing-workspace .studio-node.sms {
        border-left-color: var(--halo-action-brand);
    }
.marketing-workspace .studio-node.call {
        border-left-color: var(--halo-ink-warning);
    }
.marketing-workspace .studio-node.exit {
        border-left-color: var(--halo-text-secondary);
    }
.marketing-workspace .studio-arrow {
        color: var(--halo-text-tertiary);
        flex: 0 0 18px;
        justify-self: center;
    }
.marketing-workspace .readiness-list,
.marketing-workspace .path-sim,
.marketing-workspace .journey-edit-list {
        display: grid;
        gap: 8px;
    }
.marketing-workspace .journey-edit-list article {
        display: flex;
        justify-content: space-between;
        gap: 10px;
        align-items: center;
        padding: 10px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .journey-edit-list article.selected {
        border-color: var(--halo-action-brand);
        background: var(--halo-surface-hover);
    }
.marketing-workspace .journey-edit-list strong,
.marketing-workspace .journey-edit-list small {
        display: block;
    }
.marketing-workspace .journey-edit-list small {
        color: var(--halo-text-secondary);
    }
.marketing-workspace .readiness-row {
        display: flex;
        gap: 8px;
        align-items: flex-start;
        padding: 9px 10px;
        color: var(--halo-text-secondary);
        background: var(--halo-surface-sunken);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
        font-weight: 750;
    }
.marketing-workspace .readiness-row > div,
.marketing-workspace .readiness-row span,
.marketing-workspace .readiness-row small {
        display: block;
    }
.marketing-workspace .readiness-row small {
        margin-top: 2px;
        color: var(--halo-text-secondary);
        font-size: .74rem;
        font-weight: 600;
        line-height: 1.35;
    }
.marketing-workspace .readiness-row.ready small {
        color: inherit;
        opacity: .82;
    }
.marketing-workspace .readiness-row.ready {
        color: var(--halo-ink-success);
        background: var(--halo-surface-hover);
        border-color: var(--halo-ink-success);
    }
.marketing-workspace .studio-summary {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
        margin: 12px 0;
    }
.marketing-workspace .studio-summary article,
.marketing-workspace .path-sim article {
        padding: 10px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .studio-summary span,
.marketing-workspace .path-sim strong {
        display: block;
        color: var(--halo-text);
        font-size: 1.05rem;
        font-weight: 700;
    }
.marketing-workspace .studio-summary small,
.marketing-workspace .path-sim small {
        color: var(--halo-text-secondary);
    }
.marketing-workspace .path-sim span {
        display: block;
        color: var(--halo-text-secondary);
        font-size: .78rem;
        font-weight: 700;
    }
.marketing-workspace .step-settings-head {
        display: flex;
        gap: 10px;
        align-items: flex-start;
        margin-bottom: 14px;
        padding: 12px;
        background: var(--halo-surface-sunken);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .step-detail-grid {
        margin-top: 12px;
    }
.marketing-workspace .step-preview-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 8px;
    }
.marketing-workspace .step-preview-grid article {
        min-width: 0;
        padding: 10px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .step-preview-grid span,
.marketing-workspace .step-preview-grid small {
        display: block;
        min-width: 0;
        overflow-wrap: anywhere;
    }
.marketing-workspace .step-preview-grid span {
        color: var(--halo-text);
        font-weight: 700;
    }
.marketing-workspace .step-preview-grid small {
        color: var(--halo-text-secondary);
    }
.marketing-workspace .journey-builder-modal {
        position: fixed;
        inset: 0;
        z-index: var(--halo-z-modal);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 18px;
        background: rgb(from var(--halo-text) r g b /  .56);
    }
.marketing-workspace .journey-builder-panel {
        display: grid;
        grid-template-rows: auto auto minmax(0, 1fr);
        width: min(1500px, 100%);
        height: min(900px, calc(100vh - 36px));
        overflow: hidden;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline-strong);
        border-radius: var(--halo-radius-lg);
        box-shadow: 0 24px 80px rgb(from var(--halo-text) r g b /  .28);
    }
.marketing-workspace .journey-builder-header,
.marketing-workspace .journey-builder-meta {
        display: flex;
        gap: 12px;
        align-items: center;
        padding: 14px 16px;
        border-bottom: 1px solid var(--halo-hairline);
    }
.marketing-workspace .journey-builder-header {
        justify-content: space-between;
    }
.marketing-workspace .journey-builder-header h3 {
        margin: 2px 0 0;
        color: var(--halo-text);
        font-size: 1.05rem;
        font-weight: 700;
    }
.marketing-workspace .journey-builder-header-actions {
        display: flex;
        gap: 8px;
        align-items: center;
    }
.marketing-workspace .journey-builder-meta {
        display: grid;
        grid-template-columns: minmax(180px, 1fr) minmax(160px, .8fr) minmax(220px, 1fr) auto;
        background: var(--halo-surface-sunken);
    }
.marketing-workspace .journey-builder-workspace {
        display: grid;
        grid-template-columns: 120px minmax(0, 1fr) 360px;
        min-height: 0;
    }
.marketing-workspace .builder-palette,
.marketing-workspace .builder-inspector {
        min-height: 0;
        overflow-y: auto;
        padding: 12px;
        background: var(--halo-surface);
        border-right: 1px solid var(--halo-hairline);
    }
.marketing-workspace .builder-inspector {
        border-right: 0;
        border-left: 1px solid var(--halo-hairline);
    }
.marketing-workspace .builder-palette {
        display: grid;
        align-content: start;
        gap: 8px;
    }
.marketing-workspace .builder-palette-block {
        display: grid;
        gap: 6px;
        justify-items: center;
        min-height: 72px;
        padding: 10px 8px;
        color: var(--halo-text);
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline-strong);
        border-radius: var(--halo-radius-lg);
        font: inherit;
        font-size: .78rem;
        font-weight: 700;
        cursor: grab;
    }
.marketing-workspace .builder-palette-block.sms { border-left-color: var(--halo-action-brand); }
.marketing-workspace .builder-palette-block.email { border-left-color: var(--halo-ink-success); }
.marketing-workspace .builder-palette-block.call { border-left-color: var(--halo-ink-warning); }
.marketing-workspace .builder-palette-block.wait { border-left-color: var(--halo-ink-warning); }
.marketing-workspace .builder-palette-block.condition { border-left-color: var(--halo-ink-info); }
.marketing-workspace .builder-palette-block.link { border-left-color: var(--halo-text); cursor: pointer; }
.marketing-workspace .builder-canvas-shell {
        position: relative;
        min-width: 0;
        min-height: 0;
        overflow: hidden;
        background: var(--halo-surface-sunken);
    }
.marketing-workspace .builder-zoom-controls {
        position: absolute;
        top: 10px;
        right: 12px;
        z-index: 6;
        display: flex;
        gap: 2px;
        align-items: center;
        padding: 2px 6px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline-strong);
        border-radius: 999px;
        box-shadow: 0 6px 18px rgb(from var(--halo-text) r g b /  .12);
    }
.marketing-workspace .builder-zoom-label {
        min-width: 42px;
        color: var(--halo-text);
        font-size: .74rem;
        font-weight: 800;
        text-align: center;
    }
.marketing-workspace .builder-zoom-divider {
        width: 1px;
        height: 18px;
        margin: 0 4px;
        background: var(--halo-hairline);
    }
.marketing-workspace .builder-condition-hint {
        display: block;
        margin: 2px 0 6px;
        color: var(--halo-text-secondary);
        font-size: .72rem;
        font-weight: 600;
        line-height: 1.35;
    }
.marketing-workspace .builder-canvas {
        position: relative;
        width: 100%;
        height: 100%;
        overflow: hidden;
        cursor: grab;
        touch-action: none;
        background: var(--halo-surface-sunken);
    }
.marketing-workspace .builder-canvas.panning {
        cursor: grabbing;
    }
.marketing-workspace .builder-canvas-stage {
        position: absolute;
        left: 0;
        top: 0;
        width: 1500px;
        height: 980px;
        transform-origin: 0 0;
        will-change: transform;
        background:
            linear-gradient(var(--halo-hairline) 1px, transparent 1px),
            linear-gradient(90deg, var(--halo-hairline) 1px, transparent 1px),
            var(--halo-surface-sunken);
        background-size: 28px 28px;
        border: 1px dashed var(--halo-hairline-strong);
        border-radius: var(--halo-radius-md);
    }
.marketing-workspace .builder-canvas.drop-ready {
        outline: 2px dashed var(--halo-action-brand);
        outline-offset: -8px;
    }
.marketing-workspace .builder-canvas.connection-mode {
        cursor: crosshair;
    }
.marketing-workspace .builder-entry-node,
.marketing-workspace .builder-node {
        position: absolute;
        display: grid;
        gap: 6px;
        width: 220px;
        min-height: 96px;
        padding: 10px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline-strong);
        border-radius: var(--halo-radius-lg);
        box-shadow: 0 10px 24px rgb(from var(--halo-text) r g b /  .08);
    }
.marketing-workspace .builder-entry-node {
        left: 28px;
        top: 28px;
        border-left-color: var(--halo-action-brand);
        cursor: pointer;
    }
.marketing-workspace .builder-node {
        cursor: move;
    }
.marketing-workspace .builder-entry-node.selected,
.marketing-workspace .builder-node.selected {
        border-color: var(--halo-action-brand);
        background: var(--halo-surface-hover);
        box-shadow: 0 12px 30px rgb(from var(--halo-action-brand) r g b /  .16);
    }
.marketing-workspace .builder-entry-node.connecting,
.marketing-workspace .builder-node.connecting {
        box-shadow: 0 0 0 4px rgb(from var(--halo-action-brand) r g b /  .14), 0 10px 24px rgb(from var(--halo-text) r g b /  .08);
    }
.marketing-workspace .builder-node.sms { border-left-color: var(--halo-action-brand); }
.marketing-workspace .builder-node.email { border-left-color: var(--halo-ink-success); }
.marketing-workspace .builder-node.call { border-left-color: var(--halo-ink-warning); }
.marketing-workspace .builder-node.wait { border-left-color: var(--halo-ink-warning); }
.marketing-workspace .builder-node.condition { border-left-color: var(--halo-ink-info); }
.marketing-workspace .builder-node-top {
        display: grid;
        grid-template-columns: 22px minmax(0, 1fr) repeat(2, 28px);
        gap: 7px;
        align-items: center;
    }
.marketing-workspace .builder-node-link,
.marketing-workspace .builder-node-delete {
        display: inline-grid;
        place-items: center;
        width: 28px;
        height: 28px;
        padding: 0;
        color: var(--halo-text-secondary);
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-sm);
        cursor: pointer;
    }
.marketing-workspace .builder-node-link:hover,
.marketing-workspace .builder-node-delete:hover {
        color: var(--halo-text);
        border-color: var(--halo-action-brand);
    }
.marketing-workspace .builder-node-delete {
        color: var(--halo-ink-critical);
        opacity: 0;
        transition: opacity 140ms ease, border-color 140ms ease, color 140ms ease;
    }
.marketing-workspace .builder-node:hover .builder-node-delete,
.marketing-workspace .builder-node.selected .builder-node-delete {
        opacity: 1;
    }
.marketing-workspace .builder-node-delete:hover {
        color: var(--halo-ink-critical);
        border-color: var(--halo-ink-critical);
    }
.marketing-workspace .builder-node-icon {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        color: var(--halo-text-secondary);
    }
.marketing-workspace .builder-entry-node strong,
.marketing-workspace .builder-node strong {
        color: var(--halo-text);
        font-weight: 700;
    }
.marketing-workspace .builder-entry-node small,
.marketing-workspace .builder-node small,
.marketing-workspace .builder-node p {
        margin: 0;
        color: var(--halo-text-secondary);
        font-size: .76rem;
        line-height: 1.35;
        overflow-wrap: anywhere;
    }
.marketing-workspace .builder-connector-layer {
        position: absolute;
        inset: 0;
        width: 1500px;
        height: 980px;
        pointer-events: none;
    }
.marketing-workspace .builder-connector-hit-area {
        cursor: pointer;
        pointer-events: auto;
    }
.marketing-workspace .builder-connector-layer path {
        fill: none;
        stroke: var(--halo-text-tertiary);
        stroke-width: 2;
    }
.marketing-workspace .builder-connector-layer .connector-hit-path {
        stroke: transparent;
        stroke-width: 16;
        stroke-linecap: round;
    }
.marketing-workspace .builder-connector-layer path.connector-yes {
        stroke: var(--halo-ink-success);
    }
.marketing-workspace .builder-connector-layer path.connector-no {
        stroke: var(--halo-ink-critical);
    }
.marketing-workspace .builder-connector-hit-area:hover path.connector-next,
.marketing-workspace .builder-connector-hit-area:hover path.connector-yes,
.marketing-workspace .builder-connector-hit-area:hover path.connector-no,
.marketing-workspace .builder-connector-hit-area.selected path.connector-next,
.marketing-workspace .builder-connector-hit-area.selected path.connector-yes,
.marketing-workspace .builder-connector-hit-area.selected path.connector-no {
        stroke-width: 4;
    }
.marketing-workspace .builder-connector-layer text {
        fill: var(--halo-text-secondary);
        font-size: 12px;
        font-weight: 600;
        paint-order: stroke;
        stroke: var(--halo-surface);
        stroke-width: 4px;
    }
.marketing-workspace .builder-connector-layer marker path {
        fill: var(--halo-text-tertiary);
    }
.marketing-workspace .builder-connector-delete {
        opacity: 0;
        transition: opacity 140ms ease;
    }
.marketing-workspace .builder-connector-hit-area:hover .builder-connector-delete,
.marketing-workspace .builder-connector-hit-area.selected .builder-connector-delete {
        opacity: 1;
    }
.marketing-workspace .builder-connector-delete circle {
        fill: var(--halo-surface);
        stroke: var(--halo-ink-critical);
        stroke-width: 1.5;
    }
.marketing-workspace .builder-connector-delete path {
        fill: none;
        stroke: var(--halo-ink-critical);
        stroke-width: 2;
        stroke-linecap: round;
    }
.marketing-workspace .builder-connection-hint {
        position: absolute;
        top: 16px;
        left: 50%;
        z-index: 2;
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 8px 12px;
        color: var(--halo-text);
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline-strong);
        border-radius: 999px;
        box-shadow: 0 10px 24px rgb(from var(--halo-text) r g b /  .12);
        font-size: .78rem;
        font-weight: 700;
        pointer-events: none;
        transform: translateX(-50%);
    }
.marketing-workspace .builder-inspector-header {
        display: flex;
        justify-content: space-between;
        gap: 10px;
        align-items: flex-start;
        margin-bottom: 12px;
        padding: 10px;
        background: var(--halo-surface-sunken);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .builder-inspector-header span,
.marketing-workspace .builder-inspector-header strong {
        display: block;
    }
.marketing-workspace .builder-inspector-header span {
        color: var(--halo-text-secondary);
        font-size: .72rem;
        font-weight: 700;
        text-transform: uppercase;
    }
.marketing-workspace .builder-inspector-header strong {
        color: var(--halo-text);
        font-weight: 700;
    }
.marketing-workspace .builder-inspector-fields {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
        margin-bottom: 10px;
    }
.marketing-workspace .entry-start-picker {
        display: grid;
        gap: 8px;
        padding: 10px;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg);
    }
.marketing-workspace .entry-start-picker strong {
        color: var(--halo-text);
        font-size: .78rem;
        font-weight: 700;
    }
.marketing-workspace .entry-target-button {
        display: grid;
        grid-template-columns: 20px minmax(0, 1fr);
        gap: 8px;
        align-items: center;
        min-height: 36px;
        padding: 7px 9px;
        color: var(--halo-text);
        text-align: left;
        background: var(--halo-surface);
        border: 1px solid var(--halo-hairline-strong);
        border-left-width: 4px;
        border-radius: var(--halo-radius-md);
        font: inherit;
        font-size: .78rem;
        font-weight: 700;
        cursor: pointer;
    }
.marketing-workspace .entry-target-button span {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
.marketing-workspace .entry-target-button.sms { border-left-color: var(--halo-action-brand); }
.marketing-workspace .entry-target-button.email { border-left-color: var(--halo-ink-success); }
.marketing-workspace .entry-target-button.call { border-left-color: var(--halo-ink-warning); }
.marketing-workspace .entry-target-button.wait { border-left-color: var(--halo-ink-warning); }
.marketing-workspace .entry-target-button.condition { border-left-color: var(--halo-ink-info); }
.marketing-workspace .entry-target-button:hover {
        border-color: var(--halo-action-brand);
        box-shadow: 0 8px 18px rgb(from var(--halo-text) r g b /  .08);
    }
.marketing-workspace .builder-repeat-panel {
        display: grid;
        gap: 10px;
        margin-top: 12px;
        padding-top: 12px;
        border-top: 1px solid var(--halo-hairline);
    }
.marketing-workspace .builder-inspector-empty {
        display: grid;
        gap: 8px;
        justify-items: center;
        padding: 28px 12px;
        color: var(--halo-text-secondary);
        background: var(--halo-surface-sunken);
        border: 1px dashed var(--halo-hairline-strong);
        border-radius: var(--halo-radius-lg);
        font-weight: 600;
    }
.marketing-workspace .step-settings-head strong,
.marketing-workspace .step-settings-head small {
        display: block;
    }
.marketing-workspace .step-settings-head strong {
        color: var(--halo-text);
        font-weight: 700;
    }
.marketing-workspace .step-settings-head small,
.marketing-workspace .step-settings-empty {
        color: var(--halo-text-secondary);
    }
.marketing-workspace .step-settings-empty {
        display: flex;
        gap: 8px;
        align-items: center;
        padding: 12px;
        background: var(--halo-surface-sunken);
        border: 1px dashed var(--halo-hairline-strong);
        border-radius: var(--halo-radius-lg);
        font-weight: 750;
    }
@media (max-width: 1024px) {
.marketing-workspace .marketing-hero,
.marketing-workspace .marketing-command-grid,
.marketing-workspace .marketing-split,
.marketing-workspace .heatmap-website-strip,
.marketing-workspace .heatmap-main-grid,
.marketing-workspace .heatmap-insight-grid,
.marketing-workspace .segment-studio,
.marketing-workspace .segment-builder-workspace,
.marketing-workspace .studio-shell {
            grid-template-columns: 1fr;
        }
.marketing-workspace .report-kpis {
            grid-template-columns: repeat(3, minmax(0, 1fr));
        }
.marketing-workspace .security-checklist {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }
    }
@media (max-width: 767px) {
.marketing-workspace .marketing-form-grid,
.marketing-workspace .segment-meta-grid,
.marketing-workspace .marketing-metrics,
.marketing-workspace .health-grid,
.marketing-workspace .report-kpis,
.marketing-workspace .heatmap-kpi-strip,
.marketing-workspace .studio-summary,
.marketing-workspace .security-checklist {
            grid-template-columns: 1fr;
        }
.marketing-workspace .heatmap-website-list {
            grid-template-columns: 1fr;
        }
.marketing-workspace .heatmap-website-pill {
            grid-template-columns: 10px minmax(0, 1fr) 24px;
        }
.marketing-workspace .heatmap-site-stat {
            grid-column: 2 / -1;
            width: fit-content;
        }
.marketing-workspace .heatmap-performance-header {
            grid-template-columns: 1fr;
        }
.marketing-workspace .heatmap-page-badge {
            max-width: 100%;
            width: fit-content;
        }
.marketing-workspace .automation-recipe {
            grid-template-columns: 1fr;
        }
    }
.marketing-workspace .marketing-hero,
.marketing-workspace .heatmap-website-strip,
.marketing-workspace .marketing-tabs {
        background: var(--halo-surface, var(--halo-surface));
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg, 18px);
        box-shadow: none;
    }
.marketing-workspace .marketing-hero {
        padding: 22px;
    }
.marketing-workspace .marketing-kicker {
        color: var(--halo-action-brand);
        font-size: .72rem;
        font-weight: 900;
        letter-spacing: .06em;
    }
.marketing-workspace .marketing-hero h2,
.marketing-workspace .studio-header-row h3,
.marketing-workspace .journey-builder-header h3 {
        color: var(--halo-text);
        font-weight: 800;
        letter-spacing: 0;
    }
.marketing-workspace .marketing-hero h2 {
        font-size: 1.5rem;
        line-height: 1.18;
    }
.marketing-workspace .marketing-tabs {
        padding: 10px;
    }
.marketing-workspace .marketing-metrics article,
.marketing-workspace .health-grid article,
.marketing-workspace .heatmap-kpi-strip article,
.marketing-workspace .studio-summary article,
.marketing-workspace .path-sim article,
.marketing-workspace .step-preview-grid article {
        background: var(--halo-surface, var(--halo-surface));
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-md, 14px);
        box-shadow: none;
    }
.marketing-workspace .marketing-metrics span,
.marketing-workspace .health-grid span,
.marketing-workspace .heatmap-kpi-strip span,
.marketing-workspace .studio-summary span,
.marketing-workspace .path-sim strong {
        color: var(--halo-text);
        font-weight: 800;
    }
.marketing-workspace .marketing-table-wrap {
        background: var(--halo-surface, var(--halo-surface));
        border-color: var(--halo-hairline);
        border-radius: var(--halo-radius-md, 14px);
    }
.marketing-workspace .marketing-table-wrap  th {
        background: var(--halo-surface-sunken) !important;
        color: var(--halo-text-secondary) !important;
        font-weight: 800 !important;
        letter-spacing: .06em !important;
        text-transform: uppercase !important;
    }
.marketing-workspace .marketing-table-wrap  td {
        border-bottom-color: var(--halo-hairline) !important;
    }
.marketing-workspace .delivery-feed article,
.marketing-workspace .attribution-feed article,
.marketing-workspace .audience-list article,
.marketing-workspace .segment-row,
.marketing-workspace .template-row,
.marketing-workspace .journey-edit-list article,
.marketing-workspace .session-activity-feed article,
.marketing-workspace .ai-insight-list article,
.marketing-workspace .ai-experiment-list article,
.marketing-workspace .insight-list article {
        background: var(--halo-surface, var(--halo-surface));
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-md, 14px);
        box-shadow: none;
    }
.marketing-workspace .segment-row:hover,
.marketing-workspace .template-row:hover,
.marketing-workspace .journey-edit-list article:hover,
.marketing-workspace .heatmap-website-pill:hover,
.marketing-workspace .appointment-upcoming-item:hover {
        border-color: rgb(from var(--halo-action-brand) r g b /  .34);
        background: var(--halo-surface-hover);
    }
.marketing-workspace .segment-row.selected,
.marketing-workspace .template-row.selected,
.marketing-workspace .journey-edit-list article.selected,
.marketing-workspace .heatmap-website-pill.selected,
.marketing-workspace .studio-node.selected,
.marketing-workspace .builder-node.selected {
        background: var(--halo-surface-hover);
        border-color: var(--halo-action-brand);
        box-shadow: 0 0 0 3px rgb(from var(--halo-action-brand) r g b /  .14);
    }
.marketing-workspace .token-strip span,
.marketing-workspace .session-feed-metrics span,
.marketing-workspace .heatmap-site-stat,
.marketing-workspace .heatmap-page-badge {
        border-radius: var(--halo-radius-pill, 999px);
    }
.marketing-workspace .segment-builder-header,
.marketing-workspace .sms-guidance,
.marketing-workspace .sms-counter,
.marketing-workspace .snippet-code-block,
.marketing-workspace .automation-recipe,
.marketing-workspace .readiness-row,
.marketing-workspace .step-settings-head,
.marketing-workspace .builder-inspector-header,
.marketing-workspace .builder-inspector-empty,
.marketing-workspace .step-settings-empty,
.marketing-workspace .ai-limitations span {
        background: var(--halo-surface-sunken);
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-md, 14px);
        box-shadow: none;
    }
.marketing-workspace .readiness-row.ready,
.marketing-workspace .security-checklist article {
        background: var(--halo-surface-hover);
        border-color: rgb(from var(--halo-ink-success) r g b /  .36);
        color: var(--halo-ink-success);
    }
.marketing-workspace .studio-canvas,
.marketing-workspace .segment-rule-canvas,
.marketing-workspace .builder-canvas-stage {
        background:
            linear-gradient(var(--halo-hairline) 1px, transparent 1px),
            linear-gradient(90deg, var(--halo-hairline) 1px, transparent 1px),
            var(--halo-canvas);
        border-color: var(--halo-hairline);
        border-radius: var(--halo-radius-lg, 18px);
    }
.marketing-workspace .studio-lane-label,
.marketing-workspace .builder-connection-hint,
.marketing-workspace .automation-recipe > div {
        background: var(--halo-surface, var(--halo-surface));
        border-color: var(--halo-hairline);
        border-radius: var(--halo-radius-pill, 999px);
    }
.marketing-workspace .studio-node,
.marketing-workspace .segment-palette-block,
.marketing-workspace .segment-rule-card,
.marketing-workspace .segment-palette,
.marketing-workspace .segment-rule-inspector,
.marketing-workspace .builder-palette-block,
.marketing-workspace .builder-entry-node,
.marketing-workspace .builder-node {
        background: var(--halo-surface, var(--halo-surface));
        border-color: var(--halo-hairline);
        border-radius: var(--halo-radius-md, 14px);
        box-shadow: none;
    }
.marketing-workspace .studio-node:hover,
.marketing-workspace .segment-palette-block:hover:not(:disabled),
.marketing-workspace .segment-rule-card:hover,
.marketing-workspace .builder-palette-block:hover,
.marketing-workspace .builder-node:hover,
.marketing-workspace .builder-entry-node:hover {
        border-color: rgb(from var(--halo-action-brand) r g b /  .34);
        box-shadow: var(--halo-shadow-2, 0 8px 28px rgb(from var(--halo-text) r g b /  .10));
    }
.marketing-workspace .studio-node.entry,
.marketing-workspace .studio-node.sms,
.marketing-workspace .builder-palette-block.sms,
.marketing-workspace .builder-node.sms,
.marketing-workspace .builder-entry-node {
        border-left-color: var(--halo-action-brand);
    }
.marketing-workspace .studio-node.condition,
.marketing-workspace .builder-palette-block.condition,
.marketing-workspace .builder-node.condition {
        border-left-color: var(--halo-action-brand);
    }
.marketing-workspace .heatmap-frame,
.marketing-workspace .scroll-heatmap-track {
        background: var(--halo-surface, var(--halo-surface));
        border-color: var(--halo-hairline);
        border-radius: var(--halo-radius-lg, 18px);
        box-shadow: none;
    }
.marketing-workspace .heatmap-browser-bar {
        background: var(--halo-surface);
        border-bottom-color: var(--halo-hairline);
    }
.marketing-workspace .heatmap-browser-bar strong {
        color: var(--halo-surface);
    }
.marketing-workspace .heatmap-browser-bar span {
        background: rgb(from var(--halo-surface) r g b /  .34);
    }
.marketing-workspace .heatmap-surface {
        background:
            repeating-linear-gradient(0deg, transparent 0, transparent 72px, var(--halo-hairline) 73px),
            repeating-linear-gradient(90deg, transparent 0, transparent 90px, var(--halo-hairline) 91px),
            var(--halo-canvas);
    }
.marketing-workspace .heatmap-surface::before {
        background: var(--halo-hairline);
        border-radius: var(--halo-radius-md, 14px);
        box-shadow: 0 96px 0 var(--halo-surface-sunken), 0 192px 0 var(--halo-surface-sunken);
    }
.marketing-workspace .journey-builder-modal {
        background: rgb(from var(--halo-text) r g b /  .50);
    }
.marketing-workspace .journey-builder-panel {
        background: var(--halo-surface, var(--halo-surface));
        border: 1px solid var(--halo-hairline);
        border-radius: var(--halo-radius-lg, 18px);
        box-shadow: var(--halo-shadow-3, 0 24px 64px rgb(from var(--halo-text) r g b /  .24));
    }
.marketing-workspace .journey-builder-header {
        background: var(--halo-surface, var(--halo-surface));
    }
.marketing-workspace .journey-builder-meta {
        background: var(--halo-surface-sunken);
    }
.marketing-workspace .builder-palette,
.marketing-workspace .builder-inspector {
        background: var(--halo-surface, var(--halo-surface));
        border-color: var(--halo-hairline);
    }
.marketing-workspace .builder-canvas-shell {
        background: var(--halo-canvas);
    }
.marketing-workspace .builder-node-link {
        border-radius: var(--halo-radius-pill, 999px);
    }
.marketing-workspace .builder-connector-layer text {
        fill: var(--halo-text-secondary);
        stroke: var(--halo-surface, var(--halo-surface));
    }
.marketing-workspace .builder-connector-layer path {
        stroke: var(--halo-text-tertiary);
    }
.marketing-workspace .builder-connector-layer path.connector-yes {
        stroke: var(--halo-ink-success);
    }
.marketing-workspace .builder-connector-layer path.connector-no {
        stroke: var(--halo-ink-critical);
    }
@media (max-width: 767px) {
.marketing-workspace .reports-header {
            align-items: stretch;
            flex-direction: column;
        }
.marketing-workspace .report-period {
            width: 100%;
            flex-basis: auto;
        }
.marketing-workspace .marketing-hero,
.marketing-workspace .heatmap-website-strip,
.marketing-workspace .journey-builder-panel {
            border-radius: var(--halo-radius-md, 14px);
        }
.marketing-workspace .journey-builder-workspace {
            grid-template-columns: 1fr;
        }
.marketing-workspace .builder-palette {
            grid-template-columns: repeat(5, minmax(72px, 1fr));
            overflow-x: auto;
        }
.marketing-workspace .builder-inspector {
            border-left: 0;
            border-top: 1px solid var(--halo-hairline);
        }
    }
.marketing-workspace .operations-work-grid {
    margin-top: var(--halo-4);
}
.marketing-workspace .operations-work-list {
    display: grid;
    gap: var(--halo-3);
}
.marketing-workspace .operations-work-list > article {
    display: grid;
    gap: var(--halo-3);
    padding: var(--halo-4);
    background: var(--halo-surface-sunken);
    border: 1px solid var(--halo-hairline);
    border-radius: var(--halo-radius-md);
}
.marketing-workspace .operations-work-list > article > div:first-child {
    display: grid;
    gap: var(--halo-1);
    min-width: 0;
}
.marketing-workspace .operations-work-list strong,
.marketing-workspace .operations-work-list span,
.marketing-workspace .operations-work-list small {
    display: block;
}
.marketing-workspace .operations-work-list strong {
    color: var(--halo-text);
}
.marketing-workspace .operations-work-list span,
.marketing-workspace .operations-work-list small,
.marketing-workspace .operations-work-list p {
    color: var(--halo-text-secondary);
}
.marketing-workspace .operations-work-list p {
    margin: var(--halo-2) 0 0;
    line-height: 1.5;
}
.marketing-workspace .compact-actions {
    margin-top: 0;
}
@media (max-width: 900px) {
.marketing-workspace .operations-work-grid {
        grid-template-columns: 1fr;
    }
}

.marketing-workspace .marketing-hero {
    background: color-mix(in srgb, rgb(var(--halo-tone-campaign)) var(--halo-glass-tint), var(--halo-glass-base));
    box-shadow: var(--halo-shadow-1); backdrop-filter: var(--halo-glass-blur);
}
.marketing-workspace .marketing-metrics article span,
.marketing-workspace .report-kpis article span { color: var(--halo-ink-campaign); font-variant-numeric: tabular-nums; }
.marketing-workspace .campaign-wizard .studio-shell { display: block; }
.marketing-workspace .campaign-wizard[data-step="4"] .studio-main { display: none; }
.marketing-workspace .halo-disclosure { margin-block: var(--halo-4); border: 1px solid var(--halo-hairline); border-radius: var(--halo-radius-md); padding: var(--halo-3); }
.marketing-workspace .halo-disclosure summary { cursor: pointer; font-weight: 600; color: var(--halo-text-secondary); }
.marketing-workspace .report-grid { display: block; }
.marketing-workspace .marketing-table-wrap { overflow: visible; }
.marketing-workspace .studio-side { display: grid; gap: var(--halo-4); }
.marketing-workspace .marketing-actions { flex-wrap: wrap; }

.marketing-workspace .halo-editor-fields { border: 0; padding: 0; margin: 0; min-width: 0; }

.marketing-workspace .marketing-content-area .marketing-split { display: flex; flex-direction: column; }
.marketing-workspace .marketing-content-area .marketing-library { order: -1; }

.marketing-workspace .journey-automation-settings {
    margin: 0 20px 12px; padding: 12px 16px; border: 1px solid var(--halo-hairline);
    border-radius: var(--halo-radius-md); max-height: 38vh; overflow: auto;
}
.marketing-workspace .journey-automation-settings summary { cursor: pointer; font-weight: 600; }
.marketing-workspace .journey-automation-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; padding-top: 12px; }
.marketing-workspace .journey-rule-editor { display: grid; gap: 10px; padding: 10px 0; }
.marketing-workspace .journey-rule-child { border-left: 2px solid var(--halo-hairline-strong); padding-left: 12px; }
.marketing-workspace .journey-rule-editor label,
.marketing-workspace .journey-automation-grid label { display: grid; gap: 5px; font-size: 12px; margin: 6px 0; }
.marketing-workspace .journey-automation-grid .journey-check { display: flex; align-items: center; gap: 8px; }
.marketing-workspace .journey-rule-editor select,
.marketing-workspace .journey-rule-editor input,
.marketing-workspace .journey-automation-grid input[type=number] {
    width: 100%; min-width: 0; padding: 8px; border: 1px solid var(--halo-hairline-strong);
    border-radius: 6px; background: var(--halo-surface); color: var(--halo-ink);
}
.marketing-workspace .journey-rule-editor small,
.marketing-workspace .journey-automation-grid small { color: var(--halo-ink-muted); font-size: 11px; }
@media (max-width: 800px) { .marketing-workspace .journey-automation-grid { grid-template-columns: 1fr; } }
