.preppai-mentor-layout{
  max-width: 1200px;
  margin: 18px auto;
  padding: 0 10px;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

/* ✅ removed sidebar UI */
.preppai-mentor-wrap{
  background:#ffffff;
  border-radius: 18px;
  overflow:hidden;
  box-shadow: 0 18px 40px rgba(0,0,0,0.08);
  border:1px solid #e5e7eb;
}

/* Topbar */
.preppai-mentor-topbar{
  display:flex;
  justify-content: space-between;
  align-items:center;
  padding: 14px 18px;
  background:#ffffff;
  border-bottom: 1px solid #e5e7eb;
}

.preppai-mentor-brand{
  display:flex;
  align-items:center;
  gap: 12px;
}

.preppai-mentor-avatar{
  width: 44px;
  height: 44px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background: #2563eb;
  color:#fff;
  font-weight: 900;
  letter-spacing: 0.5px;
  box-shadow: 0 12px 24px rgba(37,99,235,0.20);
}

.preppai-mentor-title{
  color:#111827;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.1;
}

.preppai-mentor-subtitle{
  color: #6b7280;
  font-size: 12px;
}

.preppai-mentor-meta{
  display:flex;
  gap:10px;
  align-items:center;
}

.preppai-mentor-credits{
  color:#111827;
  font-size: 13px;
  background: #f3f4f6;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid #e5e7eb;
  font-weight:800;
}

.preppai-star-btn{
  border:none;
  background: #fff7ed;
  border:1px solid #fed7aa;
  color:#7c2d12;
  padding: 8px 12px;
  border-radius: 12px;
  cursor:pointer;
  font-size: 14px;
  font-weight:800;
}

/* Chat */
.preppai-mentor-chat{
  height: 540px;
  overflow-y: auto;
  padding: 18px;
  background:#ffffff;
}

.preppai-msg{
  display:flex;
  margin-bottom: 12px;
}

.preppai-msg.preppai-user{
  justify-content: flex-end;
}

.preppai-msg.preppai-ai{
  justify-content: flex-start;
}

.preppai-bubble{
  max-width: 78%;
  padding: 14px 14px;
  border-radius: 16px;
  color:#111827;
  line-height: 1.65;
  font-size: 14px;
  position: relative;
  border: 1px solid #e5e7eb;
  background:#f9fafb;
}

/* user bubble */
.preppai-user .preppai-bubble{
  background: #2563eb;
  border-color:#1d4ed8;
  color:#ffffff;
  border-bottom-right-radius: 6px;
}

/* ai bubble */
.preppai-ai .preppai-bubble{
  background:#f9fafb;
  border-color:#e5e7eb;
  border-bottom-left-radius: 6px;
}

/* headings */
.preppai-bubble h2, .preppai-bubble h3, .preppai-bubble h4, .preppai-bubble h5, .preppai-bubble h6{
  color: #111827;
  margin: 10px 0 8px;
  line-height: 1.25;
}

.preppai-user .preppai-bubble h2,
.preppai-user .preppai-bubble h3,
.preppai-user .preppai-bubble h4,
.preppai-user .preppai-bubble h5,
.preppai-user .preppai-bubble h6{
  color:#ffffff;
}

.preppai-bubble p{
  margin: 8px 0;
}

.preppai-bubble ul, .preppai-bubble ol{
  margin: 10px 0 10px 18px;
}

.preppai-bubble li{
  margin: 6px 0;
}

/* Input bar */
.preppai-mentor-inputbar{
  display:flex;
  gap: 10px;
  padding: 14px;
  background: #ffffff;
  border-top: 1px solid #e5e7eb;
}

#preppai-mentor-input{
  flex:1;
  resize:none;
  border-radius: 14px;
  border: 1px solid #e5e7eb;
  padding: 12px 12px;
  font-size: 14px;
  outline:none;
  background: #ffffff;
  color:#111827;
  min-height: 54px;
}

#preppai-mentor-input::placeholder{
  color: #9ca3af;
}

.preppai-mentor-sendbtn{
  background: #111827;
  border: none;
  padding: 0 16px;
  min-width: 130px;
  height: 54px;
  border-radius: 14px;
  font-weight: 900;
  color:#ffffff;
  cursor:pointer;
  transition: transform 0.18s ease, opacity 0.18s ease;
}

.preppai-mentor-sendbtn:hover{
  transform: translateY(-1px);
  opacity: 0.95;
}

.preppai-mentor-sendbtn:disabled{
  opacity:0.6;
  cursor:not-allowed;
}

.preppai-mentor-footnote{
  padding: 10px 14px 14px;
  color: #6b7280;
  font-size: 12px;
  text-align:center;
}

/* typing cursor */
.preppai-typing-cursor{
  display:inline-block;
  width: 10px;
  margin-left: 2px;
  opacity: 0.9;
  animation: preppaiBlink 0.9s infinite;
}

@keyframes preppaiBlink {
  0%, 50% { opacity: 0.2; }
  51%, 100% { opacity: 1; }
}

/* ✅ Saved Plans Below */
.preppai-saved-below{
  margin: 14px;
  border: 1px solid #e5e7eb;
  background:#ffffff;
  border-radius: 16px;
  overflow:hidden;
}

.preppai-saved-header{
  padding: 12px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border-bottom: 1px solid #e5e7eb;
  background:#f9fafb;
}

.preppai-saved-title{
  font-weight: 900;
  color:#111827;
  font-size: 14px;
}

.preppai-saved-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.preppai-saved-btn{
  background:#ffffff;
  border:1px solid #e5e7eb;
  border-radius: 12px;
  padding: 8px 10px;
  font-weight: 800;
  cursor:pointer;
  font-size: 12px;
  color:#111827;
}

.preppai-saved-btn:hover{
  transform: translateY(-1px);
}

.preppai-danger{
  background:#fee2e2;
  border-color:#fecaca;
  color:#991b1b;
}

.preppai-saved-list{
  padding: 10px;
  max-height: 240px;
  overflow:auto;
}

.preppai-saved-empty{
  color:#6b7280;
  font-size: 13px;
  padding: 10px;
}

.preppai-saved-item{
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 10px;
  margin-bottom: 10px;
  cursor:pointer;
  transition: transform .15s ease, box-shadow .15s ease;
}

.preppai-saved-item:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(0,0,0,0.06);
}

.preppai-saved-item .t{
  color:#111827;
  font-weight: 800;
  font-size: 13px;
  margin-bottom: 4px;
}
.preppai-saved-item .d{
  color:#6b7280;
  font-size: 11px;
}

/* Responsive */
@media (max-width: 980px){
  .preppai-bubble{ max-width: 92%; }
  .preppai-mentor-chat{ height: 480px; }
  .preppai-mentor-sendbtn{ min-width: 96px; }
}
