/*
 * Extracted styles with 5-theme system and unified toolbar
 */

/* ═══════════════════════════════════════════════════════════════
   THEME SYSTEM (5 Standard Themes)
   Cream is the default for PR Intelligence (light theme)
   ═══════════════════════════════════════════════════════════════ */

/* Cream Theme (Light - Default) */
:root,
[data-theme="cream"] {
  /* PR Intelligence color palette */
  --ink:#1a1a2e;--ink2:#3d3d5c;--ink3:#6b6b8d;--ink4:#9999b3;
  --cream:#faf9f6;--cream2:#f5f3ee;--cream3:#ebe8e0;
  --accent:#e74c3c;--accent-light:#fdecea;
  --green:#27ae60;--green-light:#eafaf1;
  --spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --gold:#f39c12;--gold-light:#fef5e7;
  --blue:#2980b9;--blue-light:#eaf2f8;
  --purple:#8e44ad;--purple-light:#f4ecf7;
  --teal:#16a085;--teal-light:#e8f8f5;
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-smooth: cubic-bezier(0.4, 0, 0.2, 1);
  --fs-body:13px;--fs-sm:12px;--fs-label:11px;--fs-h4:15px;--fs-h3:16px;
  /* Toolbar / theme system vars */
  --bg: #fdfbf7;
  --bg-alt: #f8f5f0;
  --bg2: #f8f5f0;
  --bg3: #ffffff;
  --surface: #ffffff;
  --panel: #ffffff;
  --panel-soft: #f7f4ef;
  --panel-light: #f0ebe3;
  --card: #ffffff;
  --border: #d4cfc4;
  --line: #e5e0d8;
  --line-soft: #f0ebe3;
  --text: #1a1a1a;
  --text-secondary: #4a4a4a;
  --text-muted: #7a7a7a;
  --ink-secondary: #4a4a4a;
  --ink-muted: #7a7a7a;
  --muted: #7a7a7a;
  --cyan: #0891b2;
  --glow: 0 18px 44px rgba(0,0,0,0.08);
  --xfactor-orange: #F97316;
  --xfactor-orange-dark: #EA580C;
  --safe: #059669;
  --safe-bg: #ECFDF5;
  --safe-border: #A7F3D0;
  --safe-text: #065F46;
  --proceed: #0284C7;
  --proceed-bg: #E0F2FE;
  --proceed-border: #7DD3FC;
  --proceed-text: #0369A1;
  --pause: #D97706;
  --pause-bg: #FFFBEB;
  --pause-border: #FDE68A;
  --pause-text: #92400E;
  --caution: #DC2626;
  --caution-bg: #FEF2F2;
  --caution-border: #FECACA;
  --caution-text: #991B1B;
  --coach-purple: #7C3AED;
  --coach-purple-bg: #F5F3FF;
  --coach-purple-border: #DDD6FE;
  --surface-hover: rgba(0,0,0,0.04);
  --surface-highlight: rgba(0,0,0,0.02);
}

/* Midnight Theme (Dark) */
[data-theme="midnight"] {
  --bg: #0b1221;
  --bg-alt: #101827;
  --bg2: #101827;
  --bg3: #1a2436;
  --surface: #1a2436;
  --panel: #1a2436;
  --panel-soft: #111827;
  --panel-light: #293548;
  --card: #1a2436;
  --border: rgba(255, 255, 255, 0.06);
  --line: #334155;
  --line-soft: #1e293b;
  --text: #f8fafc;
  --text-secondary: #94a3b8;
  --text-muted: #64748b;
  --ink: #f8fafc;
  --ink-secondary: #94a3b8;
  --ink-muted: #64748b;
  --muted: #64748b;
  --cyan: #06b6d4;
  --glow: 0 18px 44px rgba(0,0,0,0.4);
  --xfactor-orange: #F97316;
  --xfactor-orange-dark: #EA580C;
  --safe: #4caf50;
  --safe-bg: rgba(76, 175, 80, 0.15);
  --safe-border: rgba(76, 175, 80, 0.3);
  --safe-text: #4caf50;
  --proceed: #3b82f6;
  --proceed-bg: rgba(59, 130, 246, 0.15);
  --proceed-border: rgba(59, 130, 246, 0.3);
  --proceed-text: #3b82f6;
  --pause: #f59e0b;
  --pause-bg: rgba(245, 158, 11, 0.15);
  --pause-border: rgba(245, 158, 11, 0.3);
  --pause-text: #f59e0b;
  --caution: #ef4444;
  --caution-bg: rgba(239, 68, 68, 0.15);
  --caution-border: rgba(239, 68, 68, 0.3);
  --caution-text: #ef4444;
  --coach-purple: #a78bfa;
  --coach-purple-bg: rgba(167, 139, 250, 0.15);
  --coach-purple-border: rgba(167, 139, 250, 0.3);
  --surface-hover: rgba(255,255,255,0.05);
  --surface-highlight: rgba(255,255,255,0.03);
}

/* Ocean Theme (Light Blue) */
[data-theme="ocean"] {
  --bg: #f0f9ff;
  --bg-alt: #e0f2fe;
  --bg2: #e0f2fe;
  --bg3: #ffffff;
  --surface: #ffffff;
  --panel: #ffffff;
  --panel-soft: #e0f2fe;
  --panel-light: #e0f2fe;
  --card: #ffffff;
  --border: #bae6fd;
  --line: #bae6fd;
  --line-soft: #e0f2fe;
  --text: #0c4a6e;
  --text-secondary: #075985;
  --text-muted: #0369a1;
  --ink: #0c4a6e;
  --ink-secondary: #075985;
  --ink-muted: #0369a1;
  --muted: #0369a1;
  --cyan: #0284c7;
  --glow: 0 18px 44px rgba(0,0,0,0.08);
  --xfactor-orange: #F97316;
  --xfactor-orange-dark: #EA580C;
  --safe: #059669;
  --safe-bg: #ECFDF5;
  --safe-border: #A7F3D0;
  --safe-text: #065F46;
  --proceed: #0284C7;
  --proceed-bg: #E0F2FE;
  --proceed-border: #7DD3FC;
  --proceed-text: #0369A1;
  --pause: #D97706;
  --pause-bg: #FFFBEB;
  --pause-border: #FDE68A;
  --pause-text: #92400E;
  --caution: #DC2626;
  --caution-bg: #FEF2F2;
  --caution-border: #FECACA;
  --caution-text: #991B1B;
  --coach-purple: #7C3AED;
  --coach-purple-bg: #F5F3FF;
  --coach-purple-border: #DDD6FE;
  --surface-hover: rgba(0,0,0,0.04);
  --surface-highlight: rgba(0,0,0,0.02);
}

/* Tanzanite Theme (Dark Purple) */
[data-theme="tanzanite"] {
  --bg: #0f0d1a;
  --bg-alt: #1a1625;
  --bg2: #1a1625;
  --bg3: #252136;
  --surface: #252136;
  --panel: #1e1a2e;
  --panel-soft: #1a1625;
  --panel-light: #352f4a;
  --card: #252136;
  --border: #3d3654;
  --line: #3d3654;
  --line-soft: #2a2440;
  --text: #e8e4f0;
  --text-secondary: #c4bdd4;
  --text-muted: #8b82a8;
  --ink: #e8e4f0;
  --ink-secondary: #c4bdd4;
  --ink-muted: #8b82a8;
  --muted: #8b82a8;
  --cyan: #a78bfa;
  --glow: 0 18px 44px rgba(0,0,0,0.4);
  --xfactor-orange: #F97316;
  --xfactor-orange-dark: #EA580C;
  --safe: #4ade80;
  --safe-bg: rgba(74, 222, 128, 0.15);
  --safe-border: rgba(74, 222, 128, 0.3);
  --safe-text: #4ade80;
  --proceed: #60a5fa;
  --proceed-bg: rgba(96, 165, 250, 0.15);
  --proceed-border: rgba(96, 165, 250, 0.3);
  --proceed-text: #60a5fa;
  --pause: #fb923c;
  --pause-bg: rgba(251, 146, 60, 0.15);
  --pause-border: rgba(251, 146, 60, 0.3);
  --pause-text: #fb923c;
  --caution: #f87171;
  --caution-bg: rgba(248, 113, 113, 0.15);
  --caution-border: rgba(248, 113, 113, 0.3);
  --caution-text: #f87171;
  --coach-purple: #a78bfa;
  --coach-purple-bg: rgba(167, 139, 250, 0.15);
  --coach-purple-border: rgba(167, 139, 250, 0.3);
  --surface-hover: rgba(255,255,255,0.05);
  --surface-highlight: rgba(255,255,255,0.03);
}

/* Obsidian Theme (Dark) */
[data-theme="obsidian"] {
  --bg: #09090b;
  --bg-alt: #18181b;
  --bg2: #18181b;
  --bg3: #27272a;
  --surface: #27272a;
  --panel: #1c1c1f;
  --panel-soft: #18181b;
  --panel-light: #3f3f46;
  --card: #27272a;
  --border: #3f3f46;
  --line: #3f3f46;
  --line-soft: #27272a;
  --text: #fafafa;
  --text-secondary: #d4d4d8;
  --text-muted: #71717a;
  --ink: #fafafa;
  --ink-secondary: #d4d4d8;
  --ink-muted: #71717a;
  --muted: #71717a;
  --cyan: #f59e0b;
  --glow: 0 18px 44px rgba(0,0,0,0.4);
  --xfactor-orange: #F97316;
  --xfactor-orange-dark: #EA580C;
  --safe: #4ade80;
  --safe-bg: rgba(74, 222, 128, 0.15);
  --safe-border: rgba(74, 222, 128, 0.3);
  --safe-text: #4ade80;
  --proceed: #60a5fa;
  --proceed-bg: rgba(96, 165, 250, 0.15);
  --proceed-border: rgba(96, 165, 250, 0.3);
  --proceed-text: #60a5fa;
  --pause: #fb923c;
  --pause-bg: rgba(251, 146, 60, 0.15);
  --pause-border: rgba(251, 146, 60, 0.3);
  --pause-text: #fb923c;
  --caution: #f87171;
  --caution-bg: rgba(248, 113, 113, 0.15);
  --caution-border: rgba(248, 113, 113, 0.3);
  --caution-text: #f87171;
  --coach-purple: #a78bfa;
  --coach-purple-bg: rgba(167, 139, 250, 0.15);
  --coach-purple-border: rgba(167, 139, 250, 0.3);
  --surface-hover: rgba(255,255,255,0.05);
  --surface-highlight: rgba(255,255,255,0.03);
}


/* ═══════════════════════════════════════════════════════════════
   TOOLBAR SYSTEM
   ═══════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════════════
   TOOLBAR SYSTEM
   ═══════════════════════════════════════════════════════════════ */

body.toolbar-active {
  padding-top: 56px;
}

.app-toolbar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 56px;
  background: var(--bg-alt);
  border-bottom: 1px solid var(--line);
  display: none;
  align-items: center;
  justify-content: space-between;
  padding: 0 16px;
  z-index: 1000;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.app-toolbar.active {
  display: flex;
}

.toolbar-left,
.toolbar-right {
  display: flex;
  align-items: center;
  gap: 12px;
}

.toolbar-center {
  flex: 1;
  display: none;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

body.analysis-mode .toolbar-center {
  display: flex;
}

.toolbar-btn {
  padding: 0.5rem 1rem;
  border: 1px solid var(--border);
  background: var(--surface);
  color: var(--ink);
  border-radius: 10px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  transition: all 0.2s ease;
}

.toolbar-btn svg {
  width: 20px;
  height: 20px;
  display: block;
}

.toolbar-btn:hover {
  border-color: var(--cyan);
}

.toolbar-btn:active {
  transform: scale(0.95);
}

.toolbar-logo {
  display: flex;
  align-items: center;
  gap: 10px;
}

.toolbar-logo .logo-icon-img {
  width: 32px;
  height: 32px;
  object-fit: contain;
}

.toolbar-logo .logo-text {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 600;
  font-size: 1.25rem;
  color: var(--ink);
}

@media (max-width: 600px) {
  .toolbar-logo .logo-text {
    display: none;
  }
  .toolbar-center {
    gap: 0.25rem;
  }
  .toolbar-btn span {
    display: none;
  }
}

/* Profile Dropdown */
.toolbar-profile {
  position: relative;
}

.profile-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px 6px 6px;
  background: transparent;
  border: 1px solid var(--border);
  border-radius: 24px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.profile-btn:hover {
  background: var(--surface);
  border-color: var(--muted);
}

.profile-avatar {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--cyan), var(--teal));
  color: #050811;
  font-weight: 700;
  font-size: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.profile-name {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--ink);
  max-width: 120px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.profile-chevron {
  color: var(--muted);
  transition: transform 0.2s ease;
}

.toolbar-profile.open .profile-chevron {
  transform: rotate(180deg);
}

@media (max-width: 600px) {
  .profile-name {
    display: none;
  }
  .profile-btn {
    padding: 6px;
    border-radius: 50%;
  }
  .profile-chevron {
    display: none;
  }
}

.profile-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  width: 280px;
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 12px;
  box-shadow: 0 10px 40px rgba(0,0,0,0.3);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px) scale(0.95);
  transform-origin: top right;
  transition: all 0.2s ease;
  z-index: 1001;
}

.profile-dropdown.active,
.toolbar-profile.open .profile-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}

.dropdown-user-info {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px;
}

.dropdown-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--cyan), var(--teal));
  color: #050811;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1.1rem;
  flex-shrink: 0;
}

.dropdown-user-details {
  flex: 1;
  min-width: 0;
}

.dropdown-user-name {
  font-weight: 600;
  font-size: 0.95rem;
  color: var(--ink);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dropdown-user-email {
  font-size: 0.8rem;
  color: var(--ink-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dropdown-user-plan {
  font-size: 0.75rem;
  color: var(--cyan);
  font-weight: 600;
  margin-top: 2px;
}

.dropdown-divider {
  height: 1px;
  background: var(--border);
  margin: 0;
}

.dropdown-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: transparent;
  border: none;
  width: 100%;
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--ink);
  cursor: pointer;
  transition: all 0.15s ease;
  text-align: left;
}

.dropdown-item:hover {
  background: var(--surface-hover);
}

.dropdown-item svg {
  width: 16px;
  height: 16px;
  color: var(--ink-muted);
}

/* App Launcher */
.app-launcher-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease;
  z-index: 998;
}

.app-launcher-overlay.active {
  opacity: 1;
  visibility: visible;
}

.app-launcher {
  position: fixed;
  top: 64px;
  left: 16px;
  width: 420px;
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 12px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
  opacity: 0;
  visibility: hidden;
  transform: scale(0.9) translateY(-10px);
  transform-origin: top left;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 999;
  overflow: hidden;
  max-height: 80vh;
}

.app-launcher.active {
  opacity: 1;
  visibility: visible;
  transform: scale(1) translateY(0);
}

.app-launcher-header {
  padding: 16px 20px;
  border-bottom: 1px solid var(--border);
  font-weight: 600;
  font-size: 0.9rem;
  color: var(--ink);
}

.app-launcher-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  padding: 10px;
  max-height: calc(80vh - 52px);
  overflow-y: auto;
}

.app-launcher-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 14px 8px;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.2s ease;
  text-decoration: none;
  color: var(--ink);
}

.app-launcher-item:hover {
  background: var(--surface);
  border-color: var(--border);
}

.app-launcher-item.current {
  background: var(--surface);
  border-color: var(--cyan);
}

.app-launcher-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--surface);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--cyan);
  transition: all 0.2s ease;
}

.app-emoji {
  font-size: 1.35rem;
}

.app-launcher-item:hover .app-launcher-icon {
  transform: scale(1.05);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.app-launcher-label {
  font-size: 0.7rem;
  font-weight: 500;
  text-align: center;
  color: var(--ink);
  line-height: 1.3;
}

@media (max-width: 480px) {
  .app-launcher {
    left: 8px;
    right: 8px;
    width: auto;
  }
  .app-launcher-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}



/* ═══════════════════════════════════════════════════════════════
   PR INTELLIGENCE ENGINE STYLES
   ═══════════════════════════════════════════════════════════════ */

*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'DM Sans',sans-serif;background:var(--cream);color:var(--ink);line-height:1.7;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{font-family:'Fraunces',serif;}
.screen{display:none;min-height:100vh;}
.screen.active{display:block;}


/* ═══ SETUP SCREEN ═══ */
.setup{background:#1a1a2e;min-height:100vh;overflow-x:hidden;overflow-y:auto;position:relative;}
.setup::before{content:'';position:absolute;top:-20%;left:50%;transform:translateX(-50%);width:140%;height:60%;background:radial-gradient(ellipse at center, rgba(231,76,60,0.06) 0%, rgba(26,26,46,0) 70%);pointer-events:none;}
.setup::after{content:'';position:absolute;bottom:0;left:0;right:0;height:40%;background:radial-gradient(ellipse at 30% 100%, rgba(41,128,185,0.04) 0%, transparent 60%),radial-gradient(ellipse at 70% 80%, rgba(22,160,133,0.03) 0%, transparent 50%);pointer-events:none;}
.setup-nav{display:flex;justify-content:space-between;align-items:center;padding:12px 32px;max-width:1100px;margin:0 auto;position:relative;z-index:2;}
.setup-nav-brand{font-family:'Fraunces',serif;font-size:18px;color:white;font-weight:700;}
.setup-nav-brand span{color:var(--accent);}

/* Hero — compact, punchy */
@keyframes hero-fade-in{from{opacity:0;transform:translateY(20px);filter:blur(6px);}to{opacity:1;transform:none;filter:blur(0);}}
.setup-hero{text-align:center;padding:20px 24px 12px;max-width:640px;margin:0 auto;position:relative;z-index:2;animation:hero-fade-in 1s var(--ease-out-expo) both;}
.setup-hero h1{font-family:'Fraunces',serif;font-size:clamp(26px,4vw,40px);color:white;line-height:1.15;margin-bottom:8px;}
.setup-hero h1 em{font-style:italic;color:var(--accent);background:linear-gradient(135deg, var(--accent), #ff7043, #ff8a65);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.setup-hero p{font-size:14px;color:rgba(255,255,255,0.45);max-width:440px;margin:0 auto;line-height:1.5;}

/* Feature pills — glass on dark */
.features-strip{display:flex;justify-content:center;gap:5px;flex-wrap:wrap;max-width:540px;margin:10px auto 0;padding:0 16px;}
.feature-pill{font-size:10px;font-weight:600;padding:3px 9px;border-radius:20px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);color:rgba(255,255,255,0.45);white-space:nowrap;transition:all 0.3s ease;}
.feature-pill:hover{background:rgba(255,255,255,0.12);color:rgba(255,255,255,0.8);}

/* How it works — hidden, redundant with mode cards */
.how-it-works{display:none !important;}

/* Mode cards — glass morphism, OUTSIDE input card */
@keyframes card-rise{from{opacity:0;transform:translateY(20px) scale(0.95);}to{opacity:1;transform:none;}}
.setup-main{max-width:720px;margin:0 auto;padding:12px 24px 48px;position:relative;z-index:2;}
.mode-toggle{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:12px;}
@media(max-width:640px){.mode-toggle{grid-template-columns:1fr;}}
.mode-card{border-radius:14px;padding:14px 12px 12px;cursor:pointer;border:2px solid rgba(255,255,255,0.08);background:rgba(255,255,255,0.04);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);text-align:center;transition:all 0.3s var(--ease-out-expo);user-select:none;position:relative;overflow:hidden;animation:card-rise 0.5s cubic-bezier(0.16, 1, 0.3, 1) both;}
.mode-card:nth-child(1){animation-delay:0.15s;}
.mode-card:nth-child(2){animation-delay:0.25s;}
.mode-card:nth-child(3){animation-delay:0.35s;}
.mode-card::before{content:'';position:absolute;inset:0;border-radius:16px;opacity:0;transition:opacity 0.3s ease;pointer-events:none;}
.mode-card::after{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 0deg,transparent 0%,rgba(255,255,255,0.03) 25%,transparent 50%);opacity:0;transition:opacity 0.5s ease;pointer-events:none;animation:none;}
.mode-card:hover::after{opacity:1;animation:shimmer-rotate 4s linear infinite;}
@keyframes shimmer-rotate{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}
.mode-card:hover{border-color:rgba(255,255,255,0.2);background:rgba(255,255,255,0.08);transform:translateY(-3px);}
.mode-card.mode-selected-analyze{border-color:var(--blue);background:rgba(52,152,219,0.12);box-shadow:0 4px 24px rgba(52,152,219,0.2),0 0 0 1px rgba(52,152,219,0.3) inset,0 0 60px -20px rgba(52,152,219,0.15);}
.mode-card.mode-selected-attack{border-color:var(--accent);background:rgba(231,76,60,0.12);box-shadow:0 4px 24px rgba(231,76,60,0.2),0 0 0 1px rgba(231,76,60,0.3) inset,0 0 60px -20px rgba(231,76,60,0.15);}
.mode-card.mode-selected-prep{border-color:var(--teal);background:rgba(22,160,133,0.12);box-shadow:0 4px 24px rgba(22,160,133,0.2),0 0 0 1px rgba(22,160,133,0.3) inset,0 0 60px -20px rgba(22,160,133,0.15);}
.mode-card .mode-icon{font-size:24px;margin-bottom:4px;}
.mode-card h3{font-family:'Fraunces',serif;font-size:14px;margin-bottom:2px;color:white;}
.mode-card p{font-size:10px;color:rgba(255,255,255,0.4);line-height:1.3;}
.mode-card.mode-selected-analyze h3{color:#5dade2;}
.mode-card.mode-selected-attack h3{color:#e74c3c;}
.mode-card.mode-selected-prep h3{color:#1abc9c;}

/* Saved reports panel */
.saved-reports-panel{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);border-radius:14px;padding:14px 16px;}
.saved-reports-header{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:700;color:rgba(255,255,255,0.9);margin-bottom:10px;cursor:pointer;user-select:none;}
.saved-reports-header:hover{color:rgba(255,255,255,1);}
.saved-reports-chevron{font-size:10px;opacity:0.8;}
.saved-reports-list{display:flex;flex-direction:column;gap:8px;max-height:220px;overflow-y:auto;}
.saved-reports-list.saved-reports-list-hidden{display:none;}
.saved-report-item{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;background:rgba(255,255,255,0.06);border-radius:10px;border:1px solid rgba(255,255,255,0.08);}
.saved-report-title{flex:1 1 120px;font-size:13px;font-weight:600;color:rgba(255,255,255,0.95);}
.saved-report-meta{font-size:11px;color:rgba(255,255,255,0.5);}
.saved-report-actions{display:flex;gap:6px;margin-left:auto;}
.saved-report-open,.saved-report-delete{font-size:11px;padding:6px 12px;border-radius:8px;}
.saved-report-open{background:var(--blue);color:white;border:none;}
.saved-report-delete{background:transparent;color:rgba(255,255,255,0.6);border:1px solid rgba(255,255,255,0.2);}
.saved-report-delete:hover{color:#f5b7b1;border-color:rgba(231,76,60,0.4);}

/* Input card — white with glow top */
.input-card{background:white;border-radius:18px;padding:24px;box-shadow:0 20px 60px rgba(0,0,0,0.4),0 0 0 1px rgba(255,255,255,0.1);position:relative;overflow:visible;--glow-color:var(--blue);animation:card-rise 0.6s cubic-bezier(0.16, 1, 0.3, 1) 0.4s both;}
.input-card::before{content:'';position:absolute;top:0;left:10%;right:10%;height:2px;border-radius:0 0 2px 2px;background:linear-gradient(90deg, transparent, var(--glow-color), transparent);opacity:0.6;transition:background 0.4s ease;}
.input-card::after{content:'';position:absolute;top:0;left:0;right:0;height:80px;background:linear-gradient(180deg, rgba(250,249,246,0.5) 0%, transparent 100%);pointer-events:none;border-radius:18px 18px 0 0;}
.input-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;}
.input-card-header h2{font-family:'Fraunces',serif;font-size:17px;}

/* Analyze: sticky primary CTA — visible without scrolling past optional fields */
.analyze-cta-sticky{
  position:sticky;
  top:56px;
  z-index:25;
  margin:0 0 16px 0;
  padding:12px 0 14px;
  background:linear-gradient(180deg,#fff 0%,#fff 70%,rgba(255,255,255,0.92) 100%);
  border-bottom:1px solid var(--cream3);
  box-shadow:0 8px 24px rgba(0,0,0,0.06);
  border-radius:0 0 12px 12px;
}
.btn-analyze-generate{
  width:100%;
  padding:14px 16px;
  font-size:15px;
  font-weight:700;
  border-radius:14px;
  box-shadow:0 4px 18px rgba(231,76,60,0.22);
}
.analyze-cta-hint{
  font-size:11px;
  color:var(--ink4);
  text-align:center;
  margin:10px 0 0;
  line-height:1.45;
  max-width:520px;
  margin-left:auto;
  margin-right:auto;
}
.audience-pill{display:flex;align-items:center;gap:6px;background:var(--cream);border:2px solid var(--cream3);padding:6px 14px;border-radius:10px;cursor:pointer;font-size:13px;font-weight:600;transition:all 0.25s var(--spring);position:relative;}
.audience-pill:hover{transform:translateY(-2px);}
.audience-pill:hover{border-color:var(--blue);}
.audience-pill select{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;}

/* Settings modal */
.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:999;align-items:center;justify-content:center;padding:20px;}
.modal-overlay.open{display:flex;}
.modal{background:white;border-radius:20px;padding:32px;max-width:480px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,0.3),0 0 0 1px rgba(255,255,255,0.1);animation:modal-enter 0.4s var(--ease-out-expo);}
@keyframes modal-enter{from{opacity:0;transform:scale(0.95) translateY(10px);}to{opacity:1;transform:none;}}
.modal h3{font-family:'Fraunces',serif;font-size:20px;margin-bottom:16px;}
.modal label{display:block;font-size:12px;font-weight:700;color:var(--ink3);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:4px;margin-top:14px;}
.modal .close-modal{position:absolute;top:16px;right:16px;background:none;border:none;font-size:20px;cursor:pointer;color:var(--ink3);}
input[type="text"],input[type="email"],input[type="password"],textarea,select{
  width:100%;padding:12px 16px;border:2px solid var(--cream3);border-radius:10px;
  font-family:'DM Sans',sans-serif;font-size:14px;background:var(--cream);
  transition:border-color 0.2s;
}
input:focus,textarea:focus,select:focus{outline:none;border-color:var(--blue);}
textarea{resize:vertical;min-height:120px;}
select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b6b8d' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;}
.input-tabs{display:flex;gap:0;margin-bottom:12px;border-radius:10px;overflow:hidden;border:2px solid var(--cream3);}
.input-tab{flex:1;padding:10px;text-align:center;font-size:12px;font-weight:700;cursor:pointer;background:var(--cream);color:var(--ink3);transition:all 0.3s var(--ease-out-expo);border:none;position:relative;}
.input-tab:hover{background:var(--cream2);color:var(--ink2);}
.input-tab.active{background:var(--blue);color:white;}
.input-panel{display:none;}
.input-panel.active{display:block;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border:none;border-radius:12px;font-family:'DM Sans',sans-serif;font-size:15px;font-weight:700;cursor:pointer;transition:all 0.25s var(--spring);width:100%;position:relative;overflow:hidden;}
.btn::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,0.1) 0%,transparent 50%);opacity:0;transition:opacity 0.3s;}
.btn:hover::after{opacity:1;}
.btn:hover{transform:translateY(-2px) scale(1.02);}
.btn:active{transform:translateY(0) scale(0.98);}
.btn-primary{background:var(--ink);color:white;}
.btn-primary:hover{background:#2d2d4e;transform:translateY(-1px);box-shadow:0 4px 16px rgba(26,26,46,0.3);}
.btn-primary:disabled{background:var(--ink4);cursor:not-allowed;transform:none;box-shadow:none;}
.btn-secondary{background:var(--cream2);color:var(--ink);}
.key-warning{background:var(--gold-light);border-left:3px solid var(--gold);padding:10px 14px;border-radius:0 8px 8px 0;font-size:11px;color:var(--ink2);margin-top:8px;}
.file-drop{border:2px dashed var(--cream3);border-radius:12px;padding:32px;text-align:center;cursor:pointer;transition:all 0.3s var(--ease-out-expo);}
.file-drop:hover,.file-drop.dragover{border-color:var(--blue);background:var(--blue-light);border-style:solid;transform:scale(1.01);}
.file-drop p{font-size:13px;color:var(--ink3);}


/* ═══ PROGRESS SCREEN ═══ */
.progress-screen{display:flex;align-items:center;justify-content:center;padding:40px 20px;background:#1a1a2e;min-height:100vh;}
.progress-card{background:white;border-radius:24px;padding:48px;max-width:760px;width:100%;box-shadow:0 20px 80px rgba(0,0,0,0.3),0 0 0 1px rgba(255,255,255,0.1);}
.progress-title{font-family:'Fraunces',serif;font-size:24px;text-align:center;margin-bottom:24px;}
.pipeline-steps{list-style:none;}
.pipeline-step{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--cream3);transition:background 0.3s ease;}
.pipeline-step:last-child{border-bottom:none;}
.step-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0;transition:all 0.4s var(--ease-out-expo);}
.step-icon.waiting{background:var(--cream2);color:var(--ink4);}
.step-icon.running{background:var(--blue);color:white;animation:step-pulse 1.5s ease-in-out infinite;box-shadow:0 0 20px rgba(41,128,185,0.3);}
.step-icon.complete{background:var(--green);color:white;box-shadow:0 0 12px rgba(39,174,96,0.2);animation:step-complete 0.5s var(--ease-out-expo);}
.step-icon.failed{background:var(--accent);color:white;box-shadow:0 0 12px rgba(231,76,60,0.2);}
.step-icon.skipped{background:var(--gold);color:white;}
@keyframes step-pulse{0%,100%{opacity:1;box-shadow:0 0 20px rgba(41,128,185,0.3);}50%{opacity:0.7;box-shadow:0 0 30px rgba(41,128,185,0.5);}}
@keyframes step-complete{0%{transform:scale(0.8);}50%{transform:scale(1.15);}100%{transform:scale(1);}}
.step-label{flex:1;}
.step-label h4{font-size:14px;font-family:'DM Sans',sans-serif;font-weight:600;margin-bottom:0;}
.step-label p{font-size:11px;color:var(--ink4);margin-bottom:0;}
.step-time{font-size:11px;color:var(--ink4);font-weight:600;}
.progress-bar-wrap{height:6px;background:var(--cream2);border-radius:3px;margin-top:20px;overflow:hidden;}

/* ═══ PROGRESS PARTICLES ═══ */
.progress-screen{position:relative;overflow:hidden;}
.progress-particles{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0;}
.progress-particle{position:absolute;border-radius:50%;opacity:0;animation:particleRise linear infinite;}
@keyframes particleRise{
  0%{opacity:0;transform:translateY(0) scale(0);}
  10%{opacity:0.6;}
  50%{opacity:0.3;}
  100%{opacity:0;transform:translateY(-400px) scale(1.2);}
}
.progress-card{position:relative;z-index:1;}

.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--blue),var(--teal),var(--green));background-size:200% 100%;border-radius:3px;transition:width 0.5s ease;width:0%;animation:progress-gradient 3s ease infinite;position:relative;}
.progress-bar-fill::after{content:'';position:absolute;right:0;top:-2px;bottom:-2px;width:20px;background:inherit;filter:blur(8px);opacity:0.6;border-radius:3px;}
@keyframes progress-gradient{0%{background-position:0% 50%;}50%{background-position:100% 50%;}100%{background-position:0% 50%;}}
.progress-status{text-align:center;font-size:13px;color:var(--ink3);margin-top:12px;}
.progress-error{background:var(--accent-light);border-left:3px solid var(--accent);padding:12px;border-radius:0 8px 8px 0;margin-top:16px;font-size:13px;color:var(--ink2);display:none;}
.progress-error .btn{margin-top:8px;width:auto;padding:8px 20px;font-size:12px;}


/* ═══ BELIEF EDITOR ═══ */
.editor-screen{display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;background:#1a1a2e;min-height:100vh;}
.editor-card{background:white;border-radius:24px;padding:36px;max-width:800px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,0.3);}
.editor-title{font-family:'Fraunces',serif;font-size:24px;margin-bottom:4px;}
.editor-sub{font-size:13px;color:var(--ink3);margin-bottom:20px;line-height:1.5;}
.belief-gate-countdown-wrap{margin:-8px 0 20px 0;padding:14px 16px;border-radius:12px;background:var(--cream2);border:1px solid var(--cream3);}
.belief-gate-countdown{font-size:15px;font-weight:700;color:var(--ink2);font-variant-numeric:tabular-nums;}
.belief-gate-cancel-auto{margin-top:10px;padding:0;border:none;background:none;color:var(--accent);font-size:12px;cursor:pointer;text-decoration:underline;font-family:inherit;}
.belief-gate-cancel-auto:hover{color:var(--ink2);}
.belief-gate-cancelled-note{font-size:13px;color:var(--ink3);margin:-8px 0 16px 0;padding:10px 12px;border-radius:8px;background:var(--gold-light);border:1px solid var(--gold);}
.edit-belief{display:flex;align-items:flex-start;gap:14px;padding:14px;border:2px solid var(--cream3);border-radius:12px;margin-bottom:10px;transition:all 0.2s;background:white;}
.edit-belief:hover{border-color:var(--blue);}
.edit-belief.removed{opacity:0.3;text-decoration:line-through;}
.eb-icon{font-size:24px;flex-shrink:0;padding-top:2px;}
.eb-body{flex:1;}
.eb-title-input{width:100%;border:none;font-family:'Fraunces',serif;font-size:16px;font-weight:700;padding:4px 0;background:transparent;color:var(--ink);}
.eb-title-input:focus{outline:none;border-bottom:2px solid var(--blue);}
.eb-quote{font-size:11px;color:var(--ink3);font-style:italic;margin-top:4px;line-height:1.4;}
.eb-tags{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap;}
.eb-tags span{font-size:9px;background:var(--cream2);padding:2px 8px;border-radius:10px;color:var(--ink4);}
.eb-remove{width:32px;height:32px;border-radius:8px;border:none;background:var(--cream2);color:var(--ink3);cursor:pointer;font-size:14px;flex-shrink:0;transition:all 0.2s;}
.eb-remove:hover{background:var(--accent-light);color:var(--accent);}
.editor-actions{display:flex;gap:10px;margin-top:20px;}
.editor-actions .btn{flex:1;}
.eb-strength{display:inline-block;font-size:10px;font-weight:700;padding:2px 8px;border-radius:10px;margin-left:8px;}
.eb-strength.strong{background:var(--green-light);color:var(--green);}
.eb-strength.moderate{background:var(--gold-light);color:var(--gold);}
.eb-strength.weak{background:var(--accent-light);color:var(--accent);}


/* ═══ CONFIDENCE BADGES ═══ */
.conf-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;margin-left:8px;vertical-align:middle;}
.conf-high{background:var(--green-light);color:var(--green);}
.conf-med{background:var(--gold-light);color:var(--gold);}
.conf-low{background:var(--accent-light);color:var(--accent);}


/* ═══ MODE TOGGLE ═══ */
/* Mode card styles are defined in setup section above */




/* ── Global smooth scrolling ── */
html{scroll-behavior:smooth;}

/* ── Premium selection highlight ── */
::selection{background:rgba(41,128,185,0.2);color:var(--ink);}
::-moz-selection{background:rgba(41,128,185,0.2);color:var(--ink);}

/* ── Enhanced focus states for accessibility ── */
*:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:4px;}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(41,128,185,0.15);}

/* ── Global toast notification system ── */
.v18-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(100px);background:var(--ink);color:white;padding:10px 24px;border-radius:12px;font-size:13px;font-weight:600;z-index:100000;pointer-events:none;opacity:0;transition:all 0.4s var(--ease-out-expo);box-shadow:0 8px 32px rgba(0,0,0,0.3);display:flex;align-items:center;gap:8px;backdrop-filter:blur(8px);}
.v18-toast.show{opacity:1;transform:translateX(-50%) translateY(0);}
.v18-toast.toast-success{background:var(--green);}.v18-toast.toast-error{background:var(--accent);}.v18-toast.toast-info{background:var(--blue);}

/* ── Scroll-to-top button ── */
.scroll-top-btn{position:fixed;bottom:24px;right:24px;width:44px;height:44px;border-radius:50%;background:var(--ink);color:white;border:none;cursor:pointer;z-index:999;display:flex;align-items:center;justify-content:center;font-size:18px;box-shadow:0 4px 16px rgba(0,0,0,0.2);opacity:0;transform:translateY(20px) scale(0.8);transition:all 0.3s var(--ease-out-expo);pointer-events:none;}
.scroll-top-btn.visible{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}
.scroll-top-btn:hover{transform:translateY(-2px) scale(1.1);background:var(--blue);box-shadow:0 6px 24px rgba(41,128,185,0.3);}
.scroll-top-btn:active{transform:scale(0.95);}

/* ── Enhanced feature pills with hover glow ── */
.feature-pill{font-size:10px;font-weight:600;padding:3px 9px;border-radius:20px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);color:rgba(255,255,255,0.45);white-space:nowrap;transition:all 0.3s ease;cursor:default;}
.feature-pill:hover{background:rgba(255,255,255,0.12);color:rgba(255,255,255,0.8);transform:translateY(-1px);box-shadow:0 2px 8px rgba(255,255,255,0.05);}

/* ── Copy button success animation ── */
@keyframes copy-success{0%{transform:scale(1);}30%{transform:scale(1.15);}60%{transform:scale(0.95);}100%{transform:scale(1);}}
.copy-btn.copied{animation:copy-success 0.4s var(--ease-out-expo);}

/* ── Report hero enhanced glow ── */
.report-hero{text-align:center;padding:48px 0 32px;border-bottom:3px solid var(--ink);margin-bottom:40px;position:relative;}
.report-hero::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:60%;height:100%;background:radial-gradient(ellipse at center, rgba(41,128,185,0.04) 0%, transparent 70%);pointer-events:none;}

/* ── Enhanced verdict box with premium border ── */
.verdict-box{background:white;border:2px solid var(--cream3);color:var(--ink);border-radius:16px;padding:28px;margin:20px 0;position:relative;overflow:hidden;}
.verdict-box::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--blue),var(--teal));border-radius:16px 16px 0 0;}
.verdict-box h3{color:var(--gold);font-family:'Fraunces',serif;font-size:20px;margin-bottom:12px;}
.verdict-box p{color:var(--ink2);font-size:14px;}

/* ── Enhanced ticker with smooth pause on hover ── */
.ticker{background:var(--ink);color:white;padding:8px 0;overflow:hidden;white-space:nowrap;}
.ticker:hover .ticker-inner{animation-play-state:paused;}
.ticker-inner{display:inline-block;animation:tickerScroll 60s linear infinite;}

/* ── Better loading skeleton shimmer ── */
@keyframes skeleton-shimmer{0%{background-position:-200% 0;}100%{background-position:200% 0;}}
.skeleton{background:linear-gradient(90deg,var(--cream2) 25%,var(--cream) 50%,var(--cream2) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease infinite;border-radius:8px;min-height:20px;}

/* ── Collapsible section enhanced transition ── */
.coll-hdr{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:16px 0;border-bottom:2px solid var(--cream3);user-select:none;gap:12px;transition:border-color 0.3s ease,padding 0.3s ease;}
.coll-hdr:hover{border-color:var(--accent);padding-left:4px;}

/* ── Play card hover refinement ── */
.play-card{width:160px;height:224px;cursor:pointer;perspective:1200px;transition:transform 0.3s var(--ease-out-expo);}
.play-card:hover{transform:translateY(-4px);}

/* ── Report watermark refinement ── */
.watermark{position:fixed;bottom:10px;right:10px;font-size:10px;color:rgba(0,0,0,0.06);pointer-events:none;z-index:1000;font-weight:600;letter-spacing:0.5px;}

/* Report Styles */

/* ═══ REPORT STYLES ═══ */
.report{max-width:1000px;margin:0 auto;padding:0 24px 60px;}
.report-nav{position:sticky;top:0;z-index:100;background:rgba(250,249,246,0.92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:12px 0;border-bottom:1px solid rgba(235,232,224,0.8);margin-bottom:32px;box-shadow:0 1px 8px rgba(0,0,0,0.04);}
.report-nav-inner{display:flex;align-items:center;justify-content:space-between;max-width:1000px;margin:0 auto;gap:12px;flex-wrap:wrap;}
.nav-brand{font-family:'Fraunces',serif;font-size:16px;font-weight:700;}
.nav-controls{display:flex;align-items:center;gap:10px;}
.nav-controls select{padding:6px 30px 6px 10px;font-size:12px;border-radius:6px;min-width:180px;}
.nav-controls .btn{padding:6px 14px;font-size:11px;width:auto;}
.ticker{background:var(--ink);color:white;padding:8px 0;overflow:hidden;white-space:nowrap;}
.ticker-inner{display:inline-block;animation:tickerScroll 60s linear infinite;}
@keyframes tickerScroll{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
.ticker .news-item{display:inline-block;margin-right:48px;font-size:12px;}
.ticker .news-badge{background:var(--blue);padding:2px 8px;border-radius:4px;font-size:10px;font-weight:700;margin-right:8px;}
.report-hero{text-align:center;padding:48px 0 32px;border-bottom:3px solid var(--ink);margin-bottom:40px;}
.report-hero h1{font-size:clamp(28px,4vw,42px);line-height:1.2;margin-bottom:8px;}
.report-hero .hero-sub{font-size:14px;color:var(--ink3);max-width:600px;margin:0 auto;}
.hero-stats{display:flex;justify-content:center;gap:32px;margin-top:24px;flex-wrap:wrap;}
.hero-stat{text-align:center;}
.hero-stat-num{font-family:'Fraunces',serif;font-size:32px;font-weight:700;color:var(--blue);}
.hero-stat-label{font-size:11px;color:var(--ink3);text-transform:uppercase;letter-spacing:1px;}
/* Section reveal — intelligence materialising */
@keyframes section-reveal{from{opacity:0;transform:translateY(24px) scale(0.97);filter:blur(6px);}to{opacity:1;transform:none;filter:blur(0);}}
.section-r{margin-bottom:48px;animation:section-reveal 0.7s var(--ease-out-expo) both;}
.section-r:nth-child(2){animation-delay:0.08s;}
.section-r:nth-child(3){animation-delay:0.16s;}
.section-r:nth-child(4){animation-delay:0.24s;}
.section-r:nth-child(5){animation-delay:0.32s;}
.section-r:nth-child(n+6){animation-delay:0.4s;}
.section-eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--blue);margin-bottom:4px;}
.section-title{font-size:24px;margin-bottom:8px;}
.section-desc{font-size:13px;color:var(--ink3);margin-bottom:20px;}
.card-r{background:white;border-radius:14px;padding:20px;margin-bottom:14px;box-shadow:0 1px 4px rgba(0,0,0,0.06),0 0 0 1px rgba(0,0,0,0.02);opacity:0;transform:translateY(20px);transition:all 0.5s var(--ease-out-expo);filter:blur(4px);}
.card-r.visible{opacity:1;transform:none;filter:blur(0);}
.card-r:hover{box-shadow:0 2px 12px rgba(0,0,0,0.08),0 0 0 1px rgba(0,0,0,0.03);}
.belief-card{cursor:pointer;border-left:4px solid var(--blue);transition:all 0.25s var(--spring);}
.belief-card:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 4px 16px rgba(0,0,0,0.1);}
.belief-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
@media(max-width:900px){.belief-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.belief-grid{grid-template-columns:1fr;}}
.belief-grid .card-r{margin-bottom:0;}
.belief-grid .belief-card.expanded{grid-column:1/-1;}
.belief-header{display:flex;align-items:center;gap:10px;}
.belief-icon{font-size:24px;flex-shrink:0;}
.belief-title{font-size:14px;font-family:'Fraunces',serif;flex:1;line-height:1.3;}
.belief-score-pill{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:700;}
.belief-tags{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap;}
.belief-tags span{font-size:10px;font-weight:600;background:var(--cream2);color:var(--ink3);padding:2px 10px;border-radius:20px;}
.belief-detail{display:none;margin-top:16px;padding-top:16px;border-top:1px solid var(--cream3);}
.belief-detail.open{display:block;}
.belief-quote{font-style:italic;color:var(--ink2);font-size:14px;padding:12px 16px;background:var(--cream2);border-radius:8px;border-left:3px solid var(--gold);margin-bottom:12px;}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0;}
@media(max-width:700px){.detail-grid{grid-template-columns:1fr;}}
.mini-card{background:var(--cream);border-radius:10px;padding:12px;font-size:12px;}
.mini-card h5{font-size:12px;margin-bottom:4px;font-family:'DM Sans',sans-serif;}
.playbook-box{background:var(--accent-light);border-radius:10px;border-left:4px solid var(--accent);padding:14px;margin-top:12px;}
.playbook-box h5{font-size:12px;color:var(--blue);margin-bottom:6px;font-family:'DM Sans',sans-serif;font-weight:700;}
.playbook-box p{font-size:12px;color:var(--ink2);margin-bottom:0;}
.hashtags{font-size:11px;color:var(--ink3);font-weight:600;margin-top:8px;}
.score-table-wrap{overflow-x:auto;margin:16px 0;}
.score-table{width:100%;border-collapse:collapse;min-width:700px;}
.score-table th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--ink3);padding:10px 8px;border-bottom:2px solid var(--cream3);text-align:center;}
.score-table th:first-child{text-align:left;}
.score-table td{padding:10px 8px;border-bottom:1px solid var(--cream3);text-align:center;font-size:13px;}
.score-table td:first-child{text-align:left;font-weight:600;}
.score-pill{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:700;}
.score-great{background:var(--green-light);color:var(--green);}
.score-good{background:#e8f4fd;color:var(--blue);}
.score-caution{background:var(--gold-light);color:#c67c00;}
.score-bad{background:#fdecea;color:var(--accent);}
.viral-rank{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--cream3);}
.viral-rank:last-child{border-bottom:none;}
.vr-medal{font-size:20px;width:32px;text-align:center;}
.vr-bar-wrap{flex:1;height:20px;background:var(--cream2);border-radius:10px;overflow:hidden;}
.vr-bar{height:100%;border-radius:10px;background:linear-gradient(90deg,var(--gold),var(--green));transition:width 1s ease;}
.vr-score{font-weight:700;font-size:14px;width:40px;text-align:right;}
.vr-name{flex:1;font-size:13px;font-weight:600;min-width:200px;}
.draft-tabs{display:flex;gap:0;border-radius:10px;overflow:hidden;border:2px solid var(--cream3);margin-bottom:16px;}
.draft-tab{flex:1;padding:10px;text-align:center;font-size:12px;font-weight:700;cursor:pointer;background:var(--cream);color:var(--ink3);border:none;transition:all 0.25s var(--spring);}
.draft-tab.active{background:var(--ink);color:white;}
.draft-panel{display:none;background:white;border-radius:14px;padding:20px;position:relative;}
.draft-panel.active{display:block;}
.draft-content{font-size:13px;color:var(--ink2);line-height:1.8;white-space:pre-wrap;font-family:'DM Sans',sans-serif;}
.copy-btn{position:absolute;top:12px;right:12px;background:var(--ink);color:white;border:none;padding:6px 14px;border-radius:6px;font-size:11px;font-weight:700;cursor:pointer;transition:all 0.25s var(--spring);}
.copy-btn:hover{transform:scale(1.08);background:var(--blue);}
.copy-btn.copied{background:var(--green);}
.verdict-box{background:white;border:2px solid var(--cream3);color:var(--ink);border-radius:16px;padding:28px;margin:20px 0;}
.verdict-box h3{color:var(--gold);font-family:'Fraunces',serif;font-size:20px;margin-bottom:12px;}
.verdict-box p{color:var(--ink2);font-size:14px;}
.calendar-row{display:flex;gap:12px;margin-bottom:10px;align-items:flex-start;}
.cal-week{width:80px;font-size:12px;font-weight:700;color:var(--ink3);flex-shrink:0;padding-top:4px;}
.cal-items{flex:1;display:flex;gap:8px;flex-wrap:wrap;}
.cal-item{background:white;border-radius:8px;padding:8px 12px;font-size:11px;box-shadow:0 1px 3px rgba(0,0,0,0.06);border-left:3px solid var(--blue);}
.watermark{position:fixed;bottom:10px;right:10px;font-size:10px;color:rgba(0,0,0,0.08);pointer-events:none;z-index:1000;}

/* ── Responsive grid utilities ── */
.rg-2col{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.rg-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.rg-4col{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
@media(max-width:700px){.rg-2col,.rg-3col{grid-template-columns:1fr;}}
@media(max-width:900px){.rg-4col{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.rg-4col{grid-template-columns:1fr;}}

/* ── Small mobile (<480px) ── */
@media(max-width:480px){
  :root{--fs-body:12px;--fs-sm:11px;--fs-label:10px;--fs-h4:14px;--fs-h3:15px;}
  .setup-nav{padding:10px 16px;}
  .setup-nav-brand{font-size:15px;}
  .setup-hero{padding:16px 16px 8px;}
  .setup-hero p{font-size:13px;}
  .features-strip{gap:4px;padding:0 8px;}
  .feature-pill{font-size:9px;padding:3px 7px;}
  .setup-main{padding:10px 14px 40px;}
  .mode-card{padding:12px 10px 10px;border-radius:12px;}
  .mode-card .mode-icon{font-size:20px;margin-bottom:2px;}
  .mode-card h3{font-size:13px;}
  .mode-card p{font-size:9px;}
  .input-card{padding:18px;border-radius:14px;}
  .input-card-header h2{font-size:16px;}
  .input-tab{padding:8px;font-size:11px;}
  .btn{padding:12px 20px;font-size:14px;border-radius:10px;}
  .modal{padding:24px;border-radius:16px;}
  .editor-card{padding:24px;}
  .editor-title{font-size:20px;}
  .edit-belief{padding:10px;gap:10px;}
  .progress-card{padding:32px 24px;}
  .progress-title{font-size:20px;}
}

/* ═══════════════════════════════════════════════════
   DESKTOP BREAKPOINTS — 900px+, 1024px+, 1440px+
   ═══════════════════════════════════════════════════ */

/* ── 900px+: readability & breathing room ── */
@media(min-width:900px){
  .setup-hero h1{font-size:42px;}
  .setup-hero p{font-size:15px;max-width:480px;}
  .setup-main{max-width:760px;}
  .mode-card{padding:16px 14px 14px;}
  .mode-card h3{font-size:15px;}
  .mode-card p{font-size:11px;line-height:1.4;}
  .input-card{padding:28px;}
  .input-card-header h2{font-size:18px;}
  .input-tab{padding:12px;font-size:13px;}
  .btn{padding:14px 28px;font-size:15px;}
  .report{max-width:1000px;padding:0 32px 60px;}
  .report-nav-inner{padding:0 32px;}
  .nav-brand{font-size:17px;}
  .nav-controls .btn{padding:7px 16px;font-size:12px;}
  .section-title{font-size:22px;}
  .section-desc{font-size:14px;line-height:1.6;}
  .belief-grid{grid-template-columns:repeat(3,1fr);gap:16px;}
  .editor-card{padding:40px;max-width:840px;}
  .editor-title{font-size:26px;}
  .progress-card{max-width:800px;}
  .progress-title{font-size:26px;}
}

/* ── 1024px+: laptop-optimized ── */
@media(min-width:1024px){
  :root{--fs-body:14px;--fs-sm:13px;--fs-label:12px;--fs-h4:16px;--fs-h3:18px;}
  .setup-nav{padding:14px 44px;}
  .setup-hero{padding:24px 32px 14px;}
  .setup-hero h1{font-size:44px;}
  .setup-hero p{font-size:15px;max-width:500px;}
  .features-strip{max-width:580px;gap:6px;}
  .feature-pill{font-size:11px;padding:4px 11px;}
  .setup-main{max-width:800px;padding:14px 32px 48px;}
  .mode-toggle{gap:14px;margin-bottom:14px;}
  .mode-card{padding:18px 16px 16px;border-radius:16px;}
  .mode-card .mode-icon{font-size:26px;}
  .mode-card h3{font-size:16px;}
  .mode-card p{font-size:11px;}
  .input-card{padding:32px;border-radius:20px;}
  .input-card-header h2{font-size:19px;}
  .input-tab{padding:12px 28px;font-size:14px;}
  .btn{padding:15px 32px;font-size:16px;}
  .report{max-width:1060px;padding:0 40px 60px;}
  .report-nav-inner{padding:0 40px;}
  .nav-brand{font-size:18px;}
  .nav-controls .btn{padding:8px 18px;font-size:12px;}
  .nav-controls{gap:12px;}
  .section-r{margin-bottom:40px;}
  .section-title{font-size:24px;}
  .section-desc{font-size:15px;max-width:700px;}
  .belief-grid{gap:18px;}
  .detail-grid{gap:20px;}
  .modal{max-width:520px;padding:36px;}
  .editor-card{padding:44px;max-width:880px;}
  .edit-belief{padding:16px;gap:16px;}
  .eb-title-input{font-size:17px;}
  .rg-2col{gap:16px;}
  .rg-3col{gap:16px;}
  .rg-4col{gap:16px;}
  .progress-card{max-width:860px;padding:52px;}
  .progress-title{font-size:28px;}
  .progress-status{font-size:14px;}
}

/* ── 1440px+: wide desktop ── */
@media(min-width:1440px){
  :root{--fs-body:15px;--fs-sm:13px;--fs-label:12px;--fs-h4:17px;--fs-h3:19px;}
  .setup-nav{padding:16px 64px;max-width:1400px;}
  .setup-hero{padding:28px 40px 16px;max-width:720px;}
  .setup-hero h1{font-size:48px;}
  .setup-hero p{font-size:16px;max-width:540px;}
  .features-strip{max-width:620px;gap:8px;}
  .feature-pill{font-size:11px;padding:5px 14px;}
  .setup-main{max-width:880px;padding:16px 40px 56px;}
  .mode-toggle{gap:16px;margin-bottom:16px;}
  .mode-card{padding:20px 18px 18px;}
  .mode-card .mode-icon{font-size:28px;}
  .mode-card h3{font-size:17px;}
  .mode-card p{font-size:12px;}
  .input-card{padding:36px;}
  .input-card-header h2{font-size:20px;}
  .input-tab{padding:14px 32px;font-size:15px;}
  .btn{padding:16px 36px;font-size:16px;}
  .report{max-width:1200px;padding:0 56px 80px;}
  .report-nav-inner{max-width:1200px;padding:0 56px;}
  .nav-brand{font-size:19px;}
  .nav-controls .btn{padding:8px 20px;font-size:13px;}
  .nav-controls{gap:14px;}
  .section-r{margin-bottom:48px;}
  .section-title{font-size:26px;}
  .section-desc{font-size:16px;max-width:780px;line-height:1.7;}
  .belief-grid{gap:20px;}
  .detail-grid{gap:24px;}
  .modal{max-width:560px;padding:40px;}
  .editor-card{padding:48px;max-width:920px;}
  .editor-title{font-size:28px;}
  .edit-belief{padding:18px;gap:18px;}
  .rg-2col{gap:20px;}
  .rg-3col{gap:20px;}
  .rg-4col{gap:20px;}
  .progress-card{max-width:920px;padding:56px;}
  .progress-title{font-size:30px;}
}

@media print{
  .report-nav,.ticker,.watermark,.copy-btn,.nav-controls,.pitch-btn,.sim-overlay,.no-download,.audit-panel{display:none!important;}
  .card-r{opacity:1!important;transform:none!important;break-inside:avoid;}
  .belief-detail{display:block!important;}
  .collapse-wrap{max-height:none!important;overflow:visible!important;}
  .collapse-wrap::after{display:none!important;}
  .collapse-toggle{display:none!important;}
  .section-collapsible-body{max-height:none!important;overflow:visible!important;}
  .section-collapsible-body.collapsed{max-height:none!important;overflow:visible!important;}
  .section-collapse-btn{display:none!important;}
  body{background:white;color:black;}
  .verdict-box{background:#333!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  .branded-header{-webkit-print-color-adjust:exact;print-color-adjust:exact;break-inside:avoid;}
  /* Pocket Brief print */
  .pb-head,.pb-foot,.pb-copied-toast{display:none!important;}
  .pb-overlay.open{position:static!important;overflow:visible!important;}
  .pb-single-card{height:auto!important;max-height:none!important;overflow:visible!important;}
  .pb-single-inner,.pb-side-a-in,.pb-side-b-in{overflow:visible!important;}
  .pb-side-a{border-radius:8px!important;margin-bottom:8px;break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  .pb-side-b{border-radius:8px!important;break-inside:avoid;background:#5e554c!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  .pb-side-b *{color:white!important;}
  .pb-side-b .pb-dbh{-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  .pb-a-stat{-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  .pb-say-ctx{display:none!important;}
  .pb-say-card{cursor:default!important;pointer-events:none;}
  @page{margin:2cm;}
}


/* ═══ COLLAPSIBLE SECTIONS ═══ */
.collapse-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;user-select:none;padding:4px 0;}
.collapse-header:hover .collapse-toggle{color:var(--blue);}
.collapse-toggle{font-size:18px;color:var(--ink4);transition:transform 0.3s, color 0.2s;font-weight:400;line-height:1;}
.collapse-header.open .collapse-toggle{transform:rotate(180deg);}
.collapse-body{max-height:0;overflow:hidden;transition:max-height 0.5s ease-in-out;}
.collapse-body.open{max-height:200000px;overflow:visible;}
.collapse-peek{font-size:11px;color:var(--ink4);padding:8px 0;font-style:italic;}


/* ═══ INVISIBLE BRIEF™ ═══ */
.toggles-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
@media(max-width:600px){.toggles-row{grid-template-columns:1fr;}}
.ib-toggle-wrap{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:2px solid var(--cream3);border-radius:12px;background:var(--cream);cursor:pointer;transition:all 0.2s;user-select:none;}
.ib-toggle-wrap:hover{border-color:#8e44ad;background:rgba(142,68,173,0.04);}
.ib-toggle-wrap.ib-on{border-color:#8e44ad;background:rgba(142,68,173,0.06);}
.ib-toggle-info{display:flex;flex-direction:column;gap:2px;}
.ib-toggle-label{font-size:12px;font-weight:700;color:var(--ink);display:flex;align-items:center;gap:6px;}
.ib-badge{font-size:9px;font-weight:800;letter-spacing:0.5px;background:linear-gradient(135deg,#8e44ad,#6c3483);color:white;padding:2px 7px;border-radius:4px;}
.pr-tier-hint{font-size:11px;color:var(--ink4);font-weight:600;cursor:help;}
.pr-tier-hint.pro-badge{font-size:9px;font-weight:800;letter-spacing:0.5px;background:linear-gradient(135deg,#16a085,#138d75);color:white;padding:2px 7px;border-radius:4px;cursor:help;}
.ib-toggle-sub{font-size:10px;color:var(--ink4);line-height:1.5;max-width:340px;}
.ib-switch{width:38px;height:21px;background:var(--cream3);border-radius:11px;position:relative;transition:background 0.2s;flex-shrink:0;border:1px solid rgba(0,0,0,0.08);}
.ib-switch::after{content:'';position:absolute;left:3px;top:2px;width:15px;height:15px;background:white;border-radius:50%;transition:transform 0.2s;box-shadow:0 1px 3px rgba(0,0,0,0.25);}
.ib-toggle-wrap.ib-on .ib-switch{background:#8e44ad;}
.ib-toggle-wrap.ib-on .ib-switch::after{transform:translateX(17px);}
.ae-toggle-wrap:hover{border-color:var(--teal,#2ecc71);background:rgba(46,204,113,0.04);}
.ae-toggle-wrap.ae-on{border-color:var(--teal,#2ecc71);background:rgba(46,204,113,0.06);}
.ae-form-switch{width:38px;height:21px;background:var(--cream3);border-radius:11px;position:relative;transition:background 0.2s;flex-shrink:0;border:1px solid rgba(0,0,0,0.08);}
.ae-form-switch::after{content:'';position:absolute;left:3px;top:2px;width:15px;height:15px;background:white;border-radius:50%;transition:transform 0.2s;box-shadow:0 1px 3px rgba(0,0,0,0.25);}
.ae-toggle-wrap.ae-on .ae-form-switch{background:var(--teal,#2ecc71);}
.ae-toggle-wrap.ae-on .ae-form-switch::after{transform:translateX(17px);}
/* Phone mockup */
.ib-phones{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:20px;}
.ib-phone{background:#111;border-radius:32px;padding:10px;box-shadow:0 24px 64px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.06);}
.ib-phone-screen{background:#000;border-radius:23px;overflow:hidden;}
.ib-statusbar{background:#111;padding:8px 18px 3px;display:flex;justify-content:space-between;align-items:center;}
.ib-statusbar-time{font-family:-apple-system,BlinkMacSystemFont,sans-serif;font-size:12px;font-weight:700;color:white;}
.ib-statusbar-icons{font-size:10px;color:rgba(255,255,255,0.8);}
.ib-urgency{background:linear-gradient(135deg,#8e44ad 0%,#6c3483 100%);padding:10px 16px 11px;}
.ib-urgency-label{font-size:9px;font-weight:700;color:rgba(255,255,255,0.6);text-transform:uppercase;letter-spacing:1.5px;}
.ib-urgency-event{font-size:13px;font-weight:700;color:white;margin:2px 0;}
.ib-urgency-timer{font-size:10px;color:rgba(255,255,255,0.6);font-family:-apple-system,sans-serif;}
.ib-card-body{background:#0A0A0A;padding:11px 13px;display:flex;flex-direction:column;gap:9px;}
.ib-block{background:#1A1A1A;border-radius:11px;padding:10px 12px;}
.ib-block.b-red{border-left:3px solid #E74C3C;}
.ib-block.b-green{border-left:3px solid #2ECC71;}
.ib-block.b-gold{border-left:3px solid #F1C40F;}
.ib-block.b-blue{border-left:3px solid #3498DB;}
.ib-block.b-purple{border-left:3px solid #9B59B6;}
.ib-block-label{font-size:8px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.3);margin-bottom:5px;}
.ib-block-text{font-size:11px;color:rgba(255,255,255,0.85);line-height:1.55;font-family:-apple-system,BlinkMacSystemFont,sans-serif;}
.ib-block-text strong{color:white;}
.ib-challenger-item{padding:5px 0;border-bottom:1px solid rgba(255,255,255,0.05);}
.ib-challenger-item:last-child{border-bottom:none;padding-bottom:0;}
.ib-ch-name{font-size:11px;font-weight:700;color:#E74C3C;font-family:-apple-system,sans-serif;}
.ib-ch-pos{font-size:9px;color:rgba(255,255,255,0.4);margin-bottom:2px;}
.ib-ch-angle{font-size:10px;color:rgba(255,255,255,0.7);line-height:1.4;}
.ib-belief-row{display:flex;gap:4px;flex-wrap:wrap;margin-top:5px;}
.ib-chip{font-size:9px;font-weight:700;padding:2px 7px;border-radius:5px;}
.ib-chip-lead{background:rgba(46,204,113,0.18);color:#2ECC71;border:1px solid rgba(46,204,113,0.25);}
.ib-chip-avoid{background:rgba(231,76,60,0.18);color:#E74C3C;border:1px solid rgba(231,76,60,0.25);}
.ib-quote-line{font-size:11px;color:#F1C40F;font-style:italic;line-height:1.5;border-left:2px solid #F1C40F;padding-left:8px;font-family:-apple-system,sans-serif;}
.ib-bridge-line{font-size:10px;color:#3498DB;font-style:italic;line-height:1.4;}
.ib-dont-row{display:flex;gap:3px;flex-wrap:wrap;margin-top:4px;}
.ib-dont-chip{font-size:9px;background:rgba(231,76,60,0.12);color:#E74C3C;border:1px solid rgba(231,76,60,0.18);padding:2px 6px;border-radius:4px;}
.ib-home{display:flex;justify-content:center;padding:7px 0 3px;background:#000;}
.ib-home-bar{width:90px;height:4px;background:rgba(255,255,255,0.2);border-radius:2px;}
/* Desktop expanded view below phone */
.ib-expanded{background:white;border:1px solid var(--cream3);border-radius:14px;padding:20px;margin-top:16px;}
.ib-exp-title{font-family:'Fraunces',serif;font-size:13px;color:var(--ink);margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid var(--cream3);}
.ib-challenger-full{background:var(--cream);border:1px solid var(--cream3);border-radius:10px;padding:12px 14px;margin-bottom:8px;}
.ib-cf-name{font-size:13px;font-weight:700;color:var(--accent);}
.ib-cf-title{font-size:10px;color:var(--ink4);margin-bottom:5px;}
.ib-cf-angle{font-size:11.5px;color:var(--ink2);line-height:1.5;margin-bottom:6px;}
.ib-cf-counter{background:var(--green-light);border-radius:6px;padding:7px 10px;font-size:11px;color:var(--green);line-height:1.4;}
.ib-cf-counter::before{content:'Counter → ';font-weight:700;}
.ib-section-wrap{margin:20px 0;}

/* Prep Mode Styles */

/* ═══ PREP REPORT STYLES ═══ */
@keyframes hero-reveal{from{opacity:0;transform:translateY(32px) scale(0.94);filter:blur(8px);}to{opacity:1;transform:none;filter:blur(0);}}
.prep-hero{text-align:center;padding:48px 0 32px;border-bottom:3px solid var(--teal);margin-bottom:40px;animation:hero-reveal 0.8s cubic-bezier(0.16, 1, 0.3, 1) both;}
.prep-hero h1{font-size:clamp(24px,3.5vw,38px);line-height:1.2;margin-bottom:8px;}
.prep-hero .hero-sub{font-size:14px;color:var(--ink3);max-width:600px;margin:0 auto;}
.prep-badge{display:inline-flex;align-items:center;gap:6px;background:var(--teal);color:white;padding:4px 14px;border-radius:20px;font-size:11px;font-weight:700;margin-bottom:16px;}
/* Prep report cards start VISIBLE — no stagger delay that makes the page look white */
@keyframes prep-card-in{from{opacity:0;transform:translateY(16px) scale(0.97);filter:blur(4px);}to{opacity:1;transform:none;filter:blur(0);}}
.prep-card{background:white;border-radius:14px;padding:20px;margin-bottom:14px;box-shadow:0 1px 4px rgba(0,0,0,0.06);animation:prep-card-in 0.35s ease both;transition:transform 0.25s var(--spring), box-shadow 0.25s ease;}
.prep-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,0.08);}
.collapse-wrap{position:relative;max-height:3.9em;overflow:hidden;transition:max-height 0.3s ease;}
.collapse-wrap.open{max-height:2000px;}
.collapse-wrap:not(.open)::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2em;background:linear-gradient(transparent,var(--cw-bg, var(--cream)));pointer-events:none;}
.collapse-toggle{display:inline-block;font-size:11px;font-weight:700;color:var(--teal);cursor:pointer;margin-top:4px;padding:2px 0;border:none;background:none;letter-spacing:0.3px;}
.collapse-toggle:hover{text-decoration:underline;}

/* ── SECTION COLLAPSE ── */
.section-collapsible-body{max-height:5000px;overflow:hidden;transition:max-height 0.4s ease;}
.section-collapsible-body.collapsed{max-height:0;overflow:hidden;}
.section-collapse-btn{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--teal);cursor:pointer;background:none;border:1px solid rgba(22,160,133,0.3);border-radius:20px;padding:4px 12px;margin-top:-2px;transition:all 0.2s;}
.section-collapse-btn:hover{background:rgba(22,160,133,0.08);}

/* ── RELATIONSHIP GRAPH ── */
.rel-graph-wrap{background:var(--cream2);border-radius:16px;overflow:hidden;margin-bottom:24px;border:1px solid var(--cream3);}
.rel-graph-header{padding:16px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--cream3);}
.rel-graph-title{font-family:'Fraunces',serif;font-size:18px;font-weight:700;color:var(--ink);}
.rel-graph-legend{display:flex;gap:12px;flex-wrap:wrap;}
.rel-graph-legend-item{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--ink3);font-family:'DM Sans',sans-serif;}
.rel-graph-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;}
.rel-graph-svg{width:100%;height:420px;display:block;background:var(--cream);background-image:linear-gradient(rgba(22,160,133,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(22,160,133,0.04) 1px,transparent 1px);background-size:30px 30px;}
.rel-graph-tooltip{position:absolute;background:rgba(26,26,46,0.95);border:1px solid var(--cream3);border-radius:8px;padding:10px 14px;font-size:11px;color:white;pointer-events:none;z-index:200;max-width:250px;backdrop-filter:blur(8px);font-family:'DM Sans',sans-serif;display:none;}
.rel-graph-tooltip .tt-name{font-weight:700;font-size:12px;margin-bottom:3px;}
.rel-graph-tooltip .tt-role{color:var(--ink4);font-size:10px;}
.collapse-wrap.open+.collapse-toggle .ct-more{display:none;}
.collapse-wrap:not(.open)+.collapse-toggle .ct-less{display:none;}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.4;}}
.persona-card{background:white;border-radius:16px;padding:22px;margin-bottom:14px;box-shadow:0 1px 4px rgba(0,0,0,0.06),0 0 0 1px rgba(0,0,0,0.02);border-left:5px solid var(--teal);transition:all 0.3s var(--ease-out-expo);}
.persona-card:hover{box-shadow:0 4px 16px rgba(0,0,0,0.08);transform:translateY(-1px);}
.persona-type{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--teal);margin-bottom:4px;}
.persona-name{font-family:'Fraunces',serif;font-size:18px;margin-bottom:6px;}
.persona-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0;}
@media(max-width:600px){.persona-grid{grid-template-columns:1fr;}}
.persona-cell{background:var(--cream);border-radius:10px;padding:10px 12px;font-size:12px;}
.persona-cell h5{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--ink3);margin-bottom:4px;}
.persona-cell p{color:var(--ink2);line-height:1.5;}
.resistance-card{background:white;border-radius:14px;padding:20px;margin-bottom:12px;border-left:5px solid var(--gold);}
.resistance-objection{background:var(--gold-light);border-radius:8px;padding:10px 14px;font-size:13px;color:var(--ink2);margin-bottom:10px;border-left:3px solid var(--gold);}
.resistance-counter{background:var(--teal-light);border-radius:8px;padding:10px 14px;font-size:13px;color:var(--ink2);border-left:3px solid var(--teal);}
.resistance-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px;}
.resistance-label.obj{color:var(--gold);}
.resistance-label.ctr{color:var(--teal);}
.powerline-card{background:white;border-radius:14px;padding:20px;margin-bottom:12px;box-shadow:0 2px 8px rgba(0,0,0,0.07);border:2px solid var(--cream3);cursor:pointer;transition:all 0.3s var(--ease-out-expo);position:relative;overflow:hidden;}
.powerline-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(22,160,133,0.03),transparent);opacity:0;transition:opacity 0.3s;}
.powerline-card:hover{border-color:var(--teal);box-shadow:0 4px 16px rgba(22,160,133,0.15);transform:translateY(-3px) scale(1.01);}
.powerline-card:hover::before{opacity:1;}
@media(max-width:700px){.powerline-grid-2{grid-template-columns:1fr !important;}}
.powerline-num{font-family:'Fraunces',serif;font-size:28px;font-weight:700;color:var(--teal);line-height:1;}
.powerline-text{font-family:'Fraunces',serif;font-size:17px;font-weight:700;color:var(--ink);line-height:1.35;margin:6px 0;}
.powerline-when{font-size:11px;color:var(--ink3);font-style:italic;}
.powerline-copy{display:flex;align-items:center;gap:4px;font-size:10px;font-weight:700;color:var(--teal);margin-top:8px;}
.pitch-angle-card{background:white;border-radius:14px;padding:20px;margin-bottom:12px;border-left:5px solid var(--blue);}
.pitch-angle-audience{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--blue);margin-bottom:4px;}
.pitch-angle-headline{font-family:'Fraunces',serif;font-size:16px;margin-bottom:6px;}
.pitch-angle-script{font-size:13px;color:var(--ink2);line-height:1.6;background:var(--cream);border-radius:8px;padding:12px;margin-top:8px;}
.event-intel-box{background:linear-gradient(135deg,rgba(22,160,133,0.06),rgba(39,174,96,0.06));border:2px solid rgba(22,160,133,0.2);border-radius:16px;padding:20px;margin-bottom:20px;}
.event-intel-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--teal);margin-bottom:12px;}
.event-intel-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;}
@media(max-width:700px){.event-intel-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:500px){.event-intel-grid{grid-template-columns:1fr;}}
.event-intel-cell{background:white;border-radius:10px;padding:12px;text-align:center;}
.event-intel-cell-num{font-family:'Fraunces',serif;font-size:26px;font-weight:700;color:var(--teal);}
.event-intel-cell-label{font-size:10px;color:var(--ink3);margin-top:2px;}
.pocket-brief{background:linear-gradient(145deg,#1a1a2e 0%,#16213e 50%,#1a1a2e 100%);color:white;border-radius:20px;padding:28px;margin:20px 0;position:relative;overflow:hidden;box-shadow:0 8px 32px rgba(0,0,0,0.2);}
.pocket-brief::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(22,160,133,0.3),transparent);}
.pocket-brief-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:rgba(255,255,255,0.5);margin-bottom:16px;}
.tag-pill{display:inline-block;padding:2px 10px;border-radius:20px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1px;vertical-align:middle;}
.tag-anchor{background:#e8f5e9;color:#2e7d32;}
.tag-insight{background:#fff3e0;color:#e65100;}
.tag-action{background:#e3f2fd;color:#1565c0;}
.conf-pill{display:inline-block;padding:1px 8px;border-radius:12px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;vertical-align:middle;margin-left:6px;}
.conf-verified{background:#e8f5e9;color:#2e7d32;border:1px solid rgba(46,125,50,0.2);}
.conf-inferred{background:#fff8e1;color:#f57f17;border:1px solid rgba(245,127,23,0.2);}
.conf-assumed{background:#fce4ec;color:#c62828;border:1px dashed rgba(198,40,40,0.3);}
.conf-pill::before{margin-right:3px;}
.conf-verified::before{content:'✓';}
.conf-inferred::before{content:'~';}
.conf-assumed::before{content:'?';}
.p6-synthesis{background:linear-gradient(135deg,rgba(142,68,173,0.06),rgba(52,152,219,0.06));border:2px solid rgba(142,68,173,0.2);border-radius:16px;padding:20px 24px;margin-bottom:24px;}
.p6-flag{display:flex;gap:10px;align-items:flex-start;padding:10px 14px;border-radius:10px;margin-bottom:8px;font-size:13px;}
.p6-flag-conflict{background:rgba(231,76,60,0.06);border-left:3px solid var(--accent);}
.p6-flag-gap{background:rgba(241,196,15,0.08);border-left:3px solid var(--gold);}
.p6-flag-synergy{background:rgba(22,160,133,0.06);border-left:3px solid var(--teal);}
.section-missing{opacity:0.4;pointer-events:none;position:relative;}
.section-missing::after{content:'⚠ This section failed to generate — retry by regenerating the brief';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(255,255,255,0.95);padding:12px 20px;border-radius:10px;font-size:12px;font-weight:700;color:var(--accent);white-space:nowrap;z-index:10;border:2px solid var(--accent-light);}
.wow-card{background:linear-gradient(135deg,#fff8e1,#fff3e0);border:2px solid #ffb300;border-radius:14px;padding:16px;margin-bottom:12px;}
.wow-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;color:#ff8f00;margin-bottom:6px;}
/* ── Must-Find People Cards ── */
.mf-card{background:white;border-radius:14px;padding:0;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.06);border:1px solid var(--cream3);transition:all 0.2s;}
.mf-card:hover{box-shadow:0 4px 16px rgba(0,0,0,0.1);transform:translateY(-1px);}
.mf-header{display:flex;align-items:center;gap:10px;padding:14px 16px 10px;border-bottom:1px solid var(--cream2);}
.mf-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-size:15px;font-weight:700;color:white;flex-shrink:0;}
.mf-anchor .mf-avatar{background:linear-gradient(135deg,#2e7d32,#43a047);}
.mf-action .mf-avatar{background:linear-gradient(135deg,#1565c0,#1e88e5);}
.mf-insight .mf-avatar{background:linear-gradient(135deg,#e65100,#f57c00);}
.mf-identity{flex:1;min-width:0;}
.mf-name{font-family:'Fraunces',serif;font-size:15px;font-weight:700;color:var(--ink);line-height:1.2;}
.mf-role{font-size:11px;color:var(--ink3);margin-top:2px;line-height:1.3;}
.mf-badges{display:flex;gap:5px;align-items:center;flex-shrink:0;}
.mf-why{font-size:var(--fs-body);color:var(--ink2);line-height:1.55;padding:10px 16px;}
.mf-hook{padding:10px 16px;font-size:var(--fs-body);font-style:italic;color:var(--teal);line-height:1.5;border-top:1px solid var(--cream2);}
.mf-hook-label{display:inline-block;font-size:8px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:white;background:var(--teal);padding:2px 6px;border-radius:4px;margin-right:6px;font-style:normal;vertical-align:middle;}
.mf-actions{padding:8px 16px 12px;display:flex;justify-content:flex-end;}
.mf-enrich-btn{display:inline-block;padding:4px 12px;border-radius:20px;font-size:11px;font-weight:700;background:linear-gradient(135deg,#e8f5e9,#e3f2fd);color:var(--teal);cursor:pointer;transition:all 0.2s;border:1px solid rgba(22,160,133,0.25);}
.mf-enrich-btn:hover{transform:scale(1.03);box-shadow:0 2px 8px rgba(22,160,133,0.15);}
/* Tag accent stripe */
.mf-anchor{border-top:3px solid #2e7d32;}
.mf-action{border-top:3px solid #1565c0;}
.mf-insight{border-top:3px solid #e65100;}
.insider-tip{background:var(--cream2);border-radius:10px;padding:10px 14px;margin-bottom:8px;font-size:13px;color:var(--ink2);border-left:3px solid var(--gold);}
@media(max-width:700px){.mf-card{border-top-width:2px;}.mf-header{padding:12px 14px 8px;}.mf-why,.mf-hook{padding:8px 14px;}.mf-avatar{width:32px;height:32px;font-size:13px;}}
.pocket-section{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,0.1);}
.pocket-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;}
.pocket-section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--teal);margin-bottom:8px;}
.pocket-item{font-size:13px;color:rgba(255,255,255,0.8);line-height:1.5;padding:4px 0;display:flex;gap:8px;}
.pocket-item::before{content:'→';color:var(--teal);flex-shrink:0;}
.pocket-item.dont::before{content:'✕';color:var(--accent);}
.do-dont-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0;}
@media(max-width:600px){.do-dont-grid{grid-template-columns:1fr;}}
.do-box{background:var(--teal-light);border:2px solid rgba(22,160,133,0.2);border-radius:14px;padding:16px;}
.dont-box{background:var(--accent-light);border:2px solid rgba(231,76,60,0.15);border-radius:14px;padding:16px;}
.do-box h5,.dont-box h5{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;}
.do-box h5{color:var(--teal);}
.dont-box h5{color:var(--accent);}
.do-item,.dont-item{font-size:12px;color:var(--ink2);padding:6px 0;border-bottom:1px solid rgba(0,0,0,0.06);line-height:1.4;display:flex;gap:6px;align-items:flex-start;}
.do-item:last-child,.dont-item:last-child{border-bottom:none;}
.do-item::before{content:'✓';color:var(--teal);font-weight:700;flex-shrink:0;}
.dont-item::before{content:'✗';color:var(--accent);font-weight:700;flex-shrink:0;}
.conversation-starter-card{background:white;border-radius:12px;padding:16px;margin-bottom:10px;border:2px solid var(--cream3);transition:all 0.2s;}
.conversation-starter-card:hover{border-color:var(--teal);}
.cs-context{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--teal);letter-spacing:1px;margin-bottom:6px;}
.cs-line{font-size:14px;font-style:italic;color:var(--ink);line-height:1.5;border-left:3px solid var(--teal);padding-left:10px;}
.cs-why{font-size:11px;color:var(--ink3);margin-top:6px;}

.prep-sit-btn{background:white;border:2px solid var(--cream3);border-radius:12px;padding:12px 14px;cursor:pointer;text-align:left;transition:all 0.2s;display:flex;flex-direction:column;gap:2px;}
.prep-sit-btn:hover{border-color:var(--teal);background:rgba(22,160,133,0.04);}
.prep-sit-active{border-color:var(--teal)!important;background:rgba(22,160,133,0.08)!important;box-shadow:0 0 0 3px rgba(22,160,133,0.15);}
.prep-sit-icon{font-size:20px;line-height:1;margin-bottom:4px;}
.prep-sit-label{font-size:12px;font-weight:700;color:var(--ink);}
.prep-sit-sub{font-size:10px;color:var(--ink4);line-height:1.3;}
@media(max-width:480px){#prep-situation-btns{grid-template-columns:1fr;}}


.atk-section-nav{display:flex;gap:4px;padding:10px 0 6px;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none;}
.atk-section-nav::-webkit-scrollbar{display:none;}
.atk-snav-btn{font-size:11px;font-weight:700;padding:5px 13px;border-radius:20px;border:1.5px solid var(--cream3);cursor:pointer;white-space:nowrap;transition:all 0.2s;background:var(--cream);color:var(--ink3);text-decoration:none;display:inline-block;}
.atk-snav-btn:hover,.atk-snav-btn.snav-active{background:var(--accent);border-color:var(--accent);color:white;}
.start-here-block{background:linear-gradient(135deg,rgba(231,76,60,0.05),rgba(243,156,18,0.05));border:2px solid rgba(231,76,60,0.15);border-radius:16px;padding:20px 24px;margin-bottom:28px;}
.sh-title{font-size:11px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:14px;}
.sh-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
@media(max-width:900px){.sh-steps{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.sh-steps{grid-template-columns:1fr;}}
.sh-step{background:white;border-radius:10px;padding:12px 14px;border-left:3px solid var(--accent);}
.sh-step-num{font-family:'Fraunces',serif;font-size:22px;font-weight:700;color:var(--accent);line-height:1;}
.sh-step-label{font-size:12px;font-weight:700;color:var(--ink);margin:3px 0 2px;}
.sh-step-desc{font-size:11px;color:var(--ink3);line-height:1.4;}
.anchor-stmt{font-family:'Fraunces',serif;font-size:17px;font-weight:700;color:var(--ink);line-height:1.35;padding:14px 18px 14px 20px;background:var(--cream2);border-radius:12px;border-left:5px solid var(--accent);margin:0 0 18px;}
.anchor-stmt.a-gold{border-left-color:var(--gold);}
.anchor-stmt.a-blue{border-left-color:var(--blue);}
.anchor-stmt.a-green{border-left-color:var(--green);}
.anchor-stmt.a-purple{border-left-color:var(--purple);}
.action-next{background:linear-gradient(135deg,rgba(41,128,185,0.05),rgba(39,174,96,0.05));border:1.5px solid rgba(41,128,185,0.2);border-radius:12px;padding:16px 20px;margin-top:22px;}
.action-next-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--blue);margin-bottom:10px;}
.action-next-item{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--ink2);padding:7px 0;border-bottom:1px solid rgba(41,128,185,0.1);line-height:1.45;}
.action-next-item:last-child{border-bottom:none;padding-bottom:0;}
.an-num{font-weight:700;color:var(--blue);width:18px;flex-shrink:0;font-size:12px;margin-top:1px;}
.coll-section-wrap{margin-bottom:36px;}
.coll-hdr{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:16px 0;border-bottom:2px solid var(--cream3);user-select:none;gap:12px;transition:border-color 0.2s;}
.coll-hdr:hover{border-color:var(--accent);}
.coll-hdr-left{flex:1;}
.coll-hdr-eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:2px;}
.coll-hdr-title{font-family:'Fraunces',serif;font-size:22px;line-height:1.1;margin-bottom:3px;}
.coll-hdr-preview{font-size:11px;color:var(--ink4);font-style:italic;}
.coll-toggle-icon{font-size:22px;color:var(--ink4);transition:transform 0.35s;flex-shrink:0;line-height:1;}
.coll-hdr.ch-open .coll-toggle-icon{transform:rotate(180deg);}
.coll-count-badge{font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;background:var(--cream2);color:var(--ink3);white-space:nowrap;flex-shrink:0;}
.coll-body{overflow:hidden;transition:max-height 0.55s cubic-bezier(0.4,0,0.2,1);}
.coll-closed{max-height:0;}
.coll-open{max-height:200000px;padding-top:18px;}
.cal-filter-bar{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap;align-items:center;padding:12px 14px;background:var(--cream2);border-radius:10px;}
.cal-fg-label{font-size:10px;font-weight:700;color:var(--ink4);text-transform:uppercase;letter-spacing:1px;margin-right:2px;}
.cal-flt-btn{font-size:11px;font-weight:700;padding:4px 12px;border-radius:20px;border:1.5px solid var(--cream3);background:white;color:var(--ink3);cursor:pointer;transition:all 0.15s;}
.cal-flt-btn:hover{border-color:var(--accent);color:var(--accent);}
.cal-flt-btn.cal-active{background:var(--accent);border-color:var(--accent);color:white;}
.atk-cal-hidden{display:none!important;}
.section-summary-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px;}
.ssb-chip{display:flex;align-items:center;gap:4px;background:white;border:1.5px solid var(--cream3);border-radius:20px;padding:5px 14px;font-size:11px;font-weight:700;color:var(--ink2);}
.ssb-val{font-family:'Fraunces',serif;font-size:16px;font-weight:700;line-height:1;margin-right:2px;}
.belief-vuln-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
@media(max-width:750px){.belief-vuln-grid{grid-template-columns:1fr;}}
.belief-vuln-grid .vuln-card{margin-bottom:0;}
.gap-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
@media(max-width:700px){.gap-grid-2{grid-template-columns:1fr;}}
.gap-grid-2 .gap-card{margin-bottom:0;}

/* ── Desktop breakpoints ── */
@media(min-width:900px){
  .prep-card{padding:28px;border-radius:18px;}
  .prep-card h2{font-size:22px;}
  .prep-card h3{font-size:16px;}
  .persona-grid{gap:18px;}
  .powerline-card{padding:18px;}
  .event-intel-grid{gap:16px;}
  .sh-steps{gap:16px;}
}
@media(min-width:1024px){
  .prep-card{padding:32px;border-radius:20px;}
  .prep-card h2{font-size:24px;}
  .persona-grid{gap:20px;}
  .powerline-card{padding:20px;}
  .powerline-grid-2{gap:18px;}
  .do-dont-grid{gap:18px;}
  .event-intel-grid{gap:18px;}
  .sh-steps{gap:18px;}
  .mf-card .mf-header{padding:16px 18px 12px;}.mf-card .mf-why,.mf-card .mf-hook{padding:12px 18px;}
}
@media(min-width:1440px){
  .prep-card{padding:36px;}
  .prep-card h2{font-size:26px;}
  .persona-grid{gap:24px;}
  .powerline-card{padding:24px;}
  .powerline-grid-2{gap:22px;}
  .event-intel-grid{gap:22px;}
  .sh-steps{gap:22px;}
  .mf-card .mf-header{padding:18px 22px 14px;}.mf-card .mf-why,.mf-card .mf-hook{padding:14px 22px;}
}



/* ═══ APPEARANCE PREP CARDS ═══ */
.prep-section{background:white;border:2px solid var(--cream3);border-radius:20px;padding:28px;margin:20px 0;position:relative;overflow:hidden;}
.prep-section::before{content:'';position:absolute;bottom:-30%;right:-10%;width:200px;height:200px;background:radial-gradient(circle,rgba(243,156,18,0.06) 0%,transparent 70%);border-radius:50%;}
.prep-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));gap:16px;margin-top:16px;}
.appear-prep-card{background:var(--cream);border:1px solid var(--cream3);border-radius:14px;padding:0;overflow:hidden;transition:all 0.2s;position:relative;}
.appear-prep-card:hover{border-color:var(--blue);box-shadow:0 4px 16px rgba(0,0,0,0.06);}
.appear-prep-card .prep-card-header{background:linear-gradient(135deg,var(--ink) 0%,#2d2d5e 100%);color:white;padding:16px 18px;position:relative;}
.appear-prep-card .prep-card-header h4{font-family:'Fraunces',serif;font-size:15px;margin-bottom:2px;}
.appear-prep-card .prep-card-header .prep-meta{font-size:10px;color:rgba(255,255,255,0.5);display:flex;gap:8px;align-items:center;}
.appear-prep-card .prep-card-header .prep-format{background:rgba(255,255,255,0.15);padding:2px 8px;border-radius:10px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;}
.appear-prep-card .prep-card-body{padding:16px 18px;}
.prep-row{display:flex;gap:10px;margin-bottom:10px;align-items:flex-start;}
.prep-icon{font-size:16px;flex-shrink:0;width:22px;text-align:center;}
.prep-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--ink4);margin-bottom:2px;}
.prep-value{font-size:12px;color:var(--ink);line-height:1.4;}
.prep-beliefs{display:flex;gap:4px;flex-wrap:wrap;}
.prep-belief-tag{font-size:10px;padding:3px 8px;border-radius:6px;font-weight:600;display:inline-flex;align-items:center;gap:3px;}
.prep-belief-lead{background:var(--green-light);color:var(--green);}
.prep-belief-avoid{background:var(--accent-light);color:var(--accent);}
.prep-quote{background:white;border:1px solid var(--cream3);border-radius:8px;padding:10px 12px;font-style:italic;font-size:12px;color:var(--ink2);border-left:3px solid var(--gold);margin:6px 0;}
.prep-donts{display:flex;gap:4px;flex-wrap:wrap;}
.prep-dont{font-size:10px;background:var(--accent-light);color:var(--accent);padding:2px 8px;border-radius:4px;}
.prep-tip{background:var(--blue-light);border-radius:8px;padding:10px 12px;margin-top:8px;}
.prep-tip p{font-size:11px;color:var(--blue);line-height:1.4;}


/* ═══ INVESTOR NARRATIVE ═══ */
.investor-section{background:white;border:2px solid var(--cream3);border-radius:20px;padding:28px;margin:20px 0;position:relative;overflow:hidden;}
.investor-section::before{content:'';position:absolute;top:-40%;right:-15%;width:250px;height:250px;background:radial-gradient(circle,rgba(39,174,96,0.05) 0%,transparent 70%);border-radius:50%;}
.investor-thesis{font-family:'Fraunces',serif;font-size:16px;color:var(--ink);text-align:center;padding:16px;background:var(--cream);border-radius:12px;margin-bottom:16px;border-left:4px solid var(--gold);}
.investor-slides{display:grid;grid-template-columns:1fr;gap:8px;}
.investor-slide{background:var(--cream);border:1px solid var(--cream3);border-radius:12px;padding:16px 18px;display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:start;transition:all 0.2s;}
.investor-slide:hover{border-color:var(--blue);}
.slide-num{font-family:'Fraunces',serif;font-size:28px;font-weight:700;color:var(--cream3);text-align:center;line-height:1;}
.slide-type{font-size:8px;text-transform:uppercase;letter-spacing:1px;font-weight:700;padding:2px 6px;border-radius:4px;display:inline-block;margin-bottom:6px;}
.stype-problem{background:var(--accent-light);color:var(--accent);}
.stype-solution{background:var(--green-light);color:var(--green);}
.stype-market{background:var(--blue-light);color:var(--blue);}
.stype-traction{background:var(--gold-light);color:#b7950b;}
.stype-moat{background:var(--purple-light);color:var(--purple);}
.stype-team{background:var(--teal-light);color:var(--teal);}
.stype-vision{background:var(--blue-light);color:var(--blue);}
.stype-ask{background:var(--green-light);color:var(--green);}
.slide-headline{font-family:'Fraunces',serif;font-size:14px;margin-bottom:4px;}
.slide-body{font-size:12px;color:var(--ink2);line-height:1.5;margin-bottom:6px;}
.slide-data{font-size:11px;color:var(--gold);font-weight:700;margin-bottom:4px;}
.slide-note{font-size:10px;color:var(--ink4);font-style:italic;border-top:1px solid var(--cream3);padding-top:6px;}
.slide-beliefs{font-size:9px;color:var(--blue);margin-top:4px;}
.prep-goal-btn{padding:8px 14px;border-radius:20px;border:2px solid var(--cream3);background:var(--cream);color:var(--ink3);font-size:12px;font-weight:700;cursor:pointer;transition:all 0.2s;font-family:'DM Sans',sans-serif;}
.prep-goal-btn:hover{border-color:var(--teal);color:var(--teal);}
.prep-goal-btn.prep-goal-active{border-color:var(--teal);background:var(--teal-light);color:var(--teal);}
#attack-steps .pipeline-step{border-left:3px solid transparent;}
#prep-steps{display:none;}
#prep-steps .step-icon.running{background:var(--teal)!important;}
#prep-anim-svg svg{width:100%;min-height:340px;display:block;}
#prep-anim-svg{min-height:340px;}

/* ── Prep lookup tabs ── */
.prep-section-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;color:var(--ink3);margin-bottom:8px;}
.prep-lookup-tabs{display:flex;gap:0;border-radius:10px;overflow:hidden;border:2px solid var(--cream3);margin-bottom:10px;}
.prep-ltab{flex:1;padding:9px 6px;text-align:center;font-size:11px;font-weight:700;cursor:pointer;background:var(--cream);color:var(--ink3);border:none;border-right:1px solid var(--cream3);transition:all 0.2s;font-family:'DM Sans',sans-serif;white-space:nowrap;}
.prep-ltab:last-child{border-right:none;}
.prep-ltab:hover{background:var(--cream2);}
.prep-ltab.prep-ltab-active{background:var(--teal);color:white;}
.prep-lpanel{display:none;}
.prep-lpanel.prep-lpanel-active{display:block;}

/* ── Scanning animation ── */
.prep-lookup-scanning{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--ink2);font-weight:600;margin-bottom:8px;}
.prep-scan-dot{width:10px;height:10px;border-radius:50%;background:var(--teal);animation:prepPulse 1.2s infinite;}
@keyframes prepPulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:0.4;transform:scale(0.8);}}
.prep-scan-bar-wrap{height:4px;background:var(--cream2);border-radius:2px;overflow:hidden;}
.prep-scan-bar{height:100%;background:linear-gradient(90deg,var(--teal),var(--green));border-radius:2px;transition:width 0.6s ease;width:0%;}

/* ── Confidence card ── */
.conf-card{border-radius:16px;padding:20px;border:2.5px solid var(--teal);background:white;}
.conf-card.conf-verify{border-color:var(--gold);}
.conf-card-header{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--cream3);}
.conf-card-icon{font-size:22px;}
.conf-card-title{font-family:'Fraunces',serif;font-size:16px;flex:1;}
.conf-overall-badge{font-size:11px;font-weight:700;padding:4px 12px;border-radius:20px;}
.conf-overall-high{background:var(--teal-light);color:var(--teal);}
.conf-overall-low{background:var(--gold-light);color:#9a6e00;}
.conf-field-row{display:flex;align-items:flex-start;gap:10px;padding:8px 0;border-bottom:1px solid var(--cream3);min-height:36px;}
.conf-field-row:last-child{border-bottom:none;}
.conf-field-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;color:var(--ink3);width:110px;flex-shrink:0;padding-top:3px;}
.conf-field-value{flex:1;font-size:13px;color:var(--ink);line-height:1.4;}
.conf-field-value.conf-editable-val{cursor:text;border-bottom:1px dashed var(--cream3);padding-bottom:2px;}
.conf-field-value.conf-editable-val:focus{outline:none;border-bottom:1px solid var(--teal);}
.conf-pct{font-size:10px;font-weight:700;padding:2px 8px;border-radius:10px;flex-shrink:0;white-space:nowrap;}
.conf-pct-high{background:var(--teal-light);color:var(--teal);}
.conf-pct-med{background:var(--gold-light);color:#9a6e00;}
.conf-pct-low{background:var(--accent-light);color:var(--accent);}
.conf-edit-btn{font-size:10px;background:none;border:1px solid var(--cream3);border-radius:6px;padding:2px 8px;cursor:pointer;color:var(--ink3);flex-shrink:0;transition:all 0.15s;font-family:'DM Sans',sans-serif;}
.conf-edit-btn:hover{border-color:var(--teal);color:var(--teal);}
.conf-unknown-tag{font-size:10px;font-style:italic;color:var(--ink4);}
.conf-field-input{width:100%;border:1.5px solid var(--teal);border-radius:6px;padding:5px 8px;font-size:12px;font-family:'DM Sans',sans-serif;background:var(--teal-light);}
.conf-field-input:focus{outline:none;}

/* auto-run countdown */
.conf-autorun{display:flex;align-items:center;gap:10px;background:var(--teal-light);border:1.5px solid rgba(22,160,133,0.3);border-radius:10px;padding:12px 14px;margin-top:14px;}
.conf-autorun-text{flex:1;font-size:12px;color:var(--teal);font-weight:600;}
.conf-autorun-cancel{font-size:11px;background:none;border:1px solid rgba(22,160,133,0.4);color:var(--teal);border-radius:6px;padding:4px 10px;cursor:pointer;font-family:'DM Sans',sans-serif;}
.conf-autorun-bar-wrap{height:3px;background:rgba(22,160,133,0.2);border-radius:2px;margin-top:6px;overflow:hidden;}
.conf-autorun-bar{height:100%;background:var(--teal);border-radius:2px;transition:width 3s linear;width:100%;}
.conf-verify-banner{background:var(--gold-light);border-left:3px solid var(--gold);border-radius:0 8px 8px 0;padding:10px 12px;font-size:12px;color:var(--ink2);margin-bottom:12px;line-height:1.5;}

/* ── Button spinner ── */
.btn-spin{display:inline-block;width:16px;height:16px;border:2.5px solid rgba(255,255,255,0.3);border-top-color:white;border-radius:50%;animation:btnSpin 0.7s linear infinite;flex-shrink:0;}
@keyframes btnSpin{to{transform:rotate(360deg);}}

/* ── Desktop breakpoints ── */
@media(min-width:900px){
  .attack-card{padding:28px;border-radius:18px;}
  .attack-card h2{font-size:22px;}
  .ghost-grid{gap:16px;}
  .strike-grid{gap:16px;}
  .reg-overview-grid{gap:16px;}
  .aud-vuln-grid{gap:16px;}
  .battle-card-content{padding:20px;}
  .mirror-grid{gap:16px;}
}
@media(min-width:1024px){
  .attack-card{padding:32px;border-radius:20px;}
  .attack-card h2{font-size:24px;}
  .ghost-grid{gap:18px;}
  .strike-grid{gap:18px;}
  .aud-vuln-grid{gap:18px;}
  .battle-card-content{padding:24px;}
  .mirror-grid{gap:18px;}
  .align-grid{gap:18px;}
  .reg-row{padding:20px;}
}
@media(min-width:1440px){
  .attack-card{padding:36px;}
  .attack-card h2{font-size:26px;}
  .ghost-grid{gap:22px;}
  .strike-grid{gap:22px;}
  .aud-vuln-grid{gap:22px;}
  .battle-card-content{padding:28px;}
  .mirror-grid{gap:22px;}
  .align-grid{gap:22px;}
  .reg-row{padding:24px;}
}



/* ═══ QUICK-NAV BAR ═══ */
.qnav-bar {
  position: sticky;
  top: 0;
  z-index: 100;
  display: flex;
  gap: 4px;
  padding: 8px 12px;
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--cream3);
  overflow-x: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.qnav-bar::-webkit-scrollbar { display: none; }
.qnav-item {
  flex-shrink: 0;
  padding: 5px 10px;
  font-size: 11px;
  font-weight: 600;
  color: var(--ink3);
  background: var(--cream2);
  border-radius: 20px;
  text-decoration: none;
  white-space: nowrap;
  transition: all 0.25s var(--spring);
}
.qnav-item:hover {
  background: var(--accent);
  color: white;
  transform: translateY(-2px) scale(1.05);
}


/* ═══ MOBILE EXPERIENCE — PREP REPORT ═══ */
@media(max-width:768px){
  /* Quick-nav — smaller on mobile */
  .qnav-bar{padding:6px 8px;gap:3px;}
  .qnav-item{padding:4px 8px;font-size:10px;}
  /* Hero section — stack stats horizontally scrollable */
  .prep-hero{padding:16px!important;}
  .prep-hero h1{font-size:22px!important;}
  .hero-stats{display:flex!important;overflow-x:auto;gap:12px;padding-bottom:8px;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;}
  .hero-stat{flex:0 0 auto;min-width:70px;scroll-snap-align:start;}
  
  /* All 2-column grids to 1 column */
  .section-r [style*="grid-template-columns:1fr 1fr"],
  .section-r [style*="grid-template-columns: 1fr 1fr"]{grid-template-columns:1fr!important;}
  
  /* Connection graph — hide behind button on mobile */
  .rel-graph-wrap{display:none;}
  .rel-graph-mobile-toggle{display:block!important;}
  
  /* Bigger tap targets for collapse buttons */
  .section-collapse-btn{min-height:44px;min-width:44px;font-size:14px!important;padding:8px 16px!important;}
  .collapse-toggle{min-height:44px;padding:10px 16px!important;font-size:13px!important;}
  
  /* Cards breathe more on mobile */
  .prep-card,.persona-card,.must-find-card,.resistance-card,.powerline-card,.conversation-starter-card,.wow-card,.pitch-angle-card{padding:14px!important;margin-bottom:10px;}
  
  /* P6 synthesis responsive */
  .p6-synthesis{padding:14px 16px!important;}
  .p6-flag{flex-direction:column;gap:6px;}
  
  /* Pocket brief responsive */
  .pocket-brief{padding:16px!important;border-radius:14px!important;}
  .pocket-brief-title{font-size:12px!important;}
  
  /* Target profile grid */
  .section-r [style*="grid-template-columns:${''}"]{grid-template-columns:1fr!important;}
  
  /* Tag pills wrap better */
  .tag-pill,.conf-pill{font-size:9px!important;padding:1px 7px!important;}
  
  /* Section titles */
  .section-title{font-size:18px!important;}
  .section-eyebrow{font-size:10px!important;}
  
  /* Persona grid — always 1 col on mobile */
  .persona-grid{grid-template-columns:1fr!important;}
  
  /* Do/Don't grid */
  .do-dont-grid{grid-template-columns:1fr!important;}
}

@media(max-width:480px){
  .prep-hero h1{font-size:18px!important;}
  .hero-stat-num{font-size:22px!important;}
  .hero-stat-label{font-size:9px!important;}
  .powerline-text{font-size:14px!important;}
  .section-r{padding:8px 0!important;}
  
  /* Event intel stat grid — single column */
  .event-intel-grid{grid-template-columns:1fr!important;}
}

/* Desktop — show graph, hide mobile toggle */
@media(min-width:769px){
  .rel-graph-mobile-toggle{display:none!important;}
}

/* ── Desktop breakpoints ── */
@media(min-width:1024px){
  .qnav-bar{padding:8px 16px;gap:6px;}
  .qnav-item{padding:6px 14px;font-size:12px;}
}
@media(min-width:1440px){
  .qnav-bar{padding:10px 20px;gap:8px;}
  .qnav-item{padding:7px 16px;font-size:13px;}
}


/* Attack & Analyze Mode Styles */

/* ═══ REGULATORY SCAN STYLES ═══ */
.reg-risk-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 12px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;}
.reg-risk-high{background:rgba(231,76,60,0.12);color:var(--accent);}
.reg-risk-med{background:rgba(243,156,18,0.12);color:#9a6e00;}
.reg-risk-low{background:rgba(39,174,96,0.12);color:var(--green);}
.reg-exposure-card{background:white;border-radius:14px;padding:20px;margin-bottom:14px;box-shadow:0 1px 4px rgba(0,0,0,0.06);border-left:5px solid var(--accent);position:relative;}
.reg-exposure-card.sev-high{border-left-color:var(--accent);}
.reg-exposure-card.sev-med{border-left-color:var(--gold);}
.reg-exposure-card.sev-low{border-left-color:var(--green);}
.reg-claim-quote{background:rgba(231,76,60,0.05);border:1px solid rgba(231,76,60,0.15);border-radius:8px;padding:10px 14px;font-size:13px;font-style:italic;color:var(--ink2);margin:10px 0;border-left:3px solid var(--accent);}
.reg-reg-tag{display:inline-flex;align-items:center;gap:4px;background:var(--cream2);border:1px solid var(--cream3);border-radius:6px;padding:3px 10px;font-size:11px;font-weight:700;color:var(--ink2);margin:0 4px 4px 0;}
.reg-jur-tag{display:inline-flex;align-items:center;gap:4px;background:var(--blue-light);border-radius:6px;padding:3px 10px;font-size:11px;font-weight:600;color:var(--blue);margin:0 4px 4px 0;}
.reg-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;}
@media(max-width:700px){.reg-row{grid-template-columns:1fr;}}
.reg-cell{border-radius:10px;padding:12px 14px;}
.reg-cell-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:6px;}
.reg-cell-body{font-size:13px;color:var(--ink2);line-height:1.5;}
.reg-q-box{background:linear-gradient(135deg,rgba(41,128,185,0.06),rgba(39,174,96,0.06));border:1.5px solid rgba(41,128,185,0.2);border-radius:10px;padding:12px 14px;margin-top:10px;}
.reg-q-label{font-size:10px;font-weight:700;text-transform:uppercase;color:var(--blue);margin-bottom:5px;letter-spacing:1px;}
.reg-q-text{font-size:13px;color:var(--ink);font-weight:600;line-height:1.45;}
.reg-watch{font-size:11px;color:var(--ink4);margin-top:8px;font-style:italic;}
.reg-overview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px;}
@media(max-width:700px){.reg-overview-grid{grid-template-columns:1fr;}}
.reg-overview-card{background:white;border-radius:12px;padding:16px;border-top:3px solid var(--cream3);text-align:center;}
.reg-overview-num{font-family:'Fraunces',serif;font-size:32px;font-weight:700;line-height:1;}
.reg-overview-label{font-size:11px;color:var(--ink4);text-transform:uppercase;letter-spacing:0.5px;margin-top:3px;}
.reg-frameworks-bar{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 18px;}
.reg-cat-filter-bar{display:flex;gap:6px;margin-bottom:16px;flex-wrap:wrap;padding:10px 14px;background:var(--cream2);border-radius:10px;}
.reg-flt-btn{font-size:11px;font-weight:700;padding:4px 12px;border-radius:20px;border:1.5px solid var(--cream3);background:white;color:var(--ink3);cursor:pointer;transition:all 0.15s;}
.reg-flt-btn:hover{border-color:var(--accent);color:var(--accent);}
.reg-flt-btn.reg-active{background:var(--accent);border-color:var(--accent);color:white;}
.reg-item-hidden{display:none!important;}
.reg-redflag-list{display:flex;flex-direction:column;gap:6px;margin:12px 0;}
.reg-redflag-item{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--ink2);padding:8px 12px;background:rgba(231,76,60,0.05);border-radius:8px;border-left:3px solid var(--accent);}
.reg-disclaimer{font-size:11px;color:var(--ink4);font-style:italic;margin-top:20px;padding:10px 14px;background:var(--cream2);border-radius:8px;border-left:3px solid var(--cream3);}


/* ═══ ATTACK MODE REPORT STYLES ═══ */
.attack-hero{text-align:center;padding:48px 0 32px;border-bottom:3px solid var(--accent);margin-bottom:40px;}
.attack-hero h1{font-size:clamp(24px,3.5vw,38px);line-height:1.2;margin-bottom:8px;}
.attack-hero .hero-sub{font-size:14px;color:var(--ink3);max-width:600px;margin:0 auto;}
.attack-badge{display:inline-flex;align-items:center;gap:6px;background:var(--accent);color:white;padding:4px 14px;border-radius:20px;font-size:11px;font-weight:700;margin-bottom:16px;}
.vuln-card{background:white;border-radius:14px;padding:20px;margin-bottom:14px;box-shadow:0 1px 4px rgba(0,0,0,0.06);border-left:5px solid var(--accent);}
.vuln-score{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:700;margin-bottom:8px;}
.vuln-score-high{background:#fdecea;color:var(--accent);}
.vuln-score-med{background:var(--gold-light);color:#b7950b;}
.vuln-score-low{background:var(--green-light);color:var(--green);}
.killshot-card{background:white;border-radius:14px;padding:20px;margin-bottom:14px;box-shadow:0 2px 8px rgba(0,0,0,0.08);border-left:5px solid var(--ink);}
.killshot-they-say{background:var(--accent-light);border-radius:10px;padding:12px 16px;font-size:13px;color:var(--ink2);margin-bottom:10px;border-left:3px solid var(--accent);}
.killshot-you-say{background:var(--green-light);border-radius:10px;padding:12px 16px;font-size:13px;color:var(--ink2);margin-bottom:10px;border-left:3px solid var(--green);}
.killshot-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px;}
.killshot-label.bad{color:var(--accent);}
.killshot-label.good{color:var(--green);}
.gap-card{background:white;border-radius:14px;padding:20px;margin-bottom:14px;box-shadow:0 1px 4px rgba(0,0,0,0.06);border-left:5px solid var(--gold);}
.gap-opp-score{display:inline-block;font-size:22px;font-weight:700;font-family:'Fraunces',serif;color:var(--gold);}
.battle-card{background:white;border-radius:16px;padding:24px;margin-bottom:16px;box-shadow:0 2px 10px rgba(0,0,0,0.08);border:2px solid var(--cream3);}
.battle-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px;padding-bottom:14px;border-bottom:2px solid var(--cream3);}
.battle-card-header h4{font-family:'Fraunces',serif;font-size:15px;flex:1;}
.battle-card-tag{background:var(--ink);color:white;font-size:9px;font-weight:700;padding:3px 10px;border-radius:20px;text-transform:uppercase;white-space:nowrap;}
.battle-reframe{background:var(--cream2);border-radius:10px;padding:14px;margin-bottom:10px;}
.battle-reframe-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--ink3);margin-bottom:4px;}
.battle-reframe-text{font-size:13px;color:var(--ink);font-weight:600;line-height:1.5;}
.battle-proof{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px;}
.battle-proof-item{font-size:11px;background:var(--blue-light);color:var(--blue);padding:3px 10px;border-radius:6px;font-weight:600;}
.aud-vuln-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px;}
@media(max-width:600px){.aud-vuln-grid{grid-template-columns:1fr;}}
.aud-seg-card{border-radius:14px;padding:16px;border:2px solid var(--cream3);}
.aud-seg-score-bar{height:8px;border-radius:4px;margin:8px 0;overflow:hidden;background:var(--cream2);}
.aud-seg-score-fill{height:100%;border-radius:4px;transition:width 1s ease;}
.crisis-vuln-card{background:white;border-radius:14px;padding:20px;margin-bottom:14px;border-left:5px solid var(--purple);box-shadow:0 1px 4px rgba(0,0,0,0.06);}
.counter-cal-row{display:flex;gap:12px;margin-bottom:10px;align-items:flex-start;}
.counter-cal-week{width:60px;font-size:11px;font-weight:700;color:var(--accent);flex-shrink:0;padding-top:4px;}
.counter-cal-items{flex:1;display:flex;gap:8px;flex-wrap:wrap;}
.counter-cal-item{background:white;border-radius:8px;padding:8px 12px;font-size:11px;box-shadow:0 1px 3px rgba(0,0,0,0.06);border-left:3px solid var(--accent);}

/* ── Expert Council & Intel Split ── */
.our-intel-wrap{background:linear-gradient(135deg,rgba(39,174,96,0.04),rgba(22,160,133,0.04));border:2px solid rgba(39,174,96,0.18);border-radius:14px;margin-bottom:10px;overflow:hidden;transition:border-color 0.3s;}
.our-intel-wrap.has-intel{border-color:rgba(39,174,96,0.5);box-shadow:0 0 0 3px rgba(39,174,96,0.07);}
.their-intel-wrap{background:linear-gradient(135deg,rgba(231,76,60,0.04),rgba(142,68,173,0.04));border:2px solid rgba(231,76,60,0.18);border-radius:14px;overflow:hidden;}
.intel-section-hdr{display:flex;align-items:center;gap:10px;padding:13px 16px;cursor:pointer;user-select:none;border-bottom:2px solid transparent;transition:border-color 0.2s;}
.our-intel-wrap .intel-section-hdr:hover{background:rgba(39,174,96,0.04);}
.intel-hdr-title{font-size:13px;font-weight:700;color:var(--ink);}
.intel-hdr-sub{font-size:10px;color:var(--ink4);margin-left:auto;}
.intel-opt-badge{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;padding:2px 8px;border-radius:8px;background:rgba(39,174,96,0.1);color:var(--green);white-space:nowrap;}
.intel-council-badge{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;padding:2px 8px;border-radius:8px;background:rgba(39,174,96,0.15);color:var(--green);border:1px solid rgba(39,174,96,0.3);display:none;}
.our-intel-wrap.has-intel .intel-council-badge{display:inline-flex;align-items:center;gap:4px;}
.our-intel-wrap.has-intel .intel-opt-badge{display:none;}
.intel-chevron{font-size:10px;color:var(--ink4);margin-left:4px;transition:transform 0.2s;}
.intel-section-body{padding:0 16px 16px;}
.intel-vs{text-align:center;padding:6px 0;font-size:10px;font-weight:900;letter-spacing:3px;color:var(--ink4);position:relative;}
.intel-vs::before,.intel-vs::after{content:'';position:absolute;top:50%;width:calc(50% - 20px);height:1px;background:var(--cream3);}
.intel-vs::before{left:0;}.intel-vs::after{right:0;}
#council-banner{background:linear-gradient(135deg,#0d3b24,#1a5c3a);border-radius:12px;padding:11px 16px;margin-bottom:16px;display:none;align-items:flex-start;gap:12px;}
#council-banner.active{display:flex;}
.council-banner-icon{font-size:20px;flex-shrink:0;margin-top:1px;}
.council-banner-title{font-size:11px;font-weight:700;color:#4ade80;text-transform:uppercase;letter-spacing:1px;margin-bottom:3px;}
.council-banner-body{font-size:11px;color:rgba(255,255,255,0.65);line-height:1.5;}
/* Self-check badges */
.sc-badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;padding:3px 9px;border-radius:8px;margin-bottom:6px;}
.sc-green{background:rgba(39,174,96,0.1);color:var(--green);border:1px solid rgba(39,174,96,0.25);}
.sc-yellow{background:rgba(241,196,15,0.1);color:#a07d00;border:1px solid rgba(241,196,15,0.3);}
.sc-red{background:rgba(231,76,60,0.1);color:var(--accent);border:1px solid rgba(231,76,60,0.25);}
.sc-box-green{background:rgba(39,174,96,0.06);border-left:3px solid var(--green);border-radius:0 8px 8px 0;padding:7px 12px;font-size:11px;color:var(--ink2);margin-top:8px;line-height:1.5;}
.sc-box-yellow{background:rgba(241,196,15,0.06);border-left:3px solid #f1c40f;border-radius:0 8px 8px 0;padding:7px 12px;font-size:11px;color:var(--ink2);margin-top:8px;line-height:1.5;}
.sc-box-red{background:rgba(231,76,60,0.06);border-left:3px solid var(--accent);border-radius:0 8px 8px 0;padding:7px 12px;font-size:11px;color:var(--ink2);margin-top:8px;line-height:1.5;}
.pivot-to-us-box{background:linear-gradient(135deg,rgba(39,174,96,0.06),rgba(22,160,133,0.06));border:1.5px solid rgba(39,174,96,0.25);border-radius:10px;padding:10px 14px;margin-top:10px;font-size:12px;color:var(--ink2);line-height:1.6;}
.pivot-to-us-box .pivot-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--green);margin-bottom:5px;}
.proof-anchor-box{background:rgba(39,174,96,0.06);border-radius:8px;padding:7px 12px;margin-top:6px;font-size:11px;color:var(--ink3);}
.proof-anchor-box strong{color:var(--green);}
.sc-summary{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:11px;color:var(--ink3);margin-top:6px;}
.sc-dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:3px;}
.sc-dot-g{background:var(--green);}.sc-dot-y{background:#f1c40f;}.sc-dot-r{background:var(--accent);}
.council-active-tag{display:inline-flex;align-items:center;gap:5px;background:rgba(39,174,96,0.1);border:1px solid rgba(39,174,96,0.25);border-radius:10px;padding:2px 10px;font-size:9px;font-weight:700;color:var(--green);text-transform:uppercase;letter-spacing:0.5px;margin-left:8px;}


/* ═══ ATTACK PROGRESS STEPS ═══ */
#attack-steps{display:none;}
#attack-steps .pipeline-step{border-left:3px solid transparent;}
#attack-steps .step-icon.running{background:var(--accent)!important;}
.disclaimer{font-size:11px;color:var(--ink4);font-style:italic;padding:8px 12px;background:var(--cream2);border-radius:8px;margin-bottom:16px;}


/* ═══ PITCH SIMULATOR ═══ */
.sim-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.7);backdrop-filter:blur(6px);z-index:1000;align-items:center;justify-content:center;padding:20px;}
.sim-overlay.open{display:flex;}
.sim-panel{background:white;border-radius:20px;max-width:600px;width:100%;height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,0.4);}
.sim-header{padding:16px 20px;border-bottom:1px solid var(--cream3);display:flex;align-items:center;justify-content:space-between;}
.sim-header h3{font-family:'Fraunces',serif;font-size:18px;margin:0;}
.sim-close{background:none;border:none;font-size:20px;cursor:pointer;color:var(--ink3);}
.sim-journalist{display:flex;align-items:center;gap:10px;padding:12px 20px;background:var(--cream);border-bottom:1px solid var(--cream3);}
.sim-avatar{width:36px;height:36px;border-radius:50%;background:var(--blue);color:white;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;}
.sim-jname{font-size:13px;font-weight:700;}
.sim-joutlet{font-size:11px;color:var(--ink3);}
.sim-messages{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:10px;}
.sim-msg{max-width:85%;padding:10px 14px;border-radius:14px;font-size:13px;line-height:1.5;}
.sim-msg.journalist{background:var(--cream);align-self:flex-start;border-bottom-left-radius:4px;}
.sim-msg.user{background:var(--blue);color:white;align-self:flex-end;border-bottom-right-radius:4px;}
.sim-msg.feedback{background:var(--green-light);border:1px solid var(--green);align-self:stretch;font-size:12px;border-radius:12px;}
.sim-msg.feedback h4{color:var(--green);font-size:13px;margin-bottom:4px;}
.sim-input{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--cream3);}
.sim-input input{flex:1;padding:10px 14px;border:2px solid var(--cream3);border-radius:10px;font-size:13px;font-family:'DM Sans',sans-serif;}
.sim-input input:focus{outline:none;border-color:var(--blue);}
.sim-input button{padding:10px 20px;background:var(--ink);color:white;border:none;border-radius:10px;font-weight:700;font-size:13px;cursor:pointer;}
.sim-typing{font-size:12px;color:var(--ink4);font-style:italic;padding:4px 14px;}
.pitch-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;background:var(--purple-light);color:var(--purple);border:none;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer;margin-top:8px;transition:all 0.2s;}
.pitch-btn:hover{background:var(--purple);color:white;}


/* ═══ CRISIS WAR ROOM ═══ */
.crisis-section{background:white;border:2px solid var(--cream3);border-radius:20px;padding:28px;margin:20px 0;position:relative;overflow:hidden;}
.crisis-section::before{content:'';position:absolute;top:-40%;right:-15%;width:250px;height:250px;background:radial-gradient(circle,rgba(41,128,185,0.06) 0%,transparent 70%);border-radius:50%;}
.crisis-section .section-eyebrow{color:var(--gold);}
.crisis-section .section-title{color:var(--ink);}
.crisis-card{background:var(--cream);border:1px solid var(--cream3);border-radius:14px;padding:20px;margin-bottom:16px;position:relative;overflow:hidden;}
.crisis-card::before{content:'';position:absolute;top:0;left:0;width:4px;height:100%;border-radius:4px 0 0 4px;}
.crisis-card.sev-high::before{background:var(--accent);}
.crisis-card.sev-med::before{background:var(--gold);}
.crisis-card.sev-low::before{background:var(--green);}
.crisis-belief-title{color:var(--ink);font-family:'Fraunces',serif;font-size:16px;margin-bottom:12px;}
.crisis-headline{background:var(--accent-light);border:1px solid rgba(231,76,60,0.15);border-radius:8px;padding:10px 14px;margin-bottom:10px;}
.crisis-headline h5{color:var(--accent);font-size:11px;margin-bottom:4px;}
.crisis-headline p{color:var(--ink2);font-size:13px;font-style:italic;}
.crisis-backlash{margin-bottom:10px;}
.crisis-backlash p{color:var(--ink3);font-size:11px;padding:6px 10px;background:var(--cream2);border-radius:8px;margin-bottom:4px;border-left:2px solid var(--gold);}
.crisis-response{background:var(--green-light);border:1px solid rgba(39,174,96,0.15);border-radius:8px;padding:12px;margin-bottom:8px;}
.crisis-response h6{color:var(--green);font-size:11px;margin-bottom:4px;}
.crisis-response p{color:var(--ink2);font-size:12px;line-height:1.5;}
.crisis-timeline{display:flex;gap:8px;margin-top:8px;}
.crisis-tl-item{flex:1;background:var(--cream2);border:1px solid var(--cream3);border-radius:8px;padding:8px;text-align:center;}
.crisis-tl-item h6{color:var(--blue);font-size:10px;margin-bottom:2px;}
.crisis-tl-item p{color:var(--ink3);font-size:10px;line-height:1.3;}
.severity-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;padding:3px 10px;border-radius:20px;float:right;}
.sev-badge-high{background:var(--accent-light);color:var(--accent);}
.sev-badge-med{background:var(--gold-light);color:#b7950b;}
.sev-badge-low{background:var(--green-light);color:var(--green);}


/* ═══ AUDIT PANEL ═══ */
.audit-panel{background:var(--cream);border:2px solid var(--cream3);border-radius:14px;padding:20px;margin:20px 0;}
.audit-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;}
.audit-header h4{font-size:14px;font-family:'Fraunces',serif;}
.audit-toggle{background:none;border:none;font-size:16px;cursor:pointer;}
.audit-body{display:none;margin-top:14px;}
.audit-body.open{display:block;}
.audit-item{display:flex;align-items:flex-start;gap:8px;padding:8px 0;border-bottom:1px solid var(--cream3);font-size:12px;}
.audit-item:last-child{border-bottom:none;}
.audit-icon{flex-shrink:0;font-size:14px;}
.audit-text{flex:1;color:var(--ink3);line-height:1.4;}
.audit-text strong{color:var(--ink);}


/* ═══ EVIDENCE QUALITY METER ═══ */
.eq-meter{display:flex;align-items:center;gap:12px;padding:16px 20px;background:white;border-radius:12px;border:1px solid var(--cream3);margin-bottom:20px;}
.eq-bar-wrap{flex:1;height:12px;background:var(--cream2);border-radius:6px;overflow:hidden;}
.eq-bar{height:100%;border-radius:6px;transition:width 1s ease;}
.eq-bar.eq-high{background:var(--green);}
.eq-bar.eq-med{background:var(--gold);}
.eq-bar.eq-low{background:var(--accent);}
.eq-label{font-size:13px;font-weight:700;min-width:40px;text-align:right;}
.eq-desc{font-size:11px;color:var(--ink4);min-width:120px;}


/* ═══ NARRATIVE ARC ═══ */
.arc-flow{display:flex;gap:0;align-items:stretch;margin:16px 0;overflow-x:auto;}
.arc-step{flex:1;min-width:140px;padding:14px;text-align:center;position:relative;background:white;border:1px solid var(--cream3);}
.arc-step:first-child{border-radius:12px 0 0 12px;}
.arc-step:last-child{border-radius:0 12px 12px 0;}
.arc-step::after{content:'→';position:absolute;right:-8px;top:50%;transform:translateY(-50%);font-size:16px;color:var(--ink4);z-index:1;}
.arc-step:last-child::after{display:none;}
.arc-step h5{font-size:11px;color:var(--blue);margin-bottom:4px;}
.arc-step p{font-size:10px;color:var(--ink3);line-height:1.3;}
.arc-step .arc-beliefs{font-size:10px;color:var(--ink4);margin-top:4px;}


/* ═══ HERO PLAYING CARDS ═══ */
.hero-cards{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:28px;flex-wrap:wrap;perspective:1200px;}
.play-card{width:160px;height:224px;cursor:pointer;perspective:1200px;transition:width 0.45s cubic-bezier(0.4,0,0.2,1),height 0.45s cubic-bezier(0.4,0,0.2,1),transform 0.3s ease,box-shadow 0.3s ease;border-radius:14px;}
.play-card:hover{transform:translateY(-6px);box-shadow:0 12px 32px rgba(0,0,0,0.12);}
.play-card.flipped{width:220px;height:300px;}
.hero-cards:has(.flipped) .play-card:not(.flipped){width:130px;height:182px;opacity:0.7;}
.play-card-inner{position:relative;width:100%;height:100%;transition:transform 0.7s cubic-bezier(0.4,0,0.2,1);transform-style:preserve-3d;}
.play-card.flipped .play-card-inner{transform:rotateY(180deg);}
.play-card-front,.play-card-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:14px;overflow:hidden;}

/* FRONT — classic playing card */
.play-card-front{background:white;border:2px solid var(--cream3);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px;box-shadow:0 6px 24px rgba(0,0,0,0.1),inset 0 0 0 6px white,inset 0 0 0 7px var(--cream3);}
.pc-corner{position:absolute;display:flex;flex-direction:column;align-items:center;line-height:1;}
.pc-corner-tl{top:10px;left:12px;}
.pc-corner-br{bottom:10px;right:12px;transform:rotate(180deg);}
.pc-corner .pc-rank{font-family:'Fraunces',serif;font-size:16px;font-weight:700;}
.pc-corner .pc-suit{font-size:12px;margin-top:-2px;}
.pc-center{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;}
.pc-center .pc-big-suit{font-size:36px;line-height:1;}
.pc-center .pc-value{font-family:'Fraunces',serif;font-size:32px;font-weight:700;line-height:1;}
.pc-center .pc-label{font-size:9px;color:var(--ink3);text-transform:uppercase;letter-spacing:1.5px;margin-top:4px;}
.pc-hint{position:absolute;bottom:10px;left:0;right:0;text-align:center;font-size:8px;color:var(--ink4);letter-spacing:0.5px;}

/* Card color suits */
.play-card.suit-spade .pc-rank,.play-card.suit-spade .pc-value{color:var(--ink);}
.play-card.suit-heart .pc-rank,.play-card.suit-heart .pc-value{color:var(--accent);}
.play-card.suit-diamond .pc-rank,.play-card.suit-diamond .pc-value{color:var(--blue);}
.play-card.suit-club .pc-rank,.play-card.suit-club .pc-value{color:var(--green);}

/* BACK — intel reveal */
.play-card-back{background:var(--ink);transform:rotateY(180deg);padding:16px 14px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 6px 24px rgba(0,0,0,0.2);}
.play-card-back::before{content:'';position:absolute;inset:6px;border:1px solid rgba(255,255,255,0.12);border-radius:10px;pointer-events:none;}
.pcb-header{font-size:9px;color:var(--gold);text-transform:uppercase;letter-spacing:1.5px;text-align:center;font-weight:700;}
.pcb-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;}
.pcb-body p{font-size:11px;color:#bbb;line-height:1.4;}
.pcb-body .pcb-stat{font-family:'Fraunces',serif;font-size:22px;font-weight:700;color:white;}
.pcb-verdict{font-size:10px;font-weight:700;text-align:center;padding:6px 10px;border-radius:8px;}
.pcb-verdict.good{background:rgba(39,174,96,0.15);color:var(--green);}
.pcb-verdict.caution{background:rgba(243,156,18,0.15);color:var(--gold);}
/* WOW card backs */
.pcb-wow-label{font-size:8px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.3);margin-bottom:6px;text-align:left;}
.pcb-signature{font-size:12px;font-weight:700;color:white;line-height:1.45;text-align:left;font-style:italic;border-left:2px solid var(--gold);padding-left:8px;margin:6px 0;}
.pcb-moat-tag{font-size:9px;background:rgba(243,156,18,0.18);color:var(--gold);padding:3px 8px;border-radius:4px;font-weight:700;margin-top:4px;display:inline-block;}
.pcb-tweet-body{font-size:10.5px;color:rgba(255,255,255,0.9);line-height:1.55;text-align:left;background:rgba(255,255,255,0.06);border-radius:8px;padding:9px 10px;margin:5px 0;font-family:-apple-system,BlinkMacSystemFont,sans-serif;}
.pcb-tweet-label{font-size:8px;color:rgba(255,255,255,0.3);letter-spacing:1px;text-transform:uppercase;margin-bottom:3px;}
.pcb-copy-hint{font-size:8px;color:rgba(255,255,255,0.25);text-align:right;margin-top:2px;}
.pcb-pitch-subject{font-size:10px;font-weight:700;color:#F1C40F;line-height:1.4;text-align:left;padding:8px 10px;background:rgba(241,196,15,0.08);border-radius:6px;border-left:2px solid #F1C40F;margin:5px 0;}
.pcb-pitch-angle{font-size:9.5px;color:rgba(255,255,255,0.65);text-align:left;line-height:1.4;margin-top:5px;}
.pcb-vuln-q{font-size:10px;font-style:italic;color:#E74C3C;line-height:1.45;text-align:left;border-left:2px solid #E74C3C;padding-left:8px;margin:5px 0;}
.pcb-vuln-note{font-size:9px;color:rgba(255,255,255,0.45);text-align:left;line-height:1.4;margin-top:4px;}
@media(max-width:600px){.play-card{width:140px;height:196px;}.hero-cards{gap:12px;}}
.strike-section{background:white;border:2px solid var(--cream3);border-radius:20px;padding:28px;margin:20px 0;position:relative;overflow:hidden;}
.strike-section::before{content:'';position:absolute;top:-50%;right:-20%;width:300px;height:300px;background:radial-gradient(circle,rgba(243,156,18,0.05) 0%,transparent 70%);border-radius:50%;}
.strike-section .section-eyebrow{color:var(--blue);}
.strike-section .section-title{color:var(--ink);}
.strike-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;}
@media(max-width:700px){.strike-grid{grid-template-columns:1fr;}}
.strike-card{background:var(--cream);border:1px solid var(--cream3);border-radius:14px;padding:18px;position:relative;}
.strike-card h5{font-size:11px;color:var(--blue);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;display:flex;align-items:center;gap:6px;}
.strike-card h5 .pulse{width:8px;height:8px;border-radius:50%;background:var(--green);animation:pulse 2s infinite;}
.strike-target{padding:10px;background:white;border-radius:8px;margin-bottom:8px;border-left:3px solid var(--blue);border:1px solid var(--cream3);border-left:3px solid var(--blue);}
.strike-target h6{color:var(--ink);font-size:12px;margin-bottom:2px;}
.strike-target p{color:var(--ink3);font-size:11px;line-height:1.4;}
.strike-target a{color:var(--blue);text-decoration:underline;font-size:10px;}
.strike-action{background:var(--green-light);border:1px solid rgba(39,174,96,0.15);border-radius:10px;padding:14px;margin-top:16px;grid-column:1/-1;}
.strike-action h5{color:var(--green);margin-bottom:6px;}
.strike-action p{color:var(--ink2);font-size:12px;line-height:1.5;}


/* ═══ PSYCHOLOGICAL SEQUENCE ═══ */
.psych-flow{display:flex;gap:0;margin:16px 0;overflow-x:auto;}
.psych-step{flex:1;min-width:100px;padding:12px 10px;text-align:center;position:relative;border:1px solid var(--cream3);background:var(--cream);}
.psych-step:first-child{border-radius:12px 0 0 12px;}
.psych-step:last-child{border-radius:0 12px 12px 0;}
.psych-step::after{content:'→';position:absolute;right:-8px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--ink4);z-index:1;}
.psych-step:last-child::after{display:none;}
.psych-step h6{font-size:9px;color:var(--blue);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:2px;}
.psych-step .psych-trigger{font-size:18px;margin-bottom:2px;}
.psych-step p{font-size:10px;color:var(--ink3);line-height:1.2;}
.psych-step .psych-beliefs{font-size:9px;color:var(--gold);margin-top:3px;}


/* ═══ 30-DAY GHOST CONTENT ═══ */
.ghost-section{background:white;border:2px solid var(--cream3);border-radius:20px;padding:28px;margin:20px 0;position:relative;overflow:hidden;}
.ghost-section::before{content:'';position:absolute;top:-40%;left:-15%;width:250px;height:250px;background:radial-gradient(circle,rgba(39,174,96,0.05) 0%,transparent 70%);border-radius:50%;}
.ghost-section .section-eyebrow{color:var(--green);}
.ghost-section .section-title{color:var(--ink);}
.ghost-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px;}
@media(max-width:900px){.ghost-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.ghost-grid{grid-template-columns:1fr;}}
.ghost-card{background:var(--cream);border:1px solid var(--cream3);border-radius:12px;padding:14px;position:relative;transition:all 0.2s;}
.ghost-card:hover{background:var(--cream2);border-color:var(--blue);}
.ghost-day{font-family:'Fraunces',serif;font-size:10px;color:var(--ink4);margin-bottom:4px;}
.ghost-phase{display:inline-block;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:1px;padding:2px 6px;border-radius:4px;margin-bottom:6px;}
.phase-identity{background:var(--purple-light);color:var(--purple);}
.phase-authority{background:var(--blue-light);color:var(--blue);}
.phase-evidence{background:var(--teal-light);color:var(--teal);}
.phase-emotion{background:var(--accent-light);color:var(--accent);}
.phase-cta{background:var(--green-light);color:var(--green);}
.ghost-text{font-size:11px;color:var(--ink2);line-height:1.5;margin-bottom:8px;min-height:60px;}
.ghost-meta{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:var(--ink4);}
.ghost-belief{font-size:9px;color:var(--gold);}
.ghost-copy{background:var(--cream2);border:1px solid var(--cream3);color:var(--ink3);font-size:10px;padding:4px 8px;border-radius:6px;cursor:pointer;transition:all 0.2s;}
.ghost-copy:hover{background:var(--blue-light);border-color:var(--blue);color:var(--blue);}
.ghost-copy.copied{background:var(--green-light);border-color:var(--green);color:var(--green);}
.ghost-filter{display:flex;gap:6px;margin-bottom:14px;flex-wrap:wrap;}
.ghost-filter button{background:var(--cream);border:1px solid var(--cream3);color:var(--ink3);font-size:10px;padding:4px 10px;border-radius:6px;cursor:pointer;transition:all 0.2s;}
.ghost-filter button.active{background:var(--blue-light);border-color:var(--blue);color:var(--blue);}


/* ═══ PITCH COMPOSER BUTTONS ═══ */
.pitch-btns{display:flex;gap:6px;margin-top:8px;}
.pitch-btn{background:var(--blue-light);border:1px solid rgba(41,128,185,0.2);color:var(--blue);font-size:10px;padding:5px 10px;border-radius:6px;cursor:pointer;transition:all 0.2s;text-decoration:none;display:inline-flex;align-items:center;gap:4px;font-weight:600;}
.pitch-btn:hover{background:var(--blue);color:white;}
.pitch-btn.copied{background:var(--green-light);border-color:var(--green);color:var(--green);}


/* ═══ JOURNALIST DOSSIER ═══ */
.dossier-links{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap;}
.dossier-links a{font-size:9px;color:var(--teal);text-decoration:none;padding:2px 6px;background:rgba(22,160,133,0.1);border-radius:4px;transition:all 0.2s;}
.dossier-links a:hover{background:rgba(22,160,133,0.2);}
.dossier-bio{font-size:10px;color:var(--ink3);font-style:italic;margin-top:4px;}


/* ═══ CSV EXPORT ═══ */
.export-bar{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap;}
.export-btn{background:var(--cream2);border:2px solid var(--cream3);color:var(--ink2);font-size:11px;font-weight:700;padding:8px 14px;border-radius:10px;cursor:pointer;transition:all 0.2s;display:inline-flex;align-items:center;gap:6px;}
.export-btn:hover{border-color:var(--blue);color:var(--blue);}


/* ═══ COMPETITOR MIRROR ═══ */
.mirror-section{background:white;border:2px solid var(--cream3);border-radius:20px;padding:28px;margin:20px 0;position:relative;overflow:hidden;}
.mirror-section::before{content:'';position:absolute;top:-30%;left:50%;transform:translateX(-50%);width:300px;height:300px;background:radial-gradient(circle,rgba(231,76,60,0.04) 0%,transparent 70%);border-radius:50%;}
.mirror-verdict{background:var(--cream);border:1px solid var(--cream3);border-radius:12px;padding:16px;margin-bottom:16px;font-size:13px;color:var(--ink2);line-height:1.5;}
.mirror-grid{display:grid;grid-template-columns:1fr 80px 1fr;gap:0;margin:16px 0;}
@media(max-width:700px){.mirror-grid{grid-template-columns:1fr;}}
.mirror-col{min-height:100px;}
.mirror-col-header{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;padding:8px 12px;border-radius:8px 8px 0 0;text-align:center;}
.mirror-you .mirror-col-header{background:var(--green-light);color:var(--green);}
.mirror-them .mirror-col-header{background:var(--accent-light);color:var(--accent);}
.mirror-vs{display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-size:24px;font-weight:700;color:var(--ink4);}
.mirror-belief{padding:10px 12px;margin:4px 0;border-radius:8px;font-size:11px;line-height:1.4;border-left:3px solid transparent;}
.mirror-you .mirror-belief{background:var(--green-light);border-left-color:var(--green);color:var(--ink2);}
.mirror-them .mirror-belief{background:var(--accent-light);border-left-color:var(--accent);color:var(--ink2);}
.mirror-overlap{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0;}
@media(max-width:700px){.mirror-overlap{grid-template-columns:1fr;}}
.mirror-overlap-card{background:var(--gold-light);border:1px solid rgba(243,156,18,0.15);border-radius:10px;padding:12px;font-size:11px;}
.mirror-overlap-card .winner{font-weight:700;font-size:10px;padding:2px 8px;border-radius:4px;display:inline-block;margin-top:4px;}
.winner-you{background:var(--green-light);color:var(--green);}
.winner-them{background:var(--accent-light);color:var(--accent);}
.winner-tie{background:var(--cream2);color:var(--ink4);}
.attack-card{background:white;border:1px solid var(--cream3);border-radius:10px;padding:12px;margin:6px 0;}
.attack-card h6{font-size:10px;color:var(--accent);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:4px;}
.attack-card p{font-size:11px;color:var(--ink2);line-height:1.4;}
.attack-card .counter{color:var(--green);font-weight:600;margin-top:4px;}


/* ═══ INTERNAL ALIGNMENT KIT ═══ */
.align-section{background:white;border:2px solid var(--cream3);border-radius:20px;padding:28px;margin:20px 0;position:relative;overflow:hidden;}
.align-section::before{content:'';position:absolute;bottom:-30%;left:-10%;width:200px;height:200px;background:radial-gradient(circle,rgba(41,128,185,0.05) 0%,transparent 70%);border-radius:50%;}
.align-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:16px;}
.align-card{background:var(--cream);border:1px solid var(--cream3);border-radius:12px;overflow:hidden;transition:all 0.2s;}
.align-card:hover{border-color:var(--blue);}
.align-card-header{padding:12px 16px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;}
.align-card-header h5{font-size:13px;font-family:'Fraunces',serif;}
.align-card-body{display:none;padding:0 16px 16px;}
.align-card.open .align-card-body{display:block;}
.align-version{margin-bottom:10px;padding:10px 12px;border-radius:8px;}
.align-version h6{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;margin-bottom:4px;}
.align-version p{font-size:12px;color:var(--ink2);line-height:1.5;font-style:italic;}
.align-ceo{background:var(--blue-light);}
.align-ceo h6{color:var(--blue);}
.align-emp{background:var(--green-light);}
.align-emp h6{color:var(--green);}
.align-sales{background:var(--gold-light);}
.align-sales h6{color:#b7950b;}
.align-faq{background:white;border:1px solid var(--cream3);border-radius:8px;padding:10px 12px;margin-bottom:6px;}
.align-faq strong{font-size:11px;color:var(--ink);display:block;margin-bottom:2px;}
.align-faq p{font-size:11px;color:var(--ink3);line-height:1.4;}
.align-donts{display:flex;gap:4px;flex-wrap:wrap;margin-top:8px;}
.align-dont{font-size:10px;background:var(--accent-light);color:var(--accent);padding:2px 8px;border-radius:4px;}
.align-bridge{background:var(--blue-light);border-radius:8px;padding:8px 12px;margin-top:8px;font-size:11px;color:var(--blue);}

/* Pocket Brief Overlay */

/* ═══ POCKET BRIEF OVERLAY ═══ */
.pb-overlay{position:fixed;inset:0;z-index:9999;background:var(--bg,#f8f6f1);display:none;flex-direction:column;overflow:hidden;}
.pb-overlay.open{display:flex;}
.pb-overlay *{box-sizing:border-box;}
.pb-overlay{--bg:#f8f6f1;--bg2:#f2efe8;--bg3:#e8e4db;--bg4:#ddd8cc;--card:#fffefa;--card2:#faf8f3;--pbink:#1a1814;--pbink2:#3a362e;--pbink3:#6b6558;--pbink4:#9a9486;--pbborder:#e2ddd4;--pbborder2:#d4cec3;--dark:#5e554c;--dark2:#6a6159;--dark3:#766d65;--dark4:#827972;--dark-border:rgba(255,248,240,0.22);--lt:rgba(255,255,255,0.96);--lt2:rgba(255,255,255,0.85);--lt3:rgba(255,255,255,0.60);--pbred:#e04a3c;--pbred-bg:#fdf0ee;--pbred-bdr:#f0c8c2;--pbgreen:#2ecc71;--pbgreen-bg:#edf8f1;--pbgreen-bdr:#b8dfc8;--pbgold:#d4a017;--pbgold-bg:#fdf6e3;--pbgold-bdr:#e8d5a0;--pbblue:#1a5fb4;--pbblue-bg:#eef3fc;--pbblue-bdr:#b4ceef;--pbteal:#17b5a4;--pbteal-bg:#ecf8f6;--pbteal-bdr:#a8d8d0;--pbpurple:#6c3483;--pbpurple-bg:#f5eef8;--pbpurple-bdr:#cfaee0;--pbcoral:#c0582a;--pbcoral-bg:#fdf2ec;--pbcoral-bdr:#e8c0a8;}

.pb-head{display:flex;align-items:center;justify-content:space-between;padding:7px 14px;background:var(--card);border-bottom:1px solid var(--pbborder);flex-shrink:0;z-index:10;}
.pb-head-left{display:flex;align-items:center;gap:8px;}
.pb-head-left b{font-family:'Fraunces',serif;font-size:14px;color:var(--pbink);}
.pb-head-pill{font-size:7px;font-weight:800;padding:3px 8px;border-radius:5px;background:var(--pbteal-bg);color:var(--pbteal);letter-spacing:.5px;border:1px solid var(--pbteal-bdr);}
.pb-head-right{display:flex;gap:5px;align-items:center;}
.pb-close-btn{background:var(--bg);border:1.5px solid var(--pbborder);color:var(--pbink3);padding:5px 12px;border-radius:8px;font-size:9px;font-weight:700;cursor:pointer;font-family:inherit;transition:all .15s;letter-spacing:.3px;}
.pb-close-btn:hover{border-color:var(--pbborder2);color:var(--pbink);background:var(--bg2);}
.pb-mtog{display:flex;border-radius:8px;overflow:hidden;border:1.5px solid var(--pbborder);}
.pb-mbtn{padding:5px 12px;font-size:9px;font-weight:800;cursor:pointer;background:var(--bg);color:var(--pbink4);border:none;font-family:inherit;letter-spacing:.5px;transition:all .15s;}
.pb-mbtn.active{background:var(--pbink,#1a1814);color:white;}
.pb-mbtn:hover:not(.active){background:var(--bg2);color:var(--pbink3);}

.pb-foot{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;background:var(--card);border-top:1px solid var(--pbborder);flex-shrink:0;z-index:10;}
.pb-foot .foot-btn{display:flex;align-items:center;justify-content:center;gap:4px;padding:12px 16px;border:1.5px solid var(--pbborder);border-radius:10px;font-family:inherit;font-size:11px;font-weight:700;cursor:pointer;background:var(--bg);color:var(--pbink3);transition:all .15s;}
.pb-foot .foot-btn:hover{border-color:var(--pbborder2);color:var(--pbink);background:var(--bg2);}
.pb-dl-btn{display:flex;align-items:center;justify-content:center;gap:5px;flex:1;max-width:320px;padding:10px 16px;border:none;border-radius:10px;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;background:var(--pbgreen);color:white;transition:all .15s;box-shadow:0 2px 8px rgba(30,132,73,.15);letter-spacing:.2px;}
.pb-dl-btn:hover{background:#1a7a42;transform:translateY(-1px);box-shadow:0 4px 14px rgba(30,132,73,.25);}
.pb-dl-btn:active{background:#1a7a42;opacity:.9;}
.pb-dl-icon{font-size:15px;}

.pb-stage{flex:1;display:flex;align-items:stretch;justify-content:center;padding:6px;perspective:1400px;}
.pb-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;}
.pb-loading-text{font-size:13px;color:var(--pbink3);font-weight:600;}
.pb-loading-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--pbteal);animation:pbPulse 1.2s ease-in-out infinite;}
@keyframes pbPulse{0%,100%{opacity:.3;transform:scale(.8);}50%{opacity:1;transform:scale(1.1);}}

/* Card structure */
.pb-flip-card{width:100%;max-width:414px;position:relative;cursor:pointer;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-tap-highlight-color:transparent;align-self:center;height:calc(100svh - 100px);max-height:780px;}
.pb-flip-card-inner{width:100%;height:100%;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.23,1,.32,1);}
.pb-flip-card.flipped .pb-flip-card-inner{transform:rotateY(180deg);}
.pb-cface{position:absolute;inset:0;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:14px;display:flex;flex-direction:column;overflow:hidden;}
.pb-cface>.pb-side-a-in,.pb-cface>.pb-side-b-in{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0;}.pb-cface>.pb-side-a-in::-webkit-scrollbar,.pb-cface>.pb-side-b-in::-webkit-scrollbar{display:none;}
.pb-side-a-in>*,.pb-side-b-in>*{flex-shrink:0;}
.pb-single-card{width:100%;max-width:460px;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;height:calc(100svh - 100px);max-height:860px;align-self:center;}
.pb-single-inner{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;}.pb-single-inner::-webkit-scrollbar{display:none;}
.pb-sdiv{position:relative;padding:0;}
.pb-sdiv::before{content:'';display:block;height:1px;background:linear-gradient(90deg,transparent,rgba(255,248,240,.1),transparent);}
.pb-sdiv-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--dark);padding:0 12px;font-size:7px;font-weight:800;color:rgba(255,255,255,.35);letter-spacing:2.5px;text-transform:uppercase;white-space:nowrap;}

/* Side A — Cream */
.pb-side-a{background:var(--card);border:1px solid var(--pbborder);box-shadow:0 8px 32px rgba(26,24,20,.1);}
.pb-side-a-in{flex:1;display:flex;flex-direction:column;padding:12px 12px 6px;overflow-y:auto;-webkit-overflow-scrolling:touch;gap:6px;}.pb-side-a-in::-webkit-scrollbar{display:none;}
.pb-a-header{display:flex;align-items:flex-start;gap:10px;padding-bottom:8px;border-bottom:1.5px solid var(--pbborder);}
.pb-a-header-text{flex:1;}
.pb-a-title{font-family:'Fraunces',serif;font-size:15px;font-weight:700;color:var(--pbink);line-height:1.2;}
.pb-a-pill{display:inline-block;font-size:7px;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:3px 8px;border-radius:6px;background:var(--pbteal-bg);color:var(--pbteal);border:1px solid var(--pbteal-bdr);margin-top:4px;}
.pb-gauge{width:44px;height:44px;flex-shrink:0;position:relative;}
.pb-gauge svg{width:44px;height:44px;transform:rotate(-90deg);}
.pb-gauge-bg{fill:none;stroke:var(--bg3);stroke-width:4;}
.pb-gauge-fill{fill:none;stroke-width:4;stroke-linecap:round;transition:stroke-dashoffset .8s ease;}
.pb-gauge-val{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--pbink);}
/* Stats row: minmax(0,1fr) + min-width:0 so long labels (e.g. TechCrunch/VentureBeat) wrap instead of clipping */
.pb-a-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;}
.pb-a-stat{background:var(--bg);border:1px solid var(--pbborder);border-radius:8px;padding:6px 6px;text-align:center;position:relative;overflow:visible;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;}
.pb-a-stat::before{content:'';position:absolute;top:0;left:0;right:0;height:2.5px;border-radius:8px 8px 0 0;}
.pb-a-stat.c-red::before{background:var(--pbred);}.pb-a-stat.c-green::before{background:var(--pbgreen);}.pb-a-stat.c-gold::before{background:var(--pbgold);}.pb-a-stat.c-blue::before{background:var(--pbblue);}.pb-a-stat.c-teal::before{background:var(--pbteal);}.pb-a-stat.c-purple::before{background:var(--pbpurple);}.pb-a-stat.c-coral::before{background:var(--pbcoral);}
.pb-sv{font-family:'Fraunces',serif;font-size:16px;font-weight:700;line-height:1;flex-shrink:0;}
.pb-a-stat.c-red .pb-sv{color:var(--pbred);}.pb-a-stat.c-green .pb-sv{color:var(--pbgreen);}.pb-a-stat.c-gold .pb-sv{color:var(--pbgold);}.pb-a-stat.c-blue .pb-sv{color:var(--pbblue);}.pb-a-stat.c-teal .pb-sv{color:var(--pbteal);}.pb-a-stat.c-purple .pb-sv{color:var(--pbpurple);}.pb-a-stat.c-coral .pb-sv{color:var(--pbcoral);}
.pb-sl{font-size:6.5px;font-weight:700;text-transform:uppercase;letter-spacing:0.2px;color:var(--pbink4);margin-top:4px;line-height:1.25;max-width:100%;min-width:0;width:100%;word-break:break-word;overflow-wrap:anywhere;hyphens:auto;}
.pb-a-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;}
.pb-blk{background:var(--bg);border:1px solid var(--pbborder);border-radius:8px;padding:8px 10px;border-left:3px solid var(--pbborder);}
.pb-blk.full{grid-column:1/-1;}
/* Color-tinted block backgrounds */
.pb-blk:has(.pb-bh.red){background:var(--pbred-bg);border-color:var(--pbred-bdr);}.pb-blk:has(.pb-bh.green){background:var(--pbgreen-bg);border-color:var(--pbgreen-bdr);}.pb-blk:has(.pb-bh.blue){background:var(--pbblue-bg);border-color:var(--pbblue-bdr);}.pb-blk:has(.pb-bh.gold){background:var(--pbgold-bg);border-color:var(--pbgold-bdr);}.pb-blk:has(.pb-bh.teal){background:var(--pbteal-bg);border-color:var(--pbteal-bdr);}.pb-blk:has(.pb-bh.purple){background:var(--pbpurple-bg);border-color:var(--pbpurple-bdr);}.pb-blk:has(.pb-bh.coral){background:var(--pbcoral-bg);border-color:var(--pbcoral-bdr);}
.pb-blk:has(.pb-bh.red){border-left-color:var(--pbred);}.pb-blk:has(.pb-bh.green){border-left-color:var(--pbgreen);}.pb-blk:has(.pb-bh.blue){border-left-color:var(--pbblue);}.pb-blk:has(.pb-bh.gold){border-left-color:var(--pbgold);}.pb-blk:has(.pb-bh.teal){border-left-color:var(--pbteal);}.pb-blk:has(.pb-bh.purple){border-left-color:var(--pbpurple);}.pb-blk:has(.pb-bh.coral){border-left-color:var(--pbcoral);}
.pb-bh{font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:5px;line-height:1;}
.pb-bh.red{color:var(--pbred);}.pb-bh.green{color:var(--pbgreen);}.pb-bh.blue{color:var(--pbblue);}.pb-bh.gold{color:var(--pbgold);}.pb-bh.teal{color:var(--pbteal);}.pb-bh.purple{color:var(--pbpurple);}.pb-bh.coral{color:var(--pbcoral);}
.pb-bu{font-size:10.5px;color:var(--pbink2);line-height:1.5;padding:3px 0 3px 12px;position:relative;}
.pb-bu::before{content:'';width:4px;height:4px;border-radius:50%;background:var(--bg4);position:absolute;left:0;top:8px;}
.pb-bu strong{color:var(--pbink);font-weight:700;}
.pb-bu.hot::before{background:var(--pbred);box-shadow:0 0 4px rgba(192,57,43,.4);}
.pb-bu.warm::before{background:var(--pbgold);}
.pb-bu.cool::before{background:var(--pbgreen);}
.pb-people-row{display:flex;gap:4px;overflow-x:auto;padding-bottom:2px;-webkit-overflow-scrolling:touch;mask-image:linear-gradient(to right,black 88%,transparent 100%);-webkit-mask-image:linear-gradient(to right,black 88%,transparent 100%);}.pb-people-row::-webkit-scrollbar{display:none;}
.pb-pcard{flex-shrink:0;width:120px;background:var(--bg);border:1px solid var(--pbborder);border-radius:8px;padding:7px 8px;position:relative;border-top:2.5px solid var(--pbborder);}
.pb-pcard.p-key{border-top-color:var(--pbred);background:var(--pbred-bg);}.pb-pcard.p-warm{border-top-color:var(--pbgold);background:var(--pbgold-bg);}.pb-pcard.p-info{border-top-color:var(--pbblue);background:var(--pbblue-bg);}
.pb-pcard::before{content:'';position:absolute;top:8px;right:6px;width:7px;height:7px;border-radius:50%;}
.pb-pcard.p-key::before{background:var(--pbred);box-shadow:0 0 4px rgba(224,74,60,.3);}.pb-pcard.p-warm::before{background:var(--pbgold);}.pb-pcard.p-info::before{background:var(--pbblue);}
.pb-pm-name{font-size:10.5px;font-weight:700;color:var(--pbink);line-height:1.2;margin-bottom:2px;padding-right:12px;}
.pb-pm-role{font-size:8px;color:var(--pbink3);line-height:1.3;margin-bottom:3px;}
.pb-pm-tip{font-size:8.5px;color:var(--pbteal);font-weight:600;font-style:italic;line-height:1.3;}
.pb-a-qt{background:var(--pbgold-bg);border-left:3px solid var(--pbgold);padding:7px 10px;font-size:10.5px;font-style:italic;color:var(--pbink2);line-height:1.4;font-family:'Fraunces',serif;border-radius:0 6px 6px 0;}
.pb-vd{padding:7px 12px;border-radius:8px;font-size:10.5px;font-weight:700;text-align:center;line-height:1.35;}
.pb-vd.good{background:var(--pbgreen-bg);color:var(--pbgreen);border:1.5px solid var(--pbgreen-bdr);}
.pb-vd.warn{background:var(--pbgold-bg);color:var(--pbgold);border:1.5px solid var(--pbgold-bdr);}
.pb-vd.bad{background:var(--pbred-bg);color:var(--pbred);border:1.5px solid var(--pbred-bdr);}

/* Side B — Dark */
.pb-side-b{background:var(--dark);border:1px solid var(--dark-border);box-shadow:0 8px 32px rgba(42,37,32,.25);}
.pb-single-card .pb-side-b{transform:none;}
.pb-side-b-in{flex:1;display:flex;flex-direction:column;padding:12px 12px 6px;overflow-y:auto;gap:6px;-webkit-overflow-scrolling:touch;}.pb-side-b-in::-webkit-scrollbar{display:none;}
.pb-b-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:6px;border-bottom:1px solid var(--dark-border);}
.pb-b-title{font-family:'Fraunces',serif;font-size:14px;font-weight:700;color:white;line-height:1.15;}
.pb-b-pill{font-size:7px;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:3px 8px;border-radius:6px;background:rgba(255,248,240,.08);color:var(--lt3);}
.pb-b-act{background:linear-gradient(135deg,var(--pbteal),#0a6b60);color:white;border-radius:10px;padding:10px 12px;font-size:11px;font-weight:600;line-height:1.4;position:relative;overflow:hidden;}
.pb-b-act::before{content:'⚡';position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:16px;opacity:.12;}
.pb-b-act strong{color:#a7f3d0;}
.pb-say-this{display:flex;gap:5px;overflow-x:auto;-webkit-overflow-scrolling:touch;mask-image:linear-gradient(to right,black 88%,transparent 100%);-webkit-mask-image:linear-gradient(to right,black 88%,transparent 100%);}.pb-say-this::-webkit-scrollbar{display:none;}
.pb-say-card{flex-shrink:0;width:195px;background:rgba(255,248,240,.08);border:1px solid rgba(255,248,240,.15);border-radius:10px;padding:8px 10px;position:relative;cursor:pointer;transition:all .15s;border-left:3px solid var(--pbteal);}
.pb-say-card:active{background:rgba(255,248,240,.12);transform:scale(.98);}
.pb-say-card::after{content:'📋';position:absolute;top:6px;right:7px;font-size:9px;opacity:.3;}
.pb-say-num{font-size:8px;font-weight:700;color:var(--pbteal);margin-bottom:3px;letter-spacing:1px;}
.pb-say-text{font-size:10.5px;color:var(--lt);line-height:1.4;font-style:italic;font-family:'Fraunces',serif;}
.pb-say-ctx{font-size:7.5px;color:var(--lt3);margin-top:4px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;}
.pb-copied-toast{position:fixed;bottom:60px;left:50%;transform:translateX(-50%);background:var(--pbteal);color:white;padding:6px 16px;border-radius:8px;font-size:11px;font-weight:700;z-index:99999;opacity:0;transition:opacity .3s;pointer-events:none;}
.pb-copied-toast.show{opacity:1;}
.pb-b-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;}
.pb-db{background:rgba(255,248,240,.08);border:1px solid rgba(255,248,240,.14);border-radius:8px;padding:8px 10px;border-left:3px solid rgba(255,248,240,.2);}
.pb-db.full{grid-column:1/-1;}
.pb-db:has(.pb-dbh.teal){border-left-color:var(--pbteal);background:rgba(23,181,164,.08);}.pb-db:has(.pb-dbh.green){border-left-color:var(--pbgreen);background:rgba(46,204,113,.08);}.pb-db:has(.pb-dbh.red){border-left-color:var(--pbred);background:rgba(224,74,60,.08);}.pb-db:has(.pb-dbh.gold){border-left-color:var(--pbgold);background:rgba(212,160,23,.08);}.pb-db:has(.pb-dbh.blue){border-left-color:var(--pbblue);background:rgba(26,95,180,.08);}.pb-db:has(.pb-dbh.coral){border-left-color:var(--pbcoral);background:rgba(192,88,42,.08);}.pb-db:has(.pb-dbh.purple){border-left-color:var(--pbpurple);background:rgba(108,52,131,.08);}
.pb-dbh{font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:5px;line-height:1.2;word-break:break-word;overflow-wrap:anywhere;}
.pb-dbh.teal{color:var(--pbteal);}.pb-dbh.gold{color:var(--pbgold);}.pb-dbh.red{color:var(--pbred);}.pb-dbh.green{color:var(--pbgreen);}.pb-dbh.blue{color:var(--pbblue);}.pb-dbh.coral{color:var(--pbcoral);}.pb-dbh.purple{color:var(--pbpurple);}
.pb-dbu{font-size:10.5px;color:var(--lt2);line-height:1.5;padding:3px 0 3px 14px;position:relative;}
.pb-dbu::before{content:'→';color:var(--pbteal);position:absolute;left:0;top:3px;font-size:8px;font-weight:700;}
.pb-dbu.dont::before{content:'✕';color:var(--pbred);}
.pb-dbu strong{color:var(--lt);font-weight:700;}
.pb-obj-pair{background:rgba(255,248,240,.08);border:1px solid rgba(255,248,240,.14);border-radius:10px;padding:9px 11px;margin-bottom:5px;position:relative;overflow:hidden;}
.pb-obj-pair::before{content:'';position:absolute;top:0;left:0;bottom:50%;width:3px;background:var(--pbred);}
.pb-obj-pair::after{content:'';position:absolute;top:50%;left:0;bottom:0;width:3px;background:var(--pbgreen);}
.pb-obj-they{font-size:8px;color:var(--pbred);font-weight:800;text-transform:uppercase;letter-spacing:.8px;margin-bottom:3px;}
.pb-obj-they-text{font-size:10.5px;color:var(--lt2);font-style:italic;margin-bottom:6px;line-height:1.4;font-family:'Fraunces',serif;padding-left:3px;padding-bottom:6px;border-bottom:1px solid rgba(255,248,240,.08);}
.pb-obj-you{font-size:8px;color:var(--pbgreen);font-weight:800;text-transform:uppercase;letter-spacing:.8px;margin-bottom:3px;margin-top:6px;}
.pb-obj-you-text{font-size:10.5px;color:var(--lt);line-height:1.4;font-weight:500;padding-left:3px;}
.pb-b-qt{background:rgba(255,248,240,.06);border-left:3px solid var(--pbgold);padding:7px 10px;font-size:10.5px;font-style:italic;color:var(--lt2);line-height:1.4;font-family:'Fraunces',serif;border-radius:0 6px 6px 0;}
.pb-b-vd{padding:7px 12px;border-radius:8px;font-size:10.5px;font-weight:700;text-align:center;line-height:1.35;}
.pb-b-vd.good{background:rgba(30,132,73,.15);color:var(--pbgreen);border:1px solid rgba(46,204,113,.2);}.pb-b-vd.warn{background:rgba(184,134,11,.15);color:var(--pbgold);border:1px solid rgba(212,160,23,.2);}.pb-b-vd.bad{background:rgba(192,57,43,.15);color:var(--pbred);border:1px solid rgba(224,74,60,.2);}
.pb-a-tap{text-align:center;padding:6px;font-size:8px;color:var(--pbink4);font-weight:700;letter-spacing:.5px;border-top:1px solid var(--pbborder);margin-top:auto;background:linear-gradient(to bottom,transparent,var(--bg));}
.pb-b-tap{text-align:center;padding:6px;font-size:8px;color:var(--lt3);font-weight:700;letter-spacing:.5px;border-top:1px solid rgba(255,255,255,.05);margin-top:auto;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.15));}
.pb-sdots{position:fixed;bottom:8px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:10000;}
.pb-sdots.hidden{display:none;}
.pb-sdot{width:6px;height:6px;border-radius:50%;background:var(--bg4,#ddd8cc);transition:all .25s;}
.pb-sdot.active{background:var(--pbteal);box-shadow:0 0 6px rgba(14,122,110,.3);}
@media(max-width:400px){.pb-a-grid,.pb-b-grid{grid-template-columns:1fr!important;}.pb-blk,.pb-db{grid-column:1/-1;}}

.btn-phone{background:linear-gradient(135deg,#1a1a2e,#16213e);color:white;border:1px solid rgba(255,255,255,0.15);padding:6px 14px;font-size:11px;border-radius:8px;cursor:pointer;font-family:'DM Sans',sans-serif;font-weight:700;transition:all 0.2s;display:inline-flex;align-items:center;gap:5px;}
.btn-phone:hover{background:linear-gradient(135deg,#2d2d4e,#1e3050);transform:translateY(-1px);}

/* ── Landscape helper ── */
@media(max-height:500px) and (orientation:landscape){
  .pb-flip-card,.pb-single-card{max-height:calc(100svh - 94px);}
}

