/* ============================================================
   月詠（Lunaria）記事UI 追加部品 v2 / 2026-07-11
   スタンドアロンUI部品 10種（記事UI部品案.png 準拠）
   - すべて新規クラス。既存 .luna-* の上書きなし
============================================================ */

/* ------------------------------------------------------------
   C1. 3ポイントカード .luna-trio
------------------------------------------------------------ */
.luna-body .luna-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0;}
.luna-body .luna-trio > div{
  background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;
  padding:24px 16px 20px;text-align:center;
}
.luna-body .luna-trio__icon{
  width:62px;height:62px;margin:0 auto 14px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,#1c1430,#251b3f);color:var(--luna-gold);
}
.luna-body .luna-trio__icon svg{width:28px;height:28px;}
.luna-body .luna-trio strong{
  display:block;font-family:var(--luna-serif);font-weight:600;font-size:15px;
  letter-spacing:.08em;color:#241f38;line-height:1.6;
}
.luna-body .luna-trio strong::after{
  content:"";display:block;width:6px;height:6px;margin:10px auto 0;
  border:1px solid var(--luna-gold);transform:rotate(45deg);
}
.luna-body .luna-trio p{margin:10px 0 0;font-size:.82em;line-height:1.85;color:var(--luna-ink-soft);text-wrap:pretty;}

/* ------------------------------------------------------------
   C2. 心の状態カード .luna-states（淡い色面で状態を分ける）
------------------------------------------------------------ */
.luna-body .luna-states{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0;}
.luna-body .luna-states > div{
  border:1px solid var(--luna-line);border-radius:10px;
  padding:22px 16px 18px;text-align:center;background:var(--luna-paper);
}
.luna-body .luna-states > .luna-state--a{background:rgba(216,142,196,.10);}
.luna-body .luna-states > .luna-state--b{background:rgba(122,106,196,.10);}
.luna-body .luna-states > .luna-state--c{background:rgba(43,37,64,.055);}
.luna-body .luna-states svg{width:30px;height:30px;color:var(--luna-gold-deep);}
.luna-body .luna-states strong{
  display:block;margin-top:10px;font-family:var(--luna-serif);font-weight:600;
  font-size:15px;letter-spacing:.12em;color:#241f38;
}
.luna-body .luna-states strong::after{
  content:"";display:block;width:26px;height:1px;margin:11px auto 0;background:rgba(199,154,78,.55);
}
.luna-body .luna-states p{margin:11px 0 0;font-size:.8em;line-height:1.85;color:var(--luna-ink-soft);text-wrap:pretty;}

/* ------------------------------------------------------------
   C3. 事実と想像の切り分けBOX .luna-factbox
------------------------------------------------------------ */
.luna-body .luna-factbox{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:30px 0;}
.luna-body .luna-factbox__col{background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;overflow:hidden;}
.luna-body .luna-factbox__head{
  display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 10px;
  font-family:var(--luna-serif);font-weight:600;font-size:14px;letter-spacing:.2em;
}
.luna-body .luna-factbox__head svg{width:17px;height:17px;}
.luna-body .luna-factbox__col--fact .luna-factbox__head{background:#241f38;color:var(--luna-cream);}
.luna-body .luna-factbox__col--fact .luna-factbox__head svg{color:var(--luna-gold);}
.luna-body .luna-factbox__col--imag .luna-factbox__head{border-bottom:1px solid rgba(199,154,78,.4);color:#241f38;}
.luna-body .luna-factbox__col--imag .luna-factbox__head svg{color:var(--luna-gold-deep);}
.luna-body .luna-factbox ul{list-style:none;margin:0;padding:8px 16px 14px;}
.luna-body .luna-factbox li{
  position:relative;margin:0;padding:8px 0 8px 26px;font-size:.86em;line-height:1.75;color:var(--luna-ink-soft);
}
.luna-body .luna-factbox li + li{border-top:1px solid rgba(43,37,64,.07);}
.luna-body .luna-factbox li::before{
  content:"";position:absolute;left:1px;top:.85em;width:15px;height:15px;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4.6 12.6l4.4 4.4L19.4 6.8' fill='none' stroke='%23c79a4e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.luna-body .luna-factbox__and{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1;
  width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:#241f38;border:1px solid rgba(199,154,78,.65);
  font-family:var(--luna-serif);font-size:13px;color:var(--luna-cream);
}

/* ------------------------------------------------------------
   C4. サインの見分け方フロー .luna-flow
------------------------------------------------------------ */
.luna-body .luna-flow{
  display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:30px 0;
  padding:24px 14px 20px;background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;
}
.luna-body .luna-flow__step{position:relative;text-align:center;}
.luna-body .luna-flow__step + .luna-flow__step::before{
  content:"";position:absolute;left:-19px;top:34px;width:22px;height:1px;
  border-top:1px dashed rgba(199,154,78,.7);
}
.luna-body .luna-flow__num{
  width:68px;height:68px;margin:0 auto;border-radius:50%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;
  border:1px solid rgba(199,154,78,.55);background:var(--luna-cream-deep);color:#241f38;
}
.luna-body .luna-flow__step:first-child .luna-flow__num,
.luna-body .luna-flow__step:last-child .luna-flow__num{
  background:linear-gradient(160deg,#1c1430,#251b3f);border-color:transparent;color:var(--luna-cream);
}
.luna-body .luna-flow__step:nth-child(3) .luna-flow__num{background:rgba(122,106,196,.16);}
.luna-body .luna-flow__num em{font-style:normal;font-family:var(--luna-latin);font-size:15px;line-height:1;}
.luna-body .luna-flow__num span{font-family:var(--luna-serif);font-size:10px;letter-spacing:0;white-space:nowrap;}
.luna-body .luna-flow__step > svg{width:19px;height:19px;margin-top:11px;color:var(--luna-gold-deep);}
.luna-body .luna-flow__step p{margin:7px 0 0;font-size:.76em;line-height:1.7;color:var(--luna-ink-soft);}

/* ------------------------------------------------------------
   C5. ケース別ミニカード .luna-cases（画像あり小カード）
------------------------------------------------------------ */
.luna-body .luna-cases{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0;}
.luna-body .luna-cases > div{background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;overflow:hidden;}
.luna-body .luna-cases img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;margin:0;border-radius:0;}
.luna-body .luna-cases > div > div{padding:13px 14px 15px;text-align:center;}
.luna-body .luna-cases strong{
  display:block;font-family:var(--luna-serif);font-weight:600;font-size:14px;
  letter-spacing:.08em;color:#241f38;line-height:1.6;
}
.luna-body .luna-cases p{margin:7px 0 0;font-size:.78em;line-height:1.8;color:var(--luna-ink-soft);text-wrap:pretty;}

/* ------------------------------------------------------------
   C6. よくある勘違いBOX .luna-myth
------------------------------------------------------------ */
.luna-body .luna-myth{margin:30px 0;background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;overflow:hidden;}
.luna-body .luna-myth__q{padding:16px 18px;text-align:center;background:rgba(216,142,196,.12);border-bottom:1px solid rgba(199,154,78,.32);}
.luna-body .luna-myth__qlabel,
.luna-body .luna-myth__alabel{
  display:flex;align-items:center;justify-content:center;gap:7px;margin:0;
  font-size:11.5px;letter-spacing:.18em;
}
.luna-body .luna-myth__qlabel{color:#96607f;}
.luna-body .luna-myth__alabel{color:var(--luna-gold-deep);}
.luna-body .luna-myth__qlabel svg,.luna-body .luna-myth__alabel svg{width:15px;height:15px;flex:none;}
.luna-body .luna-myth__quote{
  margin:9px 0 0;font-family:var(--luna-serif);font-weight:600;font-size:1.05em;
  line-height:1.8;letter-spacing:.04em;color:#241f38;text-wrap:pretty;
}
.luna-body .luna-myth__a{padding:15px 20px 18px;text-align:center;}
.luna-body .luna-myth__a p:not(.luna-myth__alabel){
  margin:9px 0 0;font-size:.92em;line-height:1.95;color:var(--luna-ink-soft);text-wrap:pretty;
}

/* ------------------------------------------------------------
   C7. セルフチェックカード .luna-selfcheck
------------------------------------------------------------ */
.luna-body .luna-selfcheck{
  position:relative;margin:30px 0;padding:22px 24px 24px;overflow:hidden;
  background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;
}
.luna-body .luna-selfcheck__ttl{
  display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 8px;
  font-family:var(--luna-serif);font-weight:600;font-size:14.5px;letter-spacing:.14em;color:#241f38;text-align:center;
}
.luna-body .luna-selfcheck__ttl::before,
.luna-body .luna-selfcheck__ttl::after{
  content:"";flex:none;width:6px;height:6px;border:1px solid var(--luna-gold);transform:rotate(45deg);
}
.luna-body .luna-selfcheck ul{list-style:none;margin:0;padding:0;position:relative;z-index:1;}
.luna-body .luna-selfcheck li{display:flex;align-items:center;gap:12px;margin:0;padding:9px 0;line-height:1.7;color:var(--luna-ink-soft);font-size:.9em;}
.luna-body .luna-selfcheck li::before{
  content:"";flex:none;width:15px;height:15px;border:1px solid rgba(199,154,78,.7);border-radius:3px;background:var(--luna-cream);
}
.luna-body .luna-selfcheck li::after{content:"";flex:1;border-bottom:1px dotted rgba(43,37,64,.22);transform:translateY(.4em);}
.luna-body .luna-selfcheck__flora{position:absolute;right:6px;bottom:2px;width:110px;height:110px;color:rgba(199,154,78,.45);pointer-events:none;}

/* ------------------------------------------------------------
   C8. 心の変化タイムライン .luna-tl
------------------------------------------------------------ */
.luna-body .luna-tl{
  display:grid;grid-template-columns:repeat(4,1fr);margin:30px 0;
  padding:22px 12px 20px;background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;
}
.luna-body .luna-tl__step{text-align:center;}
.luna-body .luna-tl__label{
  display:block;min-height:1.7em;margin:0 0 10px;
  font-family:var(--luna-serif);font-weight:600;font-size:13px;letter-spacing:.1em;color:#241f38;
}
.luna-body .luna-tl__axis{position:relative;display:flex;align-items:center;justify-content:center;}
.luna-body .luna-tl__axis::before{
  content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(199,154,78,.45);
}
.luna-body .luna-tl__step:first-child .luna-tl__axis::before{left:50%;}
.luna-body .luna-tl__step:last-child .luna-tl__axis::before{right:6px;}
.luna-body .luna-tl__step:last-child .luna-tl__axis::after{
  content:"";position:absolute;right:2px;top:50%;width:7px;height:7px;
  border-top:1px solid rgba(199,154,78,.75);border-right:1px solid rgba(199,154,78,.75);
  transform:translateY(-50%) rotate(45deg);
}
.luna-body .luna-tl__icon{
  position:relative;z-index:1;width:46px;height:46px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  border:1px solid rgba(199,154,78,.55);background:var(--luna-cream-deep);color:var(--luna-gold-deep);
}
.luna-body .luna-tl__step:first-child .luna-tl__icon,
.luna-body .luna-tl__step:nth-child(3) .luna-tl__icon{
  background:linear-gradient(160deg,#1c1430,#251b3f);border-color:transparent;color:var(--luna-gold);
}
.luna-body .luna-tl__step:nth-child(2) .luna-tl__icon{background:rgba(216,142,196,.14);}
.luna-body .luna-tl__icon svg{width:20px;height:20px;}
.luna-body .luna-tl__step p{margin:10px 4px 0;font-size:.76em;line-height:1.7;color:var(--luna-ink-soft);}

/* ------------------------------------------------------------
   C9. 見方を切り替えるカード .luna-reframe
------------------------------------------------------------ */
.luna-body .luna-reframe{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:30px 0;}
.luna-body .luna-reframe__col{background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;overflow:hidden;}
.luna-body .luna-reframe__head{
  display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;
  font-size:12px;letter-spacing:.16em;
}
.luna-body .luna-reframe__head svg{width:15px;height:15px;}
.luna-body .luna-reframe__col--worry .luna-reframe__head{background:rgba(122,106,196,.15);color:#4a3f6e;}
.luna-body .luna-reframe__col--kind .luna-reframe__head{background:#241f38;color:var(--luna-cream);}
.luna-body .luna-reframe__col--kind .luna-reframe__head svg{color:var(--luna-gold);}
.luna-body .luna-reframe__body{padding:16px 18px 18px;text-align:center;}
.luna-body .luna-reframe strong{
  display:block;font-family:var(--luna-serif);font-weight:600;font-size:1em;
  line-height:1.75;letter-spacing:.03em;color:#241f38;text-wrap:pretty;
}
.luna-body .luna-reframe__body p{margin:9px 0 0;font-size:.8em;line-height:1.85;color:var(--luna-ink-soft);text-wrap:pretty;}
.luna-body .luna-reframe__arrow{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1;
  width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:var(--luna-paper);border:1px solid rgba(199,154,78,.65);color:var(--luna-gold-deep);
}
.luna-body .luna-reframe__arrow svg{width:15px;height:15px;}

/* ------------------------------------------------------------
   C10. 自分への問いかけカード .luna-ask
------------------------------------------------------------ */
.luna-body .luna-ask{
  position:relative;display:grid;grid-template-columns:auto 1fr;gap:16px 18px;align-items:center;
  margin:30px 0;padding:24px 26px 20px;overflow:hidden;
  background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;
}
.luna-body .luna-ask__icon{
  width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,#1c1430,#251b3f);color:var(--luna-gold);
}
.luna-body .luna-ask__icon svg{width:26px;height:26px;}
.luna-body .luna-ask__q{
  margin:0;font-family:var(--luna-serif);font-weight:600;font-size:1.12em;
  line-height:2;letter-spacing:.05em;color:#241f38;text-wrap:pretty;position:relative;z-index:1;
}
.luna-body .luna-ask__note{
  grid-column:1 / -1;margin:0;padding-top:14px;text-align:center;
  font-size:12px;letter-spacing:.16em;color:var(--luna-gold-deep);position:relative;z-index:1;
}
.luna-body .luna-ask__note::before{
  content:"";display:block;width:6px;height:6px;margin:0 auto 12px;
  border:1px solid var(--luna-gold);transform:rotate(45deg);
}
.luna-body .luna-ask__flora{position:absolute;right:4px;top:8px;width:96px;height:96px;color:rgba(199,154,78,.4);pointer-events:none;}

/* ------------------------------------------------------------
   C11. 章のひとこと結論カード .luna-word（ルナリアからのひとこと）
------------------------------------------------------------ */
.luna-body .luna-word{
  position:relative;margin:30px 0;padding:30px 26px 26px;text-align:center;overflow:hidden;
  background:var(--luna-paper);border:1px solid rgba(199,154,78,.5);border-radius:12px;
}
.luna-body .luna-word::before{
  content:"";position:absolute;inset:7px;border:1px solid rgba(199,154,78,.32);border-radius:8px;pointer-events:none;
}
.luna-body .luna-word__moon{
  position:relative;z-index:1;width:44px;height:44px;margin:0 auto 12px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  border:1px dashed rgba(199,154,78,.6);background:var(--luna-cream-deep);color:var(--luna-gold-deep);
}
.luna-body .luna-word__moon svg{width:20px;height:20px;}
.luna-body .luna-word__label{
  position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:12px;
  margin:0 0 12px;font-family:var(--luna-serif);font-weight:600;
  font-size:12px;letter-spacing:.3em;text-indent:.3em;color:var(--luna-gold-deep);
}
.luna-body .luna-word__label::before,
.luna-body .luna-word__label::after{
  content:"";flex:none;width:34px;height:1px;background:rgba(199,154,78,.55);
}
.luna-body .luna-word__label::after{background:rgba(199,154,78,.55);}
.luna-body .luna-word__text{
  position:relative;z-index:1;margin:0;font-family:var(--luna-serif);font-weight:600;
  font-size:1.14em;line-height:2.1;letter-spacing:.06em;color:#241f38;text-wrap:pretty;
}
.luna-body .luna-word__orn{
  position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:14px;
  color:rgba(199,154,78,.7);
}
.luna-body .luna-word__orn::before,
.luna-body .luna-word__orn::after{
  content:"";width:44px;height:1px;
  background:linear-gradient(to right,transparent,rgba(199,154,78,.6));
}
.luna-body .luna-word__orn::after{background:linear-gradient(to left,transparent,rgba(199,154,78,.6));}
.luna-body .luna-word__orn svg{width:12px;height:12px;flex:none;}
.luna-body .luna-word__cloud{
  position:absolute;pointer-events:none;border-radius:50%;
  width:150px;height:100px;filter:blur(22px);
}
.luna-body .luna-word__cloud--a{right:-30px;top:-24px;background:rgba(216,142,196,.14);}
.luna-body .luna-word__cloud--b{left:-34px;bottom:-30px;background:rgba(199,154,78,.13);}

/* ------------------------------------------------------------
   C12. 箇条書き .luna-list（カード型・金の菱形マーカー）
------------------------------------------------------------ */
.luna-body .luna-list{
  margin:30px 0;padding:10px 24px;
  background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;
}
.luna-body .luna-list ul{list-style:none;margin:0;padding:0;}
.luna-body .luna-list li{
  position:relative;margin:0;padding:12px 0 12px 26px;
  line-height:1.9;color:var(--luna-ink-soft);font-size:.95em;
}
.luna-body .luna-list li + li{border-top:1px solid rgba(43,37,64,.08);}
.luna-body .luna-list li::before{
  content:"";position:absolute;left:3px;top:1.28em;width:7px;height:7px;
  border:1px solid var(--luna-gold-deep);transform:rotate(45deg);
}
.luna-body .luna-list li strong{font-weight:600;color:#241f38;}

/* ------------------------------------------------------------
   C13. 会話例カード .luna-talk
------------------------------------------------------------ */
.luna-body .luna-talk{
  margin:30px 0;padding:22px 22px 18px;
  background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;
}
.luna-body .luna-talk__row{display:flex;flex-direction:column;gap:5px;margin:0 0 14px;}
.luna-body .luna-talk__row--you{align-items:flex-end;}
.luna-body .luna-talk__name{
  display:flex;align-items:center;gap:6px;font-size:10.5px;letter-spacing:.2em;color:var(--luna-ink-faint);
}
.luna-body .luna-talk__row--them .luna-talk__name{color:#6a5f96;}
.luna-body .luna-talk__row--you .luna-talk__name{color:#a06a88;}
.luna-body .luna-talk__bubble{
  max-width:78%;padding:12px 16px;font-size:.92em;line-height:1.85;color:#241f38;text-wrap:pretty;
}
.luna-body .luna-talk__row--them .luna-talk__bubble{
  background:rgba(122,106,196,.12);border-radius:3px 12px 12px 12px;
}
.luna-body .luna-talk__row--you .luna-talk__bubble{
  background:rgba(216,142,196,.13);border-radius:12px 3px 12px 12px;
}
.luna-body .luna-talk__note{
  margin:16px 0 0;padding-top:14px;border-top:1px solid rgba(43,37,64,.08);
  text-align:center;font-size:.85em;line-height:1.9;color:var(--luna-ink-soft);text-wrap:pretty;
}

/* ------------------------------------------------------------
   C14. ことばの意味カード .luna-term
------------------------------------------------------------ */
.luna-body .luna-term{
  position:relative;margin:30px 0;padding:28px 26px 26px;text-align:center;
  background:var(--luna-paper);border:1px solid rgba(199,154,78,.5);border-radius:12px;
}
.luna-body .luna-term::before{
  content:"";position:absolute;inset:7px;border:1px solid rgba(199,154,78,.3);border-radius:8px;pointer-events:none;
}
.luna-body .luna-term__icon{position:relative;z-index:1;display:block;margin:0 auto 10px;width:26px;height:26px;color:var(--luna-gold-deep);}
.luna-body .luna-term__word{
  position:relative;z-index:1;margin:0;font-family:var(--luna-serif);font-weight:600;
  font-size:1.22em;letter-spacing:.18em;line-height:1.7;color:#241f38;
}
.luna-body .luna-term__word::after{
  content:"";display:block;width:56px;height:1px;margin:12px auto 0;
  background:linear-gradient(to right,transparent,rgba(199,154,78,.6),transparent);
}
.luna-body .luna-term__def{
  position:relative;z-index:1;margin:13px 0 0;font-size:.92em;line-height:2;color:var(--luna-ink-soft);text-wrap:pretty;
}

/* ------------------------------------------------------------
   C15. 補足アコーディオン .luna-acc（details/summary）
------------------------------------------------------------ */
.luna-body .luna-acc{
  margin:30px 0;background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;overflow:hidden;
}
.luna-body .luna-acc summary{
  list-style:none;display:flex;align-items:center;gap:12px;padding:15px 20px;cursor:pointer;
  font-family:var(--luna-serif);font-weight:600;font-size:14.5px;letter-spacing:.1em;color:#241f38;
}
.luna-body .luna-acc summary::-webkit-details-marker{display:none;}
.luna-body .luna-acc summary::before{
  content:"";flex:none;width:15px;height:15px;
  background:
    linear-gradient(var(--luna-gold-deep),var(--luna-gold-deep)) center/11px 1px no-repeat,
    linear-gradient(var(--luna-gold-deep),var(--luna-gold-deep)) center/1px 11px no-repeat;
  transition:transform .25s ease;
}
.luna-body .luna-acc[open] summary{background:rgba(216,142,196,.1);}
.luna-body .luna-acc[open] summary::before{
  background:linear-gradient(var(--luna-gold-deep),var(--luna-gold-deep)) center/11px 1px no-repeat;
}
.luna-body .luna-acc__body{padding:4px 20px 18px;border-top:1px solid rgba(199,154,78,.28);}
.luna-body .luna-acc__body p{margin:12px 0 0;font-size:.9em;line-height:2;color:var(--luna-ink-soft);text-wrap:pretty;}

/* ------------------------------------------------------------
   C16. 慎重に見たいサインカード .luna-care
------------------------------------------------------------ */
.luna-body .luna-care{
  position:relative;margin:42px 0 30px;padding:34px 26px 24px;
  background:linear-gradient(170deg,#fbf5e7,#f7efdd);border:1px solid rgba(199,154,78,.55);border-radius:12px;
}
.luna-body .luna-care::before{
  content:"";position:absolute;inset:7px;border:1px solid rgba(199,154,78,.3);border-radius:8px;pointer-events:none;
}
.luna-body .luna-care__lamp{
  position:absolute;left:50%;top:-19px;transform:translateX(-50%);
  width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:var(--luna-paper);border:1px solid rgba(199,154,78,.6);color:var(--luna-gold-deep);
}
.luna-body .luna-care__lamp svg{width:19px;height:19px;}
.luna-body .luna-care__ttl{
  position:relative;z-index:1;margin:0 0 12px;text-align:center;
  font-family:var(--luna-serif);font-weight:600;font-size:1.04em;letter-spacing:.1em;color:#241f38;
}
.luna-body .luna-care ul{list-style:none;margin:0;padding:0;position:relative;z-index:1;}
.luna-body .luna-care li{
  position:relative;margin:0;padding:8px 0 8px 20px;font-size:.9em;line-height:1.9;color:var(--luna-ink-soft);
}
.luna-body .luna-care li::before{
  content:"";position:absolute;left:2px;top:1.25em;width:6px;height:6px;
  border:1px solid var(--luna-gold-deep);transform:rotate(45deg);
}
.luna-body .luna-care__note{
  position:relative;z-index:1;margin:14px 0 0;padding-top:14px;text-align:center;
  border-top:1px solid rgba(199,154,78,.35);
  font-size:.86em;line-height:2;color:var(--luna-ink-soft);text-wrap:pretty;
}

/* ------------------------------------------------------------
   C17. 30秒リセットカード .luna-reset
------------------------------------------------------------ */
.luna-body .luna-reset{
  margin:30px 0;padding:22px 22px 20px;
  background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;
}
.luna-body .luna-reset__ttl{
  display:flex;align-items:center;justify-content:center;gap:10px;margin:0 0 14px;
  font-family:var(--luna-serif);font-weight:600;font-size:14.5px;letter-spacing:.12em;color:#241f38;
}
.luna-body .luna-reset__ttl::before,
.luna-body .luna-reset__ttl::after{
  content:"";flex:none;width:6px;height:6px;border:1px solid var(--luna-gold);transform:rotate(45deg);
}
.luna-body .luna-reset ol{list-style:none;margin:0;padding:0;counter-reset:luna-reset;display:flex;flex-direction:column;gap:10px;}
.luna-body .luna-reset li{
  counter-increment:luna-reset;display:flex;align-items:center;gap:14px;
  padding:13px 16px;background:var(--luna-cream-deep);border:1px solid rgba(199,154,78,.3);border-radius:9px;
  font-size:.92em;line-height:1.75;color:var(--luna-ink);
}
.luna-body .luna-reset li::before{
  content:counter(luna-reset);flex:none;width:26px;height:26px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(122,106,196,.16);font-family:var(--luna-latin);font-size:13px;color:#4a3f6e;
}
.luna-body .luna-reset li svg{flex:none;margin-left:auto;width:20px;height:20px;color:rgba(199,154,78,.75);}

/* ------------------------------------------------------------
   C18. 根拠・参考情報カード .luna-ref
------------------------------------------------------------ */
.luna-body .luna-ref{
  position:relative;margin:42px 0 30px;padding:34px 26px 20px;text-align:center;
  background:var(--luna-paper);border:1px solid rgba(199,154,78,.5);border-radius:12px;
}
.luna-body .luna-ref__icon{
  position:absolute;left:50%;top:-19px;transform:translateX(-50%);
  width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,#1c1430,#251b3f);color:var(--luna-gold);
}
.luna-body .luna-ref__icon svg{width:18px;height:18px;}
.luna-body .luna-ref__ttl{
  margin:0 0 12px;font-family:var(--luna-serif);font-weight:600;
  font-size:1.02em;line-height:1.8;letter-spacing:.08em;color:#241f38;
}
.luna-body .luna-ref__body{margin:0;font-size:.9em;line-height:2;color:var(--luna-ink-soft);text-wrap:pretty;}
.luna-body .luna-ref__src{
  margin:16px 0 0;padding-top:12px;border-top:1px dashed rgba(199,154,78,.4);
  font-size:.78em;letter-spacing:.06em;color:var(--luna-ink-faint);
}

/* ------------------------------------------------------------
   C19. 関係フェーズゲージ .luna-gauge
------------------------------------------------------------ */
.luna-body .luna-gauge{
  margin:30px 0;padding:22px 22px 20px;
  background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;
}
.luna-body .luna-gauge__ttl{
  display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 20px;
  font-family:var(--luna-serif);font-weight:600;font-size:14.5px;letter-spacing:.12em;color:#241f38;
}
.luna-body .luna-gauge__ttl::before,
.luna-body .luna-gauge__ttl::after{
  content:"";flex:none;width:30px;height:1px;background:rgba(199,154,78,.55);
}
.luna-body .luna-gauge__track{display:grid;grid-template-columns:repeat(4,1fr);}
.luna-body .luna-gauge__step{position:relative;text-align:center;}
.luna-body .luna-gauge__dot{
  position:relative;z-index:1;display:block;width:14px;height:14px;margin:0 auto;border-radius:50%;
  background:var(--luna-cream-deep);border:1px solid rgba(199,154,78,.55);
}
.luna-body .luna-gauge__step::before{
  content:"";position:absolute;left:-50%;right:50%;top:7px;height:1px;background:rgba(199,154,78,.45);
}
.luna-body .luna-gauge__step:first-child::before{display:none;}
.luna-body .luna-gauge__step--on .luna-gauge__dot{
  width:20px;height:20px;margin-top:-3px;background:rgba(122,106,196,.18);
  border-color:#7a6ac4;box-shadow:0 0 0 4px rgba(122,106,196,.12);
}
.luna-body .luna-gauge__step--on::before{background:#a596d9;}
.luna-body .luna-gauge__label{
  display:block;margin-top:12px;font-size:.76em;line-height:1.6;color:var(--luna-ink-soft);
}
.luna-body .luna-gauge__step--on .luna-gauge__label{color:#4a3f6e;font-weight:600;}
.luna-body .luna-gauge__note{
  display:flex;align-items:center;justify-content:center;gap:10px;
  margin:20px 0 0;padding:13px 16px;border-radius:9px;background:rgba(122,106,196,.09);
  font-size:.86em;line-height:1.9;color:var(--luna-ink-soft);text-wrap:pretty;
}
.luna-body .luna-gauge__note svg{flex:none;width:17px;height:17px;color:var(--luna-gold-deep);}

/* ------------------------------------------------------------
   C20. アイキャッチ画像 .luna-eyecatch（本文内の情景画像枠）
------------------------------------------------------------ */
.luna-body .luna-eyecatch{margin:34px 0;}
.luna-body .luna-eyecatch img{
  display:block;width:100%;height:auto;margin:0;border-radius:14px;
  border:1px solid rgba(43,37,64,.18);
  box-shadow:0 10px 28px rgba(28,20,48,.14);
}
.luna-body .luna-eyecatch figcaption{
  display:flex;align-items:center;justify-content:center;gap:10px;
  margin-top:12px;font-size:.8em;letter-spacing:.1em;color:var(--luna-ink-faint);
}
.luna-body .luna-eyecatch figcaption::before,
.luna-body .luna-eyecatch figcaption::after{
  content:"";flex:none;width:22px;height:1px;background:rgba(199,154,78,.5);
}

/* ------------------------------------------------------------
   C21. ルナのひとこと v2 .luna-say（円形アバター＋金縁吹き出し）
------------------------------------------------------------ */
.luna-body .luna-say{display:flex;align-items:flex-start;gap:18px;margin:34px 0;}
.luna-body .luna-say__avatar{
  flex:none;width:88px;height:88px;border-radius:50%;overflow:hidden;
  border:1px solid rgba(199,154,78,.6);background:rgba(122,106,196,.12);
  box-shadow:0 0 0 5px rgba(199,154,78,.1);
}
.luna-body .luna-say__avatar img{display:block;width:100%;height:100%;object-fit:cover;margin:0;border-radius:0;}
.luna-body .luna-say__bubble{
  position:relative;flex:1;min-width:0;padding:18px 22px;
  background:var(--luna-paper);border:1px solid rgba(199,154,78,.55);border-radius:14px;
}
.luna-body .luna-say__bubble::before,
.luna-body .luna-say__bubble::after{
  content:"";position:absolute;left:-9px;top:34px;
  border-style:solid;border-width:7px 9px 7px 0;
  border-color:transparent rgba(199,154,78,.55) transparent transparent;
}
.luna-body .luna-say__bubble::after{left:-7.5px;border-right-color:var(--luna-paper);}
.luna-body .luna-say__label{
  display:flex;align-items:center;gap:9px;margin:0 0 7px;
  font-family:var(--luna-serif);font-weight:600;font-size:13px;letter-spacing:.24em;color:#4a3f6e;
}
.luna-body .luna-say__label::before{content:"";flex:none;width:18px;height:1px;background:var(--luna-gold);}
.luna-body .luna-say__bubble p:not(.luna-say__label){
  margin:0;font-size:.95em;line-height:2.1;color:var(--luna-ink);text-wrap:pretty;
}

/* ---- v2 SP（<900px） ---- */
@media (max-width:899.98px){
  .luna-body .luna-trio,
  .luna-body .luna-states,
  .luna-body .luna-cases,
  .luna-body .luna-factbox,
  .luna-body .luna-reframe{grid-template-columns:1fr;}
  .luna-body .luna-flow{grid-template-columns:repeat(2,1fr);row-gap:20px;}
  .luna-body .luna-flow__step:nth-child(3)::before{display:none;}
  .luna-body .luna-tl{grid-template-columns:repeat(2,1fr);row-gap:20px;}
  .luna-body .luna-tl__axis::before,
  .luna-body .luna-tl__step:last-child .luna-tl__axis::after{display:none;}
  .luna-body .luna-cases img{aspect-ratio:16/7;}
  .luna-body .luna-ask{padding:20px 18px 18px;}
  .luna-body .luna-ask__q{font-size:1.02em;}
  .luna-body .luna-selfcheck{padding:20px 16px 22px;}
  .luna-body .luna-selfcheck__flora{width:84px;height:84px;}
  .luna-body .luna-word{padding:24px 18px 22px;}
  .luna-body .luna-word__text{font-size:1.04em;line-height:2;}
  .luna-body .luna-word__label{letter-spacing:.2em;text-indent:.2em;}
  .luna-body .luna-word__label::before,
  .luna-body .luna-word__label::after{width:22px;}
  .luna-body .luna-list{padding:8px 18px;}
  .luna-body .luna-talk__bubble{max-width:88%;}
  .luna-body .luna-term__word{font-size:1.1em;letter-spacing:.12em;}
  .luna-body .luna-gauge__label{font-size:.7em;}
  .luna-body .luna-care{padding:30px 18px 20px;}
  .luna-body .luna-ref{padding:30px 18px 18px;}
  .luna-body .luna-say{gap:12px;}
  .luna-body .luna-say__avatar{width:60px;height:60px;}
  .luna-body .luna-say__bubble{padding:14px 16px;}
  .luna-body .luna-say__bubble::before,
  .luna-body .luna-say__bubble::after{top:22px;}
  .luna-body .luna-say__label{font-size:12px;letter-spacing:.16em;}
}


/* ------------------------------------------------------------
   A2. この記事でわかること BOX  .luna-learn
   （Feature214正本 design_reference/luna-additions.css より移植・2026-07-18）
------------------------------------------------------------- */
.luna-body .luna-learn{
  margin:30px 0;padding:20px 22px 15px;
  background:var(--luna-paper);border:1px solid var(--luna-line);border-radius:10px;
}
.luna-body .luna-learn__ttl{
  margin:0 0 6px;padding:0 2px 11px;
  border-bottom:1px solid rgba(199,154,78,.42);
  font-family:var(--luna-serif);font-weight:600;font-size:15px;letter-spacing:.14em;
  color:#241f38;line-height:1.6;
}
.luna-body .luna-learn ul{list-style:none;margin:0;padding:0;}
.luna-body .luna-learn li{
  position:relative;margin:0;padding:10px 0 10px 32px;
  font-size:.95em;line-height:1.8;color:var(--luna-ink);
}
.luna-body .luna-learn li + li{border-top:1px solid rgba(43,37,64,.08);}
.luna-body .luna-learn li::before{
  content:"";position:absolute;left:3px;top:.72em;width:18px;height:18px;
  background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4.6 12.6l4.4 4.4L19.4 6.8' fill='none' stroke='%23c79a4e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
@media (max-width:899px){
  .luna-body .luna-learn__ttl{font-size:13px;letter-spacing:.1em;}
}
