/* Learn & Grow Polish Patch v1.6.2
   Safe companion CSS. It does not touch data or replace the main plugin. */

/* General app width balance */
.lg-root.lg-mode-app .app-wrap{
  width: min(100%, 1540px) !important;
}

/* Lesson reader: protect reading comfort */
.lg-root.lg-session-mode #view-session .view-head,
body.lg-session-mode #view-session .view-head{
  max-width: 1080px !important;
  margin-inline: auto !important;
  padding-inline: 8px !important;
}

.lg-root.lg-session-mode #view-session .view-head h1,
body.lg-session-mode #view-session .view-head h1{
  line-height: .98 !important;
  letter-spacing: -0.045em !important;
  margin-bottom: 10px !important;
}

/* Session strip: make it neat, not a bulky card row */
.lg-root.lg-session-mode #view-session .session-list,
body.lg-session-mode #view-session .session-list{
  max-width: 1080px !important;
  margin: 0 auto 18px !important;
  padding: 12px !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.72) !important;
  border: 1px solid rgba(15,23,42,.08) !important;
  box-shadow: 0 18px 45px rgba(30, 41, 59, .08) !important;
  backdrop-filter: blur(18px) !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  display: flex !important;
  gap: 10px !important;
  scroll-snap-type: x proximity !important;
  scrollbar-width: thin !important;
}

.lg-root.lg-session-mode #view-session .session-list::-webkit-scrollbar,
body.lg-session-mode #view-session .session-list::-webkit-scrollbar{height:7px;}
.lg-root.lg-session-mode #view-session .session-list::-webkit-scrollbar-thumb,
body.lg-session-mode #view-session .session-list::-webkit-scrollbar-thumb{background:rgba(99,102,241,.25);border-radius:99px;}

.lg-root.lg-session-mode #view-session .sess-item,
body.lg-session-mode #view-session .sess-item{
  flex: 0 0 235px !important;
  min-height: 64px !important;
  max-height: 76px !important;
  padding: 12px 14px !important;
  border-radius: 17px !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  scroll-snap-align: start !important;
}

.lg-root.lg-session-mode #view-session .sess-item b,
body.lg-session-mode #view-session .sess-item b{
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  line-height: 1.12 !important;
  font-size: .86rem !important;
}

.lg-root.lg-session-mode #view-session .sess-item small,
body.lg-session-mode #view-session .sess-item small{
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  font-size: .68rem !important;
}

.lg-root.lg-session-mode #view-session .sess-item i,
body.lg-session-mode #view-session .sess-item i{
  font-size: .66rem !important;
  padding: 5px 8px !important;
  border-radius: 999px !important;
  background: rgba(37,99,235,.08) !important;
  color: #1d4ed8 !important;
}

/* Reader body: wider but not too long lines */
.lg-root.lg-session-mode #view-session .session-reader,
body.lg-session-mode #view-session .session-reader{
  max-width: 1080px !important;
  padding: clamp(28px, 4vw, 56px) !important;
  margin-inline: auto !important;
}

.lg-root.lg-session-mode #view-session .session-body,
body.lg-session-mode #view-session .session-body,
.lg-root.lg-session-mode #view-session .sess-extra,
body.lg-session-mode #view-session .sess-extra,
.lg-root.lg-session-mode #view-session .quiz-wrap,
body.lg-session-mode #view-session .quiz-wrap{
  max-width: 900px !important;
  margin-inline: auto !important;
}

.lg-root.lg-session-mode #view-session .session-body,
body.lg-session-mode #view-session .session-body{
  font-size: 1.08rem !important;
  line-height: 1.88 !important;
}

/* Right streak widget: remove fake-looking static feel */
.streak-w .lbl b{
  transition: .2s ease;
}
.streak-w .note{
  font-weight: 700 !important;
}

/* If main plugin still hardcodes 42, JS will add this after syncing */
.streak-w.lg-streak-synced{
  outline: 0 !important;
}

/* Profile certificates empty state polish */
#lgCertGrid .lg-empty,
.certs .lg-empty{
  width: 100% !important;
  max-width: 420px !important;
  margin: 0 auto !important;
  border: 1px dashed rgba(15,23,42,.12) !important;
  background: linear-gradient(180deg,#fff,rgba(248,250,252,.8)) !important;
}

@media(max-width: 920px){
  .lg-root.lg-session-mode #view-session .view-head h1,
  body.lg-session-mode #view-session .view-head h1{
    font-size: clamp(1.65rem, 7vw, 2.35rem) !important;
  }
  .lg-root.lg-session-mode #view-session .session-list,
  body.lg-session-mode #view-session .session-list{
    margin-inline: 0 !important;
    border-radius: 18px !important;
  }
  .lg-root.lg-session-mode #view-session .sess-item,
  body.lg-session-mode #view-session .sess-item{
    flex-basis: 215px !important;
  }
  .lg-root.lg-session-mode #view-session .session-reader,
  body.lg-session-mode #view-session .session-reader{
    padding: 22px !important;
    border-radius: 24px !important;
  }
}
