/* ════════════════════════════════════
HELM — Hero (hidden)
════════════════════════════════════ */
.helm-hero { display: none; }
.helm-aura, .helm-wordmark, .helm-wordmark-sub { display: none; }
.helm-kpi-strip { display: none; }
.helm-kpi-card, .helm-kpi-label, .helm-kpi-val, .helm-kpi-sub { display: none; }
@keyframes helm-breathe {
  0%, 100% { opacity: 0.5; transform: translate(-50%,-50%) scale(1); }
  50% { opacity: 0.9; transform: translate(-50%,-50%) scale(1.08); }
}
/* ════════════════════════════════════
HELM — Grid Layout (Calendar-first)
════════════════════════════════════ */
.helm-grid {
  display: flex; flex-direction: column; gap: 0;
}
.helm-ticker { margin-bottom: 20px; }
.helm-quick-row {
  display: flex; gap: 8px; margin-bottom: 20px;
}
.helm-quick-row .qa-btn { flex: 1; justify-content: center; }
.helm-body {
  display: grid; grid-template-columns: 3fr 2fr; gap: 24px;
  align-items: start;
}
.helm-body-left { min-width: 0; }
.helm-body-right { min-width: 0; }
.helm-left, .helm-right, .helm-bottom { display: contents; }
.helm-cal-panel {
  background: var(--bg-card); border: 1px solid var(--border-1);
  border-radius: 14px; overflow: hidden;
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
}
.helm-cal-panel .cal-wrap {
  border: none; border-radius: 0; background: transparent;
  backdrop-filter: none; margin-bottom: 0;
}
.helm-cal-panel .cal-nav { padding: 16px 20px; }
.helm-cal-panel .cal-month { font-size: 18px !important; }
.helm-cal-panel .cal-day { min-height: 72px; }
.helm-cal-panel .cal-dayview {
  padding: 20px 24px;
  border-top: 1px solid var(--border-1);
  background: rgba(255,255,255,0.02);
}
.helm-cal-panel .cal-dayview-date { font-size: 16px; }
.helm-cal-panel .cal-no-events {
  padding: 20px 0; text-align: center;
  color: var(--text-3); font-size: 13px;
}
.helm-panel {
  background: var(--bg-card); border: 1px solid var(--border-1);
  border-radius: 14px; padding: 20px;
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
}

════════════════════════════════════ */
.funnel-compact {
display:flex; align-items:center; gap:6px; flex-wrap:wrap;
padding:10px 0; margin-bottom:12px;
border-bottom:1px solid var(--border-1);
}
.fc-step { display:flex; align-items:baseline; gap:4px; }
.fc-count { font-family:'Outfit',sans-serif; font-weight:300; font-size:14px; }
.fc-name { font-size:11px; color:var(--text-3); }
.fc-arrow { color:var(--text-3); font-size:11px; flex-shrink:0; }
/* ════════════════════════════════════
CRITICAL PATH TIMELINE
════════════════════════════════════ */
.timeline-phases {
display:flex; gap:2px; margin-bottom:6px;
}
.tl-phase {
flex:1; text-align:center; font-size:10px; font-weight:600;
text-transform:uppercase; letter-spacing:1px; padding:6px 0;
border-radius:4px;
}
.tl-phase-1 { background:transparent; color:var(--text-3); }
.tl-phase-2 { background:transparent; color:var(--text-3); }
.tl-phase-3 { background:transparent; color:var(--text-3); }
.timeline-weeks {
display:flex; gap:3px;
}
.tl-wk {
flex:1; text-align:center; padding:8px 0; border-radius:8px;
font-size:11px; font-weight:500; font-family:'JetBrains Mono',monospace;
cursor:pointer; transition:all 0.2s ease; user-select:none;
background:rgba(201,68,32,0.04); color:var(--text-3);
border:1px solid transparent;
}
.tl-wk:hover { background:rgba(201,68,32,0.08); color:var(--accent); border-color:rgba(201,68,32,0.15); }
.tl-wk.tl-done { background:rgba(201,68,32,0.06); color:var(--text-2); }
.tl-wk.tl-current { background:rgba(201,68,32,0.10); color:var(--accent); border-color:rgba(201,68,32,0.20); }
.tl-wk.tl-future { background:rgba(201,68,32,0.03); color:var(--text-3); }
.tl-wk.tl-active { background:rgba(201,68,32,0.10); color:var(--accent); border-color:rgba(201,68,32,0.20); }
#roadmapSection.roadmap-inline .phase-label,
#roadmapSection.roadmap-inline .phase-desc { display:none; }
#roadmapSection.roadmap-inline .week-card { display:none; }
#roadmapSection.roadmap-inline .week-card.wk-visible { display:block; }
#roadmapSection.roadmap-inline .week-card.wk-visible .week-hdr { display:none; }
#roadmapSection.roadmap-inline .week-card.wk-visible .week-body { display:block; padding-top:4px; }
/* ════════════════════════════════════
CALENDAR — RDL
════════════════════════════════════ */
/* ── Calendar — Google/Notion Style Month View ── */
.cal-wrap {
  background:var(--bg-card);
  border:1px solid var(--border-1);
  border-radius:16px;
  margin-bottom:24px;
  overflow:hidden;
  backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
}
/* Nav bar */
.cal-nav {
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 20px; border-bottom:1px solid rgba(201,68,32,0.06);
}
.cal-nav-left { display:flex; align-items:center; gap:16px; }
.cal-nav-right { display:flex; align-items:center; gap:4px; }
.cal-month {
  font-family:'Syne',sans-serif; font-weight:700; font-size:20px;
  color:var(--text-1); letter-spacing:-0.2px;
}
.cal-nav-btn {
  background:rgba(255,255,255,0.04); border:1px solid rgba(201,68,32,0.08); border-radius:8px;
  padding:5px 14px; display:flex; align-items:center; justify-content:center;
  cursor:pointer; color:var(--text-2); font-size:12px; font-weight:500;
  font-family:'Space Grotesk',sans-serif; transition:all 0.2s ease; user-select:none;
  backdrop-filter:blur(8px);
}
.cal-nav-btn:hover { background:rgba(201,68,32,0.06); color:var(--text-1); }
.cal-nav-arrow {
  width:32px; height:32px; padding:0; font-size:18px; border-radius:50%;
  border:none; color:var(--text-3);
}
.cal-nav-arrow:hover { background:rgba(201,68,32,0.05); color:var(--text-1); }
/* Month grid */
.cal-grid {
  display:grid; grid-template-columns:repeat(7,1fr);
}
.cal-day-hdr {
  text-align:center; font-size:11px; font-weight:500;
  text-transform:uppercase; letter-spacing:0.5px;
  color:var(--text-3); padding:10px 0 8px;
  border-bottom:1px solid rgba(201,68,32,0.05);
  font-family:'Space Grotesk',sans-serif;
}
/* Day cells */
.cal-day {
  position:relative; min-height:100px; padding:4px 6px 6px;
  background:transparent;
  border-right:1px solid rgba(201,68,32,0.04);
  border-bottom:1px solid rgba(201,68,32,0.04);
  font-family:'Space Grotesk',sans-serif; font-size:12px;
  color:var(--text-2); cursor:pointer; transition:background 0.15s;
  user-select:none; display:flex; flex-direction:column;
}
.cal-day:nth-child(7n) { border-right:none; }
.cal-day:hover { background:rgba(201,68,32,0.03); }
/* Day number */
.cal-day-num {
  font-weight:500; font-size:12px; color:var(--text-2);
  width:26px; height:26px; display:flex; align-items:center; justify-content:center;
  border-radius:50%; margin-bottom:2px;
  font-family:'Space Grotesk',sans-serif; line-height:1;
}
/* Empty / other month */
.cal-day.cal-empty { cursor:default; }
.cal-day.cal-empty:hover { background:transparent; }
.cal-day.cal-empty .cal-day-num { color:var(--text-3); opacity:0.4; }
/* Today */
.cal-day.cal-today .cal-day-num {
  color:#fff; background:var(--accent);
  font-weight:600;
  box-shadow:0 0 0 2px rgba(201,68,32,0.15), 0 0 8px rgba(201,68,32,0.10);
}
/* Selected */
.cal-day.cal-selected { background:rgba(201,68,32,0.03); }
.cal-day.cal-today.cal-selected { background:rgba(201,68,32,0.04); }
/* Event pills inside cells — Google Calendar style */
.cal-preview {
  display:flex; flex-direction:column; gap:1px; flex:1; overflow:hidden;
}
.cal-pill {
  display:flex; align-items:center; gap:4px;
  font-size:11px; font-weight:500; line-height:1;
  padding:3px 6px; border-radius:4px;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  font-family:'Space Grotesk',sans-serif;
  transition:opacity 0.1s; cursor:pointer;
}
.cal-pill:hover { opacity:0.85; }
/* Color variants for pills */
.cal-pill-accent { background:rgba(224,90,58,0.12); color:var(--accent); }
.cal-pill-blue   { background:rgba(53,116,212,0.12); color:var(--blue); }
.cal-pill-green  { background:rgba(15,123,108,0.12); color:var(--green); }
.cal-pill-purple { background:rgba(124,58,237,0.10); color:var(--purple); }
.cal-pill-gold   { background:rgba(212,139,26,0.12); color:var(--gold); }
.cal-pill-time {
  font-size:10px; font-weight:600; opacity:0.7;
  flex-shrink:0;
}
.cal-pill-title { overflow:hidden; text-overflow:ellipsis; }
.cal-more {
  font-size:10px; font-weight:600; color:var(--text-3); padding:2px 6px;
  cursor:pointer; border-radius:4px; transition:background 0.1s;
  font-family:'Space Grotesk',sans-serif;
}
.cal-more:hover { background:rgba(201,68,32,0.04); color:var(--text-2); }
/* Day detail panel — slides open below calendar */
.cal-dayview {
  border-top:1px solid rgba(201,68,32,0.06);
  padding:16px 20px; background:rgba(255,255,255,0.03);
}
.cal-dayview-hdr {
  display:flex; align-items:center; justify-content:space-between; margin-bottom:12px;
}
.cal-dayview-date {
  font-family:'Syne',sans-serif; font-weight:700; font-size:14px; color:var(--text-1);
}
.cal-add-btn {
  background:rgba(201,68,32,0.10); border:1px solid rgba(201,68,32,0.20); border-radius:8px;
  padding:6px 16px; font-size:11px; font-weight:500; color:var(--accent);
  cursor:pointer; transition:all 0.2s ease; font-family:'JetBrains Mono',monospace;
  letter-spacing:1px; text-transform:uppercase;
}
.cal-add-btn:hover { background:rgba(201,68,32,0.16); }
.cal-event {
  display:flex; align-items:center; gap:12px; padding:10px 12px;
  border-radius:10px; background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.06);
  margin-bottom:6px; transition:all 0.2s ease; backdrop-filter:blur(8px);
}
.cal-event:hover { box-shadow:0 0 16px rgba(201,68,32,0.04); border-color:rgba(201,68,32,0.12); }
.cal-event:last-child { margin-bottom:0; }
.cal-event-time {
  font-family:'Space Grotesk',sans-serif; font-weight:600; font-size:12px;
  color:var(--accent); min-width:50px; flex-shrink:0;
}
.cal-event-body { flex:1; min-width:0; }
.cal-event-title {
  font-size:13px; font-weight:500; color:var(--text-1); line-height:1.4;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.cal-event-note { font-size:11px; color:var(--text-3); margin-top:2px; }
.cal-event-actions {
  display:flex; gap:2px; flex-shrink:0;
}
.cal-event-btn {
  background:none; border:none; color:var(--text-3); cursor:pointer;
  font-size:13px; padding:4px 6px; border-radius:6px; transition:all 0.15s;
  display:flex; align-items:center; justify-content:center;
}
.cal-event-btn:hover { color:var(--text-1); background:rgba(201,68,32,0.05); }
.cal-event-btn.cal-btn-del:hover { color:var(--accent); background:rgba(201,68,32,0.08); }
/* Inline edit mode */
.cal-event-edit {
  display:flex; align-items:center; gap:8px; padding:8px 12px;
  border-radius:10px; background:rgba(255,255,255,0.04); border:1px solid var(--accent);
  margin-bottom:6px; box-shadow:0 0 0 3px rgba(201,68,32,0.06);
}
.cal-event-edit input {
  padding:6px 10px; border:1px solid rgba(201,68,32,0.10); border-radius:6px;
  font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-1);
  background:rgba(255,255,255,0.04); outline:none; transition:border-color 0.2s;
}
.cal-event-edit input:focus { border-color:var(--accent); }
.cal-event-edit input:first-child { width:70px; flex-shrink:0; }
.cal-event-edit input:nth-child(2) { flex:1; min-width:0; }
.cal-edit-actions { display:flex; gap:4px; flex-shrink:0; }
.cal-edit-save, .cal-edit-cancel {
  border:none; border-radius:6px; padding:6px 12px;
  font-size:11px; font-weight:500; cursor:pointer;
  font-family:'JetBrains Mono',monospace; transition:all 0.2s ease; letter-spacing:0.5px;
}
.cal-edit-save { background:rgba(201,68,32,0.12); color:var(--accent); border:1px solid rgba(201,68,32,0.20); }
.cal-edit-save:hover { background:rgba(201,68,32,0.18); }
.cal-edit-cancel { background:rgba(255,255,255,0.04); color:var(--text-2); border:1px solid var(--border-1); }
.cal-edit-cancel:hover { background:rgba(255,255,255,0.07); color:var(--text-1); }
.cal-no-events { font-size:13px; color:var(--text-3); padding:16px 0; text-align:center; }
/* Add event form */
.cal-form {
  display:flex; gap:8px; margin-bottom:12px; align-items:center;
}
.cal-form input {
  padding:8px 12px; border:1px solid rgba(201,68,32,0.10); border-radius:8px;
  font-family:'Space Grotesk',sans-serif; font-size:13px; color:var(--text-1);
  background:rgba(255,255,255,0.04); outline:none; transition:border-color 0.2s, box-shadow 0.2s;
}
.cal-form input:first-child { width:80px; flex-shrink:0; }
.cal-form input:nth-child(2) { flex:1; }
.cal-form input:focus { border-color:var(--accent); }
.cal-form input::placeholder { color:var(--text-3); }
.cal-form-save {
  background:var(--accent); border:none; border-radius:8px;
  padding:8px 20px; font-size:12px; font-weight:600; color:#fff;
  cursor:pointer; font-family:'Space Grotesk',sans-serif; transition:all 0.15s;
  white-space:nowrap;
}
.cal-form-save:hover { background:var(--accent-hover); }
@media(max-width:768px) {
  .cal-day { min-height:64px; padding:3px 4px 4px; }
  .cal-day-num { width:22px; height:22px; font-size:11px; }
  .cal-pill { font-size:9px; padding:2px 4px; }
  .cal-pill-time { display:none; }
  .cal-form { flex-direction:column; }
  .cal-form input:first-child { width:100%; }
  .cal-nav { padding:10px 14px; }
  .cal-month { font-size:16px; }
  .cal-dayview { padding:12px 14px; }
}
