/* Core marketing workflow: niche -> content -> campaign -> channels. */
.dashboard-journey{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-block:22px}
.journey-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-height:218px;padding:20px;overflow:hidden}
.journey-count{position:absolute;inset-inline-start:16px;inset-block-start:14px;color:var(--muted,#94a1b8);font:700 12px/1 'Space Grotesk',sans-serif;letter-spacing:.08em}
.journey-card h2{margin:4px 0 0;font-size:17px;color:var(--text,#f5f8ff)}
.journey-card p{margin:0;color:var(--muted,#9ba8bb);font-size:13px;line-height:1.8;flex:1}
.journey-card .btn{margin-top:6px}
.latest-market-report{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-block:16px;padding:21px}
.latest-market-report h2{margin:7px 0}
.latest-market-report .muted{max-width:780px;line-height:1.8}
.dashboard-bottom{margin-block:18px}
.dashboard-status-strip{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:12px 16px;margin-block:16px;border:1px solid rgba(76,215,246,.18);border-radius:14px;background:rgba(76,215,246,.045);font-size:12px;color:var(--muted,#9ba8bb)}
.dashboard-status-strip>span:first-child{display:flex;align-items:center;gap:7px;color:var(--text,#e8efff)}
.dashboard-status-strip svg{color:#4cd7f6}
.campaign-builder{margin-block:18px;padding:22px;border-color:rgba(76,215,246,.18)}
.campaign-builder-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-block-end:18px}
.campaign-builder-head h2{margin:4px 0;font-size:20px}
.campaign-builder-head p{margin:0;color:var(--muted,#9ba8bb);line-height:1.8}
.campaign-builder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.campaign-builder .field{display:flex;flex-direction:column;gap:7px}
.campaign-builder .field input,.campaign-builder .field select,.campaign-builder .field textarea{width:100%;min-height:44px;padding:10px 12px;color:inherit;background:#0f1726;border:1px solid rgba(148,163,184,.2);border-radius:10px;font:inherit}
.campaign-builder .field textarea{min-height:78px;resize:vertical}
.campaign-builder .campaign-channel-picker{display:flex;flex-wrap:wrap;gap:8px;margin-block:12px}
.campaign-channel-picker label{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border:1px solid rgba(148,163,184,.2);border-radius:999px;color:var(--muted,#9ba8bb);cursor:pointer}
.campaign-consent{display:flex;align-items:flex-start;gap:8px;margin-block:13px;color:var(--muted,#a7b3c5);font-size:12px;line-height:1.8}
.campaign-consent input{accent-color:#4cd7f6;margin-block-start:4px}
.campaign-plan{margin-block:16px;padding:18px;border:1px solid rgba(76,215,246,.16);border-radius:14px;background:rgba(76,215,246,.035)}
.campaign-plan h3{margin:4px 0 8px;font-size:16px}
.campaign-plan p{line-height:1.85;color:var(--muted,#aab6c9)}
.campaign-mix{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.campaign-mix-item{padding:12px;background:rgba(255,255,255,.025);border:1px solid rgba(148,163,184,.12);border-radius:11px}
.campaign-mix-item strong{display:block;margin-block-end:5px}
.campaign-mix-item small{color:var(--muted,#9ba8bb);line-height:1.65}
.campaign-mix-bar{height:7px;overflow:hidden;margin-block:9px;border-radius:8px;background:rgba(148,163,184,.16)}
.campaign-mix-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4cd7f6,#738aff)}
.campaign-plan-lists{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-block-start:14px}
.campaign-plan-lists h4{margin:0 0 8px}
.campaign-plan-lists ul{margin:0;padding-inline-start:20px;color:var(--muted,#a9b5c8);font-size:12px;line-height:1.9}
.campaign-source-note{padding:9px 12px;margin-block-start:12px;border-inline-start:3px solid #4cd7f6;background:rgba(76,215,246,.04);font-size:12px;color:var(--muted,#a9b5c8)}
.campaign-ai-status,.creator-image-status{min-height:22px;margin-block:8px;color:var(--muted,#aab6c9);font-size:12px}
.campaign-ai-status[data-state="error"],.creator-image-status[data-state="error"]{color:#ffb0ab}
.campaign-ai-status[data-state="ok"],.creator-image-status[data-state="ok"]{color:#69dcab}
.creator-contact-optin{display:flex;align-items:flex-start;gap:8px;margin-block:8px;padding:9px 12px;border-radius:10px;background:rgba(76,215,246,.04);font-size:12px;color:var(--muted,#a9b5c8);line-height:1.8}
.creator-contact-optin input{accent-color:#4cd7f6;margin-block-start:4px}
.creator-image-studio{margin-block:24px;padding:22px;border:1px solid rgba(76,215,246,.17);border-radius:16px;background:linear-gradient(140deg,rgba(76,215,246,.06),rgba(15,23,38,.82))}
.creator-image-studio h2{margin:0 0 6px;font-size:19px}
.creator-image-studio>p{color:var(--muted,#9ba8bb);line-height:1.8}
.creator-image-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);gap:12px;align-items:end}
.creator-image-grid label{display:flex;flex-direction:column;gap:7px;color:var(--text,#eaf0ff);font-size:13px}
.creator-image-grid textarea,.creator-image-grid select{width:100%;min-height:46px;padding:11px;color:inherit;background:#0f1726;border:1px solid rgba(148,163,184,.22);border-radius:10px;font:inherit}
.creator-image-grid textarea{min-height:90px;resize:vertical;line-height:1.7}
.creator-image-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-block-start:16px}
.creator-image-asset{overflow:hidden;border:1px solid rgba(148,163,184,.16);border-radius:12px;background:rgba(8,14,25,.68)}
.creator-image-asset img{display:block;width:100%;height:195px;object-fit:cover;background:#0a1220}
.creator-image-asset div{padding:10px}
.creator-image-asset p{margin:4px 0 9px;color:var(--muted,#9ba8bb);font-size:11px;line-height:1.6;overflow-wrap:anywhere}
.creator-image-asset a{font-size:12px}
@keyframes masar-pulse{to{opacity:.42;transform:scale(.985)}}
[data-loading="true"]{animation:masar-pulse .9s ease-in-out infinite alternate}
@media(max-width:900px){.dashboard-journey{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-builder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-mix,.campaign-plan-lists{grid-template-columns:repeat(2,minmax(0,1fr))}.creator-image-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.dashboard-journey,.campaign-builder-grid,.campaign-mix,.campaign-plan-lists,.creator-image-grid,.creator-image-results{grid-template-columns:1fr}.latest-market-report{align-items:flex-start;flex-direction:column}.journey-card{min-height:auto}.campaign-builder,.creator-image-studio{padding:16px}.creator-image-asset img{height:auto;max-height:260px}}
body.phone-mini-mode .dashboard-journey{grid-template-columns:repeat(4,minmax(0,1fr))}
body.phone-mini-mode .campaign-builder-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
body.phone-mini-mode .campaign-mix,body.phone-mini-mode .campaign-plan-lists{grid-template-columns:repeat(3,minmax(0,1fr))}
body.phone-mini-mode .creator-image-grid{grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr)}
body.phone-mini-mode .creator-image-results{grid-template-columns:repeat(3,minmax(0,1fr))}
body.phone-mini-mode .latest-market-report{align-items:center;flex-direction:row}
