@import url('/styles.css');
/* Reuse the production dashboard's palette, shell, navigation and report cards. */
[hidden] { display:none!important; }
body.multi-dashboard { font-size:14px; line-height:1.5; }
.multi-dashboard button,.multi-dashboard input,.multi-dashboard select,.multi-dashboard textarea { font:inherit; }
.multi-dashboard button { color:var(--ink); }
.multi-dashboard button:disabled { opacity:.5; cursor:default; }
.multi-dashboard :is(button,a,input,select,textarea,summary):focus-visible { outline:2px solid var(--purple); outline-offset:3px; }
.multi-dashboard button.primary { display:inline-flex; align-items:center; justify-content:center; min-height:41px; padding:9px 18px; border:1px solid var(--ink); border-radius:8px; background:var(--ink); color:white; font-weight:700; box-shadow:3px 3px 0 var(--acid); }
.multi-dashboard .actions>button:not(.primary),.multi-dashboard dialog footer>button:not(.primary),.multi-dashboard .setup-card button:not(.primary):not(.text-button):not(.select-menu-trigger),.multi-dashboard .inline-button { min-height:38px; border:1px solid var(--line); border-radius:8px; padding:8px 12px; background:transparent; }
.multi-dashboard .text-button { min-height:36px; border:0; padding:6px 0; background:transparent; color:var(--purple); font-size:12px; font-weight:600; text-align:left; }
.environment { min-height:27px; padding:5px 16px; text-align:center; background:#eae7dd; border-bottom:1px solid var(--line); color:#66685f; font:600 10px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.04em; }
.shell { display:block; }
.workspace-body { min-width:0; }
.workspace-bar { min-height:53px; display:flex; justify-content:space-between; align-items:center; gap:16px; padding:8px 42px; border-bottom:1px solid var(--line); }
.workspace-context,.workspace-allowance { display:flex; align-items:center; gap:18px; }
#breadcrumb { font-weight:650; font-size:12px; }
.project-picker { display:flex; align-items:center; gap:7px; font-size:11px; color:var(--muted); }
.project-picker select { max-width:220px; border:0; background:transparent; padding:5px 8px; font-size:12px; }
#prompt-count { white-space:nowrap; font-size:11px; font-weight:600; }
.usage { color:var(--muted); font-size:10px; }
.account-choice { display:flex; gap:10px; align-items:center; justify-content:space-between; width:100%; padding:12px 10px; border:1px solid transparent; border-radius:9px; background:transparent; text-align:left; cursor:pointer; }
.account-choice.account-current { border-color:#e2ddf7; background:#f4f1fc; }
.account-choice:hover { background:#efede4; }
.account-person-details .text-button { min-height:28px; padding:0; }
.multi-dashboard .primary-nav button[aria-current="page"] { color:var(--ink); }
.multi-dashboard .primary-nav button[aria-current="page"]::after { background:var(--purple); }
#main { min-width:0; }
.hero h1 { overflow-wrap:anywhere; }
.hero h1 em { isolation:isolate; }
.multi-dashboard .snapshot-next { font-size:10px; font-weight:700; }
.snapshot-card .live-dot.paused { background:#aaa68e; box-shadow:0 0 0 5px #aaa68e25; }
.overview-metrics { margin:0; }
.single-intent { grid-template-columns:1fr; }
.single-intent>div:first-child { border-right:0; }
.report-links { margin-bottom:36px; }
.report-links button { min-width:0; min-height:178px; display:flex; flex-direction:column; padding:23px 25px; border:1px solid var(--line); border-radius:12px; background:var(--card); text-align:left; box-shadow:3px 3px 0 #20231e12; }
.report-links button:hover { border-color:var(--ink); transform:translateY(-2px); }
.report-links button p { font-size:12px; }
.page-heading { display:flex; justify-content:space-between; align-items:end; gap:28px; padding:12px 0 38px; margin-bottom:28px; border-bottom:1px solid var(--ink); }
.page-heading h1 { font-size:clamp(38px,4.4vw,62px); line-height:1.04; }
.page-heading p { max-width:670px; margin:18px 0 0; color:var(--muted); font-size:14px; }
.page-heading .eyebrow { color:var(--muted); }
.actions { display:flex; flex-wrap:wrap; align-items:center; gap:9px; }
.metrics:not(.overview-metrics) { grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:24px 0; }
.metric { padding:23px; border:1px solid var(--line); border-radius:10px; background:var(--card); }
.metric small { display:block; color:var(--muted); font:600 10px ui-monospace,monospace; text-transform:uppercase; }
.metric strong { display:block; margin-top:14px; font-size:36px; font-weight:700; letter-spacing:-.045em; }
.panel { min-width:0; padding:26px; margin:22px 0; border:1px solid var(--line); border-radius:12px; background:var(--card); }
.panel h2 { font-size:20px; letter-spacing:-.025em; margin:0 0 20px; }
.panel h3 { font-size:17px; }
.note,.panel p.note { font-size:12px; color:var(--muted); line-height:1.6; }
.filters { display:flex; align-items:center; flex-wrap:wrap; gap:18px; margin:24px 0; }
.filters label { display:flex; align-items:center; gap:9px; font-size:12px; color:var(--muted); }
.multi-dashboard input,.multi-dashboard select,.multi-dashboard textarea { max-width:100%; padding:10px 12px; border:1px solid var(--line); border-radius:7px; background:var(--card); color:var(--ink); }
.multi-dashboard input[type="checkbox"] { accent-color:var(--purple); }
.multi-dashboard textarea { resize:vertical; min-height:90px; }
label.field { display:flex; flex-direction:column; gap:7px; margin-bottom:18px; color:#56594f; font-size:13px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 20px; }
.full { grid-column:1/-1; }
.check { display:flex; align-items:center; gap:8px; margin:12px 0 20px; font-size:13px; }
.table-wrap { overflow-x:auto; }
.workspace-address { overflow-wrap:anywhere; }
table { width:100%; border-collapse:collapse; font-size:12px; }
th { padding:12px; border-bottom:1px solid var(--line); color:var(--muted); font:600 10px ui-monospace,monospace; text-align:left; text-transform:uppercase; white-space:nowrap; }
td { padding:16px 12px; border-bottom:1px solid var(--line); vertical-align:top; }
tr:last-child td { border-bottom:0; }
td:first-child { max-width:350px; }
td strong { display:block; font-size:13px; font-weight:600; }
td .muted { display:block; margin-top:6px; color:var(--muted); font-size:11px; }
.multi-dashboard .inline-button { min-height:30px; padding:4px 7px; font-size:11px; color:var(--purple); margin:2px; }
.badge,.tag { display:inline-block; padding:3px 7px; margin:2px 3px 2px 0; border-radius:5px; color:#656070; background:#eeebf5; font-size:10px; }
.badge.completed,.badge.positive { color:#217553; background:#e4eee4; }
.badge.failed,.badge.negative,.badge.blocked { color:#a3463f; background:#f2e5df; }
.badge.mixed { color:#8c702f; background:#f0ead6; }
.empty { padding:38px 20px; text-align:center; color:var(--muted); }
.two-columns { display:grid; grid-template-columns:1.3fr 1fr; gap:22px; }
.bars { display:flex; align-items:end; gap:10px; min-height:150px; padding-top:16px; }
.bar-column { flex:1; display:flex; flex-direction:column; align-items:center; gap:9px; font-size:10px; color:var(--muted); }
.bar-column i { width:70%; min-height:3px; background:var(--purple); border-radius:4px 4px 0 0; }
.brand-row { display:flex; align-items:center; gap:14px; margin:18px 0 7px; }
.brand-row progress { flex:1; min-width:30px; height:7px; accent-color:var(--purple); }
.brand-row span { min-width:110px; font-size:12px; }
.brand-row strong { font-size:13px; }
.notice { padding:14px 17px; margin:20px 0; border:1px solid var(--line); border-left:3px solid var(--purple); border-radius:5px; background:#eeece3; color:#5d6057; font-size:12px; line-height:1.6; }
.sentiment-list { display:flex; flex-wrap:wrap; gap:8px; }
.sentiment-list>div { flex:1; min-width:90px; padding:14px; background:var(--paper); border-radius:8px; }
.sentiment-list strong { display:block; font-size:25px; }
.sentiment-list small { color:var(--muted); }
dialog { width:min(720px,94vw); max-height:90dvh; overflow:visible; padding:28px; border:1px solid var(--line); border-radius:14px; background:var(--card); box-shadow:0 20px 80px #20231e30; }
dialog::backdrop { background:#20231e65; }
#dialog-form { display:grid; grid-template-rows:auto minmax(0,1fr) auto auto; max-height:calc(90dvh - 56px); min-height:0; overflow:hidden; }
#dialog-fields { min-height:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }
.dialog-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:24px; }
.dialog-heading h2 { margin:0; font-size:24px; letter-spacing:-.035em; }
.dialog-heading .icon-button { font-size:24px; }
dialog footer { display:flex; justify-content:end; gap:10px; margin-top:24px; }
.brand-fields { border:1px solid var(--line); border-radius:9px; padding:18px; margin:18px 0; }
.brand-fields legend { color:var(--purple); font-size:12px; }
.error { color:var(--red); font-size:12px; }
.toast { position:fixed; bottom:24px; left:50%; transform:translateX(-50%); z-index:50; max-width:90vw; padding:12px 20px; border-radius:8px; background:var(--ink); color:white; }
blockquote { margin:16px 0; border-left:3px solid var(--purple); padding:14px 18px; background:#eeece3; font-size:13px; }
.detail-row { display:flex; align-items:start; justify-content:space-between; gap:20px; border-bottom:1px solid var(--line); padding:12px 0; overflow-wrap:anywhere; }
.detail-row span { flex-shrink:0; color:var(--muted); }
.source-site { border-bottom:1px solid var(--line); padding:10px 0; }
.source-site>summary { display:flex; justify-content:space-between; gap:20px; padding:10px 0; cursor:pointer; }
.source-site>summary span { color:var(--muted); font-size:12px; }
.source-site a { color:var(--purple); }
.ad-observations { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.ad-observations article { padding:22px; border:1px solid var(--line); border-radius:10px; }
.ad-observations p:not(.eyebrow) { font-size:12px; color:var(--muted); }
#dev-persona { display:block; max-width:1440px; margin:auto; padding:12px 24px; font-size:11px; color:var(--muted); }
#dev-persona select { margin-left:12px; }
.multi-dashboard:has(#gate:not([hidden])), .multi-dashboard:has(#admin-gate:not([hidden])) { min-height:100vh; min-height:100svh; display:flex; flex-direction:column; }
#gate, #admin-gate { flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:32px 24px; text-align:center; }
.app-loading-brand { width:152px; height:auto; margin-bottom:44px; }
.app-loading-dots { display:flex; gap:7px; margin-bottom:22px; }
.app-loading-dots span { width:8px; height:8px; border-radius:50%; background:var(--purple); }
.app-loading-dots span:nth-child(2) { opacity:.6; }
.app-loading-dots span:nth-child(3) { opacity:.3; }
.app-loading-title { max-width:560px; margin:0; font-size:clamp(24px,4vw,32px); font-weight:650; line-height:1.2; letter-spacing:-.04em; overflow-wrap:anywhere; }
.app-loading-detail { max-width:480px; margin:10px 0 0; color:var(--muted); font-size:14px; line-height:1.5; overflow-wrap:anywhere; }
#gate .button, #admin-gate .button { display:inline-flex; min-height:44px; align-items:center; margin-top:18px; color:var(--purple); }
@media (prefers-reduced-motion:no-preference) {
  .app-loading-dots span { animation:loading-bounce 1.2s ease-in-out infinite; }
  .app-loading-dots span:nth-child(2) { animation-delay:.15s; }
  .app-loading-dots span:nth-child(3) { animation-delay:.3s; }
}
@keyframes loading-bounce { 0%,60%,100% { transform:translateY(0); } 30% { transform:translateY(-5px); } }
@media(max-width:1000px) {
  .workspace-bar { padding-inline:24px; }
  .usage { display:none; }
  .two-columns { grid-template-columns:1fr; }
  .metrics:not(.overview-metrics) { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
  #main { padding:32px 20px 60px; }
  .workspace-bar { padding:10px 20px; align-items:start; }
  .workspace-context { flex-wrap:wrap; gap:5px 12px; }
  .project-picker { width:100%; order:3; }
  .project-picker select { max-width:180px; }
  #new-project { font-size:10px; min-height:24px; }
  .environment { font-size:9px; padding-inline:8px; }
  .account-toggle-name { max-width:105px; overflow:hidden; text-overflow:ellipsis; }
  .page-heading { display:block; padding-top:0; }
  .page-heading h1 { font-size:38px; }
  .page-heading .actions { margin-top:20px; }
  .metric { padding:18px; }
  .metric strong { font-size:30px; }
  .panel { padding:18px; }
  .form-grid,.ad-observations { grid-template-columns:1fr; }
  .brand-row { gap:8px; }
  .brand-row span { min-width:95px; }
  .detail-row { gap:12px; flex-wrap:wrap; }
  .report-links button { min-height:145px; }
}

/* Guided setup uses its own typography and layout, independent of dashboard globals. */
.shell.is-onboarding .primary-nav, .shell.is-onboarding .mobile-nav-toggle, .shell.is-onboarding .workspace-bar { display: none; }
.shell.is-onboarding #main { max-width: 1100px; width: 100%; padding-top: 36px; }
.setup-shell { max-width: 860px; margin: 0 auto; }
.setup-steps { display: flex; flex-direction: row; justify-content: space-between; gap: 14px; margin: 0 0 30px; padding: 0 4px 8px; overflow-x: auto; }
.setup-steps > span { display: flex; align-items: center; gap: 7px; font-size: 12px; color: var(--muted); }
.setup-steps i { display: grid; flex-shrink: 0; place-items: center; width: 25px; height: 25px; border: 1px solid var(--line); border-radius: 50%; font-style: normal; background: var(--card); }
.setup-steps [aria-current] { color: var(--purple); font-weight: 600; }
.setup-steps [aria-current] i { color: white; background: var(--purple); border-color: var(--purple); }
.setup-steps .done i { background: #eeebfc; color: var(--purple); }
.setup-steps--product { display:grid; grid-template-columns:repeat(var(--setup-step-count,7),minmax(0,1fr)); gap:12px; align-items:start; }
.setup-steps--product > span { flex-direction:column; gap:8px; text-align:center; }
.setup-steps--product .setup-step-label { white-space:normal; line-height:1.4; max-width:110px; }
.setup-card { border: 1px solid var(--line); border-radius: 16px; background: var(--card); padding: 40px; }
.setup-card h1 { font-size: clamp(25px, 3vw, 34px); font-weight: 600; line-height: 1.2; letter-spacing: -.04em; margin: 0 0 14px; }
.setup-card h1:focus { outline: none; }
.setup-card > p, .setup-card [data-setup-fields] > p { color: var(--muted); margin: 0 0 28px; }
.setup-card [data-setup-message]:empty, .setup-card [data-discovery-status]:empty, .setup-card [data-discovery-limit]:empty { display: none; }
.setup-progress { display:flex; align-items:center; gap:14px; margin:24px 0; padding:18px 20px; border:1px solid var(--ct-line,#d3cfc2); border-radius:10px; background:var(--ct-orange-soft,#ffe6d4); }
.setup-progress > div { min-width:0; }
.setup-progress strong { display:block; font-size:15px; line-height:1.5; font-weight:650; }
.setup-progress p { margin:4px 0 0; color:var(--ct-muted,#64675f); font-size:13px; line-height:1.5; }
.setup-progress-spinner { flex:0 0 22px; width:22px; height:22px; border:2px solid var(--ct-line,#d3cfc2); border-top-color:var(--ct-orange-ink,#a33d05); border-right-color:var(--ct-orange-ink,#a33d05); border-radius:50%; }
.setup-card button[data-loading] { cursor:wait; box-shadow:none; }
@media (prefers-reduced-motion:no-preference) { .setup-progress-spinner { animation:setup-progress-spin .9s linear infinite; } }
@keyframes setup-progress-spin { to { transform:rotate(360deg); } }
.setup-card > p.error { color: #b44838; margin: 18px 0 0; }
.setup-card .field, dialog .field { min-width: 0; text-align: left; font-size: 13px; }
.setup-card [data-custom-industry][hidden], .setup-card [data-place-clear][hidden] { display: none; }
.setup-card input, .setup-card select { min-height: 44px; }
.setup-card select, .multi-dashboard dialog select { width: 100%; min-width: 0; appearance: none; padding: 12px 44px 12px 14px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath d='m3 5 4 4 4-4' fill='none' stroke='%23565a50' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 16px center; }
.setup-card input[readonly] { background: #eeece3; color: #646876; }
.setup-card footer { display: flex; align-items: center; gap: 12px; margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--line); }
.setup-card footer > .primary { margin-left: auto; }
.setup-card button { min-height: 44px; }
.multi-dashboard .setup-card footer > button:is([data-back],[data-exit]):not(.primary):not(.text-button) { min-height:44px; height:44px; padding:8px 12px; line-height:1.25; }
.multi-dashboard .setup-card footer > button.setup-exit:not(.primary):not(.text-button) { background:#fff0ed; border-color:#e2b8b0; color:#a13f32; }
.multi-dashboard .setup-card footer > button.setup-exit:not(.primary):not(.text-button):hover { background:#ffe4dd; border-color:#ce9c92; }
.setup-goals { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 24px; }
.setup-goal { display: flex; align-items: flex-start; gap: 12px; border: 1px solid var(--line); border-radius: 10px; padding: 22px; cursor: pointer; }
.setup-goal:has(input:checked) { border-color: var(--purple); background: #f0edf9; }
.setup-goal input { min-height: 0; margin-top: 5px; width: 18px; height: 18px; accent-color: var(--purple); flex: 0 0 auto; }
.setup-goal strong { display: block; font-size: 16px; margin-bottom: 9px; }
.setup-goal small { display: block; font-size: 13px; color: var(--muted); }
.setup-goal > span { min-width: 0; overflow-wrap: anywhere; }
.setup-advanced { border-top: 1px solid var(--line); padding-top: 16px; }
.setup-advanced summary { cursor: pointer; color: var(--purple); margin-bottom: 16px; }
.setup-allowance { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; background: var(--paper); border: 1px solid #e8e2fc; border-radius: 10px; padding: 16px; margin-bottom: 20px; }
.setup-allowance span { color: var(--muted); font-size: 12px; }
.setup-allowance progress { flex-basis: 100%; width: 100%; height: 6px; accent-color: var(--purple); }
.setup-prompt-actions { display: flex; gap: 10px; margin-bottom: 20px; flex-wrap: wrap; }
.setup-prompt { min-width: 0; margin: 20px 0; border: 1px solid var(--line); border-radius: 10px; padding: 20px; }
.setup-prompt legend { padding: 0 6px; color: var(--purple); font-size: 12px; }
.setup-prompt-heading { display: flex; justify-content: space-between; gap: 18px; align-items: start; }
.setup-prompt-heading .field { flex: 1; }
.setup-prompt textarea { min-height: 85px; }
.prompt-editor-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding-top: 8px; }
.setup-save-status { min-height: 20px; color: #217553; font-size: 12px; }
.setup-prompt-group { margin: 24px 0; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
.setup-prompt-group > header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 18px; background: var(--paper); }
.setup-prompt-group h3 { min-width: 0; overflow-wrap: anywhere; font-size: 15px; margin: 0; letter-spacing: 0; }
.setup-prompt-group > header > span { white-space: nowrap; color: var(--muted); font-size: 12px; }
.saved-setup-prompt { display: flex; justify-content: space-between; align-items: start; gap: 18px; padding: 18px; border-top: 1px solid var(--line); }
.saved-setup-prompt > div:first-child { min-width: 0; }
.saved-setup-prompt p { margin: 6px 0 10px; overflow-wrap: anywhere; white-space: pre-wrap; }
.saved-prompt-goal { color: var(--muted); font-size: 11px; }
.saved-prompt-actions { display: flex; flex: none; gap: 12px; }
.tag-field { display: flex; flex-direction: column; gap: 7px; margin-bottom: 18px; }
.tag-entry { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; min-width: 0; border: 1px solid var(--line); border-radius: 7px; padding: 8px; background: var(--card); }
.tag-entry:focus-within { outline: 2px solid var(--purple); outline-offset: 2px; }
.tag-chips { display: contents; }
.tag-chip { display: inline-flex; align-items: center; gap: 5px; max-width: 100%; padding: 2px 4px 2px 10px; border-radius: 6px; background: #eeebf5; color: var(--purple); }
.tag-chip > span { min-width: 0; overflow-wrap: anywhere; }
.multi-dashboard .setup-card .tag-chip button[data-remove-tag], .multi-dashboard dialog .tag-chip button { min-height: 30px; min-width: 30px; padding: 2px 6px; border: 0; background: transparent; box-shadow: none; color: inherit; font-size: 18px; }
.multi-dashboard .tag-entry input { flex: 1 1 130px; width: 130px; min-width: 0; min-height: 34px; padding: 4px; border: 0; background: transparent; outline: none; box-shadow: none; }
.tag-field small { color: var(--muted); font-size: 11px; }
.tag-input-status { color: var(--muted); font-size: 11px; }
.setup-review > div { display: flex; gap: 20px; justify-content: space-between; border-bottom: 1px solid var(--line); padding: 14px 0; }
.setup-review span { color: var(--muted); }
.setup-review strong { font-weight: 500; text-align: right; overflow-wrap: anywhere; }
.setup-timeline { padding-left: 24px; margin: 26px 0; }
.setup-timeline li { padding: 8px 0 8px 5px; }
.setup-timeline strong, .setup-timeline span { display: block; }
.setup-timeline span { font-size: 13px; color: var(--muted); margin-top: 4px; }
.baseline-card { display: flex; justify-content: space-between; align-items: center; gap: 28px; border-color: #ddd5f6; }
.baseline-card h2 { font-size: 20px; margin-bottom: 10px; }
.baseline-card p { max-width: 640px; color: var(--muted); }
.baseline-card .actions { flex-shrink: 0; }
.baseline-products { display: flex; gap: 16px; flex-wrap: wrap; font-size: 12px; margin: 15px 0; }
.baseline-card progress { width: 100%; height: 6px; accent-color: var(--purple); }
@media(max-width:700px) {
  .setup-card { padding: 24px 20px; }
  .setup-steps { overflow-x: auto; padding-bottom: 8px; gap: 18px; }
  .setup-steps > span { font-size: 11px; flex-shrink: 0; white-space: nowrap; }
  .setup-steps--product { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:110px; justify-content:start; gap:8px; }
  .setup-goals { grid-template-columns: 1fr; }
  .setup-review > div { flex-direction: column; gap: 5px; }
  .setup-review strong { text-align: left; }
  .setup-card footer { flex-wrap: wrap; }
  .setup-card footer .text-button { order: 3; width: 100%; }
  .setup-prompt { padding: 15px; }
  .saved-setup-prompt { flex-direction: column; gap: 8px; }
  .prompt-editor-actions { align-items: stretch; flex-direction: column; }
  .prompt-editor-actions > button { width: 100%; }
  .baseline-card { display: block; }
  .baseline-card .actions { margin-top: 18px; }
}

/* Sponsored observations reuse the existing panels, fields and shared selects. */
.ad-variants { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:20px; }
.ad-variant { border:1px solid var(--border,#e6e4ed); border-radius:12px; padding:18px; margin:10px 0; overflow-wrap:anywhere; }
.ad-advertiser { margin-block:20px; break-inside:avoid; }
.ad-client-report .metrics { grid-template-columns:repeat(auto-fit,minmax(145px,1fr)); }
@media print {
  .topbar,.workspace-bar,.environment,#dev-persona,.toast,.no-print { display:none !important; }
  .shell,.workspace-body,#main { display:block !important; margin:0 !important; padding:0 !important; width:100% !important; }
  .ad-client-report { color:#111; font-size:11pt; }
  .ad-client-report .panel,.ad-client-report .metric { box-shadow:none; }
  .ad-variant a::after { content:" (" attr(href) ")"; font-size:9pt; }
}

.account-totals { display:flex; flex-wrap:wrap; gap:1rem 2rem; }
.account-totals strong { display:block; font-size:1.5rem; }
[data-client-rows] details { margin:1rem 0; }

.setup-assistant, .setup-locations { margin:1.5rem 0; padding:1.25rem; border:1px solid var(--border, #dce0e8); border-radius:12px; }
.setup-mode, .setup-actions { display:flex; flex-wrap:wrap; gap:.6rem; margin:1rem 0; }
.multi-dashboard .setup-card .setup-mode [aria-pressed="true"] { background:#ede9fe; color:#4c1d95; border-color:#8b5cf6; }
.setup-assistant textarea { width:100%; box-sizing:border-box; }
.setup-keyword-group, .setup-suggestion { padding:1rem 0; border-top:1px solid var(--border, #dce0e8); }
.setup-keyword-group summary { cursor:pointer; margin-bottom:.75rem; font-weight:600; }
.setup-keyword-table { overflow-x:auto; margin:.75rem 0; }
.setup-keyword-table table { width:100%; font-size:.875rem; text-align:left; }
.setup-keyword-table th, .setup-keyword-table td { padding:.4rem .7rem .4rem 0; }
.setup-place-matches { display:grid; gap:.4rem; }
.setup-place-matches button { text-align:left; }
.google-maps-attribution { padding:10px 10px 5px; }
.google-maps-attribution img { display:block; height:18px; width:auto; }
.setup-customer-locations { margin:1.5rem 0; }
.setup-coverage-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.75rem; border:0; padding:0; margin:1rem 0; }
.setup-coverage-options legend { font-weight:600; margin-bottom:.75rem; }
.setup-coverage-option { display:flex; align-items:flex-start; gap:.6rem; padding:1rem; border:1px solid var(--border, #dce0e8); border-radius:10px; cursor:pointer; }
.setup-coverage-option:has(input:checked) { border-color:#a44d18; background:#fff4eb; }
.setup-coverage-option:focus-within { outline:2px solid #a44d18; outline-offset:2px; }
.setup-coverage-option input { width:auto; flex-shrink:0; margin-top:.2rem; }
.setup-coverage-option span { min-width:0; }
.setup-coverage-option strong, .setup-coverage-option small { display:block; }
.setup-coverage-option small { margin-top:.4rem; line-height:1.5; }
.setup-customer-area { display:flex; align-items:flex-end; gap:.75rem; margin:1rem 0; }
.setup-customer-area .field { flex:1; min-width:0; margin:0; }
.setup-customer-area > button { flex-shrink:0; }
.setup-multiple-countries { padding:1rem; margin:1rem 0; border:1px solid var(--border, #dce0e8); border-radius:10px; }
.setup-multiple-countries summary { font-weight:600; cursor:pointer; }
.setup-location-summary, .setup-schedule, .setup-location-review { margin-top:1.5rem; padding-top:1rem; border-top:1px solid var(--border, #dce0e8); }
@media (max-width:760px) { .setup-coverage-options { grid-template-columns:1fr; } }
@media (max-width:600px) { .setup-assistant, .setup-locations { padding:.75rem; } .setup-actions button { width:100%; } }
.setup-brand-icon { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; font-weight: 600; }

.sentiment-aspect-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr)); gap:16px; }
.sentiment-aspect { min-width:0; padding:20px; border:1px solid var(--line); border-radius:9px; }
.sentiment-aspect h3 { margin:0 0 12px; }
.sentiment-aspect summary { cursor:pointer; color:var(--purple); font-size:12px; padding:8px 0; }
.sentiment-observation { padding:18px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.sentiment-observation:last-child { border-bottom:0; }
.sentiment-observation .muted { display:block; color:var(--muted); font-size:11px; margin-top:5px; }
.sentiment-detail .sentiment-answers-heading { margin:28px 0 8px; }

/* Full Visibility discovery stays inside the existing setup prompt step. */
.full-discovery-steps { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0; }
.multi-dashboard .setup-card .full-discovery-steps button[aria-current="step"]:not(.primary) { background: var(--ink, #292c33); color: #fff; }
.full-research-sources { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; margin: 20px 0; }
.full-research-sources article { display: flex; flex-direction: column; gap: 8px; border: 1px solid var(--line, #ddd); border-radius: 10px; padding: 14px; }
.full-suggestion-labels { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.full-setup-assistant .field small { font-weight: 400; line-height: 1.5; }
.full-setup-review .saved-setup-prompt { align-items: start; }
.full-setup-assistant .setup-suggestion { overflow-wrap: anywhere; }
.setup-shell .setup-competitor-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px; gap:16px; align-items:end; margin-bottom:18px; }
.setup-shell .setup-competitor-row .field { margin:0; }
.setup-shell .setup-remove { width:44px; height:44px; min-width:44px; padding:0; font-size:25px; line-height:1; border:1px solid var(--ct-line,#d3cfc2); background:transparent; color:var(--ct-muted,#64675f); border-radius:7px; }
.setup-shell .setup-remove:hover { background:var(--ct-orange-soft,#ffe6d4); color:var(--ct-orange-ink,#a33d05); }
.setup-save-status { color:var(--ct-muted,#64675f); font-size:13px; min-height:20px; }
.automatic-discovery > p:first-child { margin:24px 0; }
.automatic-discovery .field { display:flex; flex-direction:column; gap:8px; margin:24px 0; }
.automatic-discovery textarea { width:100%; min-width:0; resize:vertical; line-height:1.6; }
.discovery-sources { margin:16px 0; }
.discovery-sources summary { cursor:pointer; color:var(--muted); }
.discovery-mix strong small { font-size:14px; font-weight:400; color:var(--muted); }
.discovery-mix { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:24px 0; }
.discovery-mix > div { display:flex; flex-direction:column; gap:4px; padding:16px; background:var(--ct-surface-subtle,#eeebe1); border-radius:8px; }
.discovery-mix strong { font-size:26px; font-variant-numeric:tabular-nums; }
.discovery-mix span { font-size:14px; }
@media(max-width:480px) {
  .recommended-prompts .discovery-mix { grid-template-columns:1fr; }
  .recommended-prompts .discovery-mix > div { flex-direction:row; align-items:center; gap:16px; padding:12px 14px; }
  .recommended-prompts .discovery-mix strong { min-width:64px; }
  .recommended-prompts .discovery-mix span { font-size:14px; overflow-wrap:normal; }
}
.discovery-options { margin-top:16px; }
.discovery-options summary,.brand-review summary { cursor:pointer; color:var(--ct-muted,#64675f); }
.discovery-options .field { margin-top:16px; }
.question-group { margin:32px 0; }
.question-group h2 { font-size:20px; display:flex; gap:10px; align-items:baseline; }
.question-group h2 span { font-size:14px; color:var(--ct-muted,#64675f); font-weight:400; }
.question-group ul { padding-left:20px; }
.question-group li { margin:12px 0; }
.setup-shell .saved-question-actions { display:flex; gap:8px; align-items:center; }
.competitor-discovery { margin-bottom:24px; }
.competitor-candidates article { display:flex; justify-content:space-between; gap:20px; padding:16px 0; border-bottom:1px solid var(--ct-line,#d3cfc2); align-items:center; }
.competitor-candidates article > div { min-width:0; overflow-wrap:anywhere; }
.competitor-candidates article p { font-size:13px; color:var(--ct-muted,#64675f); margin:4px 0; }
.competitor-candidates article button { flex-shrink:0; }
@media(max-width:600px) {
  .setup-shell .setup-competitor-row { grid-template-columns:minmax(0,1fr) 44px; gap:10px; }
  .setup-shell .setup-competitor-row .field:first-child { grid-column:1; }
  .setup-shell .setup-competitor-row .field:nth-child(2) { grid-column:1; }
  .setup-shell .setup-competitor-row .setup-remove { grid-column:2; grid-row:1 / span 2; align-self:center; }
  .discovery-mix { gap:8px; }
  .discovery-mix > div { padding:10px; }
  .discovery-mix span { font-size:12px; overflow-wrap:anywhere; }
  .setup-shell .saved-setup-prompt { align-items:flex-start; }
}

/* Keep navigation stable while authorized report reads are in flight. */
.report-refresh-status { margin:0; color:var(--muted); font-size:12px; }
.report-refresh-status .text-button { margin-left:8px; }
.report-skeleton { min-height:420px; }
.report-skeleton-controls { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:24px 0; }
.report-skeleton-controls span,.report-skeleton-chart { border-radius:10px; background:var(--line); opacity:.3; animation:report-loading-pulse 1.4s ease-in-out infinite alternate; }
.report-skeleton-controls span { height:48px; }
.report-skeleton-chart { height:340px; }
@keyframes report-loading-pulse { to { opacity:.6; } }
@media(max-width:600px) { .report-skeleton-controls { gap:8px; } }
@media(prefers-reduced-motion:reduce) { .report-skeleton-controls span,.report-skeleton-chart { animation:none; } }
