.pillar-note{padding:12px 16px;border-left:4px solid #216756;background:#edf7f1;color:#174638;border-radius:8px;line-height:1.65}
.pillar-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}
.pillar-overview>div{border:1px solid #cedfd5;border-radius:12px;padding:16px;background:white;min-width:0}
.pillar-overview b{display:block;color:#174638;font-size:1rem;margin-bottom:6px}
.pillar-overview p{margin:0;font-size:1rem;color:#53645d;line-height:1.6}
.reading-options{display:flex;gap:12px 20px;flex-wrap:wrap;align-items:center;margin-top:12px}
.reading-options label{display:flex;align-items:center;gap:8px;font-size:1rem;min-height:44px;cursor:pointer}
.reading-options input{width:20px;height:20px;accent-color:#216756;flex-shrink:0}
.readingbox ruby{ruby-position:over;ruby-align:center;white-space:nowrap}
.readingbox rt{font-size:14px;font-weight:400;line-height:1.3;letter-spacing:0;color:#f5d498}
.readingbox rp{display:none}
.readingbox.with-furigana p{line-height:2.8;overflow-wrap:break-word}
.readingbox.without-furigana rt{display:none}
.readingbox.without-furigana ruby{display:inline;white-space:normal}
.readingbox .translation{font-size:1rem;line-height:1.7}
.readingbox.with-furigana{padding-top:38px}
@media(max-width:680px){.pillar-overview{grid-template-columns:1fr}.readingbox{padding-inline:16px}.reading-options{gap:4px 16px}.readingbox.with-furigana p{font-size:23px;line-height:2.9}}
