/* ════ DAYDITTO AGENT SUGGESTIONS ════ */

.suggestions-section{
  background:linear-gradient(135deg,rgba(255,255,255,.97),rgba(255,255,255,.93));
  border:1.5px solid rgba(37,99,235,.18);
  border-radius:16px;position:relative;overflow:hidden;
  box-shadow:0 2px 20px rgba(37,99,235,.07);
  margin-bottom:8px;
}
.suggestions-section::before{
  content:'';position:absolute;top:0;left:0;right:0;height:2.5px;
  background:linear-gradient(90deg,#2563EB,#60A5FA,#6366F1);
  border-radius:16px 16px 0 0;
}
.suggestions-section::after{
  content:'';position:absolute;top:-30px;right:-30px;
  width:120px;height:120px;border-radius:50%;
  background:radial-gradient(circle,rgba(37,99,235,.05),transparent 65%);
  pointer-events:none;
}

/* ── Header ── */
.sug-header{
  display:flex;align-items:center;gap:10px;
  padding:13px 16px 10px;border-bottom:1px solid rgba(30,58,95,.07);
  position:relative;z-index:1;
}
.sug-agent-badge{
  display:flex;align-items:center;gap:6px;font-size:10px;font-weight:800;
  letter-spacing:.07em;text-transform:uppercase;
  background:linear-gradient(135deg,#2563EB,#6366F1);
  color:#fff;padding:4px 10px;border-radius:20px;flex-shrink:0;
}
.sug-agent-dot{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.65);
  animation:sugpulse 2s infinite;}
@keyframes sugpulse{0%,100%{opacity:1}50%{opacity:.25}}
.sug-title{font-size:13.5px;font-weight:700;color:#0F172A;flex:1;letter-spacing:-.15px;}
.sug-refresh-btn{font-size:11px;font-weight:600;color:#60A5FA;background:none;border:none;cursor:pointer;
  padding:4px 8px;border-radius:7px;transition:all .12s;font-family:inherit;}
.sug-refresh-btn:hover{background:#EFF6FF;color:#2563EB;}
.sug-dismiss{font-size:11px;font-weight:600;color:#94A3B8;background:none;border:none;cursor:pointer;
  padding:4px 8px;border-radius:7px;transition:all .12s;font-family:inherit;}
.sug-dismiss:hover{background:#F1F5F9;color:#475569;}
.sug-loading{padding:20px 16px;text-align:center;color:#94A3B8;font-size:13px;font-weight:500;}

/* ── Cards ── */
.sug-cards{padding:10px 12px;display:flex;flex-direction:column;gap:7px;position:relative;z-index:1;}
.sug-card{
  border:1px solid rgba(30,58,95,.09);border-radius:12px;
  background:#fff;padding:11px 13px 11px 16px;
  display:flex;gap:11px;align-items:flex-start;
  transition:all .2s;cursor:pointer;position:relative;overflow:hidden;
}
.sug-card:hover{border-color:#93C5FD;box-shadow:0 2px 12px rgba(37,99,235,.08);}
.sug-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:12px 0 0 12px;}
.sug-card.cat-health::before{background:#22C55E;}
.sug-card.cat-work::before{background:#2563EB;}
.sug-card.cat-personal::before{background:#F59E0B;}
.sug-card.cat-social::before{background:#6366F1;}
.sug-card.cat-finance::before{background:#EC4899;}
.sug-icon{width:36px;height:36px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}
.sug-body{flex:1;min-width:0;}
.sug-card-top{display:flex;align-items:flex-start;gap:6px;margin-bottom:3px;flex-wrap:wrap;}
.sug-card-title{font-size:13px;font-weight:700;color:#0F172A;letter-spacing:-.1px;flex:1;min-width:0;}
.sug-pattern{display:inline-flex;align-items:center;gap:3px;
  font-size:9.5px;font-weight:700;padding:2px 6px;border-radius:6px;
  letter-spacing:.03em;white-space:nowrap;}
.sug-desc{font-size:11.5px;color:#64748B;line-height:1.5;margin-bottom:6px;}
.sug-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;}
.sug-time{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:#475569;}
.sug-days-mini{display:flex;gap:3px;}
.sug-day-pill{font-size:9.5px;font-weight:700;padding:2px 5px;border-radius:5px;
  background:#F1F5F9;color:#94A3B8;}
.sug-day-pill.sel{background:#DBEAFE;color:#2563EB;}
.sug-actions{display:flex;gap:6px;flex-direction:column;align-items:flex-end;flex-shrink:0;}
.sug-review-btn{font-size:11.5px;font-weight:700;padding:6px 13px;border-radius:9px;
  border:none;background:#2563EB;color:#fff;cursor:pointer;
  font-family:inherit;box-shadow:0 2px 7px rgba(37,99,235,.22);
  transition:all .15s;white-space:nowrap;}
.sug-review-btn:hover{background:#1D4ED8;box-shadow:0 4px 12px rgba(37,99,235,.32);}
.sug-skip-btn{font-size:10.5px;font-weight:600;padding:5px 9px;border-radius:8px;
  border:1px solid rgba(30,58,95,.13);background:transparent;color:#94A3B8;
  cursor:pointer;font-family:inherit;transition:all .12s;white-space:nowrap;}
.sug-skip-btn:hover{background:#F1F5F9;}
.sug-confidence{display:flex;align-items:center;gap:6px;margin-top:5px;}
.conf-bar{flex:1;height:3px;background:#F1F5F9;border-radius:2px;overflow:hidden;}
.conf-fill{height:100%;border-radius:2px;transition:width .5s ease;}
.conf-lbl{font-size:9.5px;font-weight:700;color:#94A3B8;white-space:nowrap;}

/* ════ REVIEW POPUP ════ */
.sug-popup-backdrop{
  position:fixed;inset:0;z-index:900;
  background:rgba(10,22,40,.5);backdrop-filter:blur(8px);
  display:none;align-items:center;justify-content:center;padding:20px;
}
.sug-popup-backdrop.open{display:flex;animation:sugbdfade .2s ease;}
@keyframes sugbdfade{from{opacity:0}to{opacity:1}}
.sug-popup{
  width:100%;max-width:580px;background:#fff;
  border-radius:22px;box-shadow:0 24px 80px rgba(15,32,64,.22);
  overflow:hidden;animation:sugpopenter .28s cubic-bezier(.2,.8,.2,1);
  max-height:90vh;display:flex;flex-direction:column;
}
@keyframes sugpopenter{from{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:none}}
.sug-pop-header{
  padding:18px 20px 14px;flex-shrink:0;
  background:linear-gradient(135deg,#EFF6FF,#fff);
  border-bottom:1px solid rgba(30,58,95,.07);
}
.sug-pop-top{display:flex;align-items:flex-start;gap:12px;margin-bottom:11px;}
.sug-pop-icon{width:44px;height:44px;border-radius:13px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;font-size:20px;}
.sug-pop-title{font-size:18px;font-weight:800;color:#0F172A;letter-spacing:-.35px;margin-bottom:3px;}
.sug-pop-desc{font-size:12.5px;color:#64748B;line-height:1.55;}
.sug-pop-close{width:30px;height:30px;border-radius:9px;border:1px solid rgba(30,58,95,.13);
  background:#F8FAFC;color:#64748B;font-size:15px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  margin-left:auto;transition:all .12s;font-family:inherit;}
.sug-pop-close:hover{background:#F1F5F9;}
.sug-pop-badges{display:flex;gap:6px;flex-wrap:wrap;align-items:center;}
.sug-pop-badge{display:inline-flex;align-items:center;gap:4px;
  font-size:11px;font-weight:700;padding:4px 10px;border-radius:20px;}
.sug-pop-badge.confidence{background:#DBEAFE;color:#1E3A5F;}
.sug-pop-badge.streak{background:#DCFCE7;color:#15803D;}
.sug-pop-badge.time{background:#FEF3C7;color:#92400E;}
.sug-pop-badge.pattern{background:#F3E8FF;color:#6B21A8;}
.sug-pop-body{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:16px;}
.sug-pop-body::-webkit-scrollbar{width:4px;}
.sug-pop-body::-webkit-scrollbar-thumb{background:#E2E8F0;border-radius:2px;}
.sug-sec-label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:#94A3B8;margin-bottom:9px;display:flex;align-items:center;gap:8px;}
.sug-sec-label::after{content:'';flex:1;height:1px;background:rgba(30,58,95,.07);}

/* Habit heatmap */
.sug-habit-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;}
.sug-habit-cell{display:flex;flex-direction:column;align-items:center;gap:3px;}
.sug-habit-day-lbl{font-size:9px;font-weight:700;color:#94A3B8;letter-spacing:.04em;text-transform:uppercase;}
.sug-habit-bar{height:32px;width:100%;border-radius:5px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:#F1F5F9;}
.sug-habit-fill{width:100%;border-radius:5px;transition:height .5s ease;}
.sug-habit-pct{font-size:9.5px;font-weight:700;color:#64748B;margin-top:2px;}

/* Time options */
.sug-time-options{display:flex;gap:7px;flex-wrap:wrap;}
.sug-time-opt{font-size:12px;font-weight:600;padding:7px 13px;border-radius:10px;
  border:1.5px solid rgba(30,58,95,.13);background:#fff;color:#334155;
  cursor:pointer;transition:all .15s;font-family:inherit;}
.sug-time-opt:hover{border-color:#93C5FD;color:#2563EB;}
.sug-time-opt.act{background:#2563EB;border-color:#2563EB;color:#fff;
  box-shadow:0 2px 8px rgba(37,99,235,.22);}

/* Timeline */
.sug-timeline{position:relative;padding-left:28px;}
.sug-timeline::before{content:'';position:absolute;left:10px;top:8px;bottom:8px;width:1.5px;
  background:linear-gradient(180deg,#2563EB,#93C5FD,rgba(37,99,235,.08));border-radius:1px;}
.sug-tl-item{position:relative;margin-bottom:7px;}
.sug-tl-item:last-child{margin-bottom:0;}
.sug-tl-dot{position:absolute;left:-22px;top:10px;width:12px;height:12px;border-radius:50%;
  background:#fff;border:2px solid #3B82F6;transition:all .2s;z-index:1;}
.sug-tl-item.selected .sug-tl-dot{background:#2563EB;border-color:#2563EB;
  box-shadow:0 0 0 3px rgba(37,99,235,.14);}
.sug-tl-item.conflict .sug-tl-dot{background:#EF4444;border-color:#EF4444;}
.sug-tl-item.past .sug-tl-dot{background:#E2E8F0;border-color:#CBD5E1;}
.sug-tl-card{border:1.5px solid rgba(30,58,95,.09);border-radius:12px;padding:9px 12px;
  background:#fff;cursor:pointer;transition:all .18s;display:flex;align-items:center;gap:9px;}
.sug-tl-item.selected .sug-tl-card{border-color:#93C5FD;background:#EFF6FF;
  box-shadow:0 2px 10px rgba(37,99,235,.09);}
.sug-tl-item.conflict .sug-tl-card{border-color:rgba(239,68,68,.2);background:#FEF2F2;cursor:default;}
.sug-tl-item.past .sug-tl-card{opacity:.4;cursor:default;}
.sug-tl-date{flex-shrink:0;text-align:center;min-width:44px;}
.sug-tl-dow{font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#94A3B8;}
.sug-tl-num{font-size:19px;font-weight:800;color:#1E293B;letter-spacing:-.5px;line-height:1.1;}
.sug-tl-item.selected .sug-tl-num{color:#2563EB;}
.sug-tl-item.conflict .sug-tl-num{color:#EF4444;}
.sug-tl-body{flex:1;min-width:0;}
.sug-tl-slot{font-size:11px;font-weight:700;color:#334155;margin-bottom:2px;
  display:flex;align-items:center;gap:5px;}
.sug-tl-reason{font-size:10.5px;color:#64748B;line-height:1.4;}
.sug-tl-badge{font-size:9px;font-weight:800;padding:2px 6px;border-radius:5px;
  letter-spacing:.04em;text-transform:uppercase;margin-top:3px;display:inline-block;}
.sug-tl-badge.add{background:#DCFCE7;color:#15803D;}
.sug-tl-badge.conflict{background:#FEE2E2;color:#991B1B;}
.sug-tl-toggle{width:26px;height:26px;border-radius:8px;border:1.5px solid rgba(30,58,95,.13);
  background:#F8FAFC;display:flex;align-items:center;justify-content:center;
  flex-shrink:0;transition:all .15s;font-size:14px;color:#94A3B8;}
.sug-tl-item.selected .sug-tl-toggle{background:#2563EB;border-color:#2563EB;color:#fff;font-size:11px;}

/* Summary bar */
.sug-pop-summary{background:#EFF6FF;border:1px solid #BFDBFE;border-radius:12px;
  padding:11px 14px;display:flex;align-items:center;gap:10px;}
.sug-pop-sum-count{font-size:22px;font-weight:800;color:#2563EB;letter-spacing:-.5px;flex-shrink:0;}
.sug-pop-sum-text{font-size:12.5px;font-weight:600;color:#1E3A5F;flex:1;line-height:1.5;}

/* Footer */
.sug-pop-footer{padding:13px 20px;border-top:1px solid rgba(30,58,95,.07);
  display:flex;gap:9px;flex-shrink:0;background:#fff;}
.sug-pop-cancel{font-size:13px;font-weight:600;padding:10px 18px;border-radius:11px;
  border:1.5px solid rgba(30,58,95,.13);background:transparent;color:#475569;
  cursor:pointer;font-family:inherit;transition:all .15s;}
.sug-pop-cancel:hover{background:#F1F5F9;}
.sug-pop-confirm{flex:1;font-size:13.5px;font-weight:700;padding:11px;border-radius:11px;border:none;
  background:linear-gradient(135deg,#1D4ED8,#2563EB);color:#fff;
  cursor:pointer;font-family:inherit;
  box-shadow:0 4px 14px rgba(37,99,235,.28);transition:all .15s;}
.sug-pop-confirm:hover{box-shadow:0 6px 20px rgba(37,99,235,.4);}
.sug-pop-confirm:disabled{opacity:.5;cursor:not-allowed;}

/* ════ GENERATING / EMPTY STATES ════ */
.sug-generating{padding:36px 20px;display:flex;flex-direction:column;align-items:center;
  gap:14px;text-align:center;position:relative;z-index:1;}
.sug-spinner-ring{width:44px;height:44px;border-radius:50%;
  border:3.5px solid rgba(37,99,235,.12);
  border-top-color:#2563EB;
  animation:sug-spin 0.9s linear infinite;}
@keyframes sug-spin{to{transform:rotate(360deg);}}
.sug-generating-title{font-size:14.5px;font-weight:700;color:#0F172A;letter-spacing:-.15px;}
.sug-generating-sub{font-size:12px;color:#64748B;line-height:1.5;}

.sug-empty-info{padding:28px 22px;display:flex;flex-direction:column;align-items:center;
  gap:10px;text-align:center;position:relative;z-index:1;}
.sug-empty-icon{font-size:34px;line-height:1;margin-bottom:2px;}
.sug-empty-title{font-size:15px;font-weight:800;color:#0F172A;letter-spacing:-.2px;}
.sug-empty-text{font-size:12.5px;color:#475569;line-height:1.6;max-width:380px;}
.sug-empty-text strong{color:#2563EB;font-weight:700;}

/* ════ TOAST ════ */
.sug-toast{position:fixed;left:50%;bottom:34px;transform:translate(-50%,40px);
  background:linear-gradient(135deg,#0F172A,#1E293B);color:#fff;
  font-size:13px;font-weight:600;padding:11px 18px;border-radius:11px;
  box-shadow:0 8px 28px rgba(15,23,42,.32);z-index:1100;
  font-family:Inter,'Plus Jakarta Sans',sans-serif;
  opacity:0;pointer-events:none;transition:opacity .22s,transform .25s cubic-bezier(.2,.8,.2,1);}
.sug-toast.show{opacity:1;transform:translate(-50%,0);}
