/* Lesson 1 — The Heart Awakens
   Original source: Heart Lectio.txt */

/* Lectio */
  /* =========================================================
     Root normalization (inherit Squarespace)
  ========================================================= */
  #ll-heart-lectio .llm{
    color:inherit;
    line-height:inherit;
  }

  /* =========================================================
     Card/frame
  ========================================================= */
  #ll-heart-lectio .llm-card{
    max-width:1080px;
    margin:0 auto;
    border:none;
    border-radius:16px;
    padding:16px;
    background:transparent;
    box-sizing:border-box;
    overflow:hidden;
  }

  /* =========================================================
     Lectio section + full-width field layer
  ========================================================= */
  #ll-heart-lectio .llm-lectio{
    margin:0;
    padding:0;
    box-sizing:border-box;
  }

  #ll-heart-lectio .llm-lectioInner{
    margin:0 -16px -16px -16px; /* cancel card padding L/R/B */
    padding:20px 16px 22px 16px;
    background:transparent;
    color:inherit;
    box-sizing:border-box;
  }

  #ll-heart-lectio .llm-lectioBody{
    position:relative;
    padding-top:0;
  }

  #ll-heart-lectio .llm-reflectionToolbar{
    position:absolute;
    top:0;
    right:0;
    z-index:2;
  }

  #ll-heart-lectio .llm-resetIcon{
    width:34px;
    height:34px;
    padding:0;
    border:0;
    background:transparent;
    color:inherit;
    cursor:pointer;
    transition:transform 160ms ease, filter 160ms ease;
  }

  #ll-heart-lectio .llm-resetIcon:hover{
    transform:translateY(-2px);
    filter:drop-shadow(0 4px 3px rgba(0,0,0,.22));
  }

  #ll-heart-lectio .llm-resetIcon svg{
    display:block;
    width:22px;
    height:22px;
    margin:auto;
    fill:none;
    stroke:currentColor;
    stroke-width:1.75;
    stroke-linecap:round;
    stroke-linejoin:round;
  }

  #ll-heart-lectio .llm-lectioGrid{
    display:grid;
    grid-template-columns:1fr;
    gap:18px;
    align-items:start;
  }

  #ll-heart-lectio .llm-lectioLeft .llm-lectioBox:first-child{
    padding-right:44px;
  }

  /* =========================================================
     Left column (spacing only; no typography forcing)
  ========================================================= */
  #ll-heart-lectio .llm-lectioBox p{
    margin:0 0 12px 0;
  }

  #ll-heart-lectio .llm-lectioBox p:last-child{
    margin-bottom:0;
  }

  #ll-heart-lectio .llm-lectioBox h2,
  #ll-heart-lectio .llm-reflectionIntro h2,
  #ll-heart-lectio .llm-markerHeader,
  #ll-heart-lectio .llm-lectioHowTo h2{
    margin:0 0 10px;
    font-size:20px;
    font-weight:650;
    line-height:1.25;
  }

  #ll-heart-lectio .llm-lectioBox p,
  #ll-heart-lectio .llm-reflectionIntro p,
  #ll-heart-lectio .llm-markerSection > [data-role="markerIntro"],
  #ll-heart-lectio .llm-lectioHowTo p{
    font-size: var(--portal-body-copy-size);
    line-height:1.5;
  }

  /* =========================================================
     Right column + Respond container
  ========================================================= */
  #ll-heart-lectio .llm-lectioRight{
    display:flex;
    flex-direction:column;
    gap:0;
  }

  #ll-heart-lectio .llm-reflectionIntro p{
    margin:0 0 10px;
  }

  #ll-heart-lectio .llm-lectioRespondBox{
    display:grid;
    gap:14px;
    margin:20px 0 0;
    box-sizing:border-box;
  }

  /* Prevent doubled spacing junction */
  #ll-heart-lectio .llm-lectioRespondBox p:last-child{ margin-bottom:0; }

#ll-heart-lectio .llm-miniPrompt{
  margin:0 0 10px 0;
}

#ll-heart-lectio .llm-alternateQuestions{
  margin:0 0 12px;
  font-size:15px;
}

#ll-heart-lectio .llm-alternateQuestions ul{
  margin:0;
  padding-left:20px;
}

#ll-heart-lectio .llm-alternateQuestions li + li{
  margin-top:4px;
}

#ll-heart-lectio .llm-alternateControls{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
  align-items:center;
  gap:8px;
}

#ll-heart-lectio .llm-alternateNav{
  display:flex;
  align-items:center;
  gap:2px;
}

#ll-heart-lectio .llm-alternateControls button{
  width:28px;
  height:28px;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  cursor:pointer;
}

#ll-heart-lectio .llm-alternateControls svg{
  display:block;
  width:20px;
  height:20px;
  margin:auto;
  fill:none;
  stroke:currentColor;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#ll-heart-lectio .llm-alternateOutput{
  margin:0;
}

@keyframes llmSlideFromLeft{
  from{ opacity:0; transform:translateX(-8px); }
  to{ opacity:1; transform:translateX(0); }
}

@keyframes llmSlideFromRight{
  from{ opacity:0; transform:translateX(8px); }
  to{ opacity:1; transform:translateX(0); }
}

#ll-heart-lectio .llm-slideFromLeft{
  animation:llmSlideFromLeft 180ms ease;
}

#ll-heart-lectio .llm-slideFromRight{
  animation:llmSlideFromRight 180ms ease;
}

#ll-heart-lectio .llm-lectioQ{
  padding:16px;
  border:1px solid currentColor;
  border-radius:14px;
}

#ll-heart-lectio .llm-lectioCategory{
  margin:0 0 8px;
  font-size:15px;
  font-weight:650;
}

#ll-heart-lectio textarea.llm-lectioTA{
  width:100%;
  min-height:78px;
  padding:10px;
  border-radius:12px;
  font:inherit;
  box-sizing:border-box;
}

}

#ll-heart-lectio .llm-lectioTA--short{
  min-height:42px;
}

  /* Spacing after first three only */
  #ll-heart-lectio .llm-lectioTA[data-key="H1"],
  #ll-heart-lectio .llm-lectioTA[data-key="H2"],
  #ll-heart-lectio .llm-lectioTA[data-key="H3"]{
    margin-bottom:0;
  }
  #ll-heart-lectio .llm-lectioTA[data-key="H4"]{
    margin-bottom:0;
  }

  /* =========================================================
     How-to section (spacing only; no typography forcing)
  ========================================================= */
  #ll-heart-lectio .llm-lectioHowTo p{
    margin:0;
  }

  /* =========================================================
     Actions row
  ========================================================= */
  #ll-heart-lectio .llm-lectioActions{
    display:flex;
    justify-content:flex-end;
    gap:8px;
    margin-top:12px;
    padding-top:0;
    border-top:0;
  }

  #ll-heart-lectio .llm-lectioBtn{
    appearance:none;
    border:1px solid rgba(255,255,255,.28);
    background:transparent;
    color:#fff;
    border-radius:999px;
    padding:10px 14px;
    font-size:13px;
    font-weight:850;
    letter-spacing:-0.01em;
    cursor:pointer;
    line-height:1;
  }

  #ll-heart-lectio .llm-lectioBtn:hover{
    background:rgba(255,255,255,.08);
    box-shadow:0 10px 24px rgba(0,0,0,.18);
    transform:translateY(-1px);
  }

  #ll-heart-lectio .llm-lectioBtn:active{
    transform:translateY(0);
    box-shadow:0 6px 14px rgba(0,0,0,.16);
  }


/* Start fresh row (inside Respond box, bottom-right) */
#ll-heart-lectio .llm-lectioFreshRow{
  display:flex;
  justify-content:flex-end;
  margin:0;
}

#ll-heart-lectio .llm-printActions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:12px;
}

#ll-heart-lectio .llm-lectioHowTo{
  margin-top:24px;
}

#ll-heart-lectio .llm-lectioFreshRow--bottom{
  margin-top:16px;
}

#ll-heart-lectio .llm-lectioBtn.llm-startFresh{
  padding:8px 12px;
  font-size:12px;
  font-weight:850;
}

  @media (prefers-reduced-motion:reduce){
    #ll-heart-lectio .llm-lectioBtn:hover,
    #ll-heart-lectio .llm-lectioBtn:active{
      transform:none;
    }
  }

/* =========================================================
   Inspiration Marker — moved from Respond With Your Soul
========================================================= */

#ll-heart-lectio .llm-markerSection{
  margin-top:32px;
  padding-top:24px;
  border-top:0;
}

#ll-heart-lectio .llm-markerBox{
  margin:0;
  padding:20px;
  border:1px solid currentColor;
  border-radius:14px;
  background:transparent;
  box-sizing:border-box;
}

#ll-heart-lectio .llm-markerSection > [data-role="markerIntro"]{
  margin:10px 0 20px;
}

#ll-heart-lectio .llm-markerDivider{
  display:none;
}

#ll-heart-lectio .llm-marker{
  margin:0;
  padding:0;
}

#ll-heart-lectio .llm-markerTabs{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:10px;
  margin:10px 0 14px;
}

#ll-heart-lectio .llm-markerTab{
  appearance:none;
  padding:12px;
  color:#fff;
  background:transparent;
  border:1px solid currentColor;
  border-radius:10px;
  font-size:14px;
  font-weight:600;
  line-height:1.1;
  text-align:center;
  cursor:pointer;
  transition:background 160ms ease, color 160ms ease, box-shadow 160ms ease, transform 160ms ease, border-color 160ms ease;
}

#ll-heart-lectio .llm-markerTab:hover{
  background:rgba(255,255,255,.10);
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  transform:translateY(-1px);
}

#ll-heart-lectio .llm-markerTab.llm-active{
  color:#111;
  background:#f4e6a6;
  border-color:#f4e6a6;
  box-shadow:none;
}

#ll-heart-lectio .llm-markerTab:active{
  transform:translateY(0);
  box-shadow:0 8px 18px rgba(0,0,0,.18);
}

#ll-heart-lectio .llm-markerScript{
  display:block;
  width:100%;
  max-width:none;
  margin:0;
  padding:10px 0 0;
  color:#fff;
  font-size:20px;
  line-height:1.55;
  opacity:.96;
}

#ll-heart-lectio .llm-blank{
  display:inline-block;
  width:auto;
  min-width:0;
  max-width:100%;
  margin:0 2px;
  padding:0 0 2px;
  color:#fff;
  background:transparent;
  border:none;
  border-bottom:1px solid rgba(255,255,255,.55);
  font:inherit;
  font-size:inherit;
  line-height:inherit;
  vertical-align:baseline;
}

#ll-heart-lectio .llm-blank::placeholder{
  color:rgba(255,255,255,.60);
}

#ll-heart-lectio .llm-blank:focus{
  border-bottom-color:rgba(255,255,255,.92);
  outline:none;
}

#ll-heart-lectio .llm-markerActions{
  display:flex;
  justify-content:flex-end;
  margin-top:12px;
}

#ll-heart-lectio .llm-markerBuild{
  appearance:none;
  width:34px;
  height:34px;
  padding:6px;
  color:#fff;
  background:transparent;
  border:0;
  cursor:pointer;
  transition:transform 160ms ease, filter 160ms ease;
}

#ll-heart-lectio .llm-markerBuild:hover{
  transform:translateY(-2px);
  filter:drop-shadow(0 4px 3px rgba(0,0,0,.22));
}

#ll-heart-lectio .llm-markerBuild svg{
  display:block;
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#ll-heart-lectio .llm-markerOut{
  display:none;
  opacity:0;
  transform:translateY(8px);
  transition:opacity 320ms ease, transform 320ms ease;
}

#ll-heart-lectio .llm-markerHeader{
  margin:0;
  font-size:20px;
  font-weight:650;
}

#ll-heart-lectio .llm-marker.llm-built .llm-markerOutText{
  max-width:60ch;
  margin:0 auto;
  padding:0 20px;
  text-align:center;
  font-size:26px;
  line-height:1.2;
}

#ll-heart-lectio .llm-marker.llm-built [data-role="markerIntro"],
#ll-heart-lectio .llm-marker.llm-built .llm-markerTabs,
#ll-heart-lectio .llm-marker.llm-built [data-role="markerScript"]{
  display:none;
}

#ll-heart-lectio .llm-marker.llm-built{
  padding-top:18px;
}

#ll-heart-lectio .llm-marker.llm-built .llm-markerOut{
  display:block;
  opacity:1;
  transform:translateY(0);
}

@media (max-width:680px){
  #ll-heart-lectio .llm-markerTabs{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (prefers-reduced-motion:reduce){
  #ll-heart-lectio .llm-markerTab,
  #ll-heart-lectio .llm-markerOut{
    transition:none;
  }

  #ll-heart-lectio .llm-markerTab:hover,
  #ll-heart-lectio .llm-markerTab:active,
  #ll-heart-lectio .llm-markerOut{
    transform:none;
  }
}

/* Final Heart reflection polish */
#ll-heart-lectio .llm-lectioGrid{
  gap:32px;
}

#ll-heart-lectio .llm-lectioLeft .llm-lectioBox:first-child{
  padding-right:0;
}

#ll-heart-lectio textarea.llm-lectioTA{
  overflow-y:hidden;
  resize:vertical;
}

#ll-heart-lectio .llm-streamsShell{
  padding:20px;
  border:1px solid currentColor;
  border-radius:14px;
}

#ll-heart-lectio .llm-streamsShell .llm-lectioRespondBox{
  gap:24px;
  margin-top:24px;
}

#ll-heart-lectio .llm-streamsShell .llm-lectioQ{
  padding:0;
  border:0;
  border-radius:0;
}

#ll-heart-lectio .llm-markerSection{
  margin-top:32px;
  padding:20px;
  border:1px solid currentColor;
  border-radius:14px;
}

#ll-heart-lectio .llm-markerBox{
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
}

#ll-heart-lectio .llm-lectioHowTo{
  margin-top:32px;
}

#ll-heart-lectio .llm-actionMenu{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  margin-top:32px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.22);
}

#ll-heart-lectio .llm-actionIcon{
  appearance:none;
  width:40px;
  height:40px;
  padding:7px;
  border:1px solid currentColor;
  border-radius:999px;
  background:transparent;
  color:inherit;
  cursor:pointer;
  transition:transform 160ms ease, filter 160ms ease, color 160ms ease, opacity 160ms ease;
}

#ll-heart-lectio .llm-actionIcon:hover{
  transform:translateY(-2px);
  filter:drop-shadow(0 4px 3px rgba(0,0,0,.22));
}

#ll-heart-lectio .llm-actionIcon:disabled{
  cursor:default;
}

#ll-heart-lectio .llm-actionIcon svg{
  display:block;
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#ll-heart-lectio .llm-actionIcon.llm-startFresh svg{
  transform:translateX(.5px);
}

#ll-heart-lectio .llm-actionIcon.llm-copySuccess{
  color:#f4e6a6;
}

#ll-heart-lectio .llm-actionIcon.llm-copyFailed{
  opacity:.5;
}

#ll-heart-lectio .llm-marker{
  position:relative;
}

#ll-heart-lectio .llm-markerSection.llm-built > .llm-markerHeader,
#ll-heart-lectio .llm-markerSection.llm-built > [data-role="markerIntro"]{
  display:none;
}

#ll-heart-lectio .llm-marker.llm-built .llm-markerActions{
  position:absolute;
  top:auto;
  right:0;
  bottom:0;
  margin:0;
}

#ll-heart-lectio .llm-marker.llm-built .llm-markerOutText{
  padding-right:48px;
  padding-left:48px;
}

  .llm-node.llm-milestone .llm-openLine{
  font-size:18px;
  line-height:1.35;
  font-weight:650;
}

@media (prefers-reduced-motion:reduce){
  #ll-heart-lectio .llm-actionIcon:hover{
    transform:none;
  }
}
