.planner-visual{border:1px solid #d1ded7;border-radius:1rem;padding:1.15rem;background:#f5faf7;color:#183c37;margin:1.4rem 0}
.planner-visual figcaption{font-weight:800;font-size:1.06rem;margin-bottom:1rem}
.planner-visual p{line-height:1.55;margin:1rem 0 0}
.planner-aspect-panels{display:flex;align-items:center;justify-content:center;gap:.9rem;flex-wrap:wrap}
.planner-aspect-panel{display:flex;flex-direction:column;gap:.35rem;align-items:center;min-width:7rem}
.planner-aspect-label{font-size:.84rem;font-weight:700}
.planner-aspect-frame{aspect-ratio:16/9;border:2px solid #167d78;border-radius:.45rem;background:linear-gradient(135deg,#e0f5ef,#b8e4db);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;padding:.5rem;text-align:center}
.planner-aspect-frame strong{font-size:.88rem}.planner-aspect-frame small{font-weight:700}
.planner-aspect-source{width:min(100%,15rem)}.planner-aspect-target{width:min(100%,10rem)}
.planner-aspect-arrow{font-size:1.6rem;font-weight:800;color:#167d78}
.planner-dms-source{text-align:center;font-weight:800;font-size:1.2rem;overflow-wrap:anywhere}
.planner-dms-parts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}
.planner-dms-parts>div{background:#fff;border:1px solid #bbd6cc;border-radius:.65rem;padding:.7rem .4rem;text-align:center}
.planner-dms-parts strong,.planner-dms-parts span{display:block}.planner-dms-parts strong{font-size:1.1rem}.planner-dms-parts span{font-size:.8rem;margin-top:.3rem}
@media(max-width:520px){.planner-aspect-panels{flex-direction:column}.planner-aspect-arrow{transform:rotate(90deg)}.planner-dms-parts{gap:.3rem}.planner-dms-parts>div{padding:.55rem .2rem}}
