:root {
  /* 1. Primitives */
  /*
   * Neutrals lean toward the petrol accent (hue 210) instead of a cold blue-grey, so chrome,
   * hairlines and ink read as one family with the brand. Névoa (100) is the chrome plane,
   * Linha (200) the hairline, Tinta (900) the text.
   */
  --palette-gray-0: oklch(0.995 0.002 210);
  --palette-gray-50: oklch(0.982 0.004 205);
  --palette-gray-100: oklch(0.962 0.008 200);
  --palette-gray-200: oklch(0.9 0.01 205);
  --palette-gray-300: oklch(0.85 0.012 208);
  --palette-gray-400: oklch(0.7 0.015 212);
  --palette-gray-500: oklch(0.63 0.016 212);
  --palette-gray-600: oklch(0.47 0.02 215);
  --palette-gray-700: oklch(0.39 0.02 216);
  --palette-gray-800: oklch(0.3 0.02 217);
  --palette-gray-900: oklch(0.25 0.02 218);
  --palette-gray-950: oklch(0.19 0.018 218);
  --palette-gray-1000: oklch(0.12 0.012 218);

  --palette-brand-50: oklch(0.97 0.012 207);
  --palette-brand-100: oklch(0.94 0.03 207);
  --palette-brand-200: oklch(0.88 0.05 207);
  --palette-brand-300: oklch(0.79 0.08 207);
  --palette-brand-400: oklch(0.68 0.1 207);
  --palette-brand-500: oklch(0.58 0.11 207);
  --palette-brand-600: oklch(0.5 0.1 207);
  --palette-brand-700: oklch(0.43 0.09 207);
  --palette-brand-800: oklch(0.346 0.052 207); /* Opportunus Dark Teal #0f4147 */
  --palette-brand-900: oklch(0.29 0.05 207);

  /*
   * State hues. Each tone has a mark (dot, notch, rule), a text ink that clears 4.5:1 on its
   * wash, and a wash. Marks validated all-pairs with the data-viz script: CVD ΔE ≥ 8.7,
   * normal-vision ΔE ≥ 15.2 (docs/research/2026-09-25-operator-design-direction.md).
   */
  --palette-petrol-mark: oklch(0.6 0.1 205);
  --palette-petrol-ink: oklch(0.47 0.08 207);
  --palette-petrol-wash: oklch(0.962 0.012 212);
  --palette-green-mark: oklch(0.5 0.14 150);
  --palette-green-ink: oklch(0.46 0.13 150);
  --palette-green-wash: oklch(0.96 0.04 150);
  --palette-amber-mark: oklch(0.74 0.165 62);
  --palette-amber-ink: oklch(0.5 0.13 58);
  --palette-amber-wash: oklch(0.96 0.05 70);
  --palette-red-mark: oklch(0.56 0.21 25);
  --palette-red-ink: oklch(0.5 0.19 25);
  --palette-red-wash: oklch(0.955 0.035 25);
  --palette-slate-mark: oklch(0.66 0.015 212);
  --palette-slate-ink: oklch(0.45 0.02 215);
  --palette-slate-wash: oklch(0.955 0.006 215);
  --palette-violet-mark: oklch(0.5 0.17 295);
  --palette-violet-ink: oklch(0.46 0.17 295);
  --palette-violet-wash: oklch(0.955 0.035 295);
  /* Folheado: the gold of plated jewellery. A fill, never a mark on the page. */
  --palette-gold-fill: oklch(0.9 0.14 100);
  --palette-gold-ink: oklch(0.42 0.09 85);
  --palette-gold-edge: oklch(0.78 0.14 92);

  /* 2. Semantics (shadcn names) */
  --background: oklch(1 0 0);
  --foreground: var(--palette-gray-900);
  --card: oklch(1 0 0);
  --card-foreground: var(--palette-gray-900);
  --popover: oklch(1 0 0);
  --popover-foreground: var(--palette-gray-900);
  --primary: var(--palette-brand-800);
  --primary-foreground: var(--palette-gray-0);
  --secondary: var(--palette-gray-100);
  --secondary-foreground: var(--palette-gray-900);
  --muted: var(--palette-gray-100);
  --muted-foreground: var(--palette-gray-600);
  --accent: var(--palette-gray-100);
  --accent-foreground: var(--palette-gray-900);
  --destructive: var(--palette-red-ink);
  --border: var(--palette-gray-200);
  --input: var(--palette-gray-300);
  --ring: var(--palette-brand-500);
  --sidebar: var(--palette-gray-100);
  --sidebar-foreground: var(--palette-gray-800);
  --sidebar-primary: var(--palette-brand-800);
  --sidebar-primary-foreground: var(--palette-gray-0);
  --sidebar-accent: oklch(1 0 0);
  --sidebar-accent-foreground: var(--palette-brand-800);
  --sidebar-border: var(--palette-gray-200);
  --sidebar-ring: var(--palette-brand-500);

  /* 2b. Opportunus semantics */
  --link: var(--palette-brand-700);
  --selection: var(--palette-brand-100);
  /* Messages the store sent (IA or team): the accent marks "ours", never status. */
  --outbound: var(--palette-brand-50);
  --outbound-border: var(--palette-brand-100);
  /*
   * Status: a state the operator may need to act on. `info` is the petrol family ("in motion");
   * anything needing action is warning or danger, never neutral.
   */
  --status-neutral: var(--palette-slate-ink);
  --status-neutral-muted: var(--palette-slate-wash);
  --status-neutral-border: var(--palette-gray-300);
  --status-neutral-mark: var(--palette-slate-mark);
  --status-info: var(--palette-petrol-ink);
  --status-info-muted: var(--palette-petrol-wash);
  --status-info-border: color-mix(in oklch, var(--palette-brand-700) 28%, transparent);
  --status-info-mark: var(--palette-petrol-mark);
  --status-success: var(--palette-green-ink);
  --status-success-muted: var(--palette-green-wash);
  --status-success-border: color-mix(in oklch, var(--palette-green-mark) 35%, transparent);
  --status-success-mark: var(--palette-green-mark);
  --status-warning: var(--palette-amber-ink);
  --status-warning-muted: var(--palette-amber-wash);
  --status-warning-border: color-mix(in oklch, var(--palette-amber-mark) 45%, transparent);
  --status-warning-mark: var(--palette-amber-mark);
  --status-danger: var(--palette-red-ink);
  --status-danger-muted: var(--palette-red-wash);
  --status-danger-border: color-mix(in oklch, var(--palette-red-mark) 35%, transparent);
  --status-danger-mark: var(--palette-red-mark);
  /* Highlight: "this one is special" (VIP, VIP Premium, score Excelente). The only filled chip. */
  --highlight: var(--palette-gold-fill);
  --highlight-foreground: var(--palette-gold-ink);
  --highlight-border: var(--palette-gold-edge);
  /* IA: "the IA did this" (owner chip, AI-sold revenue). Never a status. */
  --ai: var(--palette-violet-ink);
  --ai-muted: var(--palette-violet-wash);
  --ai-border: color-mix(in oklch, var(--palette-violet-mark) 35%, transparent);
  --ai-mark: var(--palette-violet-mark);
  /*
   * CRM stage inks, in board order. Novo → Em compra is ordinal (one petrol hue, light to dark;
   * validated --ordinal); the rest take their state hue. Steps 3–9 pass the adjacent check.
   */
  --stage-new: oklch(0.72 0.085 207);
  --stage-interested: oklch(0.58 0.1 207);
  --stage-buying: oklch(0.44 0.1 207);
  --stage-awaiting-payment: var(--palette-amber-mark);
  --stage-paid: var(--palette-green-mark);
  --stage-after-sales: oklch(0.64 0.1 222);
  --stage-handoff: var(--palette-red-mark);
  --stage-follow-up: oklch(0.5 0.075 262);
  --stage-abandoned-cart: var(--palette-red-mark);
  --stage-lost: var(--palette-slate-mark);
  /*
   * Categories (tags, segments, chart series) in fixed order, never cycled; a ninth folds to
   * neutral. Validated on Papel: adjacent CVD ΔE ≥ 10.5, normal-vision ≥ 18.9, all ≥ 3:1.
   * Status hues are never reused as series; tags wear a different shape from state badges.
   */
  --category-1: oklch(0.6 0.13 178);
  --category-2: oklch(0.54 0.17 42);
  --category-3: oklch(0.46 0.19 280);
  --category-4: oklch(0.62 0.16 120);
  --category-5: oklch(0.43 0.18 350);
  --category-6: oklch(0.58 0.14 245);
  --category-7: oklch(0.66 0.135 78);
  --category-8: oklch(0.6 0.18 10);
  --chart-1: var(--category-1);
  --chart-2: var(--category-2);
  --chart-3: var(--category-3);
  --chart-4: var(--category-4);
  --chart-5: var(--category-5);
  /* A single series wears the brand hue, not grey. */
  --chart-mono: var(--palette-brand-600);
  --chart-grid: var(--palette-gray-200);
  --font-sans-stack:
    var(--font-instrument-sans, "Instrument Sans"), "Instrument Sans Variable", ui-sans-serif,
    system-ui, sans-serif;
  --font-mono-stack:
    var(--font-plex-mono, "IBM Plex Mono"), ui-monospace, "SF Mono", Menlo, monospace;
  --radius: 0.375rem;
  /*
   * Control tokens: every form control and button reads its box from these, so fields and
   * buttons line up wherever they share a row. A small control is tighter in padding and type,
   * never shorter. Control text is 16px below md so iOS Safari does not zoom on focus.
   */
  --control-h: 2.125rem;
  --control-h-touch: 2.75rem;
  --control-py: 0.375rem;
  --control-h-sm: var(--control-h);
  --control-px: 0.625rem;
  --control-radius: var(--radius);
  --control-text: 0.8125rem;
  --control-border: var(--palette-gray-500);
  --focus-ring-width: 2px;
  --focus-ring-color: var(--primary);
  --invalid-ring-color: color-mix(in oklch, var(--destructive) 20%, transparent);
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --motion-control: 120ms;
  --motion-page: 180ms;
  --motion-ease: cubic-bezier(0.2, 0, 0, 1);
  --row-h: 2.5rem;
  --cell-px: 0.75rem;
}



*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--foreground);font-family:var(--font-sans-stack);font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{outline-offset:3px}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}svg{flex-shrink:0}h1,h2,h3,p{margin:0}h1{font-size:22px;line-height:1.3;font-weight:600;letter-spacing:-.35px}h2{font-size:15px;font-weight:600}h3{font-size:14px;font-weight:600}.muted,small{color:var(--muted-foreground)}small{font-size:12px}p+p{margin-top:8px}.block{display:block}.mark{width:22px;height:25px;color:var(--primary)}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:var(--control-h);padding:var(--control-py) var(--control-px);border:1px solid var(--border);border-radius:var(--radius);background:var(--background);color:var(--foreground);font-weight:500;font-size:var(--control-text);white-space:nowrap;transition:background-color var(--motion-control) var(--motion-ease),color var(--motion-control) var(--motion-ease),border-color var(--motion-control) var(--motion-ease)}.button:hover{background:var(--muted);text-decoration:none}.button.primary{background:var(--primary);color:var(--primary-foreground);border-color:var(--primary)}.button.primary:hover{background:var(--palette-brand-700);border-color:var(--palette-brand-700)}.button.ghost{border-color:transparent;background:transparent}.button.ghost:hover{background:var(--muted)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;background:transparent;border-radius:var(--radius);color:var(--muted-foreground)}.icon-button:hover{background:var(--muted);color:var(--foreground)}.badge{display:inline-flex;align-items:center;font-size:11px;line-height:1.6;padding:1px 7px;border:1px solid var(--border);background:var(--muted);border-radius:5px;white-space:nowrap;color:var(--muted-foreground)}.badge.success{background:var(--status-success-muted);color:var(--status-success);border-color:var(--status-success-border)}.badge.warning{background:var(--status-warning-muted);color:var(--status-warning);border-color:var(--status-warning-border)}.field{display:flex;flex-direction:column;gap:6px;font-weight:500}.field small{font-weight:400}.field input,.field select,.field textarea,input.quantity,select{min-height:var(--control-h);padding:var(--control-py) var(--control-px);border:1px solid var(--control-border);border-radius:var(--radius);background:var(--background);color:var(--foreground);width:100%}input:focus,select:focus,textarea:focus{outline:var(--focus-ring-width) solid var(--focus-ring-color);border-color:var(--focus-ring-color)}textarea{resize:vertical;min-height:80px}input::placeholder,textarea::placeholder{color:var(--muted-foreground)}.form-stack{display:flex;flex-direction:column;gap:var(--space-4)}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.inline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inline select{width:auto;max-width:100%}.max-form{max-width:560px}.brand{display:flex;align-items:center;gap:8px;font-size:17px;color:var(--foreground);letter-spacing:-.5px}.brand:hover{text-decoration:none}.sidebar{position:fixed;left:0;top:48px;bottom:0;width:246px;padding:12px 10px;background:var(--sidebar);display:flex;flex-direction:column;z-index:15}.store-switcher{display:flex;align-items:center;gap:8px;padding:8px 9px;margin-bottom:12px;border:1px solid var(--sidebar-border);border-radius:var(--radius);color:var(--sidebar-foreground);background:var(--background)}.store-switcher:hover{text-decoration:none;background:var(--sidebar-accent)}.store-switcher>span:nth-child(2){flex:1;min-width:0}.store-switcher strong{font-size:12px;font-weight:600}.store-switcher small{display:block;font-size:10px}.store-avatar{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--border);border-radius:5px}.store-avatar .mark{width:15px;height:20px}.sidebar nav{overflow-y:auto}.nav-group{margin-bottom:12px}.nav-label{padding:3px 10px;margin-bottom:4px;font-size:11px;color:var(--muted-foreground);font-weight:500}.nav-item{display:flex;align-items:center;gap:9px;color:var(--sidebar-foreground);padding:6px 10px;border-radius:var(--radius);min-height:32px;font-size:13px;margin-bottom:2px}.nav-item svg{color:var(--muted-foreground)}.nav-item:hover{background:var(--sidebar-accent);text-decoration:none}.nav-item.active{background:var(--sidebar-accent);font-weight:600;color:var(--primary)}.nav-item.active svg{color:var(--primary)}.sidebar-footer{margin-top:auto;padding-top:8px}.account{display:flex;align-items:center;gap:8px;margin:8px -1px 0;padding:10px 6px 0;border-top:1px solid var(--border)}.account>span:nth-child(2){flex:1;min-width:0}.account strong{font-weight:500;font-size:11px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account small{font-size:10px;display:block}.avatar{border-radius:50%;background:var(--muted);width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;border:1px solid var(--border);flex-shrink:0;color:var(--primary)}.app-main{margin:60px 12px 12px 246px;min-height:calc(100vh - 72px);border:1px solid var(--border);border-radius:8px;background:var(--background);display:flex;flex-direction:column;overflow:hidden}.demo-banner{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:36px;background:#faf9f4;border-bottom:1px solid #ede8d9;padding:8px 24px;font-size:11px;color:#77643a}.demo-banner strong{font-weight:600}.next-version{color:#8c8c85;white-space:nowrap}.page-content{padding:var(--space-6);flex:1;display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.page-intro{display:flex;align-items:center;justify-content:space-between;gap:16px}.page-intro p{margin-top:4px}.app-footer{display:flex;justify-content:space-between;gap:12px;padding:12px 24px;color:var(--muted-foreground);font-size:10px;border-top:1px solid var(--border)}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);min-width:0}.card-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5) 0}.card-header p{font-size:12px;margin-top:4px}.card-body{padding:var(--space-5)}.card-header+.card-body{padding-top:16px}.grid{display:grid;gap:var(--space-5)}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.stats{display:grid;gap:16px}.stats.four{grid-template-columns:repeat(4,minmax(0,1fr))}.stats.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{border:1px solid var(--border);border-radius:var(--radius);padding:16px;min-width:0;background:var(--card)}.card .stat{border:none;padding:0}.card .stats+.stats{margin-top:22px;padding-top:22px;border-top:1px solid var(--border)}.stat-label{display:flex;justify-content:space-between;gap:6px;color:var(--muted-foreground);font-size:12px;margin-bottom:9px}.stat strong{font-size:25px;line-height:1.2;font-weight:600;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.stat small{display:block;margin-top:7px;font-size:11px}.summary-value{font-size:28px;font-weight:600;letter-spacing:-.5px;margin-bottom:8px}.action-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--border);color:var(--foreground)}.action-row:first-child{padding-top:0}.action-row:last-child{border-bottom:0;padding-bottom:0}a.action-row:hover{text-decoration:none;color:var(--primary)}.action-row>div{display:flex;align-items:center;gap:9px}.action-row small{display:block;font-size:11px}.action-row strong{font-size:13px;font-weight:500}.text-action{display:inline-flex;align-items:center;gap:6px;font-size:13px;margin-top:6px}.table-scroll{overflow-x:auto;max-width:100%}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}th{color:var(--muted-foreground);font-weight:500;font-size:12px;padding:9px 12px;border-bottom:1px solid var(--border);white-space:nowrap}td{padding:13px 12px;border-bottom:1px solid var(--border);vertical-align:middle}tr:last-child td{border-bottom:none}td .text-action{margin:0;white-space:nowrap}table .empty{min-width:240px}.filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.filters>select{width:auto}.search{position:relative;display:flex;align-items:center;max-width:400px;flex:1;min-width:200px}.search svg{position:absolute;left:10px;color:var(--muted-foreground)}.search input{width:100%;height:34px;border:1px solid var(--input);border-radius:var(--radius);background:var(--background);padding:6px 12px 6px 34px}.tabs{display:flex;gap:6px;border-bottom:1px solid var(--border)}.tabs button{padding:8px 12px;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--muted-foreground);font-size:13px}.tabs button[aria-selected=true]{color:var(--foreground);border-bottom-color:var(--primary);font-weight:600}.list-count{font-size:12px}.empty{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;padding:36px 16px;color:var(--muted-foreground)}.back-link{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--muted-foreground);align-self:flex-start}.details{display:grid;grid-template-columns:minmax(90px,.75fr) minmax(0,1.5fr);gap:10px;margin:0 0 18px;word-break:break-word}.details dt{color:var(--muted-foreground);font-size:12px}.details dd{margin:0;font-size:13px}.money{font-variant-numeric:tabular-nums;font-weight:600}.note{padding:12px;background:var(--muted);border-radius:var(--radius);margin-bottom:12px}.note p{white-space:pre-wrap}.note small{display:block;margin-top:7px}.kanban{display:flex;gap:12px;overflow-x:auto;padding-bottom:14px;max-width:100%;min-height:340px}.kanban-column{min-width:218px;width:218px;flex-shrink:0;background:var(--muted);border:1px solid var(--border);border-radius:var(--radius);padding:10px}.kanban-column>header{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:600;padding:2px 0 12px}.kanban-item{background:var(--background);border:1px solid var(--border);border-radius:var(--radius);padding:12px;margin-bottom:10px;display:flex;flex-direction:column;gap:8px;cursor:grab}.kanban-item select{font-size:11px;min-height:28px;padding:4px}.conversation-list{margin:-20px}.conversation-row{display:flex;align-items:center;gap:12px;width:100%;border:0;border-bottom:1px solid var(--border);padding:18px 20px;text-align:left;background:transparent;color:var(--foreground)}.conversation-row:last-child{border-bottom:none}.conversation-row:hover{background:var(--muted)}.conversation-row>div{flex:1;min-width:0}.conversation-row strong{font-size:13px;font-weight:600}.conversation-row p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted-foreground);font-size:12px;margin:5px 0}.conversation-row small{font-size:11px}.chat-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;align-items:start}.chat-card .card-body{padding:0}.chat-messages{display:flex;flex-direction:column;gap:14px;padding:24px;background:#f9faf9;min-height:320px;max-height:55vh;overflow-y:auto}.bubble{padding:10px 13px;border:1px solid var(--border);border-radius:8px;max-width:80%;background:var(--background);align-self:flex-start;white-space:pre-wrap;overflow-wrap:anywhere}.bubble.ai,.bubble.operator{align-self:flex-end;background:#eff5f2;border-color:#dbe7df}.bubble small{font-size:10px}.bubble p{font-size:13px;margin:5px 0}.bubble footer{font-size:9px;color:var(--muted-foreground);text-align:right}.chat-compose{padding:14px;display:flex;align-items:flex-end;gap:10px;border-top:1px solid var(--border)}.chat-compose textarea{flex:1;min-width:0;min-height:68px;max-height:130px;border:1px solid var(--input);border-radius:var(--radius);padding:9px;font-size:13px}.chat-tools{padding:0 12px 12px;display:flex;gap:4px;flex-wrap:wrap}.chat-tools .button{font-size:11px}.chat-side{display:flex;flex-direction:column;gap:16px}.product-name{display:flex;align-items:center;gap:10px}.product-symbol{width:32px;height:32px;border:1px solid var(--border);border-radius:var(--radius);background:var(--muted);display:flex;justify-content:center;align-items:center;color:var(--muted-foreground)}.product-hero{height:280px;display:flex;align-items:center;justify-content:center;gap:16px;flex-direction:column;color:var(--muted-foreground);background:var(--muted);border-radius:var(--radius)}.product-hero span{font-size:18px}.cart-total{display:flex;justify-content:space-between;gap:12px;padding:18px 12px;border-top:1px solid var(--border);margin-bottom:12px}.cart-total strong{font-size:20px}.quantity{max-width:75px}.period{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.period .field{font-size:11px}.period input{min-height:32px;font-size:12px}.bar-list{display:flex;flex-direction:column;gap:16px}.bar-caption{display:flex;justify-content:space-between;font-size:12px;margin-bottom:8px}.bar-caption strong{font-weight:500}.bar-track{height:10px;border-radius:3px;background:var(--muted);overflow:hidden}.bar-track>div{height:100%;background:var(--primary);border-radius:3px;min-width:2px}.notice-preview{padding:15px;border:1px solid var(--border);background:var(--muted);border-radius:var(--radius);white-space:pre-wrap;margin-bottom:14px;overflow-wrap:anywhere}.callout{display:flex;gap:10px;padding:12px 14px;background:var(--muted);border:1px solid var(--border);border-radius:var(--radius);font-size:12px;align-items:flex-start}.callout svg{margin-top:2px;color:var(--primary)}.demo-key{display:flex;gap:12px;padding:14px;border:1px solid var(--border);border-radius:var(--radius)}.demo-key p{font-size:12px;color:var(--muted-foreground)}.error-text,.warning-text{color:#a84622;font-size:12px}.route-error{padding:80px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}dialog{border:1px solid var(--border);border-radius:9px;width:min(460px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;color:var(--foreground);background:var(--background);box-shadow:0 16px 70px #0002}dialog.wide{width:min(780px,calc(100vw - 32px))}dialog::backdrop{background:#14231c55}.dialog-head{position:sticky;top:0;z-index:1;background:var(--background);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--border)}dialog>.form-stack{padding:20px}.dialog-head h2{font-size:16px}.compare-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.formula{font-size:12px;border:1px solid var(--border);border-radius:var(--radius);padding:12px;color:var(--muted-foreground)}.formula summary{color:var(--foreground);font-weight:500;cursor:pointer}.formula ul{padding-left:18px;margin:12px 0}.formula li+li{margin-top:6px}.toast-region{position:fixed;bottom:20px;right:20px;z-index:100;max-width:min(440px,calc(100vw - 32px))}.toast{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid #d6e4dc;border-radius:7px;background:var(--background);box-shadow:0 5px 25px #0002;font-size:12px}.toast>svg{color:#357c51}.toast p{flex:1}.toast.error{border-color:#e9c8b8}.toast.error>svg{color:#a84622}.login-page{min-height:100dvh;background:var(--muted);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px;gap:24px}.login-brand{display:flex;align-items:center;gap:9px;font-size:22px;letter-spacing:-.7px}.login-brand .mark{height:32px;width:27px}.login-card{width:100%;max-width:384px;border:1px solid var(--border);border-radius:var(--radius);padding:24px;background:var(--background);box-shadow:0 1px 3px #00000006}.login-card h1{font-size:20px;margin-bottom:6px;text-align:center}.login-card>p{text-align:center;font-size:13px;margin-bottom:22px}.login-card form{gap:16px}.login-card .field{font-size:13px}.login-card form>.button{width:100%;min-height:36px}.forgot-link{font-size:12px;margin-top:-7px;align-self:flex-end}.login-demo{border-top:1px solid var(--border);padding-top:16px;margin-top:22px;text-align:center;font-size:11px;color:var(--muted-foreground)}.login-demo p{margin:8px 0}.login-demo small{font-size:11px}.login-demo .button{display:flex;margin:8px auto 0;font-size:11px}.login-footer{display:flex;align-items:center;gap:20px;font-size:11px;color:var(--muted-foreground)}.login-footer .button{font-size:11px}.mobile-only,.nav-overlay{display:none}
@media(min-width:1500px){.page-content{padding:28px 32px}}@media(max-width:1150px){.sidebar{width:218px}.app-main{margin-left:218px}.stats.four{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-layout{grid-template-columns:minmax(0,1fr)}.chat-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.chat-side .card:last-child{grid-column:1/-1}.page-intro{flex-wrap:wrap}}@media(max-width:760px){body{font-size:16px}.brand{font-size:15px}.brand .mark{width:19px;height:22px}.sidebar{left:-255px;width:248px;transition:left var(--motion-page) var(--motion-ease)}.sidebar.open{left:0;z-index:40;top:0;padding-top:14px}.nav-overlay{display:block;position:fixed;inset:0;border:0;background:#14231c66;z-index:35}.mobile-only{display:inline-flex}.app-main{margin:56px 8px 8px;min-height:calc(100dvh - 64px)}.demo-banner{padding:9px 14px;font-size:10px;align-items:flex-start;flex-direction:column;gap:3px}.page-content{padding:18px 14px;gap:16px}h1{font-size:20px}.page-intro{gap:12px}.page-intro .inline{gap:4px}.page-intro .button{font-size:11px;padding:4px 8px}.grid.two{grid-template-columns:minmax(0,1fr);gap:16px}.stats.three{grid-template-columns:minmax(0,1fr)}.stats.four{gap:10px}.stat{padding:12px}.stat strong{font-size:22px}.stat-label{font-size:11px}.stat small{font-size:10px}.card .stats.three{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.card .stats.three strong{font-size:19px}.card-header{padding:15px 15px 0}.card-body{padding:15px}.conversation-list{margin:-15px}.conversation-row{padding:15px;gap:9px;flex-wrap:wrap}.conversation-row>div{min-width:150px}.conversation-row>.badge{margin-left:42px}.conversation-row>svg{margin-left:auto}.chat-messages{padding:15px;max-height:55vh}.bubble{max-width:92%}.chat-compose{flex-direction:column;align-items:stretch;padding:12px}.chat-compose textarea{width:100%}.chat-side{grid-template-columns:minmax(0,1fr)}.chat-side .card:last-child{grid-column:auto}.field input,.field textarea,.field select,.search input{font-size:16px;min-height:38px}.filters>select{max-width:100%;font-size:14px}.period .button{font-size:12px}.period .field{flex:1;min-width:130px}.period input{font-size:14px;width:100%}.period{gap:8px}.compare-fields{grid-template-columns:minmax(0,1fr)}.app-footer{padding:12px 14px;flex-direction:column;gap:3px;font-size:9px}.toast-region{bottom:12px;right:12px}.login-page{padding:24px 16px}.login-footer{gap:6px;flex-direction:column}.dialog-head{padding:14px 16px}dialog>.form-stack{padding:16px}.details{grid-template-columns:90px minmax(0,1fr)}.kanban-column{min-width:210px;width:210px}th,td{padding:9px}.next-version{font-size:9px}}

/* Phase 2: derived context and evidence, using baseline tokens. */
.version-switch{display:flex;gap:3px;border:1px solid var(--border,#dce2e3);border-radius:8px;padding:3px;background:#fff;flex-shrink:0}.version-switch button{border:0;background:transparent;border-radius:5px;padding:7px 10px;font:inherit;cursor:pointer;white-space:nowrap}.version-switch button[aria-pressed=true]{background:#e7f0ef;color:#194845;font-weight:600}.login-version{position:absolute;right:24px;top:22px;z-index:2}.journey-grid{display:grid;grid-template-columns:repeat(7,minmax(100px,1fr));gap:8px;overflow-x:auto;margin-bottom:20px}.journey-step{border:1px solid #e0e5e5;border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:7px;font-size:12px;min-width:100px}.journey-step.observed{background:#f1f8f5;border-color:#b5d4c4}.journey-step strong{font-size:16px;color:#1d514b}.journey-step .badge{align-self:flex-start}.context-facts{list-style:none;padding:0}.context-facts li{padding:10px 0;border-bottom:1px solid #eef0f0}.future-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.future-overview a{padding:18px;border:1px solid #dce4e3;border-radius:8px;font-weight:600}.lab-actions{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.candidate-actions{display:flex;flex-direction:column;gap:5px;min-width:170px}.candidate-actions .button{font-size:12px;padding:6px}.derived-crm{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}.derived-customer{display:flex;flex-direction:column;gap:8px;padding:15px;border:1px solid #e1e5e5;border-radius:7px;margin-bottom:10px}.next-native>.page-intro>.badge{display:none}.future-tabs{overflow-x:auto;white-space:nowrap}.formula p{line-height:1.65}.card-body h3{font-size:14px;margin-top:22px}.stats.three{grid-template-columns:repeat(3,1fr)}
@media(max-width:700px){.demo-banner{align-items:flex-start;flex-direction:column;gap:10px}.version-switch{width:100%}.version-switch button{flex:1}.future-overview,.stats.three{grid-template-columns:1fr}.journey-grid{grid-template-columns:repeat(7,120px)}.login-version{top:12px;right:12px;left:12px}.login-page{padding-top:70px}.candidate-actions{min-width:150px}.future-tabs button{flex-shrink:0}}

/* Consolidated customer experience. */
.help-anchor{display:inline-flex;align-items:center;position:relative;vertical-align:middle}.help-button{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:0;background:transparent;color:#526563;border-radius:4px;cursor:help}.help-button:hover{color:#194845;background:#eef4f3}.help-button:focus-visible{outline:2px solid #245955;outline-offset:2px}.help-content{position:fixed;z-index:10000;display:block;max-height:50vh;overflow:auto;background:#fff;border:1px solid #ced9d7;border-radius:8px;padding:14px;box-shadow:0 6px 18px #13332d26;font-size:12px;line-height:1.6;color:#334643;white-space:normal;text-align:left}.help-content p{margin:5px 0}.help-content ul{padding-left:18px;margin:5px 0}.help-content::before{content:'';position:absolute;left:0;right:0;top:-8px;height:8px}.scenario-picker{padding:16px 12px 12px}.scenario-picker label{display:block;font-size:11px;color:#526563;margin-bottom:6px}.scenario-picker select{font:inherit;font-size:13px;width:100%;background:#fff;border:1px solid #dce4e3;border-radius:6px;min-height:38px;padding:8px;color:#203b38}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.section-heading h2{font-size:15px;font-weight:600;margin:0}.dashboard-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-bottom:20px}.dashboard-filters>.field{min-width:170px;flex:1}.dashboard-filters .period{margin:0;align-self:flex-end;gap:8px;flex:2}.dashboard-filters .period .field{min-width:120px}.dashboard-stats .stat strong{font-size:24px;font-variant-numeric:tabular-nums}.dashboard-main-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin:26px 0 30px}.decision-section,.journey-overview{min-width:0}.decision-row{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid #e3e9e7}.priority-dot{flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#eff4f3;color:#245751;border-radius:50%;height:25px;width:25px;font-size:12px;font-weight:600}.decision-row>div{flex:1}.decision-row p{margin:5px 0;font-size:12px;color:#556660}.decision-row small{font-size:12px;color:#245751}.decision-row .button{white-space:nowrap;padding:7px 12px;font-size:12px}.decision-section>.text-action{margin-top:18px;display:inline-flex}.stage-summary{position:relative;width:100%;display:grid;grid-template-columns:38px 1fr 40px;gap:10px;align-items:center;border:0;background:transparent;padding:12px 8px 14px;cursor:pointer;text-align:left;color:#31403e;font:inherit;font-size:12px}.stage-summary:hover{background:#f1f6f5}.stage-code{font-size:11px;font-weight:600;color:#22554e}.stage-summary strong{text-align:right;font-size:14px;font-variant-numeric:tabular-nums}.stage-bar{position:absolute;left:8px;bottom:1px;height:2px;background:#92b6aa;max-width:calc(100% - 16px)}.crm-toolbar{display:flex;align-items:flex-end;gap:16px;margin-bottom:22px}.crm-toolbar>.filters{flex:1;margin:0}.crm-toolbar>.field{min-width:230px}.journey-kanban{display:flex;gap:14px;overflow-x:auto;align-items:stretch;padding-bottom:16px;max-width:100%;scroll-snap-type:x proximity}.journey-column{flex:0 0 245px;display:flex;flex-direction:column;background:#f2f5f4;border:1px solid #e0e6e4;border-radius:8px;min-height:400px;scroll-snap-align:start}.journey-column>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:15px 13px;border-bottom:1px solid #dfe6e3;min-height:82px}.journey-column header strong{font-size:11px;color:#245955}.journey-column h2{font-size:13px;line-height:1.4;margin:5px 0 0}.journey-card-list{padding:10px;flex:1;display:flex;flex-direction:column;gap:9px}.journey-customer{display:flex;flex-direction:column;gap:9px;text-align:left;background:#fff;border:1px solid #dce4e0;border-radius:6px;padding:13px;font:inherit;color:#293b34;cursor:pointer;width:100%}.journey-customer:hover{border-color:#769f90;background:#fbfdfc}.journey-customer>strong{font-size:13px}.journey-customer>span{font-size:12px;color:#52685e}.journey-customer>div{display:flex;justify-content:space-between;gap:8px;align-items:center}.journey-customer div strong{font-size:12px;font-variant-numeric:tabular-nums}.journey-customer small{font-size:11px;color:#57665f}.journey-customer .badge{align-self:flex-start}.column-empty{color:#56665e;font-size:12px;padding:16px 3px}.column-pagination{display:flex;justify-content:space-between;align-items:center;padding:10px 8px;border-top:1px solid #dfe6e3;gap:5px}.column-pagination button{border:0;background:transparent;color:#24554b;font:inherit;font-size:11px;cursor:pointer;padding:4px}.column-pagination button:disabled{color:#626e66;cursor:default;opacity:.55}.column-pagination small{font-size:10px;color:#4f6257;font-variant-numeric:tabular-nums}.customer-drawer{position:fixed;inset:0 0 0 auto;margin:0;max-height:100vh;height:100vh;width:min(540px,95vw);max-width:95vw;border-radius:0;border-width:0 0 0 1px;overflow-y:auto}.customer-drawer .dialog-head{position:sticky;top:0;z-index:1;background:white}.crm-detail{padding:20px 24px}.crm-detail>.badge{margin-bottom:18px}.crm-detail h3{font-size:14px;margin:24px 0 12px}.detail-message{background:#f1f6f3;border-radius:6px;padding:12px;font-size:13px;line-height:1.6}.activity-timeline{list-style:none;padding:0;margin:0}.activity-timeline li{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #edf1ef;font-size:12px}.activity-timeline small{font-size:11px;color:#57665f;white-space:nowrap}.list-pagination{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:16px;font-size:12px}.revenue-bars>div{display:grid;grid-template-columns:55px 1fr 95px;gap:14px;align-items:center;margin:12px 0;font-size:12px}.revenue-bars>div>div{height:8px;background:#eff4f2;border-radius:3px;overflow:hidden}.revenue-bars>div>div>span{height:8px;display:block;background:#8aac9e;border-radius:3px}.revenue-bars strong{text-align:right;font-variant-numeric:tabular-nums}.scenario-directory{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.home-links{margin:20px 0}.stats strong,table{font-variant-numeric:tabular-nums}::selection{background:#d5e7de;color:#18382d}
@media(max-width:900px){.dashboard-main-grid{grid-template-columns:1fr;gap:28px}.scenario-directory{grid-template-columns:1fr}.dashboard-filters .period{flex-basis:100%}.crm-toolbar{flex-wrap:wrap}.crm-toolbar>.filters{flex-basis:100%}.crm-toolbar>.field{flex:1}.journey-column{flex-basis:235px}}
@media(max-width:600px){.dashboard-stats .stat strong{font-size:21px}.dashboard-filters>.field{min-width:140px}.dashboard-filters .period .field{min-width:110px}.dashboard-filters .period .button{font-size:11px;padding:6px}.dashboard-main-grid{margin-top:22px}.decision-row{gap:9px}.decision-row .button{padding:7px;font-size:11px}.crm-detail{padding:18px}.activity-timeline li{flex-direction:column;gap:4px}.journey-column{flex-basis:245px}.crm-toolbar>.field{min-width:180px}.page-intro>.help-anchor{align-self:flex-start}.list-pagination{justify-content:center;flex-wrap:wrap}.revenue-bars>div{gap:8px;grid-template-columns:42px 1fr 86px}}

/* Tenant identity and operational routines. */
.tenant-brand{display:flex;align-items:center;gap:10px;color:#245955}.tenant-brand.demo2{color:#765524}.tenant-brand.demo3{color:#81554f}.tenant-brand svg{width:38px;height:38px;flex-shrink:0}.tenant-brand>span{display:flex;flex-direction:column;gap:3px}.tenant-brand strong{font-size:17px;font-weight:650;line-height:1.15}.tenant-brand small{font-size:10px;font-weight:400;color:inherit}.login-brand .tenant-brand strong{font-size:25px}.login-brand .tenant-brand svg{width:48px;height:48px}.journey-kanban{height:clamp(420px,calc(100dvh - 255px),720px);overflow-y:hidden;scrollbar-color:#7d9e92 #edf2f0;scrollbar-width:thin}.journey-column{min-height:0;height:100%;overflow:hidden}.journey-column>header{flex-shrink:0;position:sticky;top:0;z-index:1;background:#f2f5f4}.journey-card-list{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8eaaa0 #edf2f0}.column-pagination{flex-shrink:0}.care-card-context{color:#245955!important}.routine-panel{margin:28px 0;border-top:1px solid #dce5e1;padding-top:22px}.routine-panel.compact{margin-top:24px}.routine-summary{display:flex;align-items:center;gap:14px;justify-content:space-between;padding:14px 0;border-bottom:1px solid #e4eae7}.routine-summary>div{flex:1}.routine-summary small,.care-timeline small,.care-alert small{display:block;margin-top:5px;font-size:12px;color:#536b62}.care-timeline>article{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #e4eae7}.care-timeline>article>div{flex:1;min-width:0}.care-step{display:flex;align-items:center;justify-content:center;height:26px;width:26px;flex-shrink:0;border:1px solid #bdcec6;border-radius:50%;font-size:11px;color:#245955}.care-timeline strong,.care-alert strong{font-size:13px}.document-row{padding:20px 0;border-bottom:1px solid #e4eae7}.document-row p{font-size:12px;line-height:1.6;color:#536b62}.document-row small{display:block;margin-bottom:10px}.document-row .inline{margin-top:12px}.care-alert{display:flex;align-items:center;gap:12px;padding:18px 0;border-bottom:1px solid #e4eae7}.care-alert>div{flex:1}.routine-panel>.text-action{display:inline-flex;margin-top:18px}.table-name{font:inherit;font-weight:600;color:#245955;text-align:left;border:0;background:none;padding:4px 0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.table-name:focus-visible{outline:2px solid #245955;outline-offset:3px}.conversation-preview{margin:16px 0 24px}.preview-message{background:#f3f6f4;padding:13px;border-radius:6px;margin:9px 0;font-size:12px}.preview-message.customer{background:#eaf1ee;margin-right:25px}.preview-message.ai,.preview-message.operator{margin-left:25px}.preview-message p{line-height:1.65;margin:6px 0}.preview-message small{font-size:10px;color:#536b62}.workflow-actions{padding-bottom:20px;border-bottom:1px solid #e1e8e4;margin-bottom:20px}.workflow-actions h3{margin-top:0}.queue-tabs{overflow-x:auto;white-space:nowrap}.queue-tabs span{font-size:11px;margin-left:6px;color:#536b62}.operational-notice{padding:22px 0;border-bottom:1px solid #dce5e1}.operational-notice header{display:flex;justify-content:space-between;gap:15px}.operational-notice h2{font-size:16px;margin:0 0 7px}.operational-notice small{color:#536b62;font-size:12px}.operational-notice p{max-width:75ch;line-height:1.65;font-size:13px}.notice-audience{padding:12px;background:#f2f6f4;border-radius:6px;color:#245955}.list-presets{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.list-presets .button{font-size:12px;padding:7px 10px}.table-name:hover{color:#183d36}.workflow-actions textarea{min-height:120px}.journey-card-list:focus-visible{outline:2px solid #245955;outline-offset:-2px}.check{display:flex;align-items:center;gap:8px;font-size:13px}
@media(max-width:650px){.tenant-brand strong{font-size:14px}.tenant-brand small{font-size:9px}.tenant-brand svg{width:31px;height:31px}.care-timeline>article,.care-alert{flex-wrap:wrap}.care-timeline>article>div,.care-alert>div{flex-basis:60%}.routine-summary{flex-wrap:wrap}.routine-summary>div{flex-basis:65%}.routine-summary .button{margin-left:auto}.operational-notice header{align-items:flex-start}.journey-kanban{height:clamp(420px,calc(100dvh - 265px),620px)}.queue-tabs button{flex-shrink:0}.routine-panel .section-heading{align-items:flex-start}.routine-panel .section-heading h2{font-size:14px}}

.home-attention{margin:22px 0 24px}.home-attention-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.home-attention-items button{display:flex;align-items:center;text-align:left;gap:12px;padding:15px 12px;background:none;border:0;color:var(--foreground)}.home-attention-items button+button{border-left:1px solid var(--border)}.home-attention-items button strong{margin-left:auto;font-size:22px}.home-attention-items button:hover,.home-operation button:hover{background:var(--muted)}.home-month-summary{display:grid;grid-template-columns:1.3fr 1fr;gap:35px;padding:8px 0 22px}.home-headline{display:flex;flex-direction:column;gap:8px}.home-headline>strong{font-size:32px;font-weight:600;letter-spacing:-1px}.home-headline>span{color:var(--muted-foreground);font-size:12px}.home-ledger{margin:0}.home-ledger>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--border)}.home-ledger dd{margin:0;font-weight:600}.home-chart-heading{border-top:1px solid var(--border);padding-top:20px}.home-chart-heading .field{max-width:230px}.home-chart{display:flex;align-items:stretch;gap:5px;height:185px;padding-top:12px;margin:18px 0 8px;border-bottom:1px solid var(--border)}.home-chart button{position:relative;flex:1;min-width:10px;display:flex;align-items:center;justify-content:flex-end;flex-direction:column;padding:0 1px 26px;border:0;background:transparent;height:100%;color:var(--muted-foreground)}.home-chart .home-bar{width:100%;max-width:26px;min-height:2px;background:color-mix(in srgb,var(--primary) 65%,white);border-radius:3px 3px 0 0;transition:height var(--motion-page) var(--motion-ease)}.home-chart button:hover .home-bar,.home-chart button.selected .home-bar{background:var(--primary)}.home-bar-label{position:absolute;bottom:3px;font-size:10px}.home-chart button.selected .home-bar-label{font-weight:700;color:var(--foreground)}.home-day{background:var(--muted);padding:12px 16px;margin-top:14px;border-radius:var(--radius)}.home-day-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:14px}.home-day-metrics>div{display:flex;flex-direction:column;gap:5px}.home-day-metrics span{font-size:11px;color:var(--muted-foreground)}.home-work-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:20px}.home-activity{list-style:none;margin:10px 0 15px;padding:0}.home-activity li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--border)}.home-activity li>div{display:flex;flex-direction:column;gap:5px}.home-activity span{font-size:12px;color:var(--muted-foreground)}.home-operation{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.home-operation button{border:1px solid var(--border);background:transparent;border-radius:var(--radius);padding:12px;text-align:left;display:flex;flex-direction:column;gap:8px}.home-operation strong{font-size:24px}.comparison-group{border-top:1px solid var(--border);padding-top:16px}.comparison-group h3{margin-bottom:14px}.token-summary{display:flex;justify-content:space-between;gap:12px;background:var(--muted);padding:12px;margin-top:15px;border-radius:var(--radius)}
@media(max-width:900px){.home-work-grid{grid-template-columns:1fr}.home-day-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.home-attention-items{grid-template-columns:1fr}.home-attention-items button+button{border-left:0;border-top:1px solid var(--border)}}@media(max-width:600px){.home-month-summary{grid-template-columns:1fr;gap:16px}.home-headline>strong{font-size:28px}.home-chart{gap:2px;height:160px}.home-bar-label{font-size:9px}.home-day-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.home-day .section-heading{align-items:flex-start;flex-direction:column}.home-chart-heading .field{max-width:180px}.token-summary{flex-direction:column}.home-activity li{align-items:flex-start}.home-activity .button{white-space:normal;text-align:center;flex-shrink:0;max-width:100px}}



/* Manager workspaces: navigation supplies the page label. */
.sr-only,.page-content:is([data-view="home"],[data-view="intelligence"],[data-view="crm"],[data-view="conversations"],[data-view="customers"],[data-view="orders"],[data-view="products"],[data-view="automations"],[data-view="campaigns"],[data-view="aiSales"],[data-view="history"],[data-view="notices"]) .page-intro h1,.page-content:is([data-view="customers"],[data-view="products"],[data-view="orders"],[data-view="aiSales"],[data-view="history"])>h1{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.page-intro:has(.back-link) h1,.customer-drawer h1{position:static;width:auto;height:auto;margin:0;clip-path:none;white-space:normal}.page-intro{margin-bottom:16px}.page-intro>div>p{margin-top:0}.home-controls{display:flex;justify-content:flex-end;margin-bottom:12px}.home-controls .field{width:180px}.stage-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--border);border-radius:7px;overflow:hidden;margin:0 0 24px;background:var(--background)}.stage-strip>button{display:flex;flex-direction:column;align-items:flex-start;gap:7px;border:0;border-right:1px solid var(--border);background:transparent;padding:16px 12px;text-align:left;color:var(--foreground);min-width:0;transition:background-color var(--motion-control) var(--motion-ease)}.stage-strip>button:last-child{border-right:0}.stage-strip>button:hover,.stage-strip>button[aria-pressed=true]{background:var(--sidebar)}.stage-strip>button>span:first-child{font-size:11px;font-weight:600;color:var(--primary)}.stage-strip small{font-size:10px;margin-left:6px}.stage-strip strong{font-size:27px;line-height:1;font-variant-numeric:tabular-nums;font-weight:600}.strip-name{font-size:11px;line-height:1.45;min-height:32px}.sidebar nav{scrollbar-color:#8ba9a3 var(--sidebar);scrollbar-width:thin;scrollbar-gutter:stable;padding-right:3px;mask-image:linear-gradient(to bottom,transparent,black 10px,black calc(100% - 14px),transparent);padding-block:10px;overscroll-behavior:contain}.sidebar nav::-webkit-scrollbar{width:7px;background:var(--sidebar)}.sidebar nav::-webkit-scrollbar-track{background:var(--sidebar)}.sidebar nav::-webkit-scrollbar-thumb{background:#8ba9a3;border:2px solid var(--sidebar);border-radius:10px}.nav-item{transition:background-color var(--motion-control) var(--motion-ease),color var(--motion-control) var(--motion-ease)}.dashboard-distribution{margin:25px 0}.dashboard-distribution .journey-overview{max-width:100%}.priority-options{display:flex;gap:0;border-block:1px solid var(--border);margin-bottom:22px}.priority-options>button{flex:1;border:0;border-right:1px solid var(--border);padding:14px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:12px;background:transparent;color:var(--foreground)}.priority-options>button:hover{background:var(--sidebar)}.priority-options>button:last-child{border-right:0}.priority-options span{font-size:12px}.priority-options strong{font-size:21px}.conversation-row>div{min-width:0;flex:1}.conversation-row p{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.renewal-list article{display:flex;align-items:center;gap:14px;padding:15px 0;border-bottom:1px solid var(--border)}.renewal-list article>div{flex:1;min-width:0}.renewal-list article span,.renewal-list article small{display:block;margin-top:4px}.renewal-list .button{white-space:nowrap}.campaign-copy{background:var(--sidebar);padding:16px;border-radius:6px;margin-bottom:20px}.campaign-copy p{margin-top:8px;max-width:75ch}.service-orders>button{display:flex;align-items:center;gap:16px;padding:16px 0;border:0;border-bottom:1px solid var(--border);background:transparent;width:100%;text-align:left;color:var(--foreground)}.service-orders>button>span{flex:1}.service-orders small{display:block;margin-top:5px}.tenant-brand.demo4{color:#3d5569}.tenant-brand.demo5{color:#5b683f}.app-main{overflow:clip}.journey-kanban{position:sticky;top:60px;height:calc(100dvh - 80px);min-height:0;overflow-x:scroll;overscroll-behavior-x:contain;scrollbar-width:auto;scrollbar-color:#7d9e92 #edf2f0}.journey-kanban::-webkit-scrollbar{height:13px}.journey-kanban::-webkit-scrollbar-track{background:#edf2f0;border-radius:6px}.journey-kanban::-webkit-scrollbar-thumb{background:#7d9e92;border-radius:6px;border:3px solid #edf2f0}.journey-column{flex-basis:250px}.journey-column>header{scroll-margin-top:60px}.journey-card-list{overscroll-behavior:contain}.page-content>h1:not(.sr-only){font-size:20px}.routine-summary .button{font-size:12px}.scenario-directory{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
@media(max-width:900px){.stage-strip{display:flex;overflow-x:auto;scroll-snap-type:x proximity}.stage-strip>button{flex:0 0 145px;scroll-snap-align:start}.priority-options{overflow-x:auto}.priority-options>button{flex:0 0 180px}.renewal-list article{flex-wrap:wrap}.renewal-list article>div{flex-basis:100%}.journey-kanban{top:54px;height:calc(100dvh - 72px)}}


.page-content[data-view="crm"]{padding-bottom:0}/* Operational reading, review drawers and template previews. */.stage-strip>button{position:relative}.stage-strip>button>span:first-child{padding-right:65px}.stage-strip .stage-delta{position:absolute;right:12px;top:15px;font-size:11px;font-weight:700;line-height:1.2;white-space:nowrap}.stage-delta.positive{color:#188452}.stage-delta.negative{color:#c74a4a}.stage-delta.neutral{color:var(--muted-foreground)}.conversation-priorities .priority-options button[aria-pressed=true]{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.case-panel{background:var(--card);padding:16px;border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;gap:12px}.case-panel h3{font-size:15px;margin:0}.case-panel p{font-size:13px;margin:0;line-height:1.6}.case-panel .field{margin:0}.consent-panel{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 0}.crm-conversation-layout{display:grid;grid-template-columns:minmax(280px,1fr) minmax(330px,1.25fr);gap:20px;align-items:start}.crm-contact-sidebar{display:flex;flex-direction:column;gap:14px}.crm-contact-sidebar .workflow-actions{padding:14px;background:var(--card);border:1px solid var(--border);border-radius:12px}.crm-contact-sidebar .button{align-self:flex-start}.customer-drawer:has(.crm-conversation-layout){max-width:1120px}.whatsapp-frame{border:1px solid #d4dcdf;border-radius:14px;overflow:hidden;background:#efeae2;min-width:0;box-shadow:0 3px 12px #142a3220}.whatsapp-header{display:flex;align-items:center;gap:10px;background:#f0f2f5;color:#162a31;padding:13px 16px}.whatsapp-header .avatar{background:#dce9e6;color:#365d52}.whatsapp-header>div{flex:1;display:flex;flex-direction:column;gap:2px}.whatsapp-header small{font-size:11px;color:#65777e}.whatsapp-header>span:last-child{font-size:22px}.whatsapp-messages{display:flex;flex-direction:column;gap:12px;padding:20px;min-height:260px;max-height:520px;overflow:auto;background-color:#efeae2;background-image:radial-gradient(#c6c9c333 1px,transparent 1px);background-size:18px 18px;scrollbar-color:#bac7c1 #efeae2}.chat-day-label{align-self:center;background:#ffffffd9;color:#63737a;border-radius:7px;font-size:10px;padding:5px 12px;box-shadow:0 1px 2px #0001}.wa-bubble{position:relative;max-width:87%;padding:11px 13px 6px;box-shadow:0 1px 2px #0002;border-radius:9px;min-width:130px;color:#20333a;overflow-wrap:anywhere}.wa-bubble.incoming{background:#fff;align-self:flex-start;border-top-left-radius:0}.wa-bubble.outgoing{background:#d9fdd3;align-self:flex-end;border-top-right-radius:0}.wa-bubble>small:first-child{font-size:11px;color:#497066}.wa-bubble p{font-size:13px;line-height:1.55;margin:5px 0 7px;white-space:pre-wrap}.wa-bubble footer{display:flex;justify-content:flex-end;gap:4px;color:#73817b;font-size:10px}.wa-template-button{border-top:1px solid #abdca2;color:#2872a1;text-align:center;font-size:12px;padding:10px 4px;margin-top:7px}.wa-compose-placeholder{display:flex;justify-content:space-between;padding:11px 18px;background:#f0f2f5;color:#748387;font-size:13px}.wa-compose-placeholder span:first-child{background:#fff;border-radius:10px;padding:10px 14px;flex:1;margin-right:14px}.template-media{padding:36px 15px;text-align:center;background:#c5d7c2;border-radius:7px;margin-bottom:10px;color:#4f6660;font-size:12px}.template-filters{display:grid;grid-template-columns:minmax(0,1fr) 230px;align-items:end;gap:16px;margin:16px 0}.template-filters .search-bar{margin:0}.template-editor-dialog,.template-detail-dialog,.campaign-review-dialog{max-width:1120px!important;width:calc(100vw - 40px)}.template-editor{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);gap:24px;align-items:start}.template-editor aside{position:sticky;top:0}.template-editor .whatsapp-frame{max-width:360px;margin:auto}.template-examples{border:1px solid var(--border);border-radius:12px;padding:14px}.template-examples legend{font-size:12px;color:var(--muted-foreground);padding:0 6px}.template-button-editor{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:8px 0;border-bottom:1px solid var(--border);margin-bottom:10px}.template-button-editor>.field:nth-child(3){grid-column:1/-1}.campaign-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.intelligent-campaign-card .section-heading{align-items:start}.intelligent-campaign-card h2{font-size:17px}.campaign-reason{font-size:13px;color:var(--muted-foreground);line-height:1.6;min-height:42px}.campaign-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:15px 0;border-block:1px solid var(--border);margin:15px 0}.campaign-kpis>div{display:flex;flex-direction:column;gap:7px}.campaign-kpis small{font-size:10px;color:var(--muted-foreground)}.campaign-kpis strong{font-size:22px;letter-spacing:-.5px}.campaign-contact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:22px;margin-top:18px;align-items:start}.saved-list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.saved-list-card{text-align:left;background:var(--card);color:var(--foreground);border:1px solid var(--border);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:8px;cursor:pointer}.saved-list-card[aria-pressed=true]{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.saved-list-card small{color:var(--muted-foreground);font-size:12px}.list-builder-dialog{max-width:960px!important;width:calc(100vw - 40px)}.list-builder-heading{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:end;padding-bottom:16px;border-bottom:1px solid var(--border)}.list-builder-heading .field{margin:0}.list-builder-filters{margin:8px 0 0}.list-builder-filters>div:last-child{grid-column:1/-1}.campaign-alert{display:flex;gap:10px;align-items:center;border:1px solid #c7dfd5;background:#f0faf6;border-radius:10px;padding:12px 16px;margin-bottom:18px;font-size:12px;color:#3a6f5a}.campaign-alert .text-action{margin-left:auto}.chat-card>.whatsapp-frame{border:0;border-radius:12px 12px 0 0;box-shadow:none}.chat-card .whatsapp-messages{max-height:60vh;min-height:350px}
@media(max-width:1000px){.campaign-cards{grid-template-columns:1fr}.crm-conversation-layout,.campaign-contact-layout{grid-template-columns:1fr}.template-editor{grid-template-columns:1fr}.template-editor aside{position:static}.template-editor .whatsapp-frame{max-width:100%}.saved-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.template-filters,.saved-list-grid{grid-template-columns:1fr}.list-builder-heading{grid-template-columns:1fr}.template-button-editor{grid-template-columns:1fr}.campaign-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.whatsapp-messages{padding:14px;max-height:420px}.crm-conversation-layout{display:flex;flex-direction:column}.crm-conversation-layout>.whatsapp-frame{width:100%}.template-editor-dialog,.template-detail-dialog,.campaign-review-dialog,.list-builder-dialog{width:calc(100vw - 20px)}.stage-strip .stage-delta{right:8px;top:13px}.campaign-alert{flex-wrap:wrap}}.wa-template-button:is(button){background:transparent;width:100%;border:0;border-top:1px solid #abdca2}

.template-detail-dialog>.template-editor,.campaign-review-body,.customer-drawer>.crm-conversation-layout{padding:20px}.campaign-review-dialog>.button{margin:12px 20px 0}.campaign-review-dialog>.campaign-contact-layout{padding:0 20px 20px}.campaign-review-body>p{margin-top:0}

/* 014: bounded layouts and a persistent horizontal CRM control. */
.dashboard-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.dashboard-filters>.period-selector{grid-column:1/-1;grid-row:1}.dashboard-filters>.field{margin:0;min-width:0}.list-period{grid-column:1/-1}.crm-top-controls{display:flex;flex-direction:column;align-items:flex-end;gap:12px;min-width:0}.crm-top-controls .period-range{text-align:right}.crm-top-controls .period-presets{justify-content:flex-end}.crm-toolbar{margin-bottom:16px}
.journey-card-list{overscroll-behavior-y:auto;overscroll-behavior-x:contain}.journey-kanban{padding-bottom:64px;scrollbar-width:none}.journey-kanban::-webkit-scrollbar{height:0}.kanban-fixed-rail{position:fixed;bottom:0;z-index:40;background:var(--surface,#fff);border:1px solid var(--border,#dce2ea);border-radius:10px 10px 0 0;padding:6px 10px;display:flex;align-items:center;gap:10px;box-shadow:0 -3px 16px #12223915}.kanban-fixed-rail>button{border:0;background:var(--bg,#f3f5f7);color:var(--text,#26364b);width:28px;height:28px;font-size:24px;border-radius:6px;flex-shrink:0}.kanban-rail-scroll{overflow-x:scroll;overflow-y:hidden;min-width:0;flex:1;height:20px;scrollbar-color:#a1adbf #e9eef4;scrollbar-width:auto}.kanban-rail-scroll>div{height:1px}.kanban-rail-scroll::-webkit-scrollbar{height:12px}.kanban-rail-scroll::-webkit-scrollbar-track{background:#e9eef4;border-radius:8px}.kanban-rail-scroll::-webkit-scrollbar-thumb{background:#a1adbf;border-radius:8px}
.saved-list-card{display:flex;flex-direction:column;gap:12px;text-align:left}.saved-list-card.selected{border-color:var(--primary,#285eee)}.saved-list-select{background:none;border:0;text-align:left;padding:0;color:inherit;display:grid;gap:6px}.saved-list-card>.button{align-self:flex-start}.stage-summary .stage-delta{margin-left:auto}.stage-delta{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-size:12px;font-weight:600}.stage-delta.flat{color:#788596}
.customer-drawer.workflow-review-dialog{inset:0;margin:auto;width:min(1120px,calc(100vw - 32px));max-width:calc(100vw - 32px);height:fit-content;max-height:calc(100dvh - 32px);border-radius:16px;overflow-x:hidden;overflow-y:auto}.workflow-review-dialog .crm-conversation-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);align-items:start}.workflow-review-dialog .crm-contact-sidebar,.workflow-review-dialog .whatsapp-frame,.workflow-review-dialog .routine-panel{min-width:0;max-width:100%;overflow-wrap:anywhere}.workflow-review-dialog .button{white-space:normal;text-align:center}.workflow-review-dialog .workflow-actions .inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.workflow-review-dialog .routine-panel{margin:0 20px 20px}.workflow-review-dialog textarea{min-width:0;width:100%}.workflow-review-dialog .table-scroll table{min-width:0}.workflow-review-dialog .table-scroll th,.workflow-review-dialog .table-scroll td{white-space:normal;overflow-wrap:anywhere}.workflow-review-dialog .table-scroll{overflow-x:visible}.wa-bubble{overflow-wrap:anywhere}
@media(max-width:1000px){.workflow-review-dialog .crm-conversation-layout{grid-template-columns:minmax(0,1fr)}.crm-top-controls{align-items:flex-start}.crm-top-controls .period-presets{justify-content:flex-start}}
@media(max-width:650px){.dashboard-filters{grid-template-columns:minmax(0,1fr)}.crm-top-controls{width:100%}.page-intro:has(.crm-top-controls){flex-direction:column;align-items:flex-start}.customer-drawer.workflow-review-dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.workflow-review-dialog .workflow-actions .inline{grid-template-columns:1fr}.journey-column{flex-basis:245px}.stage-summary{flex-wrap:wrap}}

.stage-delta.up{color:var(--status-success)}.stage-delta.down{color:var(--status-danger)}.kanban-fixed-rail{background:var(--card);color:var(--foreground)}.kanban-fixed-rail>button{background:var(--background);color:var(--foreground)}.crm-top-controls .period-selector{margin:0}.workflow-review-dialog .document-row,.workflow-review-dialog .care-alert,.workflow-review-dialog .routine-summary{flex-wrap:wrap}.service-orders strong>small{display:block;font-size:11px;color:var(--muted-foreground);margin-top:6px}

.journey-kanban{scroll-snap-type:none}

/* Consórcios: distinct commercial units on one consistent ledger. */
.consortium-financial{margin:12px 0 22px;min-width:0}.consortium-financial-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;color:var(--muted-foreground)}.consortium-money-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.consortium-money-grid>.stat{min-width:0;background:var(--card)}.consortium-money-grid>.stat:first-child{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));background:color-mix(in srgb,var(--primary) 4%,var(--card))}.consortium-money-grid .stat strong{font-size:clamp(19px,2.2vw,28px);overflow-wrap:anywhere}.home-month-summary:has(>.home-ledger:only-child){grid-template-columns:1fr}.consortium-card-values{display:flex;flex-direction:column;gap:7px;margin:8px 0;padding:9px 0;border-block:1px solid var(--border);font-size:11px}.consortium-card-values>div{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.consortium-card-values dt{color:var(--muted-foreground);font-weight:400}.consortium-card-values dd{font-weight:600;text-align:right;margin:0}.consortium-pipeline{font-size:11px;color:var(--muted-foreground);padding-block:7px}.home-day-metrics:has(>div:nth-child(8)){grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:800px){.consortium-money-grid{gap:10px}.consortium-money-grid .stat{padding:14px}.consortium-money-grid .stat strong{font-size:18px}}
@media(max-width:600px){.consortium-money-grid{grid-template-columns:1fr}.consortium-money-grid .stat strong{font-size:24px}.home-day-metrics:has(>div:nth-child(8)){grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Operação: contexto e controles contidos, com leitura vertical. */
.workflow-review-dialog .crm-conversation-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.crm-contact-sidebar>.card{width:100%}.crm-contact-sidebar .card-body{padding:16px}.crm-contact-sidebar .card-header{padding:16px 16px 0}.crm-contact-sidebar .details{margin-bottom:10px}.contact-card .consent-panel{padding:0 0 10px}.contact-card .card-body{display:flex;flex-direction:column;gap:10px}.contact-card .button{white-space:normal;align-self:flex-start}.contact-card .details{margin:0}.contact-card .badge{white-space:normal;overflow-wrap:anywhere}.crm-contact-sidebar>.button{width:100%;align-self:stretch}.crm-contact-sidebar .case-panel{gap:12px}.workflow-review-dialog .whatsapp-frame{position:sticky;top:80px}.workflow-review-dialog .whatsapp-messages{max-height:calc(100dvh - 245px);min-height:300px}.workflow-review-dialog .dialog-head{position:sticky;top:0;z-index:2;background:var(--card)}.chat-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px;align-items:start}.chat-side{display:block;min-width:0}.chat-side>.card{margin-top:16px}.lead-context-panel{display:flex;flex-direction:column;gap:16px;min-width:0}.lead-context-panel .card-body{padding:18px}.lead-context-panel .section-heading{gap:10px;flex-wrap:wrap}.lead-context-panel .badge{white-space:normal}.lead-next{display:flex;flex-direction:column;gap:5px;border-inline-start:3px solid var(--primary);padding:12px 14px;background:var(--muted);margin:16px 0}.lead-next strong{font-size:14px;line-height:1.6;font-weight:500;overflow-wrap:anywhere}.lead-section{padding-top:16px;display:flex;flex-direction:column;gap:16px}.lead-items{list-style:none;padding:0;margin:10px 0 16px;display:flex;flex-direction:column;gap:0}.lead-items>li{padding:10px 0;border-bottom:1px solid var(--border);font-size:13px;overflow-wrap:anywhere}.lead-items>li:last-child{border:0}.lead-items small{display:block;margin-top:4px}.lead-context-panel details{padding:12px 0;border-top:1px solid var(--border)}.lead-context-panel summary{cursor:pointer;font-size:13px;font-weight:500}.lead-context-panel .details{grid-template-columns:minmax(110px,.7fr) minmax(0,1.3fr);gap:9px}.chat-card{position:sticky;top:60px}.chat-card .whatsapp-frame{box-shadow:none;border:0;border-radius:10px 10px 0 0}.chat-card .whatsapp-messages{min-height:330px;max-height:55vh}.chat-tools .button,.page-intro .inline .button{white-space:normal}.chat-compose .button{white-space:normal}.journey-measure{display:flex;flex-direction:column;gap:5px;font-variant-numeric:tabular-nums}.journey-measure strong{font-weight:500}.journey-measure .stage-delta{font-size:11px;white-space:nowrap}.stage-delta .help{margin-left:4px}.stage-delta.flat{color:var(--muted-foreground)}.import-dialog,.analysis-dialog,.dispatch-dialog{width:min(900px,calc(100vw - 32px));max-width:calc(100vw - 32px);overflow-x:hidden}.import-mapping,.dispatch-config{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.import-mapping{padding:16px;border:1px solid var(--border);border-radius:var(--radius);min-width:0}.import-mapping legend{padding:0 6px;font-weight:600}.import-counts{display:flex;gap:8px;flex-wrap:wrap}.import-result{padding:16px;background:var(--muted);border:1px solid var(--border);border-radius:var(--radius)}.import-dialog .table-scroll th,.import-dialog .table-scroll td{white-space:normal;overflow-wrap:anywhere}.dispatch-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dispatch-modes>label{display:flex;gap:10px;align-items:flex-start;padding:14px;border:1px solid var(--border);border-radius:10px;cursor:pointer}.dispatch-modes>label.selected{border-color:var(--primary);background:var(--muted)}.dispatch-modes small{display:block;margin-top:4px;line-height:1.5}.dispatch-modes input{margin-top:5px}.dispatch-monitor{display:flex;flex-direction:column;gap:12px;padding-top:18px;border-top:1px solid var(--border)}.dispatch-dialog .button{white-space:normal}.analysis-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.analysis-totals>div{display:flex;flex-direction:column;gap:7px;padding:12px;background:var(--muted);border-radius:8px}.analysis-totals strong{font-size:24px}.analysis-groups{display:flex;flex-direction:column;gap:12px}.analysis-groups>section{padding:14px;border:1px solid var(--border);border-radius:8px}.analysis-groups p{margin:6px 0}.import-dialog .form-actions{flex-wrap:wrap}.import-dialog .button{white-space:normal}.import-dialog input[type=file]{max-width:100%}
@media(max-width:1000px){.chat-layout{grid-template-columns:1fr}.chat-card{position:static}.workflow-review-dialog .crm-conversation-layout{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.workflow-review-dialog .crm-conversation-layout{display:grid;grid-template-columns:1fr;padding:14px}.workflow-review-dialog .whatsapp-frame{position:static;order:-1}.workflow-review-dialog .routine-panel{margin:0 14px 14px}.workflow-review-dialog .whatsapp-messages{min-height:200px;max-height:45vh}.lead-context-panel .details{grid-template-columns:100px minmax(0,1fr)}.import-mapping,.dispatch-config,.dispatch-modes{grid-template-columns:1fr}.analysis-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-card .whatsapp-messages{min-height:240px}.import-dialog,.analysis-dialog,.dispatch-dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px)}.import-dialog .table-scroll{overflow-x:visible}.import-dialog .form-stack,.dispatch-dialog .form-stack,.analysis-dialog .form-stack{padding:16px}.chat-compose textarea{font-size:16px}.contact-card .card-body{padding:15px}.lead-context-panel .button{white-space:normal}.import-mapping .field select{max-width:100%}}

.campaign-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:start}.campaign-header p{margin-top:6px;max-width:65ch;font-size:13px;color:var(--muted-foreground)}.campaign-main-actions{display:flex;align-items:center;gap:12px;justify-content:flex-end}.campaign-main-actions .button{white-space:normal;min-height:38px}.campaign-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start;padding-block:4px}.campaign-toolbar .period-selector{margin:0}.campaign-secondary-actions{display:flex;gap:10px;align-items:flex-start;justify-content:flex-end}.dispatch-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;max-width:100%}.campaign-secondary-actions .dispatch-controls{max-width:295px}.campaign-secondary-actions .dispatch-controls>.badge{flex-basis:auto;font-size:11px}.campaign-secondary-actions .button{min-height:38px;white-space:normal;text-align:center}.campaign-tabs{margin:0}.campaign-tabs button{min-height:40px}.campaign-cards{align-items:stretch;gap:20px}.intelligent-campaign-card{height:100%}.intelligent-campaign-card>.card-body{height:100%;display:flex;flex-direction:column;gap:12px}.intelligent-campaign-card .section-heading{margin:0;min-height:48px;align-items:flex-start}.intelligent-campaign-card h2{font-size:16px;line-height:1.5}.intelligent-campaign-card .campaign-reason{margin:0;min-height:0;flex:1}.intelligent-campaign-card .campaign-kpis{margin:0;padding:14px 0;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.intelligent-campaign-card .campaign-kpis small{font-size:11px;line-height:1.4;min-height:30px}.intelligent-campaign-card .campaign-kpis strong{font-size:22px}.intelligent-campaign-card .form-actions{margin-top:auto;flex-wrap:wrap;justify-content:flex-start}.intelligent-campaign-card .button{white-space:normal;min-height:36px}.dispatch-fixed{padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--muted)}.dispatch-fixed h3{margin-bottom:14px}.dispatch-modes>label:last-child:nth-child(odd){grid-column:1/-1}.campaign-alert{margin-bottom:0}
@media(max-width:1200px){.campaign-toolbar{grid-template-columns:1fr}.campaign-secondary-actions{justify-content:flex-start}.campaign-secondary-actions .dispatch-controls{max-width:none}.campaign-header{grid-template-columns:minmax(0,1fr) auto;gap:16px}.campaign-main-actions>.button{max-width:220px}}
@media(max-width:700px){.campaign-header{grid-template-columns:1fr;gap:14px}.campaign-main-actions{justify-content:flex-start}.campaign-main-actions>.button{max-width:none;flex:1}.campaign-toolbar{gap:14px}.campaign-secondary-actions{flex-wrap:wrap}.campaign-secondary-actions .dispatch-controls{flex:1;min-width:190px}.campaign-secondary-actions>.button{flex:1}.campaign-tabs{flex-wrap:wrap}.intelligent-campaign-card .campaign-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.intelligent-campaign-card .section-heading{min-height:0;flex-wrap:wrap}.intelligent-campaign-card .campaign-kpis small{min-height:0}.intelligent-campaign-card .form-actions>.button{flex:1;min-width:140px}.campaign-header h1{font-size:20px}.campaign-cards{gap:16px}}

.revenue-intro{align-items:flex-start}.revenue-top-controls{display:flex;align-items:flex-start;justify-content:flex-end;gap:10px;min-width:0}.revenue-top-controls .period-selector{margin:0}.revenue-top-controls .period-presets{margin-left:auto}.revenue-top-controls .period-caption{text-align:right}.revenue-top-controls>.help{flex-shrink:0}.revenue-compact-filters{grid-template-columns:repeat(2,minmax(160px,260px));gap:14px;margin:0}.revenue-compact-filters .field{font-size:12px}.revenue-compact-filters select{min-height:34px}.dashboard-stats{margin:0}.queue-ready-caption{margin-bottom:16px;font-size:13px;color:var(--muted-foreground)}
@media(max-width:1000px){.revenue-intro{flex-wrap:wrap}.revenue-top-controls{margin-left:auto;max-width:100%}.revenue-top-controls .period-presets{flex-wrap:wrap}}
@media(max-width:650px){.revenue-intro{flex-direction:column;align-items:stretch}.revenue-top-controls{justify-content:flex-end;width:100%}.revenue-compact-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.revenue-compact-filters .field{min-width:0}.revenue-top-controls .period-presets{justify-content:flex-start}.revenue-top-controls .period-caption{text-align:left}}

.analysis-group-button{text-align:left;border:1px solid var(--border);background:var(--card);color:var(--foreground);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:6px;width:100%;transition:background-color var(--motion-control) var(--motion-ease),border-color var(--motion-control) var(--motion-ease)}.analysis-group-button:hover{background:var(--muted);border-color:var(--primary)}.analysis-group-button>span{font-size:12px;color:var(--primary);margin-top:6px}.analysis-group-button:focus-visible{outline:2px solid var(--ring)}.analysis-detail .section-heading{flex-wrap:wrap}.analysis-detail h3{margin-top:12px}.analysis-detail .table-scroll td{white-space:normal;overflow-wrap:anywhere}.analysis-detail .button{white-space:normal}

.home-controls{display:flex;justify-content:flex-end;align-items:flex-start;gap:12px}.home-controls .period-selector{margin:0}.home-controls .period-presets{margin-left:auto}.home-chart{overflow-x:auto;grid-auto-columns:minmax(14px,1fr)}.home-chart>button{min-width:14px}
@media(max-width:650px){.home-controls{align-items:stretch}.home-controls .period-presets{flex-wrap:wrap;justify-content:flex-start}.home-controls .period-selector{max-width:100%}}

.campaign-secondary-actions .dispatch-controls{display:grid;max-width:none;grid-template-columns:1fr;gap:6px}.campaign-secondary-actions .dispatch-controls>.badge{justify-self:start}.campaign-secondary-actions>.button{align-self:start}
@media(max-width:700px){.analysis-detail .table-scroll,.ready-queue-card .table-scroll,.import-dialog .table-scroll{overflow-x:visible}.analysis-detail table,.ready-queue-card table,.import-dialog table{display:block;width:100%}.analysis-detail thead,.ready-queue-card thead,.import-dialog thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.analysis-detail tbody,.ready-queue-card tbody,.import-dialog tbody{display:block;width:100%}.analysis-detail tr,.ready-queue-card tr,.import-dialog tr{display:grid;grid-template-columns:minmax(0,1fr);border:1px solid var(--border);border-radius:8px;padding:10px;margin:12px 0;gap:8px}.analysis-detail td,.ready-queue-card td,.import-dialog td{display:block;padding:3px;border:0;white-space:normal;overflow-wrap:anywhere}.analysis-detail td[data-label]:not([data-label=""]):before,.ready-queue-card td[data-label]:not([data-label=""]):before,.import-dialog td[data-label]:not([data-label=""]):before{content:attr(data-label);display:block;font-size:11px;color:var(--muted-foreground);margin-bottom:4px}.ready-queue-card td .button,.analysis-detail td .button{width:100%;white-space:normal}}/* Shared dashboard period stays in the global header. */.sidebar{top:var(--app-header-height,48px)}.app-main{margin-top:calc(var(--app-header-height,48px) + 12px);min-height:calc(100dvh - var(--app-header-height,48px) - 24px)}.journey-kanban{top:calc(var(--app-header-height,48px) + 12px);height:calc(100dvh - var(--app-header-height,48px) - 32px)}.stat-label-with-help{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}

@media(max-width:600px){.app-main{margin-top:calc(var(--app-header-height,48px) + 8px)}.sidebar.open{top:0}.journey-kanban{top:calc(var(--app-header-height,48px) + 8px)}}

@media(max-width:600px){.dashboard-stats .stat strong{font-size:clamp(16px,4.3vw,21px)}}

/* Demo selection belongs to the tenant identity in the header. */
.demo-switch-button{display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:4px 8px 4px 0;border-radius:var(--radius);text-align:left;cursor:pointer;color:inherit;font:inherit}.demo-switch-button:hover{background:var(--sidebar-accent)}.demo-switch-button:focus-visible,.demo-option:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.demo-switch-chevron{font-size:19px;color:var(--muted-foreground);flex-shrink:0}.demo-picker-dialog{width:min(480px,calc(100vw - 32px))}.demo-options{display:grid;gap:10px;padding:20px}.demo-option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:76px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);color:var(--foreground);font:inherit;text-align:left;cursor:pointer}.demo-option:hover{background:var(--sidebar-accent)}.demo-option[aria-pressed=true]{border-color:var(--primary);background:var(--sidebar-accent)}.demo-option>div{min-width:0}.demo-option>div>small{display:block;margin:6px 0 0 48px;color:var(--muted-foreground)}.demo-option .tenant-brand strong{white-space:normal}.sidebar nav{flex:1;min-height:0;padding-block:0;mask-image:none;scrollbar-gutter:auto}.nav-group{margin-bottom:5px}.nav-label{padding:2px 10px;margin-bottom:2px}.nav-item{padding:5px 10px;margin-bottom:1px;min-height:32px}.sidebar-footer{padding-top:5px}.campaign-secondary-actions{margin-left:auto}.campaign-toolbar{gap:0}
@media(max-width:600px){.demo-switch-button{gap:5px;padding:4px}.demo-options{padding:14px}.demo-option{padding:12px;min-height:76px}.demo-option .tenant-brand strong{font-size:15px}.demo-option .tenant-brand small{font-size:11px}.demo-option .tenant-brand svg{width:34px;height:34px}.demo-option>div>small{margin-left:44px}.campaign-secondary-actions{margin-left:0;width:100%}}

@media(min-width:701px) and (max-width:1100px){.sidebar .nav-item{min-height:28px;padding-block:3px}.sidebar .nav-group{margin-bottom:3px}.sidebar .nav-label{padding-block:1px;margin-bottom:1px}}

/* Keep column labels visible during page, dialog and horizontal table scrolling. */
.table-pinned-head{position:fixed;z-index:19;overflow:hidden;background:var(--card);box-shadow:0 2px 5px #163b421a;pointer-events:none;border-bottom:1px solid var(--border)}.table-pinned-head table{table-layout:fixed;margin:0}.table-pinned-head th{background:var(--card);height:inherit}.table-scroll:focus-visible{outline:2px solid var(--ring);outline-offset:4px}.table-scroll{scrollbar-color:var(--border) var(--card)}dialog .table-pinned-head{z-index:1}@media print{.table-pinned-head{display:none}}

/* Shared visual system: one responsive header, one period control. */
:where(button, a, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: var(--focus-ring-width) solid var(--focus-ring-color);
  outline-offset: 3px;
}
:is(.help-button,.table-name,.demo-switch-button,.demo-option,.analysis-group-button,.table-scroll,.journey-card-list):focus-visible {
  outline-color: var(--focus-ring-color);
}
:is(button,input,select,textarea) {
  transition: background-color var(--motion-control) var(--motion-ease), color var(--motion-control) var(--motion-ease), border-color var(--motion-control) var(--motion-ease);
}
button:disabled { opacity:.6 }
.button>span { min-width:0 }
.field,.field>input,.field>select,.field>textarea { min-width:0;max-width:100% }
select { border-color:var(--control-border) }
.search input { min-height:var(--control-h);border-color:var(--control-border) }
.table-scroll { scrollbar-color:var(--palette-gray-500) var(--card) }
th { background:var(--card);line-height:1.5 }
td { line-height:1.5 }
tbody tr:hover { background:var(--palette-gray-50) }
.table-pinned-head th { color:var(--muted-foreground) }
.topbar {
  position:fixed;inset:0 0 auto;z-index:20;display:flex;align-items:center;
  justify-content:space-between;flex-wrap:wrap;gap:var(--space-4);
  height:auto;min-height:48px;padding:var(--space-2) var(--space-5);
  border-bottom:1px solid var(--border);background:var(--background);
}
.topbar-left,.topbar-actions { display:flex;align-items:center;gap:var(--space-2);min-width:0 }
.topbar-left { flex-shrink:0;gap:var(--space-3) }
.topbar-actions { margin-left:auto }
.topbar .brand { min-width:0 }
.topbar-divider { height:18px;width:1px;background:var(--border);margin:0 5px }
.topbar-context { color:var(--muted-foreground);font-size:13px }
.topbar .topbar-compare { white-space:nowrap }
.topbar-actions .help-anchor { flex-shrink:0 }
.topbar-period { min-width:0 }
.topbar-period .period-selector { margin:0 }
.period-selector { margin:var(--space-3) 0 var(--space-5);min-width:0 }
.period-presets {
  display:flex;flex-wrap:wrap;gap:2px;padding:3px;width:fit-content;
  border:1px solid var(--border);border-radius:var(--radius);background:var(--card);
}
.period-presets button {
  min-height:var(--control-h);padding:6px 9px;border:0;border-radius:var(--radius);
  background:transparent;color:var(--muted-foreground);font:inherit;font-size:12px;
}
.period-presets button:hover { background:var(--muted) }
.period-presets button[aria-pressed=true] { background:var(--primary);color:var(--primary-foreground) }
.period-compact { display:none }
.period-range { display:block;margin-top:3px;font-size:11px;color:var(--muted-foreground);line-height:1.4 }
.topbar-period .period-range { text-align:right }
.period-edit {
  display:none;border:0;background:transparent;color:var(--primary);text-decoration:underline;
  text-underline-offset:3px;min-height:24px;padding:0 4px;margin-left:4px;font:inherit;font-size:12px;
}
.period-dialog { width:min(440px,calc(100vw - 24px)) }
.period-dialog .form-stack { gap:var(--space-4) }
.period-dialog input { width:100%;min-width:0 }
.period-dialog .form-actions { flex-wrap:wrap }
.period-custom { display:flex;align-items:end;gap:var(--space-3);flex-wrap:wrap;margin-top:var(--space-3) }
.period-custom .field { min-width:0;flex:1 }
@media(max-width:1150px) { .topbar-context { display:none } }
@media(max-width:1100px) {
  .topbar { gap:var(--space-2);padding:var(--space-2) var(--space-3) }
  .has-shared-period .topbar-left { width:100%;justify-content:space-between }
  .has-shared-period .topbar-actions { width:100%;margin-left:0 }
  .has-shared-period .topbar-period { flex:1 }
  .has-shared-period .topbar-actions>.badge { display:none }
  .topbar-period .period-presets { width:100%;justify-content:flex-end }
  .topbar .topbar-compare { font-size:12px }
}
@media(max-width:700px) {
  :root { --control-h:var(--control-h-touch);--control-text:1rem }
  .topbar { padding:6px 10px;gap:6px }
  .topbar-left,.has-shared-period .topbar-left {
    display:grid;grid-template-columns:44px minmax(0,1fr) 104px;
    width:100%;gap:4px;align-items:center;flex-shrink:1;
  }
  .topbar .icon-button,.topbar .help-button { min-width:44px;width:44px;min-height:44px;height:44px }
  .topbar .demo-switch-button { width:100%;min-width:0;min-height:44px;gap:3px;padding:2px }
  .topbar .tenant-brand { gap:5px;min-width:0 }
  .topbar .tenant-brand svg { width:26px;height:26px }
  .topbar .tenant-brand>span { min-width:0 }
  .topbar .tenant-brand strong { font-size:13px;line-height:1.2;white-space:normal;overflow-wrap:anywhere }
  .topbar .tenant-brand small { display:none }
  .topbar .demo-switch-chevron { font-size:16px }
  .topbar .topbar-compare { gap:4px;padding:4px;min-height:44px;font-size:12px;white-space:normal;line-height:1.3 }
  .topbar .topbar-compare>span { max-width:76px }
  .topbar-actions,.has-shared-period .topbar-actions { width:100%;margin:0;gap:2px;align-items:flex-start }
  .topbar-actions>.badge,.topbar-divider { display:none }
  .topbar-actions>.help-anchor { display:inline-flex }
  .topbar-period { flex:1;min-width:0 }
  .period-presets,.topbar-period .period-presets { display:none }
  .period-compact { display:flex;align-items:center;gap:6px;min-width:0 }
  .period-compact>span { font-size:12px;color:var(--muted-foreground);flex-shrink:0 }
  .period-compact select { flex:1;width:0;min-width:0;min-height:44px;font-size:16px;padding:6px 4px }
  .period-range,.topbar-period .period-range { margin-top:2px;text-align:left;font-size:11px;white-space:normal }
  .period-edit { display:block;min-height:44px;margin-left:0;padding:6px 0;font-size:14px }
  .period-selector:has(>.period-edit) { display:grid;grid-template-columns:minmax(0,1fr) 48px;column-gap:4px }
  .period-selector:has(>.period-edit)>.period-compact>span { display:none }
  .period-selector:has(>.period-edit)>.period-edit { width:48px;min-width:48px;margin:0;padding:2px;font-size:12px;line-height:1.2;white-space:normal }
  .period-selector:has(>.period-edit)>.period-range { grid-column:1/-1 }

  .period-dialog .form-actions { display:grid;grid-template-columns:1fr 1fr }
  .period-dialog .form-actions .button { white-space:normal }
  .app-shell .button,.app-shell .icon-button,.app-shell .help-button,.tabs button,.campaign-tabs button,.nav-item,.kanban-fixed-rail>button { min-height:44px }
  .icon-button,.help-button,.kanban-fixed-rail>button { min-width:44px }
  .sidebar .nav-item { min-height:44px;padding-block:8px;font-size:14px }
  .field input,.field select,.field textarea,.search input,.filters>select,.inline select,input.quantity,select { min-height:44px;font-size:16px }
  .field>span,.stat-label { font-size:12px }
  .filters>.search { min-width:0;width:100%;flex-basis:100% }
  .revenue-compact-filters { grid-template-columns:minmax(0,1fr);gap:var(--space-3) }
  .revenue-compact-filters>.field { min-width:0;width:100%;max-width:none }
  .revenue-compact-filters select { width:100%;font-size:16px }
  .dashboard-stats .stat strong { font-size:clamp(16px,4.3vw,22px);overflow-wrap:anywhere }
  .stage-strip>button { flex-basis:164px }
  .stage-strip .strip-name { font-size:12px }
  .journey-measure strong,.journey-customer div strong { font-size:16px }
  .journey-measure .stage-delta { font-size:12px }
  .journey-column h2 { font-size:14px }
  .journey-customer>strong { font-size:14px }
  .card-header { align-items:flex-start;flex-wrap:wrap }
  .form-actions { flex-wrap:wrap }
  .page-content { gap:var(--space-4) }
  .campaign-alert { flex-wrap:wrap }
  th,td { font-size:13px }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { transition:none!important;animation:none!important;scroll-behavior:auto!important }
}

/* Clinical navigation stays fully visible at mobile and enlarged layouts. */
@media(max-width:700px){.care-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;align-items:stretch}.care-tabs>button{min-width:0;white-space:normal;overflow-wrap:anywhere;padding:12px 8px;min-height:48px}}

/* Contact import follows the shared spacing and responsive component rules. */
.import-dialog{width:min(940px,calc(100vw - 32px));max-width:calc(100vw - 32px)}
.import-flow{gap:20px}
.import-source-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.import-source-options .button{width:100%;justify-content:center}
.import-source-panel,.import-destination{padding:18px;border:1px solid var(--border);border-radius:var(--radius,10px);display:flex;flex-direction:column;gap:12px}
.import-source-panel h3,.import-destination h3,.import-preview h3{margin:0}
.import-source-panel p{margin:0;color:var(--muted-foreground)}
.import-flow input[type=file]{width:100%;min-width:0;white-space:normal}
.import-flow input[type=file]::file-selector-button{padding:10px;border:1px solid var(--border);border-radius:6px;background:var(--muted);margin-right:10px;color:var(--foreground)}
.import-input-options{display:flex;gap:16px;align-items:end;flex-wrap:wrap}
.import-input-options>.field{flex:1;min-width:210px}
.import-preview{display:flex;flex-direction:column;gap:16px;min-width:0}
.import-columns{border:1px solid var(--border);border-radius:8px;padding:12px}
.import-columns summary{cursor:pointer;font-weight:500}
.import-columns .import-mapping{margin-top:16px}
.import-counts{display:flex;flex-wrap:wrap;gap:8px}
.import-flow textarea{white-space:pre-wrap;overflow-wrap:anywhere}
.import-flow small{overflow-wrap:anywhere}
.import-flow .form-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
@media(max-width:700px){
 .import-dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px)}
 .import-source-panel,.import-destination{padding:12px}
 .import-input-options{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
 .import-input-options>.field{min-width:0}
 .import-input-options .inline{display:grid;grid-template-columns:minmax(0,1fr)}
 .import-flow .section-heading{align-items:stretch;flex-direction:column}
 .import-flow .form-actions>.button{flex:1;min-width:120px;justify-content:center;white-space:normal}
 .import-flow .import-mapping{display:grid;grid-template-columns:minmax(0,1fr)}
}

.import-stage-name{margin:0;font-weight:500;overflow-wrap:anywhere}

/* Guided presentation: independent progress, native modal focus, no layout remount. */
.topbar-tour{white-space:nowrap;flex-shrink:0}
.tour-intro{max-width:560px}
.tour-outline{padding-left:22px;display:grid;gap:10px}
dialog.tour-panel{position:fixed;inset:auto 16px 16px auto;margin:0;width:min(680px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:20px;border:1px solid var(--border);border-radius:12px;background:var(--card);box-shadow:0 12px 48px #0f41472b;overflow:auto;text-align:left}
dialog.tour-panel::backdrop{background:rgb(15 65 71 / .10)}
.tour-panel .dialog-head{margin-bottom:12px;padding:0 0 10px;gap:12px;border-bottom:1px solid var(--border)}
.tour-panel .dialog-head h2{font-size:14px}
.tour-content{display:grid;gap:12px;min-width:0}
.tour-meta{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:space-between;font-size:12px;color:var(--muted-foreground)}
.tour-content h3{font-size:20px;line-height:1.3;margin:0;scroll-margin-top:12px}
.tour-explanation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:20px;margin:0}
.tour-explanation dt{font-weight:600;font-size:12px;color:var(--muted-foreground);margin-bottom:4px}
.tour-explanation dd{margin:0;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.tour-limit{margin:0;font-size:12px;line-height:1.45;color:var(--muted-foreground)}
.tour-controls{display:flex;gap:16px;align-items:end;justify-content:space-between}
.tour-controls>.field{min-width:0;flex:1;max-width:250px}
.tour-controls select{min-width:0;width:100%;text-overflow:ellipsis}
.tour-buttons{display:flex;gap:8px;flex-shrink:0}
.tour-highlight{position:fixed;z-index:90;pointer-events:none;border:2px solid var(--primary);border-radius:8px;box-shadow:0 0 0 4px var(--background)}
@media(max-width:1100px){.topbar-actions{flex-wrap:wrap}.topbar-tour{order:1}}
@media(max-width:700px){
 .topbar-tour{min-width:0;font-size:12px;padding:6px 10px}
 dialog.tour-panel{inset:auto 8px 8px;width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:14px}
 .tour-panel .dialog-head{margin-bottom:10px;padding-bottom:6px}
 .tour-content{gap:10px}
 .tour-content h3{font-size:18px}
 .tour-explanation{grid-template-columns:minmax(0,1fr);gap:8px}
 .tour-explanation dt{display:inline;font-size:12px;margin:0}
 .tour-explanation dd{font-size:13px;line-height:1.4}
 .tour-meta{font-size:11px}
 .tour-meta>span:last-child{display:none}
 .tour-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
 .tour-controls>.field{max-width:none}
 .tour-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
 .tour-buttons .button{min-width:0;justify-content:center;padding:8px;font-size:13px}
}
@media(max-height:550px){dialog.tour-panel{max-height:calc(100dvh - 16px)}.tour-content{gap:8px}.tour-explanation{grid-template-columns:1fr 1.5fr;gap:12px}.tour-content h3{font-size:16px}.tour-limit{font-size:11px}}

/* Keep the period at its original usable width when the guide action wraps. */
@media(max-width:1100px){.topbar-tour{flex-basis:100%;justify-content:center}}
@media(max-width:700px){
 .topbar-actions,.has-shared-period .topbar-actions{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;gap:4px}
 .topbar-actions>.topbar-period{grid-column:1;grid-row:1;min-width:0}
 .topbar-actions>.help-anchor{grid-column:2;grid-row:1}
 .topbar-actions>.icon-button{grid-column:3;grid-row:1}
 .topbar-actions>.topbar-tour{grid-column:1/-1;grid-row:2;width:100%;justify-content:center}
 .topbar-actions:not(:has(>.topbar-period))>.topbar-tour{grid-column:1;grid-row:1}
}

/* Exclusive demo access: the existing system tokens remain the visual authority. */
.demo-auth-page{min-height:100dvh;background:var(--sidebar);padding:clamp(24px,6vh,64px) 20px 28px;display:flex;flex-direction:column;align-items:center;gap:24px;color:var(--foreground)}
.demo-auth-brand{display:flex;align-items:center;gap:12px;color:var(--primary);font-size:24px;font-weight:700;line-height:1.2;max-width:100%;overflow-wrap:anywhere}
.demo-auth-brand .mark{width:34px;height:40px;flex:none}
.demo-auth-card{width:min(100%,440px);background:var(--card);border:1px solid var(--border);border-radius:12px;padding:clamp(20px,4vw,32px);display:grid;gap:24px;box-shadow:0 6px 26px rgb(15 65 71 / .035);min-width:0}
.demo-auth-card>header{display:grid;gap:10px}
.demo-auth-card h1{font-size:25px;line-height:1.25;letter-spacing:-.025em;margin:0}
.demo-auth-card h1:focus{outline:none}
.demo-auth-card p{margin:0;line-height:1.55}
.demo-auth-card .form-stack{gap:18px;min-width:0}
.demo-auth-card input{width:100%;min-width:0;font-size:16px;min-height:44px}
.demo-auth-card .button{min-height:44px;white-space:normal;text-align:center;justify-content:center;width:100%}
.demo-auth-card .field{min-width:0}
.demo-auth-card .field small{line-height:1.45}
.demo-auth-note{border-top:1px solid var(--border);padding-top:20px;font-size:13px;display:grid;gap:5px}
.demo-auth-note p{color:var(--muted-foreground)}
.demo-auth-footnote{display:flex;gap:8px;align-items:center;justify-content:center;text-align:center;font-size:12px;color:var(--muted-foreground);line-height:1.5;margin:0}
.auth-feedback{margin:0;padding:12px;border:1px solid var(--status-danger-border);border-radius:var(--radius);background:var(--status-danger-muted);overflow-wrap:anywhere;line-height:1.5}
.auth-feedback:focus{outline:2px solid var(--focus-ring-color);outline-offset:3px}
.auth-success{color:var(--status-success);background:var(--status-success-muted);border-color:var(--status-success-border)}
.demo-auth-invite-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
.demo-auth-invite-meta small{color:var(--muted-foreground);line-height:1.4}
.demo-access-nav{width:100%;border:0;background:none;text-align:start;font:inherit;cursor:pointer}
.demo-account-name{min-width:0;flex:1}
.demo-account-name strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.demo-account-page{max-width:780px}
.demo-account-page .card-header h1{font-size:20px;line-height:1.3;margin:0 0 6px}
.demo-account-details{display:grid;gap:18px;margin:0}
.demo-account-details>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px}
.demo-account-details dt{color:var(--muted-foreground)}
.demo-account-details dd{margin:0;overflow-wrap:anywhere}
.demo-access-dialog{width:min(1100px,calc(100vw - 32px));max-width:calc(100vw - 32px)}
.demo-access-body{display:grid;gap:24px;padding:24px;min-width:0}
.demo-access-body h3{font-size:16px;line-height:1.4;margin:0}
.demo-access-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.demo-access-toolbar p{margin:0;max-width:55ch;line-height:1.5}
.demo-access-toolbar .button{flex:none}
.demo-invite-form{display:grid;grid-template-columns:minmax(180px,1fr) 180px auto;align-items:end;gap:16px;padding:20px;background:var(--muted);border:1px solid var(--border);border-radius:8px}
.demo-invite-form .field{min-width:0}
.demo-invite-form input{width:100%;min-width:0}
.demo-confirm-operation{background:var(--muted);border:1px solid var(--border);border-radius:8px;padding:20px;max-width:600px;gap:16px}
.demo-confirm-operation p{margin:6px 0 0;line-height:1.5}
.demo-confirm-operation input{width:100%}
.demo-issued-link{padding:20px;border:1px solid var(--status-success-border);background:var(--status-success-muted);border-radius:8px;display:grid;gap:12px;min-width:0}
.demo-issued-link p{margin:0;line-height:1.5}
.demo-issued-link input{width:100%;min-width:0;font-family:var(--font-mono-stack);font-size:12px;background:var(--background)}
.demo-issued-link small{line-height:1.5}
.demo-access-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.demo-access-section-head .field{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.demo-access-section-head .field>span{font-size:13px}
.demo-access-body>section>h3{margin-bottom:16px}
.demo-access-table{border:1px solid var(--border);border-radius:8px;min-width:0;overflow:hidden}
.demo-access-table table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse}
.demo-access-table th{background:var(--sidebar);font-weight:600;text-align:start}
.demo-access-table th,.demo-access-table td{padding:14px 12px;vertical-align:top;font-size:13px;line-height:1.5;overflow-wrap:anywhere;border-bottom:1px solid var(--border)}
.demo-access-table th:first-child{width:26%}
.demo-access-table th:last-child{width:25%}
.demo-access-table tr:last-child td{border-bottom:0}
.demo-access-table td small{display:block;margin-top:4px;color:var(--muted-foreground)}
.demo-access-row-actions{display:flex;gap:8px;flex-wrap:wrap}
.demo-access-row-actions .button{white-space:normal;text-align:start;font-size:12px;min-height:36px;justify-content:start;max-width:100%}
.demo-access-email{overflow-wrap:anywhere}
.demo-access-loading{display:grid;gap:12px;justify-items:start}
.demo-access-loading p{margin:0}
@media(max-width:760px){
 .demo-access-dialog{width:calc(100vw - 20px);max-width:calc(100vw - 20px)}
 .demo-access-body{padding:18px;gap:22px}
 .demo-invite-form{grid-template-columns:minmax(0,1fr);padding:16px}
 .demo-access-table{border:0;border-radius:0;overflow:visible}
 .demo-access-table table,.demo-access-table tbody,.demo-access-table tr,.demo-access-table td{display:block;width:100%}
 .demo-access-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
 .demo-access-table tr{border:1px solid var(--border);border-radius:8px;padding:4px 0;margin-bottom:12px}
 .demo-access-table td{border:0;display:grid;grid-template-columns:78px minmax(0,1fr);gap:10px;padding:8px 12px;font-size:14px;box-sizing:border-box}
 .demo-access-table td:before{content:attr(data-label);font-size:12px;color:var(--muted-foreground);font-weight:500}
 .demo-access-table td>small{grid-column:2;margin-top:-6px}
 .demo-access-table td[colspan]{display:block;padding:16px}
 .demo-access-table td[colspan]:before{display:none}
 .demo-access-row-actions .button,.demo-access-table td>.button{min-height:44px;font-size:14px}
 .demo-access-body input,.demo-access-body select{font-size:16px;min-height:44px}
 .demo-access-toolbar .button{min-height:44px}
 .demo-access-section-head{align-items:start}
 .demo-confirm-operation,.demo-issued-link{padding:16px}
 .demo-access-body .form-actions{flex-wrap:wrap}
}
@media(max-width:420px){
 .demo-auth-page{padding:24px 12px;gap:20px}
 .demo-auth-card{padding:22px 18px;border-radius:10px}
 .demo-auth-brand{font-size:22px}
 .demo-auth-card h1{font-size:23px}
 .demo-access-toolbar{align-items:stretch}
 .demo-access-toolbar .button{width:100%}
 .demo-access-table td{grid-template-columns:64px minmax(0,1fr);gap:8px;padding:8px 10px}
 .demo-access-row-actions{flex-direction:column}
 .demo-account-details>div{grid-template-columns:minmax(0,1fr);gap:3px}
}
@media(prefers-reduced-motion:reduce){.demo-auth-page *,.demo-access-dialog *{transition:none!important;animation:none!important}}
