*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
:root{
  --sage:#7A9E7E;
  --sage-dark:#5C8060;
  --sage-light:#F2F7F2;
  --sage-border:#C2D9C4;
  --terracotta:#C4714B;
  --terracotta-light:#FDF2EC;
  --terracotta-border:#F2C4AD;
  --gold:#B8943F;
  --gold-light:#FBF8EE;
  --gold-border:#E8D99A;
  --cream:#FAF7F2;
  --cream-dark:#F0EBE1;
  --white:#FFFFFF;
  --charcoal:#2C2C2C;
  --text:#3D3530;
  --text-muted:#7A6E68;
  --text-light:#A89D96;
  --border:#E8E0D6;
  --border-light:#F0EBE4;
  --sidebar-w:280px;
  --header-h:60px;
}
html,body{height:100%;}
body{
  font-family:'DM Sans',-apple-system,BlinkMacSystemFont,sans-serif;
  background:var(--cream);
  color:var(--text);
  font-size:15px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
.serif{font-family:'Cormorant Garamond',Georgia,serif;}
.hidden{display:none!important;}

/* ─── LOGIN SCREEN ─── */
#login-screen{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--cream);
  padding:2rem;
  background-image:radial-gradient(ellipse at 20% 80%, rgba(122,158,126,0.12) 0%, transparent 60%),
                   radial-gradient(ellipse at 80% 20%, rgba(196,113,75,0.08) 0%, transparent 60%);
}
.login-wrap{max-width:420px;width:100%;}
.login-logo{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:32px;
  font-weight:600;
  color:var(--charcoal);
  letter-spacing:-0.02em;
  margin-bottom:4px;
  text-align:center;
}
.login-logo-leaf{color:var(--sage);}
.login-tagline{
  color:var(--text-muted);
  font-size:13px;
  margin-bottom:14px;
  text-align:center;
  font-style:italic;
}
.dashboard-language-toggle{
  display:flex;
  justify-content:center;
  gap:4px;
  margin:0 auto 28px;
}
.dashboard-language-toggle button{
  min-width:42px;
  min-height:30px;
  border:1px solid var(--border);
  border-radius:999px;
  background:rgba(255,255,255,0.72);
  color:var(--text-muted);
  cursor:pointer;
  font:600 11px/1 'DM Sans',sans-serif;
}
.dashboard-language-toggle button.active{
  background:var(--charcoal);
  border-color:var(--charcoal);
  color:var(--white);
}
.login-card{
  background:var(--white);
  border:1px solid var(--border);
  border-radius:20px;
  padding:40px;
  box-shadow:0 4px 24px rgba(60,45,35,0.07);
}
.login-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:24px;
  font-weight:600;
  color:var(--charcoal);
  margin-bottom:6px;
  letter-spacing:-0.01em;
}
.login-sub{color:var(--text-muted);font-size:13px;margin-bottom:28px;line-height:1.5;}
.field{margin-bottom:20px;}
.field label{
  display:block;
  font-size:11px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:var(--text-muted);
  margin-bottom:8px;
}
.field input{
  width:100%;
  border:1px solid var(--border);
  border-radius:10px;
  padding:12px 16px;
  font-size:14px;
  font-family:'DM Sans',sans-serif;
  color:var(--text);
  background:var(--cream);
  outline:none;
  transition:border-color 0.15s,background 0.15s;
}
.field input:focus{border-color:var(--sage);background:var(--white);}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  padding:12px 22px;border-radius:10px;border:none;
  font-size:13px;font-weight:600;font-family:'DM Sans',sans-serif;
  cursor:pointer;transition:all 0.15s;text-decoration:none;white-space:nowrap;
}
.btn-primary{background:var(--sage);color:white;}
.btn-primary:hover{background:var(--sage-dark);}
.btn-primary:disabled{background:var(--border);cursor:not-allowed;color:var(--text-light);}
.btn-secondary{background:#fff;color:var(--charcoal);border:1px solid var(--border);}
.btn-secondary:hover{border-color:var(--sage);color:var(--sage-dark);}
.btn-full{width:100%;}
.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border);}
.btn-ghost:hover{color:var(--charcoal);border-color:var(--text-muted);}
.btn-sage{background:var(--sage);color:white;}
.btn-sage:hover{background:var(--sage-dark);}
.btn-terracotta{background:var(--terracotta);color:white;}
.btn-terracotta:hover{background:#a85d3a;}
.error-msg{
  color:#c0392b;font-size:12px;margin-top:12px;
  padding:10px 14px;background:#fdf0ed;border-radius:8px;border:1px solid #f5c6bc;
}
.magic-success{text-align:center;padding:8px 0;}
.magic-icon{font-size:40px;margin-bottom:16px;}
.magic-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:22px;font-weight:600;color:var(--charcoal);margin-bottom:8px;
}
.magic-sub{color:var(--text-muted);font-size:13px;margin-bottom:24px;line-height:1.6;}
.magic-link-box{
  background:var(--sage-light);border:1px solid var(--sage-border);
  border-radius:12px;padding:20px;margin-bottom:20px;
}
.magic-link-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:var(--sage);margin-bottom:8px;}
.magic-link-url{font-size:13px;color:var(--text-muted);word-break:break-all;margin-bottom:12px;}
.back-link{
  color:var(--text-muted);font-size:13px;cursor:pointer;
  text-decoration:underline;background:none;border:none;
  font-family:'DM Sans',sans-serif;margin-top:16px;display:inline-block;
}
.back-link:hover{color:var(--text);}

/* ─── OAUTH ─── */
.oauth-btns{display:flex;flex-direction:column;gap:10px;margin-bottom:20px;}
.oauth-btn{
  display:flex;align-items:center;justify-content:center;gap:10px;
  width:100%;padding:11px 16px;border-radius:10px;border:1.5px solid var(--border);
  background:var(--white);font-size:13px;font-weight:500;font-family:'DM Sans',sans-serif;
  color:var(--charcoal);cursor:pointer;transition:border-color 0.15s,background 0.15s;
}
.oauth-btn:hover{border-color:#aaa;background:var(--cream);}
.oauth-btn:disabled{opacity:0.55;cursor:not-allowed;}
.oauth-divider{
  position:relative;text-align:center;margin:18px 0 20px;
  color:var(--text-muted);font-size:12px;
}
.oauth-divider::before,.oauth-divider::after{
  content:'';position:absolute;top:50%;width:calc(50% - 70px);
  height:1px;background:var(--border);
}
.oauth-divider::before{left:0;}
.oauth-divider::after{right:0;}
.oauth-divider span{display:inline-block;padding:0 8px;background:var(--white);position:relative;}

/* ─── APP LAYOUT ─── */
#app{display:flex;height:100vh;overflow:hidden;}

/* ─── SIDEBAR ─── */
.sidebar{
  width:var(--sidebar-w);min-width:var(--sidebar-w);
  background:var(--white);border-right:1px solid var(--border);
  display:flex;flex-direction:column;overflow-y:auto;
}
.sidebar-logo{padding:26px 24px 22px;border-bottom:1px solid var(--border-light);cursor:pointer;}
.sidebar-logo:focus-visible{outline:2px solid var(--sage);outline-offset:-4px;}
.sidebar-logo-text{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:25px;font-weight:600;color:var(--charcoal);letter-spacing:-0.02em;
}
.sidebar-logo-leaf{color:var(--sage);}
.sidebar-tagline{font-size:12px;color:var(--text-light);margin-top:2px;font-style:italic;}
.sidebar-nav{padding:18px 0;flex:1;}
.nav-section-label{
  font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.09em;
  color:var(--text-light);padding:14px 24px 7px;
}
.nav-item{
  display:flex;align-items:center;gap:12px;padding:11px 24px;
  font-size:15px;font-weight:500;color:var(--text-muted);cursor:pointer;
  border-left:3px solid transparent;text-decoration:none;transition:all 0.12s;
}
.nav-item:hover{color:var(--text);background:var(--cream);}
.nav-item.active{
  color:var(--sage-dark);background:var(--sage-light);
  border-left-color:var(--sage);font-weight:600;
}
.nav-icon{font-size:17px;flex-shrink:0;width:20px;text-align:center;}
.sidebar-footer{padding:18px 24px;border-top:1px solid var(--border-light);}
.logout-btn{
  display:flex;align-items:center;gap:8px;font-size:13px;
  color:var(--text-light);cursor:pointer;background:none;border:none;
  font-family:'DM Sans',sans-serif;padding:0;transition:color 0.12s;
}
.logout-btn:hover{color:var(--text-muted);}

/* ─── MAIN CONTENT ─── */
.main{flex:1;overflow-y:auto;display:flex;flex-direction:column;}
.top-bar{
  background:var(--white);border-bottom:1px solid var(--border);
  padding:0 clamp(24px,2.4vw,44px);height:var(--header-h);display:flex;align-items:center;
  justify-content:space-between;flex-shrink:0;position:sticky;top:0;z-index:10;
}
.top-bar-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:22px;font-weight:600;color:var(--charcoal);letter-spacing:-0.01em;
}
.top-bar-right{display:flex;align-items:center;gap:12px;}
.top-bar-meta{font-size:12px;color:var(--text-light);}
.page-content{padding:clamp(28px,2.5vw,46px);flex:1;width:100%;max-width:none;}

/* ─── TIER BADGES ─── */
.tier-badge{
  display:inline-flex;align-items:center;gap:5px;
  padding:4px 12px;border-radius:20px;font-size:11px;font-weight:600;
  letter-spacing:0.03em;text-transform:uppercase;
}
.tier-seed{background:var(--sage-light);color:var(--sage-dark);border:1px solid var(--sage-border);}
.tier-grow{background:var(--gold-light);color:#8B6A1A;border:1px solid var(--gold-border);}
.tier-flourish{background:var(--terracotta-light);color:#8B3E1F;border:1px solid var(--terracotta-border);}

/* ─── WELCOME HEADER ─── */
.welcome-header{
  background:var(--white);border:1px solid var(--border);
  border-radius:20px;padding:28px 32px;margin-bottom:28px;
  position:relative;overflow:hidden;
}
.welcome-header::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--sage) 0%,var(--gold) 50%,var(--terracotta) 100%);
}
.welcome-greeting{
  font-size:13px;color:var(--text-muted);font-style:italic;margin-bottom:6px;
}
.welcome-name{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:32px;font-weight:600;color:var(--charcoal);
  letter-spacing:-0.02em;margin-bottom:12px;line-height:1.2;
}
.welcome-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.welcome-since{font-size:12px;color:var(--text-muted);}

/* ─── DELIVERY PIPELINE TRACKER ─── */
.tracker-card{
  background:var(--white);border:1px solid var(--border);
  border-radius:20px;padding:28px 32px;margin-bottom:28px;
}
.tracker-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px;gap:12px;}
.tracker-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:20px;font-weight:600;color:var(--charcoal);letter-spacing:-0.01em;
}
.tracker-sub{font-size:12px;color:var(--text-muted);margin-top:3px;line-height:1.5;}
.tracker-badge-live{
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 12px;background:var(--sage-light);border:1px solid var(--sage-border);
  border-radius:20px;font-size:11px;font-weight:600;color:var(--sage-dark);
  white-space:nowrap;flex-shrink:0;
}
.live-dot{
  width:6px;height:6px;border-radius:50%;background:var(--sage);
  animation:livePulse 1.5s ease-in-out infinite;
}
@keyframes livePulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:0.5;transform:scale(0.85);}}
.pipeline-steps{display:flex;align-items:flex-start;position:relative;margin-bottom:20px;}
.pipeline-connector{flex:1;height:2px;margin-top:19px;background:var(--border);min-width:8px;}
.pipeline-connector.done{background:var(--sage);}
.pipeline-step{
  display:flex;flex-direction:column;align-items:center;gap:8px;
  flex-shrink:0;width:100px;text-align:center;
}
.step-circle{
  width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:16px;border:2px solid var(--border);background:var(--white);
  transition:all 0.3s cubic-bezier(0.16,1,0.3,1);position:relative;z-index:1;
}
.step-circle.done{border-color:var(--sage);background:var(--sage);color:white;font-size:13px;}
.step-circle.current{
  border-color:var(--sage);background:var(--white);
  box-shadow:0 0 0 5px rgba(122,158,126,0.15);
  animation:stepGlow 2s ease-in-out infinite;
}
.step-circle.future{border-color:var(--border-light);color:var(--border);}
@keyframes stepGlow{
  0%,100%{box-shadow:0 0 0 5px rgba(122,158,126,0.15);}
  50%{box-shadow:0 0 0 9px rgba(122,158,126,0.07);}
}
.step-label{font-size:10px;font-weight:500;color:var(--text-light);line-height:1.3;}
.step-label.done{color:var(--sage);}
.step-label.current{color:var(--text);font-weight:600;}
.tracker-msg{
  background:var(--cream);border:1px solid var(--border-light);border-radius:12px;
  padding:14px 18px;font-size:13px;color:var(--text-muted);
  display:flex;align-items:flex-start;gap:10px;line-height:1.6;
}
.tracker-msg-icon{font-size:16px;flex-shrink:0;margin-top:1px;}
.tracker-live .tracker-card{
  border-color:var(--sage-border);
  background:linear-gradient(180deg,rgba(242,247,242,0.7) 0%,var(--white) 80px);
}

/* ─── SECTION CARD ─── */
.section-card{
  background:var(--white);border:1px solid var(--border);
  border-radius:20px;padding:28px 32px;margin-bottom:24px;
}
.section-card-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:20px;font-weight:600;color:var(--charcoal);
  letter-spacing:-0.01em;margin-bottom:4px;
}
.section-card-sub{font-size:12px;color:var(--text-muted);margin-bottom:20px;font-style:italic;}
.section-divider{height:1px;background:var(--border-light);margin:20px 0;}
.section-pdf-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  min-height:36px;padding:8px 13px;border:1px solid var(--border);
  border-radius:10px;background:var(--white);color:var(--text-muted);
  font-family:'DM Sans',sans-serif;font-size:12px;font-weight:700;
  cursor:pointer;transition:border-color 0.15s,color 0.15s,background 0.15s;
  white-space:nowrap;text-decoration:none;
}
.section-pdf-btn:hover{border-color:var(--sage-border);color:var(--sage-dark);background:var(--sage-light);}
.section-pdf-icon{font-size:14px;line-height:1;}
.section-pdf-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}

/* ─── POSITIONING CARD ─── */
.positioning-label{
  font-size:10px;font-weight:600;text-transform:uppercase;
  letter-spacing:0.1em;color:var(--sage-dark);margin-bottom:8px;
}
.positioning-block{
  background:var(--cream);border:1px solid var(--border-light);
  border-radius:12px;padding:18px 20px;margin-bottom:16px;
}
.positioning-text{
  font-size:14px;color:var(--text);line-height:1.7;
}
.positioning-statement{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:18px;font-style:italic;color:var(--charcoal);
  line-height:1.5;
}
.theme-chip{
  display:inline-block;padding:4px 12px;border-radius:20px;
  font-size:12px;font-weight:500;background:var(--sage-light);
  color:var(--sage-dark);border:1px solid var(--sage-border);margin:3px;
}

/* ─── ACTION PLAN CHECKLIST ─── */
.checklist-item{
  display:flex;align-items:flex-start;gap:12px;padding:14px 0;
  border-bottom:1px solid var(--border-light);
}
.checklist-item:last-child{border-bottom:none;}
.check-indicator{
  width:22px;height:22px;border-radius:50%;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;margin-top:1px;
  font-size:12px;border:2px solid var(--border);background:var(--white);
  transition:all 0.2s;
}
.check-indicator.delivered{background:var(--sage);border-color:var(--sage);color:white;}
.check-indicator.in-progress{
  background:var(--white);border-color:var(--gold);
  color:var(--gold);animation:stepGlow 2s ease-in-out infinite;
  box-shadow:0 0 0 3px rgba(184,148,63,0.15);
}
.check-indicator.pending{background:var(--white);border-color:var(--border);color:transparent;}
.check-body{flex:1;}
.check-title{font-size:14px;font-weight:500;color:var(--text);margin-bottom:2px;}
.check-desc{font-size:12px;color:var(--text-muted);line-height:1.5;}
.check-status-tag{
  display:inline-block;padding:2px 8px;border-radius:10px;
  font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;margin-top:6px;
}
.tag-delivered{background:var(--sage-light);color:var(--sage-dark);}
.tag-in-progress{background:var(--gold-light);color:#8B6A1A;}
.tag-pending{background:var(--cream-dark);color:var(--text-light);}

/* ─── DELIVERABLES HUB ─── */
.deliverable-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;}
.deliverable-card{
  border:1px solid var(--border);border-radius:16px;padding:20px;
  background:var(--white);transition:all 0.15s;position:relative;overflow:hidden;
}
.deliverable-card:hover{border-color:var(--sage-border);transform:translateY(-2px);box-shadow:0 4px 16px rgba(60,45,35,0.08);}
.deliverable-card.locked{
  background:var(--cream);border-style:dashed;
  opacity:0.75;cursor:default;
}
.deliverable-card.locked:hover{transform:none;box-shadow:none;}
.deliverable-icon{font-size:28px;margin-bottom:12px;}
.deliverable-name{font-size:14px;font-weight:600;color:var(--charcoal);margin-bottom:4px;}
.deliverable-desc{font-size:12px;color:var(--text-muted);line-height:1.5;margin-bottom:14px;}
.deliverable-status{
  display:inline-flex;align-items:center;gap:5px;
  font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;
}
.status-available{background:var(--sage-light);color:var(--sage-dark);border:1px solid var(--sage-border);}
.status-building{background:var(--gold-light);color:#8B6A1A;border:1px solid var(--gold-border);}
.status-locked{background:var(--cream-dark);color:var(--text-light);border:1px solid var(--border);}
.lock-icon{position:absolute;top:16px;right:16px;font-size:18px;color:var(--border);}
.upgrade-cta{
  margin-top:12px;padding:10px 14px;background:var(--terracotta-light);
  border:1px solid var(--terracotta-border);border-radius:10px;
  font-size:12px;color:var(--terracotta);font-weight:500;line-height:1.4;
}
.upgrade-link{
  color:var(--terracotta);font-weight:600;cursor:pointer;text-decoration:underline;
}

/* ─── COMMUNITY SECTION ─── */
.community-card{
  background:linear-gradient(135deg,var(--sage-light) 0%,var(--cream) 100%);
  border:1px solid var(--sage-border);border-radius:20px;padding:32px;
  text-align:center;
}
.community-icon{font-size:48px;margin-bottom:16px;}
.community-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:26px;font-weight:600;color:var(--charcoal);margin-bottom:8px;
}
.community-desc{font-size:14px;color:var(--text-muted);max-width:480px;margin:0 auto 24px;line-height:1.6;}

/* ─── ACCOUNT SECTION ─── */
/* ─── PROFILE & SETTINGS ─── */
.profile-tabs{display:flex;gap:6px;margin-bottom:24px;flex-wrap:wrap;}
.profile-tab{padding:8px 18px;border-radius:50px;font-size:13px;font-weight:500;cursor:pointer;border:1px solid var(--border);background:var(--white);color:var(--text-muted);transition:all 0.15s;}
.profile-tab:hover{color:var(--text);border-color:var(--sage);}
.profile-tab.active{background:var(--sage);color:#fff;border-color:var(--sage);}
.profile-panel{display:none;}
.profile-panel.active{display:block;}
.profile-section{background:var(--white);border:1px solid var(--border);border-radius:16px;padding:28px;margin-bottom:20px;}
.profile-section-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;color:var(--charcoal);margin-bottom:4px;}
.profile-section-sub{font-size:13px;color:var(--text-muted);margin-bottom:22px;}
.profile-field{margin-bottom:16px;}
.profile-label{display:block;font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:6px;letter-spacing:0.04em;text-transform:uppercase;}
.profile-input{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:10px;font-size:14px;font-family:inherit;color:var(--text);background:var(--white);outline:none;transition:border-color 0.15s;}
.profile-input:focus{border-color:var(--sage);}
.profile-input[readonly]{background:var(--cream);color:var(--text-muted);cursor:default;}
.profile-input-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:600px){.profile-input-row{grid-template-columns:1fr;}}
.profile-save-row{display:flex;align-items:center;gap:12px;margin-top:20px;}
.profile-msg{font-size:13px;font-weight:500;}
.profile-msg.ok{color:var(--sage-dark);}
.profile-msg.err{color:var(--terracotta);}
.profile-divider{height:1px;background:var(--border-light);margin:20px 0;}
.faq-item{border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:10px;}
.faq-question{width:100%;text-align:left;padding:15px 18px;background:var(--white);border:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--text);display:flex;justify-content:space-between;align-items:center;font-family:inherit;}
.faq-question:hover{background:var(--cream);}
.faq-chevron{font-size:12px;color:var(--text-muted);transition:transform 0.2s;flex-shrink:0;}
.faq-answer{display:none;padding:0 18px 15px;font-size:13px;color:var(--text-muted);line-height:1.7;border-top:1px solid var(--border-light);}
.faq-item.open .faq-answer{display:block;}
.faq-item.open .faq-chevron{transform:rotate(180deg);}
.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:4px;}
@media(max-width:600px){.support-grid{grid-template-columns:1fr;}}
.support-card{border:1px solid var(--border);border-radius:12px;padding:18px 20px;text-decoration:none;display:block;transition:all 0.15s;background:#fff;text-align:left;font-family:inherit;cursor:pointer;}
.support-card:hover{border-color:var(--sage);box-shadow:0 2px 10px rgba(122,158,126,0.12);}
.support-card-icon{font-size:22px;margin-bottom:8px;}
.support-card-title{font-size:14px;font-weight:600;color:var(--charcoal);margin-bottom:3px;}
.support-card-desc{font-size:12px;color:var(--text-muted);}
.support-request-form{margin-top:16px;border:1px solid var(--border);border-radius:12px;padding:16px;background:#fff;display:grid;gap:10px;}
.support-request-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.support-request-actions span{font-size:12px;color:var(--text-muted);}
.danger-zone{background:rgba(196,113,75,0.04);border:1px solid var(--terracotta-border);border-radius:16px;padding:24px;}
.danger-zone-title{font-size:14px;font-weight:600;color:var(--terracotta);margin-bottom:14px;}
.btn-logout-full{display:flex;align-items:center;gap:8px;padding:11px 20px;border:1.5px solid var(--terracotta-border);border-radius:10px;background:transparent;color:var(--terracotta);font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.15s;}
.btn-logout-full:hover{background:var(--terracotta);color:#fff;}
/* ─── END PROFILE ─── */
.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
@media(max-width:700px){.account-grid{grid-template-columns:1fr;}}
.account-card{background:var(--white);border:1px solid var(--border);border-radius:16px;padding:24px;}
.account-card-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:18px;font-weight:600;color:var(--charcoal);margin-bottom:16px;
}
.account-row{
  display:flex;justify-content:space-between;align-items:center;
  padding:10px 0;border-bottom:1px solid var(--border-light);font-size:13px;
}
.account-row:last-child{border-bottom:none;}
.account-key{color:var(--text-muted);}
.account-val{font-weight:500;color:var(--text);}
.settings-language-toggle{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:8px;
}
.settings-language-toggle button{
  min-width:58px;
  min-height:36px;
  padding:0 14px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--white);
  color:var(--text-muted);
  font:700 12px/1 'DM Sans',sans-serif;
  letter-spacing:0.04em;
  cursor:pointer;
  transition:background 0.15s,border-color 0.15s,color 0.15s;
}
.settings-language-toggle button:hover{
  border-color:var(--sage-border);
  color:var(--sage-dark);
}
.settings-language-toggle button.active{
  background:var(--sage);
  border-color:var(--sage);
  color:var(--white);
}
.bp-feedback-card{
  background:var(--white);
  border:1.5px solid var(--gold-border,#e8d49a);
  border-radius:14px;
  padding:1.25rem 1.35rem;
  margin-bottom:1.5rem;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:1rem;
  align-items:center;
}
.bp-feedback-eyebrow{
  font-size:0.6rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.14em;
  color:var(--gold,#C09A4A);
  margin-bottom:0.45rem;
}
.bp-feedback-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(1.25rem,3vw,1.6rem);
  font-weight:600;
  color:var(--charcoal);
  line-height:1.15;
  margin-bottom:0.35rem;
}
.bp-feedback-copy{
  font-size:0.84rem;
  color:var(--text-muted);
  line-height:1.65;
  margin:0;
  max-width:620px;
}
.bp-feedback-button{
  background:var(--sage);
  border:none;
  color:var(--white);
  font-size:0.86rem;
  font-weight:700;
  padding:0.82rem 1.15rem;
  border-radius:9px;
  text-decoration:none;
  font-family:inherit;
  cursor:pointer;
  white-space:nowrap;
}
.bp-feedback-button:hover{background:var(--sage-dark);}
.tier-upgrade-card{
  background:linear-gradient(135deg,var(--terracotta-light) 0%,var(--gold-light) 100%);
  border:1px solid var(--terracotta-border);border-radius:16px;padding:24px;
}
.tier-upgrade-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:18px;font-weight:600;color:var(--charcoal);margin-bottom:6px;
}
.tier-upgrade-desc{font-size:13px;color:var(--text-muted);margin-bottom:16px;line-height:1.5;}
.tier-plan-row{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 14px;background:var(--white);border-radius:10px;
  margin-bottom:8px;font-size:13px;border:1px solid var(--border-light);
}
.tier-plan-name{font-weight:600;color:var(--text);}
.tier-plan-price{color:var(--text-muted);font-size:12px;}
.tier-plan-current{
  font-size:10px;font-weight:700;text-transform:uppercase;
  letter-spacing:0.05em;color:var(--sage-dark);padding:2px 8px;
  background:var(--sage-light);border-radius:8px;
}

/* ─── PRIORITY SUPPORT BADGE ─── */
.priority-badge{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 14px;background:linear-gradient(135deg,#FBF8EE,#FDF2EC);
  border:1px solid var(--gold-border);border-radius:20px;
  font-size:12px;font-weight:600;color:var(--gold);
}

/* ─── EMPTY / LOADING ─── */
.empty-state{
  text-align:center;padding:48px 24px;
  background:var(--cream);border:1px dashed var(--border);border-radius:16px;
}
.empty-icon{font-size:32px;margin-bottom:12px;}
.empty-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:20px;color:var(--text-muted);margin-bottom:6px;
}
.empty-sub{font-size:13px;color:var(--text-light);}
.loading{text-align:center;padding:48px;color:var(--text-light);font-size:13px;}
.spinner{
  display:inline-block;width:20px;height:20px;
  border:2px solid var(--border);border-top-color:var(--sage);
  border-radius:50%;animation:spin 0.6s linear infinite;margin-bottom:8px;
}
@keyframes spin{to{transform:rotate(360deg);}}
@keyframes fadeHighlight{0%{background:rgba(122,158,126,0.15);}100%{background:transparent;}}
@keyframes celebFadeIn{from{opacity:0;transform:scale(0.9) translateY(12px);}to{opacity:1;transform:scale(1) translateY(0);}}
.weekly-nudge-card{background:linear-gradient(135deg,#EFF5F0 0%,#FBF8EE 100%);border:1px solid #C2D9C4;border-radius:14px;padding:0;margin:0 0 16px;}
.weekly-nudge-card summary{list-style:none;display:flex;align-items:flex-start;gap:12px;padding:14px 18px;cursor:pointer;}
.weekly-nudge-card summary::-webkit-details-marker{display:none;}
.weekly-nudge-icon{font-size:22px;flex-shrink:0;margin-top:1px;}
.weekly-nudge-body{flex:1;}
.weekly-nudge-summary-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;}
.weekly-nudge-label{font-size:11px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:#7B9E6B;margin-bottom:4px;}
.weekly-nudge-preview{font-size:13px;color:#2D2926;line-height:1.45;font-weight:600;}
.weekly-nudge-chevron{font-size:13px;color:#7B9E6B;padding-top:3px;}
.weekly-nudge-card[open] .weekly-nudge-chevron{transform:rotate(180deg);}
.weekly-nudge-expanded{padding:0 18px 14px 52px;}
.weekly-nudge-text{font-size:13px;color:#2D2926;line-height:1.6;}
.weekly-nudge-dismiss{margin-top:10px;background:none;border:1px solid #C2D9C4;border-radius:8px;cursor:pointer;color:#6F8F72;font-size:12px;font-weight:600;padding:6px 10px;flex-shrink:0;align-self:flex-start;font-family:inherit;}
.journey-next-card{background:linear-gradient(135deg,#FBF5E8 0%,#EFF5F0 100%);border:1.5px solid var(--sage-border);border-radius:18px;padding:28px;margin-bottom:18px;}
.journey-next-kicker{font-size:11px;font-weight:800;letter-spacing:0.12em;text-transform:uppercase;color:var(--sage-dark);margin-bottom:8px;}
.journey-next-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(25px,4vw,34px);font-weight:600;color:var(--charcoal);line-height:1.08;margin-bottom:10px;}
.journey-next-copy{font-size:14px;color:var(--text-muted);line-height:1.65;max-width:680px;margin-bottom:18px;}
.journey-next-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.journey-next-recap{font-size:12px;color:var(--text-muted);line-height:1.45;max-width:360px;}
.score-check-card{background:var(--white);border:1px solid var(--border);border-radius:16px;padding:18px 20px;margin-bottom:18px;}
.score-check-summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--sage-dark);}
.score-check-summary::-webkit-details-marker{display:none;}
.score-check-summary::after{content:'▾';font-size:11px;color:var(--text-light);}
.score-check-card:not([open]) .score-check-summary::after{content:'▸';}
.score-check-card[open] .score-check-summary{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border-light);}
.score-check-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;}
.score-check-kicker{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--sage-dark);margin-bottom:4px;}
.score-check-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:24px;font-weight:600;color:var(--charcoal);line-height:1.1;}
.score-check-count{font-size:12px;font-weight:800;color:var(--sage-dark);background:var(--sage-light);border:1px solid var(--sage-border);border-radius:99px;padding:5px 10px;white-space:nowrap;}
.score-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:8px;}
.score-check-item{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:8px;text-align:left;background:var(--cream);border:1px solid var(--border-light);border-radius:10px;padding:9px 10px;font-family:inherit;cursor:pointer;}
.score-check-item.done{background:var(--sage-light);border-color:var(--sage-border);cursor:default;}
.score-check-dot{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--sage-border);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:#fff;background:var(--white);}
.score-check-item.done .score-check-dot{background:var(--sage);border-color:var(--sage);}
.score-check-label{font-size:12px;color:var(--text);line-height:1.3;min-width:0;}
.score-check-pct{font-size:10px;font-weight:800;color:var(--sage-dark);}
.journey-supporting-tools{background:transparent;border:0;margin:0 0 18px;}
.journey-supporting-tools > summary{list-style:none;cursor:pointer;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:4px 2px 10px;}
.journey-supporting-tools > summary::-webkit-details-marker{display:none;}
.journey-supporting-tools > summary::after{content:' ▾';font-size:11px;color:var(--text-light);}
.journey-supporting-tools:not([open]) > summary::after{content:' ▸';}

/* ─── OVERVIEW QUICK CARDS ─── */
.quick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-bottom:24px;}
.quick-card{
  background:var(--white);border:1px solid var(--border);
  border-radius:16px;padding:20px 22px;text-decoration:none;cursor:pointer;
  transition:all 0.15s;
}
.quick-card:hover{border-color:var(--sage-border);transform:translateY(-2px);box-shadow:0 4px 16px rgba(60,45,35,0.07);}
.quick-card-icon{font-size:24px;margin-bottom:10px;}
.quick-card-label{font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:0.06em;}
.quick-card-value{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;color:var(--charcoal);}
.quick-card-sub{font-size:11px;color:var(--text-light);margin-top:4px;}

/* ─── CONTENT LIBRARY ─── */
.cl-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap;}
.cl-search{flex:1;min-width:180px;display:flex;align-items:center;gap:8px;background:var(--white);border:1px solid var(--border);border-radius:10px;padding:8px 14px;}
.cl-search input{border:none;outline:none;font-size:14px;color:var(--text);background:transparent;width:100%;}
.cl-search-icon{color:var(--text-light);font-size:13px;flex-shrink:0;}
.cl-filters{display:flex;gap:8px;}
.cl-filter-select{padding:8px 14px;border:1px solid var(--border);border-radius:10px;font-size:13px;color:var(--text);background:var(--white);cursor:pointer;outline:none;}
.cl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;}
.cl-card{background:var(--white);border:1px solid var(--border);border-radius:16px;padding:0;cursor:pointer;transition:all 0.15s;display:flex;flex-direction:column;overflow:hidden;}
.cl-card:hover{border-color:var(--sage-border);transform:translateY(-2px);}
.cl-card-top{padding:16px 18px 12px;}
.cl-card-type{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:10px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;margin-bottom:10px;background:var(--sage-light);color:var(--sage-dark);border:1px solid var(--sage-border);}
.cl-card-type.type-reels,.cl-card-type.type-reels_script{background:var(--terracotta-light);color:#8B3E1F;border-color:var(--terracotta-border);}
.cl-card-type.type-carousel{background:#F5F0FF;color:#5B35A3;border-color:#D4C5F5;}
.cl-card-type.type-story{background:var(--gold-light);color:#8B6A1A;border-color:var(--gold-border);}
.cl-card-type.type-blog_draft,.cl-card-type.type-email_draft{background:var(--cream-dark);color:var(--text-muted);border-color:var(--border);}
.cl-card-hook{font-size:14px;font-weight:600;color:var(--charcoal);line-height:1.4;margin-bottom:8px;}
.cl-card-caption{font-size:12px;color:var(--text-muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.cl-card-visual{background:var(--cream);border-top:1px solid var(--border-light);padding:8px 18px;font-size:11px;color:var(--text-muted);line-height:1.4;display:flex;align-items:flex-start;gap:6px;}
.cl-card-visual-icon{font-size:12px;flex-shrink:0;margin-top:1px;opacity:0.5;}
.cl-card-hashtags{padding:0 18px 10px;display:flex;flex-wrap:wrap;gap:4px;}
.cl-card-hashtag{font-size:11px;color:var(--sage-dark);background:var(--sage-light);padding:2px 8px;border-radius:20px;}
.cl-card-footer{padding:10px 18px;border-top:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between;margin-top:auto;}
.cl-status{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.04em;padding:2px 8px;border-radius:20px;}
.cl-status.draft{background:var(--cream-dark);color:var(--text-muted);}
.cl-status.ready{background:#E8F5E9;color:#2E7D32;}
.cl-status.published{background:var(--sage-light);color:var(--sage-dark);}
.cl-card-date{font-size:11px;color:var(--text-light);}
.cl-copy-btn{background:none;border:1px solid var(--border);border-radius:6px;padding:3px 8px;font-size:11px;color:var(--text-muted);cursor:pointer;font-family:inherit;transition:all 0.1s;}
.cl-copy-btn:hover{border-color:var(--sage);color:var(--sage-dark);}
/* Legacy compat */
.cl-card-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:17px;font-weight:600;color:var(--charcoal);margin-bottom:6px;line-height:1.3;}
.cl-card-body{font-size:12px;color:var(--text-muted);line-height:1.5;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.cl-card-meta{display:flex;align-items:center;justify-content:space-between;}
.cl-status{padding:2px 8px;border-radius:20px;font-size:10px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;}
.cl-status.draft{background:var(--gold-light);color:#8B6A1A;border:1px solid var(--gold-border);}
.cl-status.published{background:var(--sage-light);color:var(--sage-dark);border:1px solid var(--sage-border);}
.cl-date{font-size:11px;color:var(--text-light);}
.cl-new-btn{display:flex;align-items:center;gap:6px;padding:9px 18px;background:var(--sage);color:var(--white);border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:background 0.15s;white-space:nowrap;}
.cl-new-btn:hover{background:var(--sage-dark);}
/* ── AI Content Grid ── */
.ai-piece-card{background:var(--white);border:1px solid var(--border);border-radius:16px;padding:0;overflow:hidden;transition:box-shadow 0.15s;}
.ai-piece-card:hover{box-shadow:0 4px 20px rgba(0,0,0,0.08);}
.ai-piece-card.is-new{border-color:var(--sage-border);box-shadow:0 0 0 2px rgba(122,158,126,0.15);}
.ai-piece-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px 10px;}
.ai-piece-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.ai-platform-badge{font-size:10px;font-weight:700;letter-spacing:0.05em;padding:3px 8px;border-radius:20px;background:var(--cream-dark);color:var(--text-muted);text-transform:uppercase;}
.ai-platform-badge.instagram{background:#F3E8FF;color:#7C3AED;}
.ai-platform-badge.facebook{background:#EBF4FF;color:#1D6FA4;}
.ai-platform-badge.tiktok{background:#F0FDF4;color:#166534;}
.ai-platform-badge.linkedin{background:#EBF5FB;color:#1A56DB;}
.ai-voice-badge{font-size:10px;font-weight:700;letter-spacing:0.05em;padding:3px 8px;border-radius:20px;}
.ai-voice-badge.teaching{background:#EEF7F0;color:#3A7D44;}
.ai-voice-badge.story{background:#FEF9EC;color:#8A6020;}
.ai-voice-badge.connection{background:#F9EEF5;color:#8B3A6E;}
.ai-voice-badge.practice{background:#EEF4FF;color:#3654A0;}
.ai-voice-badge.philosophy{background:#F5F0FF;color:#5B3EA0;}
.ai-new-badge{font-size:10px;font-weight:700;background:var(--sage);color:white;padding:2px 7px;border-radius:20px;text-transform:uppercase;letter-spacing:0.04em;}
.ai-piece-hook{font-size:14px;font-weight:600;color:var(--text);line-height:1.5;padding:0 16px 10px;cursor:pointer;}
.ai-piece-pillar{font-size:11px;color:var(--text-light);padding:0 16px 10px;font-style:italic;}
.ai-piece-actions{display:flex;align-items:center;gap:8px;padding:10px 16px;border-top:1px solid var(--cream-dark);flex-wrap:wrap;}
.ai-piece-expand-btn{font-size:12px;color:var(--sage-dark);background:none;border:none;cursor:pointer;padding:4px 0;font-weight:600;text-decoration:underline;text-underline-offset:2px;white-space:nowrap;}
.ai-piece-copy-btn{font-size:12px;font-weight:600;padding:5px 12px;border-radius:8px;border:1px solid var(--border);background:var(--white);color:var(--text);cursor:pointer;transition:all 0.12s;white-space:nowrap;}
.ai-piece-copy-btn:hover{background:var(--cream-dark);}
.ai-piece-posted-btn{font-size:12px;font-weight:600;padding:5px 12px;border-radius:8px;border:1px solid var(--sage-border);background:var(--sage-light);color:var(--sage-dark);cursor:pointer;transition:all 0.12s;white-space:nowrap;}
.ai-piece-posted-btn.posted{background:var(--sage);color:white;border-color:var(--sage);}
.ai-piece-details{display:none;padding:14px 16px;border-top:1px solid var(--cream-dark);background:var(--cream);gap:16px;flex-direction:column;}
.ai-piece-details.open{display:flex;}
.ai-caption-block{font-size:13px;color:var(--text);line-height:1.7;white-space:pre-wrap;background:var(--white);border:1px solid var(--border);border-radius:10px;padding:12px 14px;}
.ai-hashtags-block{font-size:12px;color:var(--sage-dark);font-weight:500;line-height:1.6;}
.ai-visual-block{font-size:12px;color:var(--text-muted);font-style:italic;line-height:1.5;}
.ai-coach-block{display:flex;gap:10px;align-items:flex-start;background:var(--gold-light);border:1px solid var(--gold-border);border-radius:10px;padding:10px 12px;}
.ai-coach-icon{font-size:16px;flex-shrink:0;margin-top:1px;}
.ai-coach-text{font-size:12px;color:var(--text);line-height:1.6;}
.ai-detail-section{display:flex;flex-direction:column;gap:6px;}
.ai-detail-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--text-light);}
.ai-content-empty{text-align:center;padding:48px 20px;color:var(--text-muted);}
.ai-content-empty .empty-icon{font-size:32px;margin-bottom:12px;color:var(--sage);}
.ai-content-empty .empty-title{font-size:15px;font-weight:600;color:var(--text);margin-bottom:6px;}
.ai-content-empty .empty-sub{font-size:13px;line-height:1.5;}
/* AI Content Grid layout */
.ai-pieces-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;}
/* Generate More Modal */
.gen-dir-btn{font-size:12px;font-weight:600;padding:6px 14px;border-radius:20px;border:1px solid var(--border);background:var(--white);color:var(--text);cursor:pointer;transition:all 0.12s;}
.gen-dir-btn:hover{border-color:var(--sage-border);background:var(--sage-light);color:var(--sage-dark);}
.gen-dir-btn.active{border-color:var(--sage);background:var(--sage-light);color:var(--sage-dark);}

/* ─── DRAWER (shared for content editor) ─── */
.drawer-overlay{position:fixed;inset:0;background:rgba(44,44,44,0.35);z-index:200;opacity:0;pointer-events:none;transition:opacity 0.25s;}
.drawer-overlay.open{opacity:1;pointer-events:all;}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(600px,100vw);background:var(--white);z-index:201;transform:translateX(100%);transition:transform 0.3s cubic-bezier(0.4,0,0.2,1);display:flex;flex-direction:column;box-shadow:-8px 0 40px rgba(44,44,44,0.12);}
.drawer.open{transform:translateX(0);}
.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border);flex-shrink:0;}
.drawer-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;color:var(--charcoal);}
.drawer-close{width:32px;height:32px;border:none;background:var(--cream-dark);border-radius:8px;cursor:pointer;font-size:16px;color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:all 0.15s;}
.drawer-close:hover{background:var(--border);color:var(--text);}
.drawer-body{flex:1;overflow-y:auto;padding:24px;}
/* ─── FORMAT PICKER ─── */
.fmt-cat-btn{padding:5px 12px;border-radius:20px;border:1px solid var(--border);background:var(--white);color:var(--text-muted);font-size:11px;font-weight:600;letter-spacing:0.03em;cursor:pointer;transition:all 0.15s;}
.fmt-cat-btn:hover{border-color:var(--sage-border);color:var(--sage-dark);}
.fmt-cat-btn.active{background:var(--sage-light);color:var(--sage-dark);border-color:var(--sage-border);}
.format-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:12px;cursor:pointer;transition:all 0.15s;display:flex;flex-direction:column;gap:4px;}
.format-card:hover{border-color:var(--sage-border);transform:translateY(-1px);box-shadow:0 3px 12px rgba(60,45,35,0.07);}
.format-card-icon{font-size:22px;margin-bottom:2px;}
.format-card-name{font-size:12px;font-weight:600;color:var(--text);line-height:1.3;}
.format-card-desc{font-size:10px;color:var(--text-muted);line-height:1.4;}
.drawer-footer{padding:16px 24px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;}
.editor-field{margin-bottom:20px;}
.editor-label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--text-muted);margin-bottom:8px;}
.editor-input{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:10px;font-size:14px;color:var(--text);background:var(--white);font-family:'DM Sans',sans-serif;outline:none;transition:border-color 0.15s;}
.editor-input:focus{border-color:var(--sage);box-shadow:0 0 0 2px rgba(122,158,126,0.15);}
.editor-textarea{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:10px;font-size:14px;color:var(--text);background:var(--white);font-family:'DM Sans',sans-serif;outline:none;transition:border-color 0.15s;min-height:240px;resize:vertical;line-height:1.6;}
.editor-textarea:focus{border-color:var(--sage);box-shadow:0 0 0 2px rgba(122,158,126,0.15);}
.editor-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.editor-select{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:10px;font-size:14px;color:var(--text);background:var(--white);font-family:'DM Sans',sans-serif;outline:none;cursor:pointer;}
.editor-select:focus{border-color:var(--sage);}

/* ─── CONTENT STUDIO (Templates) ─── */
.template-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:24px;}
.template-card{background:var(--white);border:1px solid var(--border);border-radius:18px;padding:24px;transition:all 0.15s;}
.template-card:hover{border-color:var(--sage-border);box-shadow:0 4px 16px rgba(60,45,35,0.07);}
.template-card-icon{font-size:28px;margin-bottom:12px;}
.template-card-name{font-family:'Cormorant Garamond',Georgia,serif;font-size:18px;font-weight:600;color:var(--charcoal);margin-bottom:6px;}
.template-card-desc{font-size:13px;color:var(--text-muted);line-height:1.5;margin-bottom:16px;}
.template-example{background:var(--cream);border:1px solid var(--border-light);border-radius:10px;padding:12px 14px;margin-bottom:16px;}
.template-example-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--text-light);margin-bottom:6px;}
.template-example-item{font-size:12px;color:var(--text-muted);margin-bottom:3px;line-height:1.4;}
.template-generate-btn{width:100%;padding:10px;background:var(--terracotta-light);color:var(--terracotta);border:1px solid var(--terracotta-border);border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.15s;}
.template-generate-btn:hover{background:var(--terracotta);color:var(--white);}

/* ─── AI CHAT PANEL ─── */
.ai-panel-overlay{position:fixed;inset:0;background:rgba(44,44,44,0.35);z-index:300;opacity:0;pointer-events:none;transition:opacity 0.25s;}
.ai-panel-overlay.open{opacity:1;pointer-events:all;}
.ai-panel{position:fixed;top:0;right:0;bottom:0;width:min(420px,100vw);background:var(--white);z-index:301;transform:translateX(100%);transition:transform 0.3s cubic-bezier(0.4,0,0.2,1);display:flex;flex-direction:column;box-shadow:-8px 0 40px rgba(44,44,44,0.15);}
.ai-panel.open{transform:translateX(0);}
.ai-panel-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 20px 16px;border-bottom:1px solid var(--border);flex-shrink:0;background:linear-gradient(135deg,var(--sage-light) 0%,var(--white) 100%);}
.ai-panel-header-text{flex:1;}
.ai-panel-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:19px;font-weight:600;color:var(--charcoal);margin-bottom:3px;}
.ai-panel-subtitle{font-size:12px;color:var(--text-muted);font-style:italic;}
.ai-panel-close{width:32px;height:32px;border:none;background:rgba(255,255,255,0.7);border-radius:8px;cursor:pointer;font-size:16px;color:var(--text-muted);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all 0.15s;margin-left:12px;}
.ai-panel-close:hover{background:var(--border);}
.ai-messages{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:12px;}
.ai-msg{max-width:88%;display:flex;flex-direction:column;gap:4px;}
.ai-msg.user{align-self:flex-end;align-items:flex-end;}
.ai-msg.assistant{align-self:flex-start;}
.ai-msg-bubble{padding:10px 14px;border-radius:16px;font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-word;}
.ai-msg.user .ai-msg-bubble{background:var(--sage);color:var(--white);border-radius:16px 16px 4px 16px;}
.ai-msg.assistant .ai-msg-bubble{background:var(--cream);border:1px solid var(--border);color:var(--text);border-radius:16px 16px 16px 4px;}
.ai-msg-time{font-size:10px;color:var(--text-light);}
.ai-save-to-lib{display:inline-flex;align-items:center;gap:5px;margin-top:6px;padding:5px 12px;background:var(--terracotta-light);color:var(--terracotta);border:1px solid var(--terracotta-border);border-radius:8px;font-size:11px;font-weight:600;cursor:pointer;transition:all 0.15s;border:none;}
.ai-save-to-lib:hover{background:var(--terracotta);color:var(--white);}
.ai-input-area{padding:12px 20px 16px;border-top:1px solid var(--border);flex-shrink:0;}
.ai-input-row{display:flex;gap:8px;align-items:flex-end;}
.ai-textarea{flex:1;padding:10px 14px;border:1px solid var(--border);border-radius:12px;font-size:13px;color:var(--text);background:var(--white);font-family:'DM Sans',sans-serif;outline:none;resize:none;min-height:40px;max-height:120px;line-height:1.5;transition:border-color 0.15s;}
.ai-textarea:focus{border-color:var(--sage);}
.ai-send-btn{padding:10px 16px;background:var(--sage);color:var(--white);border:none;border-radius:12px;font-size:13px;font-weight:600;cursor:pointer;transition:background 0.15s;white-space:nowrap;flex-shrink:0;}
.ai-send-btn:hover{background:var(--sage-dark);}
.ai-send-btn:disabled{background:var(--border);color:var(--text-light);cursor:not-allowed;}
.ai-typing{display:flex;align-items:center;gap:5px;padding:10px 14px;background:var(--cream);border:1px solid var(--border);border-radius:16px 16px 16px 4px;width:fit-content;}
.ai-typing span{width:5px;height:5px;background:var(--text-muted);border-radius:50%;animation:aiTyping 1.2s ease-in-out infinite;}
.ai-typing span:nth-child(2){animation-delay:0.2s;}
.ai-typing span:nth-child(3){animation-delay:0.4s;}
@keyframes aiTyping{0%,80%,100%{transform:scale(0.6);opacity:0.4;}40%{transform:scale(1);opacity:1;}}
.ai-clear-btn{font-size:11px;color:var(--text-light);background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:6px;}
.ai-clear-btn:hover{color:var(--text-muted);background:var(--cream-dark);}

/* ─── VALUE LADDER CARDS ─── */
.vl-container{position:relative;padding:0;}
.vl-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;flex-wrap:wrap;gap:12px;}
.vl-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:26px;font-weight:600;color:var(--charcoal);letter-spacing:-0.01em;}
.vl-sub{font-size:14px;color:var(--text-muted);line-height:1.6;margin-bottom:24px;max-width:560px;}
.vl-actions{display:flex;gap:10px;align-items:center;}
.vl-ladder{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;align-items:end;}
@media(max-width:600px){.vl-ladder{grid-template-columns:1fr;}}

/* Individual tier card */
.vl-card{position:relative;background:var(--white);border-radius:20px;overflow:hidden;transition:transform 0.2s, box-shadow 0.2s;cursor:default;}
.vl-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,0.08);}
.vl-card-accent{height:5px;width:100%;}
.vl-card-body{padding:24px 22px 20px;}
.vl-card-tier-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:20px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:14px;}
.vl-card-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:14px;}
.vl-card-name{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;color:var(--charcoal);line-height:1.25;margin-bottom:6px;}
.vl-card-price{font-size:28px;font-weight:700;letter-spacing:-0.02em;margin-bottom:2px;}
.vl-card-range{font-size:11px;color:var(--text-light);margin-bottom:14px;}
.vl-card-desc{font-size:13px;color:var(--text-muted);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.vl-card-desc.expanded{-webkit-line-clamp:unset;overflow:visible;}

/* Expandable details */
.vl-card-expand{margin-top:14px;padding-top:14px;border-top:1px solid var(--border-light);display:none;}
.vl-card-expand.open{display:block;}
.vl-expand-row{margin-bottom:10px;}
.vl-expand-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--text-light);margin-bottom:3px;}
.vl-expand-value{font-size:13px;color:var(--text);line-height:1.5;}
.vl-card-toggle{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;padding:10px;border:none;background:transparent;font-size:12px;font-weight:600;color:var(--text-light);cursor:pointer;transition:color 0.15s;}
.vl-card-toggle:hover{color:var(--sage-dark);}
.vl-card-toggle svg{width:14px;height:14px;transition:transform 0.2s;}
.vl-card-toggle.open svg{transform:rotate(180deg);}

/* Card edit inline */
.vl-card-edit{display:none;padding:16px 22px 20px;background:var(--cream);border-top:1px solid var(--border-light);}
.vl-card-edit.open{display:block;}
.vl-edit-field{margin-bottom:12px;}
.vl-edit-field label{display:block;font-size:11px;font-weight:600;color:var(--text-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:0.04em;}
.vl-edit-field input,.vl-edit-field textarea{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:10px;font-family:'DM Sans',sans-serif;font-size:13px;color:var(--text);background:var(--white);transition:border-color 0.15s;}
.vl-edit-field input:focus,.vl-edit-field textarea:focus{border-color:var(--sage);outline:none;}
.vl-edit-field textarea{min-height:70px;resize:vertical;}
.vl-edit-actions{display:flex;gap:8px;justify-content:flex-end;}

/* Tier-specific accent colors */
.vl-card[data-tier="0"]{border:1px solid var(--sage-border);}
.vl-card[data-tier="0"] .vl-card-accent{background:linear-gradient(90deg,var(--sage),#9DC0A0);}
.vl-card[data-tier="0"] .vl-card-tier-badge{background:var(--sage-light);color:var(--sage-dark);}
.vl-card[data-tier="0"] .vl-card-icon{background:var(--sage-light);}
.vl-card[data-tier="0"] .vl-card-price{color:var(--sage-dark);}

.vl-card[data-tier="1"]{border:1px solid var(--gold-border);}
.vl-card[data-tier="1"] .vl-card-accent{background:linear-gradient(90deg,var(--gold),#D4B85A);}
.vl-card[data-tier="1"] .vl-card-tier-badge{background:var(--gold-light);color:#8B6A1A;}
.vl-card[data-tier="1"] .vl-card-icon{background:var(--gold-light);}
.vl-card[data-tier="1"] .vl-card-price{color:#8B6A1A;}

.vl-card[data-tier="2"]{border:1px solid #D4C4E8;}
.vl-card[data-tier="2"] .vl-card-accent{background:linear-gradient(90deg,#8b5cf6,#A78BFA);}
.vl-card[data-tier="2"] .vl-card-tier-badge{background:#F5F0FF;color:#6D28D9;}
.vl-card[data-tier="2"] .vl-card-icon{background:#F5F0FF;}
.vl-card[data-tier="2"] .vl-card-price{color:#6D28D9;}

.vl-card[data-tier="3"]{border:1px solid var(--terracotta-border);box-shadow:0 4px 20px rgba(196,113,75,0.12);}
.vl-card[data-tier="3"] .vl-card-accent{background:linear-gradient(90deg,var(--terracotta),#D4896A);}
.vl-card[data-tier="3"] .vl-card-tier-badge{background:var(--terracotta-light);color:#9A4D2E;}
.vl-card[data-tier="3"] .vl-card-icon{background:var(--terracotta-light);}
.vl-card[data-tier="3"] .vl-card-price{color:#9A4D2E;}

/* Legacy compat aliases */
.ob-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:12px;}
.ob-actions{display:flex;gap:10px;align-items:center;}
.ob-refine-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:var(--gold-light);color:#8B6A1A;border:1px solid var(--gold-border);border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.15s;}
.ob-refine-btn:hover{background:var(--gold);color:var(--white);border-color:var(--gold);}
.ob-save-btn{padding:10px 20px;background:var(--sage);color:var(--white);border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:background 0.15s;}
.ob-save-btn:hover{background:var(--sage-dark);}
.ob-save-btn:disabled{background:var(--border);color:var(--text-light);cursor:not-allowed;}
.ob-saved-note{font-size:12px;color:var(--sage-dark);font-style:italic;}

/* ─── UPGRADE GATE ─── */
.upgrade-gate{background:var(--white);border:1px solid var(--border);border-radius:18px;padding:36px 32px;text-align:center;}
.upgrade-gate-icon{font-size:36px;margin-bottom:14px;}
.upgrade-gate-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:24px;font-weight:600;color:var(--charcoal);margin-bottom:8px;}
.upgrade-gate-desc{font-size:14px;color:var(--text-muted);line-height:1.6;margin-bottom:20px;max-width:420px;margin-left:auto;margin-right:auto;}
.upgrade-gate-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:20px;font-size:11px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;margin-bottom:16px;background:var(--gold-light);color:#8B6A1A;border:1px solid var(--gold-border);}

/* ─── FOUNDATION DELIVERABLES ─── */
.foundation-section{margin-bottom:24px;}
.foundation-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:20px;}
.foundation-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;font-weight:600;color:var(--charcoal);letter-spacing:-0.01em;margin-bottom:4px;}
.foundation-sub{font-size:13px;color:var(--text-muted);}
.foundation-progress-wrap{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.foundation-progress-label{font-size:12px;font-weight:600;color:var(--text-muted);}
.foundation-progress-bar{width:120px;height:6px;background:var(--border);border-radius:4px;overflow:hidden;}
.foundation-progress-fill{height:100%;background:var(--sage);border-radius:4px;transition:width 0.4s ease;}
.foundation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;}
.fd-card{background:var(--white);border:1px solid var(--border);border-radius:18px;padding:22px;cursor:pointer;transition:all 0.2s;position:relative;overflow:hidden;}
.fd-card:hover{border-color:var(--sage-border);box-shadow:0 4px 20px rgba(122,158,126,0.12);transform:translateY(-1px);}
.fd-card.finalized{border-color:var(--sage-border);background:linear-gradient(135deg,var(--white) 0%,var(--sage-light) 100%);}
.fd-card.locked{opacity:0.6;cursor:not-allowed;pointer-events:none;}
.fd-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px;}
.fd-card-icon{font-size:24px;line-height:1;}
.fd-status-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;}
.fd-status-not-started{background:var(--cream-dark);color:var(--text-muted);}
.fd-status-in-progress{background:#FFF8E6;color:#8B6A1A;border:1px solid var(--gold-border);}
.fd-status-finalized{background:var(--sage-light);color:var(--sage-dark);border:1px solid var(--sage-border);}
.fd-status-locked{background:var(--cream-dark);color:var(--text-light);}
.fd-card-name{font-family:'Cormorant Garamond',Georgia,serif;font-size:17px;font-weight:600;color:var(--charcoal);margin-bottom:6px;letter-spacing:-0.01em;}
.fd-card-preview{font-size:12px;color:var(--text-muted);line-height:1.5;margin-bottom:14px;min-height:54px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.fd-card-cta{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:10px;font-size:12px;font-weight:600;border:none;cursor:pointer;transition:all 0.15s;}
.fd-cta-primary{background:var(--sage);color:var(--white);}
.fd-cta-primary:hover{background:var(--sage-dark);}
.fd-cta-refine{background:transparent;color:var(--sage-dark);border:1px solid var(--sage-border);}
.fd-cta-refine:hover{background:var(--sage-light);}
.fd-finalized-check{position:absolute;top:16px;right:16px;width:22px;height:22px;border-radius:50%;background:var(--sage);color:white;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:bold;}
.fd-teaser{margin-top:16px;padding:14px 18px;background:linear-gradient(135deg,var(--gold-light) 0%,#FEF9F0 100%);border:1px solid var(--gold-border);border-radius:12px;display:flex;align-items:center;gap:10px;font-size:13px;color:#8B6A1A;}
.fd-teaser-icon{font-size:18px;flex-shrink:0;}
.ai-finalize-row{padding:10px 16px 16px;border-top:1px solid var(--border-light);}
.ai-finalize-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:11px 20px;background:linear-gradient(135deg,var(--sage) 0%,var(--sage-dark) 100%);color:var(--white);border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:opacity 0.15s;}
.ai-finalize-btn:hover{opacity:0.9;}

/* ─── RESPONSIVE ─── */
@media(max-width:900px), (hover:none) and (pointer:coarse){
  .pipeline-step{width:80px;}
  .step-label{font-size:9.5px;}
  .page-content{padding:24px;}
  .quick-grid,
  .cl-grid,
  .ai-pieces-grid,
  .template-grid{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));}
  .foundation-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:640px), (hover:none) and (pointer:coarse){
  :root{--sidebar-w:0px;}
  .sidebar{display:none;}
  body{font-size:14.5px;}
  .top-bar{
    min-height:62px;
    height:auto;
    padding:8px 12px;
    gap:8px;
  }
  .top-bar-title{
    min-width:0;
    flex:1;
    font-size:20px;
    line-height:1.05;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .top-bar-right{
    gap:6px;
    min-width:0;
    flex-shrink:1;
  }
  .top-bar-meta{
    max-width:58px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .tier-badge{
    padding:4px 8px;
    max-width:106px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .page-content{padding:18px 16px;}
  .welcome-header{padding:20px 20px;}
  .section-card{padding:20px;}
  .bp-feedback-card{
    grid-template-columns:1fr;
    padding:1.15rem;
    gap:0.9rem;
  }
  .bp-feedback-copy{
    max-width:none;
    font-size:0.9rem;
    line-height:1.65;
  }
  .bp-feedback-button{
    width:100%;
    min-height:48px;
    white-space:normal;
  }
  .pipeline-step{width:60px;}
  .step-label{font-size:9px;}
  .pipeline-connector{min-width:4px;}
  .account-grid{grid-template-columns:1fr;}
  .quick-grid,
  .cl-grid,
  .ai-pieces-grid,
  .template-grid,
  .foundation-grid{grid-template-columns:1fr;}
}
@media(max-width:1024px), (hover:none) and (pointer:coarse){
  :root{--sidebar-w:0px;}
  #app{width:100%;max-width:100vw;}
  .main{width:100%;min-width:0;}
  .page-content{padding:18px 16px;}
}

/* ─── JOURNEY NAV ─── */
.journey-stage{margin-bottom:2px;}
.stage-header{
  display:flex;align-items:center;gap:8px;
  padding:9px 16px 9px 20px;cursor:pointer;
  border-left:3px solid transparent;
  transition:all 0.12s;
  user-select:none;
}
.stage-header:hover{background:var(--cream);}
.stage-header.active-stage{border-left-color:var(--sage);background:var(--sage-light);}
.stage-header.locked-stage{cursor:default;opacity:0.55;}
.stage-header.locked-stage:hover{background:transparent;}
.stage-icon{font-size:14px;flex-shrink:0;width:18px;text-align:center;}
.stage-name{font-size:13px;font-weight:600;color:var(--charcoal);flex:1;}
.stage-badge{
  display:inline-flex;align-items:center;
  padding:2px 8px;border-radius:10px;
  font-size:10px;font-weight:700;letter-spacing:0.03em;
  white-space:nowrap;flex-shrink:0;
}
.stage-badge.done{background:var(--sage-light);color:var(--sage-dark);border:1px solid var(--sage-border);}
.stage-badge.in-progress{background:var(--gold-light);color:#8B6A1A;border:1px solid var(--gold-border);}
.stage-badge.locked{background:var(--cream-dark);color:var(--text-light);border:1px solid var(--border);}
.stage-toggle{font-size:11px;color:var(--text-light);transition:transform 0.15s;flex-shrink:0;}
.stage-toggle.open{transform:rotate(180deg);}
.stage-items{overflow:hidden;max-height:0;transition:max-height 0.25s ease;}
.stage-items.open{max-height:300px;}
.nav-sub-item{
  display:flex;align-items:center;gap:8px;
  padding:7px 16px 7px 40px;
  font-size:12px;font-weight:500;color:var(--text-muted);
  cursor:pointer;border-left:3px solid transparent;
  text-decoration:none;transition:all 0.1s;
}
.nav-sub-item:hover{color:var(--text);background:rgba(122,158,126,0.05);}
.nav-sub-item.active{
  color:var(--sage-dark);background:var(--sage-light);
  border-left-color:var(--sage);font-weight:600;
}
.sub-check{
  width:16px;height:16px;border-radius:50%;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  font-size:9px;font-weight:700;
  border:1.5px solid var(--border);background:var(--white);
  color:transparent;
}
.sub-check.done{background:var(--sage);border-color:var(--sage);color:white;}
.sub-check.in-progress{background:var(--white);border-color:var(--gold);color:var(--gold);}

/* ─── HOME STAGE CARD (dashboard overview) ─── */
.stage-home-card{
  background:var(--white);border:1px solid var(--border);
  border-radius:20px;padding:28px 32px;margin-bottom:24px;
  position:relative;overflow:hidden;
}
.stage-home-card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--sage) 0%,var(--gold) 60%,var(--terracotta) 100%);
}
.stage-home-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:22px;font-weight:600;color:var(--charcoal);
  letter-spacing:-0.01em;margin-bottom:4px;
}
.stage-home-sub{font-size:13px;color:var(--text-muted);margin-bottom:20px;}
.journey-stages-grid{
  display:flex;align-items:flex-start;gap:0;margin-bottom:20px;
}
.journey-step-wrap{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;text-align:center;}
.journey-step-circle{
  width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:14px;border:2px solid var(--border);background:var(--white);
  position:relative;z-index:1;
}
.journey-step-circle.done{border-color:var(--sage);background:var(--sage);color:white;font-size:12px;}
.journey-step-circle.current{
  border-color:var(--sage);background:var(--white);
  box-shadow:0 0 0 5px rgba(122,158,126,0.15);
  animation:stepGlow 2s ease-in-out infinite;
}
.journey-step-circle.locked{border-color:var(--border-light);background:var(--cream);color:var(--border);}
.journey-step-label{font-size:11px;font-weight:500;color:var(--text-light);line-height:1.3;}
.journey-step-label.done{color:var(--sage-dark);}
.journey-step-label.current{color:var(--text);font-weight:600;}
.journey-connector{flex:1;height:2px;margin-top:17px;background:var(--border);align-self:flex-start;}
.journey-connector.done{background:var(--sage);}
.next-cta-box{
  background:linear-gradient(135deg,var(--sage-light) 0%,#F8FCF8 100%);
  border:1px solid var(--sage-border);border-radius:14px;
  padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;
}
.next-cta-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--sage-dark);margin-bottom:4px;}
.next-cta-text{font-size:14px;font-weight:500;color:var(--charcoal);}
.next-cta-btn{
  flex-shrink:0;padding:10px 18px;background:var(--sage);color:var(--white);
  border:none;border-radius:10px;font-size:13px;font-weight:600;
  cursor:pointer;transition:background 0.15s;white-space:nowrap;
}
.next-cta-btn:hover{background:var(--sage-dark);}
.journey-clarity-cta{
  margin-top:18px;background:linear-gradient(135deg,#FFF7F2 0%,var(--white) 100%);
  border:1px solid rgba(196,113,74,0.28);border-radius:14px;
  padding:20px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;
  box-shadow:0 4px 18px rgba(196,113,74,0.08);
}
.journey-clarity-kicker{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--terracotta);margin-bottom:5px;}
.journey-clarity-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;font-weight:600;color:var(--charcoal);line-height:1.15;margin-bottom:6px;}
.journey-clarity-copy{font-size:13px;color:var(--text-muted);line-height:1.6;max-width:620px;}
.journey-clarity-btn{background:var(--terracotta);color:#fff;border:none;border-radius:10px;padding:11px 18px;font-size:13px;font-weight:700;cursor:pointer;font-family:inherit;white-space:nowrap;}
.journey-clarity-btn:hover{filter:brightness(.95);}
@media(max-width:720px), (hover:none) and (pointer:coarse){
  .journey-clarity-cta{grid-template-columns:1fr;padding:18px;}
  .journey-clarity-btn{width:100%;}
}

/* ─── DELIVERABLE PAGE ─── */
.deliverable-page-header{
  background:var(--white);border:1px solid var(--border);
  border-radius:20px;padding:24px 28px;margin-bottom:20px;
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
}
.deliv-breadcrumb{font-size:11px;color:var(--text-light);margin-bottom:6px;letter-spacing:0.04em;text-transform:uppercase;}
.deliv-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:26px;font-weight:600;color:var(--charcoal);letter-spacing:-0.01em;margin-bottom:4px;
}
.deliv-sub{font-size:13px;color:var(--text-muted);}
.deliv-status-badge{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;
  white-space:nowrap;flex-shrink:0;
}
.deliv-status-done{background:var(--sage-light);color:var(--sage-dark);border:1px solid var(--sage-border);}
.deliv-status-pending{background:var(--cream-dark);color:var(--text-muted);border:1px solid var(--border);}
.deliv-status-finalized{background:var(--sage-light);color:var(--sage-dark);border:1px solid var(--sage-border);}
.deliv-status-inprogress,.deliv-status-in-progress{background:#FFF8E1;color:#8B6914;border:1px solid #E6D5A0;}

.discovery-block{
  background:var(--white);border:1px solid var(--border);
  border-radius:16px;padding:24px 28px;margin-bottom:16px;
}
.discovery-block-label{
  font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;
  color:var(--sage-dark);margin-bottom:10px;
}
.discovery-block-text{font-size:14px;color:var(--text);line-height:1.7;}

/* ── BRAND VOICE VISUAL ── */
.bv-visual { margin-bottom:24px; }
.bv-summary { font-size:14px;color:var(--text-muted);line-height:1.6;margin-bottom:20px;font-style:italic; }
.bv-spectrum-section { margin-bottom:20px; }
.bv-section-title { font-family:'Cormorant Garamond',Georgia,serif;font-size:18px;font-weight:600;color:var(--charcoal);margin-bottom:12px; }
.bv-spectrum-grid { display:grid;gap:12px; }
.bv-spectrum-item { background:var(--white);border:1px solid var(--border);border-radius:12px;padding:14px 16px; }
.bv-spectrum-labels { display:flex;justify-content:space-between;margin-bottom:8px; }
.bv-spectrum-left { font-weight:600;font-size:13px;color:var(--charcoal); }
.bv-spectrum-right { font-size:13px;color:var(--text-muted); }
.bv-spectrum-track { height:6px;background:var(--border);border-radius:3px;position:relative;margin-bottom:6px; }
.bv-spectrum-fill { height:100%;border-radius:3px;background:linear-gradient(90deg,var(--sage) 0%,#4a7a50 100%);transition:width 0.6s ease; }
.bv-spectrum-dot { width:14px;height:14px;background:var(--white);border:2.5px solid var(--sage);border-radius:50%;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 1px 4px rgba(0,0,0,0.15); }
.bv-spectrum-desc { font-size:12px;color:var(--text-muted);font-style:italic; }
.bv-vocab-grid { display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px; }
.bv-vocab-card { border-radius:12px;padding:14px; }
.bv-vocab-card.use { background:#F0F7F0;border:1px solid #c3dfc3; }
.bv-vocab-card.avoid { background:#FFF5F0;border:1px solid #f0c4b0; }
.bv-vocab-card-title { font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:8px; }
.bv-vocab-card.use .bv-vocab-card-title { color:#3a7a40; }
.bv-vocab-card.avoid .bv-vocab-card-title { color:#b05030; }
.bv-vocab-chips { display:flex;flex-wrap:wrap;gap:6px; }
.bv-chip { font-size:12px;padding:3px 10px;border-radius:20px;font-weight:500; }
.bv-chip.use { background:#d4edda;color:#2d6a35; }
.bv-chip.avoid { background:#fde0d0;color:#a04020; }
.bv-examples { display:flex;flex-direction:column;gap:12px; }
.bv-example-card { border:1px solid var(--border);border-radius:12px;overflow:hidden; }
.bv-example-label { font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;padding:8px 14px;background:var(--bg);color:var(--text-muted);border-bottom:1px solid var(--border); }
.bv-example-row { display:grid;grid-template-columns:1fr 1fr; }
.bv-example-col { padding:12px 14px; }
.bv-example-col.generic { background:#f8f8f8;border-right:1px solid var(--border); }
.bv-example-col.their-voice { background:#F0F7F0; }
.bv-example-tag { font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:4px; }
.bv-example-col.generic .bv-example-tag { color:var(--text-muted); }
.bv-example-col.their-voice .bv-example-tag { color:var(--sage); }
.bv-example-text { font-size:13px;color:var(--charcoal);line-height:1.5; }

/* ── CONTENT PILLARS VISUAL ── */
.cp-visual { margin-bottom:24px; }
.cp-summary { font-size:14px;color:var(--text-muted);line-height:1.6;margin-bottom:20px;font-style:italic; }
.cp-towers { display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px; }
.cp-tower { border-radius:16px;border:1px solid var(--border);overflow:hidden;display:flex;flex-direction:column; }
.cp-tower-cap { height:8px; }
.cp-tower-cap.sage { background:var(--sage); }
.cp-tower-cap.gold { background:#E8C87A; }
.cp-tower-cap.terracotta { background:#C17C5A; }
.cp-tower-cap.purple { background:#9B7FBB; }
.cp-tower-body { padding:16px;flex:1;display:flex;flex-direction:column; }
.cp-tower-name { font-family:'Cormorant Garamond',Georgia,serif;font-size:17px;font-weight:700;color:var(--charcoal);margin-bottom:4px; }
.cp-tower-tagline { font-size:12px;color:var(--text-muted);margin-bottom:10px;font-style:italic;line-height:1.4; }
.cp-tower-why { font-size:12px;color:var(--charcoal);line-height:1.5;padding:8px 10px;background:var(--bg);border-radius:8px;margin-bottom:12px; }
.cp-tower-posts-title { font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:var(--text-muted);margin-bottom:6px; }
.cp-tower-post { font-size:12px;color:var(--charcoal);line-height:1.4;padding:5px 0;border-bottom:1px solid var(--border); }
.cp-tower-post:last-child { border-bottom:none; }
.cp-tower-post::before { content:'→ ';color:var(--text-muted); }

/* ── ICP VISUAL ── */
.icp-visual { margin-bottom:24px; }
.icp-archetype-card { background:var(--cream);border:1.5px solid var(--gold-border);border-radius:16px;padding:20px 22px;margin-bottom:16px;display:flex;align-items:flex-start;gap:16px; }
.icp-archetype-icon { width:44px;height:44px;border-radius:50%;background:var(--sage);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;color:#fff; }
.icp-archetype-info { flex:1;min-width:0; }
.icp-archetype-label { font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--text-muted);margin-bottom:4px; }
.icp-archetype-name { font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;color:var(--charcoal);line-height:1.2;margin-bottom:6px; }
.icp-archetype-summary { font-size:13px;color:var(--text-muted);line-height:1.5; }
.icp-demographics { display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px; }
.icp-demo-chip { background:var(--white);border:1px solid var(--border);border-radius:20px;padding:4px 12px;font-size:12px;color:var(--charcoal);font-weight:500; }
.icp-two-col { display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px; }
.icp-pain-card { background:#FFF5F2;border:1px solid #f5d0c4;border-radius:12px;padding:14px; }
.icp-pain-title { font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:#b05030;margin-bottom:10px; }
.icp-pain-item { display:flex;align-items:flex-start;gap:6px;font-size:12px;color:var(--charcoal);line-height:1.4;padding:4px 0; }
.icp-pain-item::before { content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:#C17C5A;margin-top:5px;flex-shrink:0; }
.icp-transform-card { background:#F0F7F0;border:1px solid #c3dfc3;border-radius:12px;padding:14px; }
.icp-transform-title { font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:#3a7a40;margin-bottom:10px; }
.icp-transform-text { font-size:13px;color:var(--charcoal);line-height:1.6; }
.icp-before-after { border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:16px; }
.icp-ba-header { display:grid;grid-template-columns:1fr 1fr; }
.icp-ba-col-head { padding:8px 14px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em; }
.icp-ba-col-head.before { background:#FFF5F2;color:#b05030;border-right:1px solid var(--border); }
.icp-ba-col-head.after { background:#F0F7F0;color:#3a7a40; }
.icp-ba-body { display:grid;grid-template-columns:1fr 1fr; }
.icp-ba-col { padding:12px 14px;display:flex;flex-direction:column;gap:8px; }
.icp-ba-col.before { border-right:1px solid var(--border); }
.icp-ba-item { font-size:12px;color:var(--charcoal);line-height:1.4;display:flex;align-items:flex-start;gap:6px; }
.icp-ba-item.before::before { content:'✕';color:#C17C5A;font-size:10px;font-weight:700;margin-top:1px;flex-shrink:0; }
.icp-ba-item.after::before { content:'✓';color:var(--sage);font-size:10px;font-weight:700;margin-top:1px;flex-shrink:0; }
.icp-why-card { background:var(--white);border:1.5px solid var(--sage-border);border-radius:12px;padding:14px 16px; }
.icp-why-title { font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--sage-dark);margin-bottom:8px; }
.icp-why-text { font-size:13px;color:var(--charcoal);line-height:1.6; }
@media(max-width:600px){.icp-two-col{grid-template-columns:1fr;}.icp-ba-header,.icp-ba-body{grid-template-columns:1fr;}.icp-ba-col.before{border-right:none;border-bottom:1px solid var(--border);}}

/* ── POSITIONING VISUAL ── */
.pos-visual { margin-bottom:24px; }
.pos-statement-card { background:var(--cream);border:1.5px solid var(--gold-border);border-radius:16px;padding:18px 22px;margin-bottom:16px; }
.pos-statement-label { font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--text-muted);margin-bottom:8px; }
.pos-statement-text { font-family:'Cormorant Garamond',Georgia,serif;font-size:18px;font-weight:500;color:var(--charcoal);line-height:1.5;font-style:italic; }
.pos-category { font-size:13px;color:var(--text-muted);margin-bottom:16px; }
.pos-category strong { color:var(--charcoal);font-weight:600; }
.pos-method { background:var(--white);border:1px solid var(--sage-border);border-radius:12px;padding:14px 16px;margin-bottom:16px; }
.pos-method-label { font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--sage-dark);margin-bottom:6px; }
.pos-method-text { font-size:13px;color:var(--charcoal);line-height:1.6; }
.pos-diffs { display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:16px; }
.pos-diff-card { background:var(--white);border:1px solid var(--border);border-radius:12px;padding:14px 16px; }
.pos-diff-title { font-size:13px;font-weight:700;color:var(--charcoal);margin-bottom:6px; }
.pos-diff-desc { font-size:12px;color:var(--text-muted);line-height:1.5; }
.pos-stand-grid { display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px; }
.pos-stand-card { border-radius:12px;padding:14px 16px;border:1px solid; }
.pos-stand-card.for { background:#F0F7F0;border-color:#c3dfc3; }
.pos-stand-card.against { background:#FFF5F0;border-color:#f0c4b0; }
.pos-stand-title { font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:8px; }
.pos-stand-card.for .pos-stand-title { color:#3a7a40; }
.pos-stand-card.against .pos-stand-title { color:#b05030; }
.pos-stand-item { font-size:12px;color:var(--charcoal);line-height:1.5;padding:3px 0;display:flex;gap:6px; }
.pos-stand-item.for::before { content:'✓';color:var(--sage);font-weight:700;flex-shrink:0; }
.pos-stand-item.against::before { content:'✕';color:#C17C5A;font-weight:700;flex-shrink:0; }
.pos-words { display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px; }
.pos-word-chip { background:var(--sage);color:var(--white);padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;letter-spacing:0.02em; }
.pos-summary { font-size:13px;color:var(--text-muted);line-height:1.6;font-style:italic;margin-top:8px;padding-top:12px;border-top:1px solid var(--border); }
@media(max-width:600px){.pos-stand-grid{grid-template-columns:1fr;}}

/* ── BUSINESS GAPS VISUAL ── */
.bg-visual { margin-bottom:24px; }
.bg-summary { font-size:14px;color:var(--text-muted);line-height:1.6;margin-bottom:20px;font-style:italic; }
.bg-grid { display:grid;gap:12px; }
.bg-gap-card { border-radius:12px;border:1px solid;overflow:hidden;background:var(--white); }
.bg-gap-card.high { border-color:#e8b4a0;background:#fffaf8; }
.bg-gap-card.medium { border-color:#e8d8a0;background:#fffdf0; }
.bg-gap-card.low { border-color:#b8d8b8;background:#f8fdf8; }
.bg-gap-header { display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid; }
.bg-gap-card.high .bg-gap-header { border-color:#e8b4a0; }
.bg-gap-card.medium .bg-gap-header { border-color:#e8d8a0; }
.bg-gap-card.low .bg-gap-header { border-color:#b8d8b8; }
.bg-gap-area { font-weight:700;font-size:14px;color:var(--charcoal); }
.bg-severity-badge { font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;padding:3px 10px;border-radius:20px; }
.bg-severity-badge.high { background:#fde0d0;color:#a04020; }
.bg-severity-badge.medium { background:#fdf0c0;color:#806010; }
.bg-severity-badge.low { background:#d4edda;color:#2d6a35; }
.bg-gap-body { padding:12px 16px; }
.bg-gap-what { font-size:13px;color:var(--charcoal);margin-bottom:6px; }
.bg-gap-why { font-size:12px;color:var(--text-muted);line-height:1.5;margin-bottom:8px;font-style:italic; }
.bg-gap-fix { font-size:12px;color:var(--sage);font-weight:500;display:flex;align-items:flex-start;gap:6px; }
.bg-gap-fix::before { content:'→ Fix: ';font-weight:700;white-space:nowrap; }

/* ── GOALS MILESTONE VISUAL ── */
.gm-visual { margin-bottom:24px; }
.gm-header { display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:12px; }
.gm-summary { font-size:14px;color:var(--text-muted);line-height:1.6;font-style:italic;flex:1; }
.gm-target-chip { background:linear-gradient(135deg,var(--sage) 0%,#4a7a50 100%);color:var(--white);padding:8px 16px;border-radius:20px;font-size:13px;font-weight:700;white-space:nowrap; }
.gm-timeline { position:relative;padding-left:32px; }
.gm-timeline::before { content:'';position:absolute;left:10px;top:8px;bottom:8px;width:2px;background:var(--border); }
.gm-milestone { position:relative;margin-bottom:20px; }
.gm-milestone:last-child { margin-bottom:0; }
.gm-milestone-dot { position:absolute;left:-26px;top:8px;width:16px;height:16px;border-radius:50%;border:2.5px solid; }
.gm-milestone.current .gm-milestone-dot { background:var(--sage);border-color:var(--sage);box-shadow:0 0 0 4px rgba(122,158,126,0.2); }
.gm-milestone.upcoming .gm-milestone-dot { background:var(--white);border-color:var(--sage); }
.gm-milestone.future .gm-milestone-dot { background:var(--white);border-color:var(--border); }
.gm-milestone-card { background:var(--white);border:1px solid;border-radius:12px;padding:12px 14px; }
.gm-milestone.current .gm-milestone-card { border-color:var(--sage);background:#F4FAF4; }
.gm-milestone.upcoming .gm-milestone-card { border-color:#c0d8c0; }
.gm-milestone.future .gm-milestone-card { border-color:var(--border); }
.gm-milestone-top { display:flex;align-items:center;justify-content:space-between;margin-bottom:4px; }
.gm-milestone-name { font-weight:700;font-size:14px;color:var(--charcoal);display:flex;align-items:center;gap:6px; }
.gm-milestone-timeline { font-size:12px;color:var(--text-muted);font-weight:500; }
.gm-milestone-desc { font-size:13px;color:var(--text-muted);line-height:1.5; }
.gm-milestone.future .gm-milestone-name { color:var(--text-muted); }

/* ── DISCOVERY AI CHAT PANEL ── */
.discovery-ai-panel { margin-top:20px;background:var(--white);border:1px solid var(--border);border-radius:16px;overflow:hidden; }
.discovery-ai-header { padding:12px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between; }
.discovery-ai-title { font-size:13px;font-weight:700;color:var(--charcoal); }
.discovery-ai-messages { max-height:280px;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:10px; }
.discovery-ai-input-row { padding:10px 12px;border-top:1px solid var(--border);display:flex;gap:8px; }
.discovery-ai-textarea { flex:1;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:13px;font-family:inherit;resize:none;min-height:36px;background:var(--bg);outline:none; }
.discovery-ai-send { padding:8px 16px;background:var(--sage);color:var(--white);border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap; }
.discovery-ai-send:hover { background:#5a7e60; }

/* ── DISCOVERY MINI-QUESTIONNAIRE ── */
.disc-quiz-wrap { max-width:540px;margin:0 auto;padding:0; }
.disc-quiz-progress { display:flex;gap:6px;margin-bottom:28px; }
.disc-quiz-progress-dot { flex:1;height:4px;border-radius:4px;background:var(--border);transition:background 0.3s; }
.disc-quiz-progress-dot.active { background:var(--sage); }
.disc-quiz-progress-dot.done { background:var(--sage-dark); }
.disc-quiz-question { text-align:center;margin-bottom:28px;animation:quizFadeIn 0.35s ease; }
.disc-quiz-q-text { font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;font-weight:600;color:var(--charcoal);line-height:1.35;margin-bottom:6px; }
.disc-quiz-q-sub { font-size:13px;color:var(--text-muted); }
.disc-quiz-options { display:flex;flex-direction:column;gap:10px;margin-bottom:20px; }
.disc-quiz-opt {
  padding:14px 18px;background:var(--white);border:1.5px solid var(--border);border-radius:14px;
  font-size:14px;color:var(--text);cursor:pointer;transition:all 0.2s;text-align:left;
  display:flex;align-items:center;gap:10px;
}
.disc-quiz-opt:hover { border-color:var(--sage);background:var(--sage-light); }
.disc-quiz-opt.selected { border-color:var(--sage);background:var(--sage-light);font-weight:600;color:var(--sage-dark); }
.disc-quiz-opt .disc-check { width:20px;height:20px;border-radius:50%;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all 0.2s; }
.disc-quiz-opt.selected .disc-check { border-color:var(--sage);background:var(--sage);color:white;font-size:11px; }
.disc-quiz-opt.multi .disc-check { border-radius:5px; }
.disc-quiz-textarea-wrap { margin-bottom:20px; }
.disc-quiz-textarea { width:100%;border:1.5px solid var(--border);border-radius:12px;padding:14px 16px;font-size:14px;font-family:'DM Sans',sans-serif;color:var(--text);background:var(--cream);resize:vertical;min-height:120px;outline:none;transition:border-color 0.2s; }
.disc-quiz-textarea:focus { border-color:var(--sage);background:var(--white); }
.disc-quiz-nav { display:flex;justify-content:center;gap:12px;margin-top:12px; }
.disc-quiz-btn {
  padding:12px 28px;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;border:none;transition:all 0.2s;
}
.disc-quiz-btn.primary { background:var(--sage);color:white; }
.disc-quiz-btn.primary:hover { background:var(--sage-dark); }
.disc-quiz-btn.primary:disabled { opacity:0.5;cursor:default; }
.disc-quiz-btn.ghost { background:transparent;color:var(--text-muted);border:1px solid var(--border); }
.disc-quiz-btn.ghost:hover { border-color:var(--sage); }
@keyframes quizFadeIn { from { opacity:0;transform:translateY(8px); } to { opacity:1;transform:translateY(0); } }

/* ── DISCOVERY LOCK-IN VISUAL CARDS ── */
.disc-visual-card { background:var(--white);border:1.5px solid var(--sage-border);border-radius:20px;padding:24px;margin-bottom:20px;position:relative;overflow:hidden; }
.disc-visual-card::before { content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--sage),var(--gold)); }
.disc-metrics-row { display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-bottom:20px; }
.disc-metric-card { background:var(--cream);border-radius:12px;padding:14px;text-align:center; }
.disc-metric-value { font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:700;color:var(--sage-dark); }
.disc-metric-label { font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.05em;margin-top:2px; }
.disc-strengths { display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px; }
.disc-strength-pill { background:var(--sage-light);color:var(--sage-dark);padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;border:1px solid var(--sage-border); }
.disc-gap-list { display:flex;flex-direction:column;gap:10px; }
.disc-gap-item { display:flex;align-items:flex-start;gap:10px;padding:12px;background:var(--cream);border-radius:12px; }
.disc-gap-priority { width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:6px; }
.disc-gap-priority.high { background:#E53E3E; }
.disc-gap-priority.medium { background:var(--gold); }
.disc-gap-priority.low { background:var(--sage); }
.disc-gap-info { flex:1; }
.disc-gap-area { font-weight:700;font-size:13px;color:var(--charcoal);margin-bottom:2px; }
.disc-gap-desc { font-size:12px;color:var(--text-muted);line-height:1.5; }
.disc-gap-fix { font-size:12px;color:var(--sage-dark);font-weight:600;margin-top:4px; }

/* Goals visual card */
.disc-vision { font-family:'Cormorant Garamond',Georgia,serif;font-size:18px;font-weight:600;color:var(--charcoal);line-height:1.4;margin-bottom:20px;text-align:center;padding:16px;background:var(--sage-light);border-radius:14px;border:1px solid var(--sage-border); }
.disc-actions-list { display:flex;flex-direction:column;gap:10px;margin-bottom:16px; }
.disc-action-item { display:flex;align-items:flex-start;gap:12px;padding:12px;background:var(--cream);border-radius:12px; }
.disc-action-num { width:28px;height:28px;border-radius:50%;background:var(--sage);color:white;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0; }
.disc-action-body { flex:1; }
.disc-action-text { font-weight:600;font-size:13px;color:var(--charcoal); }
.disc-action-why { font-size:12px;color:var(--text-muted);margin-top:2px; }
.disc-action-timeline { font-size:11px;color:var(--sage-dark);font-weight:600;margin-top:4px; }

.disc-lockin-bar { margin-top:20px;text-align:center; }
.disc-lockin-btn {
  padding:14px 32px;background:var(--sage);color:white;border:none;border-radius:14px;
  font-size:15px;font-weight:700;cursor:pointer;transition:all 0.2s;
}
.disc-lockin-btn:hover { background:var(--sage-dark);transform:translateY(-1px);box-shadow:0 4px 12px rgba(122,158,126,0.3); }
.disc-lockin-btn:disabled { opacity:0.6;cursor:default;transform:none;box-shadow:none; }
.disc-locked-badge { display:inline-flex;align-items:center;gap:6px;padding:8px 18px;background:var(--sage-light);color:var(--sage-dark);border-radius:20px;font-size:13px;font-weight:600;border:1px solid var(--sage-border); }

/* ── VALUE LADDER / PRODUCTS & SERVICES ── */
.vl-staircase { display:flex;align-items:flex-end;gap:0;overflow-x:auto;padding:0 0 32px;scrollbar-width:thin;width:100%; }
.vl-step { flex:1;min-width:130px;max-width:220px;border-radius:20px 20px 0 0;position:relative;padding:18px 14px 20px;transition:transform 0.2s,box-shadow 0.2s;border:1.5px solid transparent; }
.vl-step:hover { transform:translateY(-6px);box-shadow:0 10px 28px rgba(0,0,0,0.1); }
.vl-step-1 { background:#FAF7F2;border-color:#E8DFD4;min-height:160px; }
.vl-step-2 { background:#EFF5EF;border-color:#C8DFC8;min-height:205px; }
.vl-step-3 { background:#FDF8E8;border-color:#E6D88A;min-height:250px; }
.vl-step-4 { background:#FDF0EB;border-color:#E8C4B0;min-height:295px; }
.vl-arrow { display:flex;align-items:flex-end;justify-content:center;flex-shrink:0;width:20px;padding-bottom:24px;color:var(--border);font-size:14px; }
.vl-tier-label { font-family:'Cormorant Garamond',Georgia,serif;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;color:var(--text-muted);margin-bottom:6px; }
.vl-service-name { font-family:'Cormorant Garamond',Georgia,serif;font-size:15px;font-weight:700;color:var(--charcoal);line-height:1.3;margin-bottom:8px; }
.vl-price { font-size:16px;font-weight:700;color:var(--sage-dark);margin-bottom:6px; }
.vl-ideal-for { font-size:11px;color:var(--text-muted);font-style:italic;line-height:1.5;margin-bottom:8px; }
.vl-includes-count { display:inline-block;padding:2px 9px;background:rgba(0,0,0,0.06);border-radius:20px;font-size:10px;color:var(--text-muted);font-weight:500; }
.vl-cta { margin-top:10px;display:block;text-align:center;padding:7px 10px;border-radius:10px;font-size:11px;font-weight:700;cursor:pointer;border:none;width:100%;transition:all 0.2s; }
.vl-step-1 .vl-cta { background:#E8DFD4;color:var(--charcoal); }
.vl-step-2 .vl-cta { background:var(--sage);color:white; }
.vl-step-3 .vl-cta { background:#C9A836;color:white; }
.vl-step-4 .vl-cta { background:#C97B5A;color:white; }
.vl-staircase-base { height:3px;background:linear-gradient(90deg,#E8DFD4,var(--sage-border),#E6D88A,#E8C4B0);border-radius:0 0 4px 4px;margin-top:-2px; }
@media (max-width:640px), (hover:none) and (pointer:coarse) {
  .vl-staircase { flex-direction:column-reverse;align-items:stretch;gap:6px;padding-bottom:0;overflow-x:visible; }
  .vl-step { min-height:auto !important;border-radius:16px !important; }
  .vl-arrow { transform:rotate(90deg);padding-bottom:0;width:auto;height:16px;align-items:center; }
  .vl-staircase-base { display:none; }
}
.vl-final-card { background:var(--white);border:1.5px solid var(--sage-border);border-radius:20px;padding:28px 24px;position:relative;overflow:hidden;margin-bottom:20px; }
.vl-final-card::before { content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#7d9b76,#C9A836,#C97B5A); }
.vl-final-title { font-family:'Cormorant Garamond',Georgia,serif;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;color:var(--text-muted);margin-bottom:16px; }
.vl-final-summary { font-size:14px;color:var(--text-mid);line-height:1.7;padding:14px 16px;background:var(--cream);border-radius:12px;margin-bottom:20px;font-style:italic; }
.vl-url-form { background:var(--cream);border:1px solid var(--border);border-radius:16px;padding:20px;margin-bottom:12px; }
.vl-url-tier-label { font-size:13px;font-weight:700;color:var(--charcoal);margin-bottom:10px; }
.vl-url-input { width:100%;border:1.5px solid var(--border);border-radius:10px;padding:10px 14px;font-size:13px;font-family:inherit;color:var(--text);background:var(--white);outline:none;transition:border-color 0.2s;box-sizing:border-box; }
.vl-url-input:focus { border-color:var(--sage); }
.vl-url-helper { font-size:11px;color:var(--text-muted);line-height:1.5;margin-top:4px; }
.vl-coaching-section { margin-top:20px; }
.sv-quiz-wrap { max-width:560px;margin:0 auto; }
.sv-quiz-intro { text-align:center;margin-bottom:28px;animation:quizFadeIn 0.4s ease; }
.sv-quiz-intro-icon { font-size:38px;margin-bottom:12px; }
.sv-quiz-intro-title { font-family:'Cormorant Garamond',Georgia,serif;font-size:26px;font-weight:600;color:var(--charcoal);margin-bottom:8px; }
.sv-quiz-intro-sub { font-size:14px;color:var(--text-muted);line-height:1.6;max-width:420px;margin:0 auto; }

.discovery-refine-row{
  padding:14px 0 0;border-top:1px solid var(--border-light);margin-top:14px;
  display:flex;align-items:center;justify-content:space-between;
}

.foundation-deliv-workspace{
  display:grid;grid-template-columns:1fr 380px;gap:20px;
  align-items:start;
}
.foundation-deliv-sidebar{
  background:var(--white);border:1px solid var(--border);
  border-radius:16px;overflow:hidden;
}
.fds-header{
  padding:18px 20px;border-bottom:1px solid var(--border-light);
  background:var(--cream);
}
.fds-title{font-size:14px;font-weight:600;color:var(--charcoal);margin-bottom:2px;}
.fds-sub{font-size:12px;color:var(--text-muted);}
.fds-body{padding:16px 20px;font-size:13px;color:var(--text-muted);line-height:1.6;min-height:120px;}
.fds-finalized-content{
  font-size:13px;color:var(--text);line-height:1.7;
  background:var(--cream);border:1px solid var(--border-light);
  border-radius:10px;padding:14px;max-height:300px;overflow-y:auto;
}
.fds-finalized-content ul{margin:6px 0 6px 16px;padding:0;}
.fds-finalized-content li{margin-bottom:4px;}
.fds-footer{
  padding:14px 20px;border-top:1px solid var(--border-light);
}
.fds-edit-btn{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 14px;background:transparent;
  color:var(--text-muted);border:1px solid var(--border);
  border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all 0.12s;
}
.fds-edit-btn:hover{border-color:var(--sage-border);color:var(--sage-dark);background:var(--sage-light);}

.ai-workspace-card{
  background:var(--white);border:1px solid var(--border);border-radius:16px;overflow:hidden;
  display:flex;flex-direction:column;min-height:520px;max-height:680px;
}
.ai-workspace-header{
  padding:18px 20px;border-bottom:1px solid var(--border-light);background:var(--cream);
  display:flex;align-items:center;justify-content:space-between;
}
.ai-workspace-title{font-size:14px;font-weight:600;color:var(--charcoal);}
.ai-workspace-clear{font-size:11px;color:var(--text-light);cursor:pointer;background:none;border:none;font-family:inherit;transition:color 0.1s;}
.ai-workspace-clear:hover{color:var(--text-muted);}
.ai-workspace-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;}
.ai-workspace-empty{text-align:center;padding:32px;color:var(--text-light);font-size:13px;font-style:italic;}
.ai-workspace-input{padding:12px 16px;border-top:1px solid var(--border-light);}
.ai-workspace-row{display:flex;gap:8px;}
.ai-workspace-textarea{
  flex:1;border:1px solid var(--border);border-radius:10px;
  padding:10px 14px;font-size:13px;font-family:inherit;color:var(--text);
  resize:none;outline:none;background:var(--cream);line-height:1.5;
  min-height:44px;max-height:120px;
}
.ai-workspace-textarea:focus{border-color:var(--sage);background:var(--white);}
.ai-workspace-send{
  padding:10px 16px;background:var(--sage);color:white;border:none;
  border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;
  transition:background 0.12s;flex-shrink:0;align-self:flex-end;
}
.ai-workspace-send:hover{background:var(--sage-dark);}
.ai-workspace-send:disabled{background:var(--border);cursor:not-allowed;}
.ai-finalize-zone{padding:12px 16px 14px;border-top:1px solid var(--border-light);}
.ai-finalize-zone-btn{
  display:flex;align-items:center;justify-content:center;gap:8px;
  width:100%;padding:12px 20px;
  background:linear-gradient(135deg,var(--sage) 0%,var(--sage-dark) 100%);
  color:white;border:none;border-radius:10px;
  font-size:13px;font-weight:600;cursor:pointer;transition:opacity 0.15s;
}
.ai-finalize-zone-btn:hover{opacity:0.9;}
.ai-finalize-zone-btn:disabled{background:var(--border);cursor:not-allowed;}
.ai-finalize-zone-hint{font-size:11px;color:var(--text-light);text-align:center;margin-top:8px;}

/* Inline messages in workspace */
.ws-msg{display:flex;gap:10px;max-width:90%;}
.ws-msg.user{align-self:flex-end;flex-direction:row-reverse;max-width:85%;}
.ws-bubble{
  padding:10px 14px;border-radius:14px;font-size:13px;line-height:1.6;
}
.ws-msg.assistant .ws-bubble{background:var(--cream);color:var(--text);border:1px solid var(--border-light);}
.ws-msg.user .ws-bubble{background:var(--sage);color:white;}

/* Locked stage page */
.locked-stage-page{text-align:center;padding:60px 24px;}
.locked-stage-icon{font-size:48px;margin-bottom:16px;}
.locked-stage-title{
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:28px;font-weight:600;color:var(--charcoal);margin-bottom:8px;
}
.locked-stage-sub{font-size:14px;color:var(--text-muted);max-width:440px;margin:0 auto 24px;line-height:1.6;}
.locked-prereqs{
  display:inline-flex;flex-direction:column;gap:8px;
  background:var(--cream);border:1px solid var(--border-light);
  border-radius:14px;padding:16px 24px;margin-bottom:24px;
  text-align:left;
}
.locked-prereq-item{font-size:13px;color:var(--text-muted);display:flex;align-items:center;gap:8px;}

@media(max-width:900px), (hover:none) and (pointer:coarse){
  .foundation-deliv-workspace{grid-template-columns:1fr;}
}

/* ─── TRIAL BANNER ─── */
.trial-banner{
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;
  gap:10px;padding:12px 20px;
  background:linear-gradient(135deg,#FFF8F0 0%,#FFF0E8 100%);
  border-bottom:1px solid var(--terracotta-border);
  font-size:13px;
}
.trial-banner.urgent{background:linear-gradient(135deg,#FFF0E8 0%,#FDEADF 100%);border-color:#E8A890;}
.trial-banner-text{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--charcoal);}
.trial-banner-days{display:inline-block;background:var(--terracotta);color:#fff;font-size:11px;font-weight:700;padding:2px 9px;border-radius:20px;}
.trial-banner-actions{display:flex;align-items:center;gap:10px;}
.trial-banner-btn{background:var(--terracotta);color:#fff;border:none;border-radius:8px;padding:7px 16px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:4px;}
.trial-banner-btn:hover{background:#B06040;}
.trial-banner-dismiss{background:none;border:none;color:var(--text-light);font-size:18px;cursor:pointer;line-height:1;padding:2px 4px;}

/* ─── UPGRADE CELEBRATION ─── */
@keyframes slideDown{from{transform:translateY(-100%);opacity:0;}to{transform:translateY(0);opacity:1;}}

/* ─── FREE TIER GATE ─── */
.upgrade-gate-card{background:linear-gradient(135deg,#EFF5F0 0%,#E0EEE2 100%);border:2px dashed var(--sage-border);border-radius:16px;padding:32px 24px;text-align:center;margin:16px 0;}
.upgrade-gate-card h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;color:var(--charcoal);margin-bottom:8px;}
.upgrade-gate-card p{font-size:13px;color:var(--text-muted);margin-bottom:20px;line-height:1.6;}
.upgrade-gate-card .btn-upgrade{background:var(--sage);color:#fff;border:none;border-radius:10px;padding:12px 28px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;display:inline-block;}
.upgrade-gate-card .btn-upgrade:hover{background:var(--sage-dark);}

/* ─── CANCEL MODAL ─── */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.45);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;}
.modal-overlay.hidden{display:none!important;}
.modal-box{background:#fff;border-radius:20px;padding:36px;max-width:480px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,0.18);position:relative;}
.modal-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:24px;font-weight:600;color:var(--charcoal);margin-bottom:6px;}
.modal-sub{font-size:13px;color:var(--text-muted);margin-bottom:20px;}
.modal-assets{background:var(--cream);border-radius:12px;padding:16px;margin-bottom:20px;}
.modal-asset-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text);padding:4px 0;}
.modal-asset-item::before{content:'✓';color:var(--sage);font-weight:700;flex-shrink:0;}
.modal-actions{display:grid;gap:10px;}
/* Primary retention action — pause — most prominent */
.modal-btn-pause{background:var(--sage);color:#fff;border:1px solid var(--sage-dark);border-radius:10px;padding:13px 20px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;text-align:center;transition:background 0.15s ease;}
.modal-btn-pause:hover{background:var(--sage-dark);}
/* Secondary retention — stay; ghost but clearly positive */
.modal-btn-cancel{background:#fff;border:1.5px solid var(--sage-border);border-radius:10px;padding:12px 20px;font-size:13px;font-weight:600;color:var(--sage-dark);cursor:pointer;font-family:inherit;text-align:center;transition:background 0.15s ease;}
.modal-btn-cancel:hover{background:var(--sage-light);}
/* Destructive confirm — solid red, clearly irreversible */
.modal-btn-confirm{background:#C0392B;color:#fff;border:1px solid #A93226;border-radius:10px;padding:12px 20px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;text-align:center;transition:background 0.15s ease,box-shadow 0.15s ease;}
.modal-btn-confirm:hover{background:#A93226;box-shadow:0 2px 10px rgba(192,57,43,0.25);}
.modal-close{position:absolute;top:14px;right:18px;background:none;border:none;font-size:22px;color:var(--text-light);cursor:pointer;line-height:1;}

/* ─── REFERRAL SECTION ─── */
.referral-card{background:linear-gradient(135deg,#F7FBF7 0%,#EFF5EF 100%);border:1px solid var(--sage-border);border-radius:16px;padding:24px;margin-top:20px;}
.referral-card-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;color:var(--charcoal);margin-bottom:4px;}
.referral-card-sub{font-size:13px;color:var(--text-muted);margin-bottom:18px;}
.referral-link-box{display:flex;gap:8px;margin-bottom:16px;}
.referral-link-input{flex:1;background:#fff;border:1px solid var(--sage-border);border-radius:8px;padding:9px 12px;font-size:12px;color:var(--text);font-family:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.referral-copy-btn{background:var(--sage);color:#fff;border:none;border-radius:8px;padding:9px 16px;font-size:12px;font-weight:600;cursor:pointer;flex-shrink:0;font-family:inherit;}
.referral-copy-btn:hover{background:var(--sage-dark);}
.referral-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.referral-stat{background:#fff;border:1px solid var(--border-light);border-radius:10px;padding:14px;text-align:center;}
.referral-stat-num{font-size:26px;font-weight:700;color:var(--charcoal);line-height:1;}
.referral-stat-label{font-size:11px;color:var(--text-muted);margin-top:3px;font-weight:500;}

/* ─── 30-DAY JOURNEY ─── */

/* Score ring in sidebar */
.sidebar-score-wrap{padding:14px 18px 10px;margin:0 10px;background:linear-gradient(135deg,var(--sage-light) 0%,rgba(245,248,240,0.6) 100%);border:1px solid var(--sage-border);border-radius:12px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:box-shadow 0.2s;}
.sidebar-score-wrap:hover{box-shadow:0 2px 10px rgba(90,130,90,0.15);}

/* CRS Breakdown Panel */
.crs-breakdown-panel{display:none;position:absolute;left:8px;right:8px;top:calc(100% + 4px);background:#fff;border:1px solid var(--sage-border);border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,0.12);z-index:200;padding:14px 16px;max-height:60vh;overflow-y:auto;}
.crs-breakdown-panel.open{display:block;}
.crs-breakdown-title{font-size:11px;font-weight:700;color:var(--charcoal);margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;}
.crs-item{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid var(--cream);font-size:11px;color:var(--text-muted);}
.crs-item:last-child{border-bottom:none;}
.crs-item-check{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--sage-border);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:9px;}
.crs-item-check.done{background:var(--sage);border-color:var(--sage);color:#fff;}
.crs-item-label{flex:1;line-height:1.3;}
.crs-item-pct{font-size:10px;font-weight:700;color:var(--sage-dark);}
.crs-item-link{font-size:10px;color:var(--sage-dark);text-decoration:underline;cursor:pointer;margin-left:auto;}

/* Stage outcome tag */
.stage-outcome-tag{display:block;font-size:9px;font-weight:500;color:var(--sage-dark);text-transform:none;letter-spacing:0;margin-top:1px;opacity:0.8;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* GBP Module styles */
.module-card{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;margin-bottom:20px;}
.module-header{background:linear-gradient(135deg,#EFF5F0 0%,#E3EEE5 100%);padding:20px 24px;border-bottom:1px solid var(--sage-border);}
.module-header-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;font-weight:600;color:var(--charcoal);}
.module-header-sub{font-size:13px;color:var(--text-muted);margin-top:4px;}
.module-progress-bar{height:4px;background:var(--sage-light);border-radius:2px;margin-top:12px;}
.module-progress-fill{height:100%;background:var(--sage);border-radius:2px;transition:width 0.4s ease;}
.gbp-step{display:flex;gap:16px;padding:16px 20px;border-bottom:1px solid var(--cream);cursor:pointer;transition:background 0.15s;}
.gbp-step:last-child{border-bottom:none;}
.gbp-step:hover{background:#FAFCFA;}
.gbp-step.active{background:linear-gradient(135deg,#F7FCF8 0%,#EFF5F0 100%);}
.gbp-step-num{width:28px;height:28px;border-radius:50%;border:2px solid var(--sage-border);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--text-muted);flex-shrink:0;margin-top:2px;transition:all 0.2s;}
.gbp-step-num.done{background:var(--sage);border-color:var(--sage);color:#fff;}
.gbp-step-num.active{border-color:var(--sage);color:var(--sage-dark);}
.gbp-step-title{font-size:14px;font-weight:600;color:var(--charcoal);margin-bottom:2px;}
.gbp-step-desc{font-size:12px;color:var(--text-muted);line-height:1.4;}
.gbp-step-content{padding:16px 20px 20px;background:#FAFCFA;border-top:1px solid var(--cream);}
.gbp-checklist-item{display:flex;align-items:flex-start;gap:8px;padding:6px 0;font-size:13px;color:var(--charcoal);}
.gbp-checklist-item input[type=checkbox]{margin-top:2px;accent-color:var(--sage);width:14px;height:14px;flex-shrink:0;}
.gbp-chat-bubble{max-width:90%;border-radius:12px;padding:10px 14px;font-size:13px;line-height:1.5;margin-bottom:8px;}
.gbp-chat-bubble.user{background:var(--sage);color:#fff;margin-left:auto;}
.gbp-chat-bubble.ai{background:#F0F4F1;color:var(--charcoal);border:1px solid var(--sage-border);}
.gbp-generated-content{background:#fff;border:1px solid var(--sage-border);border-radius:8px;padding:12px 14px;font-size:13px;line-height:1.6;color:var(--charcoal);white-space:pre-wrap;margin:10px 0;}

/* ─── GROWTH BLUEPRINT MOBILE DECK ─── */
.bp-deck-copy{min-width:0;}
.bp-deck-title,
.bp-deck-lead{
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
.bp-deck-visual{min-width:0;}
@media(max-width:720px), (hover:none) and (pointer:coarse){
  #blueprint-sections{
    max-width:100%;
    overflow-x:hidden;
  }
  #bp-guided-deck{
    border-radius:14px!important;
    padding:0.65rem!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  #bp-guided-deck-inner{
    border-radius:12px!important;
    padding:1rem!important;
  }
  .bp-deck-slide-layout{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:1.05rem!important;
  }
  .bp-deck-copy{
    width:100%!important;
    max-width:100%!important;
  }
  .bp-deck-title{
    font-size:clamp(1.65rem,9vw,2.15rem)!important;
    line-height:1.08!important;
    max-width:100%!important;
  }
  .bp-deck-lead{
    font-size:0.95rem!important;
    line-height:1.65!important;
    max-width:100%!important;
  }
  .bp-deck-card-grid{
    grid-template-columns:1fr!important;
  }
  .bp-deck-visual{
    width:100%!important;
    justify-content:center!important;
  }
  .bp-deck-visual > div{
    width:min(250px,100%)!important;
    max-width:100%!important;
    border-radius:22px!important;
  }
}
.module-coming-soon{opacity:0.6;pointer-events:none;}
.coming-soon-badge{font-size:10px;font-weight:700;background:#F0F4F1;color:var(--sage-dark);border:1px solid var(--sage-border);border-radius:20px;padding:2px 8px;}

/* Sidebar score wrap needs position:relative for panel */
#sidebar-score-wrap-outer{position:relative;}
.sidebar-score-ring{flex-shrink:0;}
.sidebar-score-ring svg{display:block;}
.sidebar-score-info{min-width:0;}
.sidebar-score-pct{font-size:17px;font-weight:700;color:var(--sage-dark);line-height:1;}
.sidebar-score-label{font-size:11px;color:var(--text-muted);font-weight:500;margin-top:1px;}
.sidebar-score-sub{font-size:11px;color:var(--sage-dark);margin-top:2px;font-weight:600;}

/* Week sections in sidebar */
.journey-week-header{display:flex;align-items:center;gap:8px;padding:10px 18px 5px;cursor:pointer;user-select:none;}
.journey-week-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--text-muted);flex:1;}
.journey-week-badge{font-size:10px;font-weight:700;padding:2px 7px;border-radius:4px;text-transform:uppercase;letter-spacing:0.04em;}
.journey-week-badge.done{background:var(--sage-light);color:var(--sage-dark);}
.journey-week-badge.active{background:#FBF8EE;color:var(--gold);}
.journey-week-badge.locked{background:var(--cream);color:var(--text-light);}
.journey-week-toggle{font-size:11px;color:var(--text-light);}
.journey-week-items{padding-bottom:4px;}
.journey-week-items.collapsed{display:none;}
.journey-day-item{display:flex;align-items:center;gap:10px;padding:8px 18px 8px 24px;font-size:14px;font-weight:500;color:var(--text-muted);cursor:pointer;border-left:3px solid transparent;transition:all 0.1s;text-decoration:none;}
.journey-day-item:hover{color:var(--text);background:var(--cream);}
.journey-day-item.active{color:var(--sage-dark);background:var(--sage-light);border-left-color:var(--sage);font-weight:600;}
.journey-day-item.done{color:var(--sage-dark);}
.journey-day-item.locked{color:var(--text-light);cursor:default;opacity:0.6;}
.journey-day-item.locked:hover{background:none;color:var(--text-light);}
.journey-day-dot{width:14px;height:14px;border-radius:50%;border:1.5px solid var(--border);background:var(--white);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:8px;}
.journey-day-dot.done{background:var(--sage);border-color:var(--sage);color:white;}
.journey-day-dot.active{background:var(--gold-light);border-color:var(--gold);color:var(--gold);}
.journey-day-dot.locked{background:var(--cream);border-color:var(--border-light);}
.journey-locked-week{opacity:0.55;}

/* ─── DESKTOP SPATIAL SCALE ─── */
@media(min-width:1100px){
  .page-content > div[id^="view-"]{width:100%;}
  .page-content > div[id^="view-"] > div[style*="max-width"],
  .page-content > div[id^="view-"] > div > div[style*="max-width"],
  .page-content > div[id^="view-"] > div > .gd-wrap,
  .page-content > div[id^="view-"] > div > .gv-wrap,
  .page-content > div[id^="view-"] > div > .ws-inner,
  .page-content > div[id^="view-"] > div > .lp-editor-wrap{
    max-width:min(1180px,100%)!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  .welcome-header,
  .stage-home-card,
  .section-card,
  .deliverable-page-header,
  .journey-next-card{
    padding:clamp(30px,2.35vw,42px);
  }
  .section-card-title,
  .foundation-title,
  .referral-card-title{
    font-size:24px;
  }
  .section-card-sub,
  .stage-home-sub,
  .foundation-sub,
  .deliv-sub,
  .template-card-desc,
  .fd-card-preview,
  .tracker-msg,
  .journey-next-copy{
    font-size:14px;
  }
  .quick-card,
  .template-card,
  .fd-card{
    padding:24px;
  }
}

/* ─── CONTENT TYPE SCALE ─── */
@media(min-width:901px){
  body{font-size:16px;}
  .top-bar-meta,
  .welcome-greeting,
  .welcome-since,
  .tracker-sub,
  .tracker-msg,
  .section-card-sub,
  .check-desc,
  .deliverable-desc,
  .community-desc,
  .profile-section-sub,
  .profile-msg,
  .faq-answer,
  .support-card-desc,
  .tier-upgrade-desc,
  .weekly-nudge-preview,
  .weekly-nudge-text,
  .journey-next-copy,
  .journey-next-recap,
  .quick-card-sub,
  .cl-card-caption,
  .cl-card-body,
  .ai-caption-block,
  .ai-hashtags-block,
  .ai-visual-block,
  .ai-coach-text,
  .template-card-desc,
  .template-example-item,
  .ai-msg-bubble,
  .vl-sub,
  .vl-card-desc,
  .vl-expand-value,
  .upgrade-gate-desc,
  .foundation-sub,
  .fd-card-preview,
  .fd-teaser,
  .deliv-sub,
  .discovery-block-text,
  .bv-summary,
  .bg-summary,
  .gm-summary,
  .disc-quiz-q-sub,
  .disc-gap-desc,
  .disc-action-why,
  .fds-body,
  .fds-body p,
  .gbp-step-desc,
  .gbp-checklist-item,
  .gbp-chat-bubble,
  .gbp-generated-content,
  .current-day-why,
  .step-guide-why,
  .locked-stage-sub,
  .upgrade-gate-card p,
  .modal-sub,
  .referral-card-sub,
  .module-header-sub,
  .play-path-sub,
  .play-path-card-topic,
  .play-path-why,
  .play-path-content-text,
  .play-path-empty-sub,
  .play-path-hook-preview{
    font-size:16px;
    line-height:1.7;
  }
  .check-title,
  .deliverable-name,
  .profile-label,
  .faq-question,
  .support-card-title,
  .positioning-text,
  .next-cta-text,
  .cl-search input,
  .cl-filter-select,
  .cl-card-hook,
  .ai-piece-hook,
  .editor-input,
  .editor-textarea,
  .editor-select,
  .template-card-name,
  .ai-textarea,
  .vl-edit-field input,
  .vl-edit-field textarea,
  .foundation-input,
  .fd-card-name,
  .fd-card-cta,
  .discovery-ai-textarea,
  .discovery-ai-send,
  .disc-quiz-opt,
  .disc-quiz-textarea,
  .gm-milestone-name,
  .gm-milestone-desc,
  .bg-gap-what,
  .bg-gap-why,
  .bg-gap-fix,
  .gbp-step-title,
  .ai-workspace-textarea,
  .ai-workspace-btn,
  .btn-start-today,
  .btn-step-go,
  .btn-step-done,
  .play-path-gen-btn{
    font-size:16px;
  }
  .page-content [style*="font-size:13px"]:not(button):not(input):not(select):not(textarea),
  .page-content [style*="font-size:14px"]:not(button):not(input):not(select):not(textarea){
    font-size:16px!important;
    line-height:1.7!important;
  }
  .page-content [style*="font-size:12px"]:not(button):not(input):not(select):not(textarea){
    font-size:14px!important;
    line-height:1.6!important;
  }
  .page-content textarea,
  .page-content input,
  .page-content select{
    font-size:16px;
  }
}

/* Journey Hero View (main content) */
.journey-hero-bar{background:linear-gradient(90deg,var(--sage-light) 0%,rgba(251,248,238,0.8) 100%);border:1px solid var(--sage-border);border-radius:16px;padding:16px 20px;display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap;}
.journey-hero-bar-left{flex:1;min-width:200px;}
.journey-day-pill{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--sage-dark);background:rgba(122,158,126,0.15);padding:3px 10px;border-radius:20px;display:inline-block;margin-bottom:6px;}
.journey-day-headline{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;font-weight:600;color:var(--charcoal);line-height:1.2;}
.journey-hero-score{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.score-ring-label{font-size:11px;color:var(--text-muted);text-align:center;margin-top:4px;}

/* Current day card */
.current-day-card{background:var(--white);border:2px solid var(--gold-border);border-radius:20px;padding:24px;margin-bottom:20px;box-shadow:0 4px 20px rgba(184,148,63,0.1);position:relative;overflow:hidden;}
.current-day-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold) 0%,var(--sage) 100%);}
.current-day-meta{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap;}
.current-day-number{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--gold);background:var(--gold-light);border:1px solid var(--gold-border);padding:3px 10px;border-radius:20px;}
.current-day-week-tag{font-size:11px;color:var(--text-muted);font-weight:500;}
.current-day-time{font-size:11px;color:var(--text-light);margin-left:auto;}
.current-day-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;font-weight:600;color:var(--charcoal);margin-bottom:8px;line-height:1.2;}
.current-day-why{font-size:13px;color:var(--text-muted);line-height:1.6;margin-bottom:20px;max-width:640px;}
.current-day-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.btn-start-today{background:linear-gradient(135deg,var(--sage) 0%,var(--sage-dark) 100%);color:white;border:none;border-radius:12px;padding:13px 24px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:opacity 0.15s;}
.btn-start-today:hover{opacity:0.9;}
.btn-mark-done{background:var(--sage-light);color:var(--sage-dark);border:1px solid var(--sage-border);border-radius:12px;padding:13px 20px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:all 0.15s;}
.btn-mark-done:hover{background:var(--sage-border);}

/* Week timeline */
.week-timeline{display:flex;gap:0;margin-bottom:20px;background:var(--white);border:1px solid var(--border);border-radius:14px;overflow:hidden;}
.week-tile{flex:1;padding:14px 10px;text-align:center;position:relative;cursor:pointer;transition:background 0.12s;}
.week-tile:not(:last-child)::after{content:'';position:absolute;right:0;top:20%;bottom:20%;width:1px;background:var(--border);}
.week-tile:hover{background:var(--cream);}
.week-tile.locked{cursor:default;opacity:0.6;}
.week-tile.locked:hover{background:none;}
.week-tile-num{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--text-light);margin-bottom:4px;}
.week-tile-name{font-size:13px;font-weight:600;color:var(--charcoal);}
.week-tile.active .week-tile-name{color:var(--sage-dark);}
.week-tile.done .week-tile-name{color:var(--sage-dark);}
.week-tile-bar{height:4px;background:var(--border-light);border-radius:2px;margin-top:8px;overflow:hidden;}
.week-tile-fill{height:100%;background:var(--sage);border-radius:2px;transition:width 0.4s;}
.week-tile.active .week-tile-fill{background:linear-gradient(90deg,var(--gold) 0%,var(--sage) 100%);}
.week-tile-count{font-size:10px;color:var(--text-muted);margin-top:4px;}

/* Day grid */
.days-section{background:var(--white);border:1px solid var(--border);border-radius:16px;overflow:hidden;margin-bottom:20px;}
.days-section-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border-light);cursor:pointer;}
.days-section-title{font-size:13px;font-weight:600;color:var(--charcoal);flex:1;}
.days-section-badge{font-size:11px;color:var(--text-muted);}
.days-section-arrow{font-size:11px;color:var(--text-light);transition:transform 0.15s;}
.days-section-body{padding:0;}
.days-section-body.hidden{display:none;}
.day-row{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--border-light);cursor:pointer;transition:background 0.1s;}
.day-row:last-child{border-bottom:none;}
.day-row:hover{background:var(--cream);}
.day-row.locked{cursor:default;opacity:0.5;}
.day-row.locked:hover{background:none;}
.day-row-num{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;}
.day-row-num.done{background:var(--sage);color:white;}
.day-row-num.active{background:var(--gold-light);color:var(--gold);border:2px solid var(--gold-border);}
.day-row-num.available{background:var(--cream);color:var(--text-muted);border:1px solid var(--border);}
.day-row-num.locked{background:var(--cream);color:var(--border);border:1px dashed var(--border-light);}
.day-row-info{flex:1;min-width:0;}
.day-row-title{font-size:13px;font-weight:500;color:var(--text);}
.day-row.done .day-row-title{color:var(--sage-dark);}
.day-row.locked .day-row-title{color:var(--text-light);}
.day-row-time{font-size:11px;color:var(--text-light);flex-shrink:0;}
.day-row-action{flex-shrink:0;}
.day-row-status{display:inline-flex;align-items:center;justify-content:center;min-width:74px;border-radius:999px;padding:4px 9px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;background:var(--cream);border:1px solid var(--border);color:var(--text-muted);}
.day-row-status.done{background:var(--sage-light);border-color:var(--sage-border);color:var(--sage-dark);}
.day-row-status.next{background:var(--gold-light);border-color:var(--gold-border);color:#8B6A1A;}
.day-row-status.available{background:var(--white);border-color:var(--sage-border);color:var(--sage-dark);}
.day-row-status.locked{background:var(--cream);border-style:dashed;color:var(--text-light);}

/* Journey view mobile responsive */
@media(max-width:700px), (hover:none) and (pointer:coarse){
  .week-timeline{flex-direction:column;}
  .week-tile:not(:last-child)::after{display:none;}
  .week-tile{text-align:left;display:flex;align-items:center;gap:10px;}
  .week-tile-bar{flex:1;margin-top:0;}
  .current-day-title{font-size:22px;}
  .journey-hero-bar{flex-direction:column;gap:12px;}
}

/* ─── STEP GUIDE POP-UP ─── */
.step-guide-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.55);z-index:9800;display:flex;align-items:flex-end;justify-content:center;backdrop-filter:blur(3px);animation:fadeInOverlay 0.2s ease;}
.step-guide-sheet{background:#fff;border-radius:24px 24px 0 0;width:100%;max-width:560px;padding:32px 32px 40px;box-shadow:0 -12px 60px rgba(0,0,0,0.18);animation:slideUpSheet 0.3s cubic-bezier(0.34,1.56,0.64,1);}
@keyframes slideUpSheet{from{transform:translateY(100%);opacity:0;}to{transform:translateY(0);opacity:1;}}
@keyframes fadeInOverlay{from{opacity:0;}to{opacity:1;}}
.step-guide-pill{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--sage-dark);background:rgba(122,158,126,0.12);padding:4px 12px;border-radius:20px;margin-bottom:14px;}
.step-guide-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:26px;font-weight:500;color:var(--charcoal);line-height:1.25;margin-bottom:12px;}
.step-guide-why{font-size:14px;line-height:1.7;color:#555;margin-bottom:24px;}
.step-guide-time{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--text-muted);background:var(--cream);padding:4px 12px;border-radius:20px;margin-bottom:24px;}
.step-guide-actions{display:flex;gap:10px;}
.btn-step-go{flex:1;background:var(--sage);color:#fff;border:none;padding:13px 20px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;}
.btn-step-go:hover{background:var(--sage-dark);}
.btn-step-done{background:none;border:1.5px solid var(--border);color:var(--text-muted);padding:13px 18px;border-radius:10px;font-size:13px;font-weight:500;cursor:pointer;font-family:inherit;}
.btn-step-done:hover{border-color:var(--sage);color:var(--sage-dark);}
@media(min-width:600px){.step-guide-sheet{border-radius:20px;max-width:520px;margin-bottom:40px;}}

/* ─── VISION MANTRA OVERLAY ─── */
.vision-overlay{position:fixed;inset:0;background:linear-gradient(135deg,rgba(30,35,25,0.88) 0%,rgba(15,20,10,0.92) 100%);z-index:9900;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(6px);animation:fadeInOverlay 0.4s ease;}
.vision-card{background:linear-gradient(155deg,#1e2819 0%,#0f1409 100%);border:1px solid rgba(184,148,63,0.3);border-radius:24px;padding:48px 44px;max-width:600px;width:100%;text-align:center;box-shadow:0 32px 100px rgba(0,0,0,0.5),0 0 0 1px rgba(184,148,63,0.08);position:relative;overflow:hidden;animation:slideInCard 0.5s cubic-bezier(0.34,1.3,0.64,1);}
@keyframes slideInCard{from{transform:scale(0.92) translateY(20px);opacity:0;}to{transform:scale(1) translateY(0);opacity:1;}}
.vision-card::before{content:'';position:absolute;top:-60px;right:-60px;width:200px;height:200px;background:radial-gradient(circle,rgba(184,148,63,0.12) 0%,transparent 70%);pointer-events:none;}
.vision-sparkle{font-size:32px;margin-bottom:16px;opacity:0.9;}
.vision-header{font-family:'Cormorant Garamond',Georgia,serif;font-size:13px;font-weight:400;text-transform:uppercase;letter-spacing:0.18em;color:rgba(184,148,63,0.7);margin-bottom:28px;}
.vision-line{font-family:'Cormorant Garamond',Georgia,serif;font-size:19px;font-weight:400;color:#f5f0e8;line-height:1.65;margin-bottom:0;padding:0 8px;}
.vision-line strong{color:#e8d5a0;font-weight:600;}
.vision-divider{width:32px;height:1px;background:rgba(184,148,63,0.3);margin:20px auto;}
.vision-emotions{display:flex;flex-direction:column;gap:8px;margin:20px 0;text-align:left;}
.vision-emotion{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:#c8c0b0;line-height:1.5;padding:8px 12px;background:rgba(255,255,255,0.04);border-radius:8px;border-left:2px solid rgba(184,148,63,0.4);}
.vision-emotion-num{font-family:'Cormorant Garamond',Georgia,serif;font-size:16px;color:rgba(184,148,63,0.8);font-weight:600;flex-shrink:0;width:16px;}
.vision-actions{margin-top:32px;display:flex;flex-direction:column;gap:10px;}
.btn-vision-accept{background:linear-gradient(135deg,rgba(184,148,63,0.9) 0%,rgba(150,115,40,0.9) 100%);color:#fff;border:none;padding:15px 32px;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;font-family:inherit;width:100%;}
.btn-vision-accept:hover{background:linear-gradient(135deg,rgba(184,148,63,1) 0%,rgba(150,115,40,1) 100%);}
.vision-close-hint{font-size:12px;color:rgba(255,255,255,0.3);cursor:pointer;}
.vision-close-hint:hover{color:rgba(255,255,255,0.6);}
@media(max-width:600px){.vision-card{padding:32px 24px;}.vision-line{font-size:16px;}}

/* ─── CONTENT PLAY PATH ─── */
.play-path-banner{background:linear-gradient(135deg,var(--sage-light) 0%,rgba(251,248,238,0.9) 100%);border:1.5px solid var(--sage-border);border-radius:16px;padding:20px 24px;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.play-path-banner-left{flex:1;min-width:200px;}
.play-path-banner-eyebrow{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--sage-dark);margin-bottom:6px;}
.play-path-banner-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;color:var(--charcoal);line-height:1.25;margin-bottom:4px;}
.play-path-banner-sub{font-size:12px;color:var(--text-muted);line-height:1.5;}
.play-path-banner-progress{display:flex;align-items:center;gap:8px;margin-top:10px;}
.play-path-banner-dots{display:flex;gap:5px;}
.play-path-dot{width:8px;height:8px;border-radius:50%;background:var(--border);}
.play-path-dot.done{background:var(--sage);}
.play-path-dot.active{background:var(--terracotta);}
.play-path-progress-label{font-size:11px;color:var(--text-muted);}
.play-path-header{margin-bottom:28px;}
.play-path-eyebrow{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--sage-dark);margin-bottom:8px;}
.play-path-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:32px;font-weight:600;color:var(--charcoal);line-height:1.2;margin-bottom:8px;}
.play-path-sub{font-size:14px;color:var(--text-muted);line-height:1.6;max-width:560px;}
.play-path-progress-bar-wrap{display:flex;align-items:center;gap:12px;margin-top:16px;}
.play-path-progress-bar{flex:1;max-width:280px;height:6px;background:var(--border);border-radius:4px;overflow:hidden;}
.play-path-progress-fill{height:100%;background:var(--sage);border-radius:4px;transition:width 0.5s ease;}
.play-path-progress-text{font-size:12px;font-weight:600;color:var(--sage-dark);}
.play-path-grid{display:flex;flex-direction:column;gap:12px;}
.play-path-card{background:var(--white);border:1.5px solid var(--border);border-radius:14px;overflow:hidden;transition:box-shadow 0.15s,border-color 0.15s;}
.play-path-card:hover{box-shadow:0 4px 16px rgba(0,0,0,0.07);border-color:var(--sage-border);}
.play-path-card.done-card{border-color:var(--sage);background:linear-gradient(135deg,rgba(122,158,126,0.04) 0%,var(--white) 100%);}
.play-path-card-header{display:flex;align-items:flex-start;gap:16px;padding:18px 20px 14px;}
.play-path-position{width:36px;height:36px;border-radius:50%;background:var(--cream-dark);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',Georgia,serif;font-size:18px;font-weight:700;color:var(--charcoal);flex-shrink:0;margin-top:2px;}
.play-path-position.active-pos{background:var(--terracotta);border-color:var(--terracotta);color:#fff;}
.play-path-position.done-pos{background:var(--sage);border-color:var(--sage);color:#fff;font-size:14px;}
.play-path-card-info{flex:1;}
.play-path-card-role{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.09em;color:var(--sage-dark);margin-bottom:4px;}
.play-path-card-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;color:var(--charcoal);line-height:1.25;margin-bottom:4px;}
.play-path-card-topic{font-size:12px;color:var(--text-muted);line-height:1.55;}
.play-path-card-meta{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap;}
.play-path-format-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;padding:3px 8px;border-radius:6px;background:var(--cream-dark);color:var(--text-muted);}
.play-path-pillar-badge{font-size:10px;color:var(--text-muted);background:var(--cream);padding:3px 8px;border-radius:6px;}
.play-path-card-actions{padding:0 20px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.play-path-why{font-size:11px;color:var(--text-muted);font-style:italic;flex:1;line-height:1.5;}
.play-path-gen-btn{background:var(--terracotta);color:#fff;border:none;border-radius:9px;padding:10px 20px;font-size:13px;font-weight:600;cursor:pointer;font-family:'DM Sans',sans-serif;white-space:nowrap;transition:opacity 0.15s;}
.play-path-gen-btn:hover{opacity:0.88;}
.play-path-gen-btn:disabled{opacity:0.55;cursor:not-allowed;}
.play-path-gen-btn.done-btn{background:var(--sage);}
.play-path-content-preview{margin:0 20px 16px;padding:14px;background:var(--cream);border:1px solid var(--border);border-radius:10px;}
.play-path-content-preview-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--sage-dark);margin-bottom:6px;}
.play-path-content-text{font-size:13px;color:var(--charcoal);line-height:1.65;white-space:pre-wrap;max-height:180px;overflow:hidden;position:relative;}
.play-path-content-text::after{content:'';position:absolute;bottom:0;left:0;right:0;height:40px;background:linear-gradient(transparent,var(--cream));}
.play-path-content-actions{display:flex;align-items:center;gap:8px;margin-top:8px;}
.play-path-copy-btn{font-size:11px;font-weight:600;color:var(--sage-dark);background:transparent;border:1px solid var(--sage-border);border-radius:7px;padding:5px 12px;cursor:pointer;font-family:'DM Sans',sans-serif;}
.play-path-copy-btn:hover{background:var(--sage-light);}
.play-path-loading{text-align:center;padding:60px 20px;color:var(--text-muted);}
.play-path-empty{text-align:center;padding:60px 20px;}
.play-path-empty-icon{font-size:40px;margin-bottom:16px;color:var(--sage);}
.play-path-empty-title{font-family:'Cormorant Garamond',Georgia,serif;font-size:24px;font-weight:600;color:var(--charcoal);margin-bottom:8px;}
.play-path-empty-sub{font-size:13px;color:var(--text-muted);line-height:1.6;max-width:380px;margin:0 auto 24px;}
.play-path-hook-preview{font-size:13px;color:var(--text-muted);font-style:italic;margin-top:6px;padding-top:6px;border-top:1px solid var(--border);}
@media(max-width:700px), (hover:none) and (pointer:coarse){
  .play-path-banner{flex-direction:column;align-items:flex-start;}
  .play-path-title{font-size:26px;}
  .play-path-card-header{flex-direction:column;gap:10px;}
  .play-path-position{width:28px;height:28px;font-size:14px;}
}
