.elf-action-plan { background: #f6f8fa; }
.elf-action-plan p { max-width: 80ch; }
.elf-action-flow { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; list-style: none; counter-reset: action-step; padding: 0; margin: 1.8rem 0; }
.elf-action-flow li { counter-increment: action-step; border-top: 3px solid #23506e; background: #fff; padding: 1.2rem; border-radius: .4rem; }
.elf-action-flow li::before { content: counter(action-step, decimal-leading-zero) " · "; font-weight: 700; color: #23506e; }
.elf-action-example { padding: 1.2rem; border-left: 4px solid #a56d2a; background: #fff8ed; }
.elf-action-photo { max-width: 720px; margin: 1.8rem 0; }
.elf-action-photo img { width: 100%; height: auto; border-radius: .5rem; }
.elf-action-photo figcaption { font-size: .9rem; margin-top: .6rem; line-height: 1.5; }
.elf-action-photo .elf-photo-credit { display: block; }
.elf-action-table-wrap { overflow-x: auto; margin: 1.5rem 0; }
.elf-action-table { width: 100%; border-collapse: collapse; background: #fff; }
.elf-action-table caption { caption-side: top; color: #243f55; font-weight: 700; padding: .75rem 0; }
.elf-action-table th, .elf-action-table td { padding: 1rem; border: 1px solid #cbd5df; vertical-align: top; min-width: 160px; }
.elf-action-table thead th { color: #fff; background: #243f55; }
.elf-action-table label { display: block; font-size: .9rem; font-weight: 600; margin-bottom: .4rem; }
.elf-action-table select, .elf-action-table textarea { width: 100%; min-width: 200px; padding: .6rem; border: 1px solid #8d9ead; border-radius: .25rem; background: #fff; color: #172d40; font: inherit; margin-bottom: .8rem; }
.elf-action-plan :focus-visible { outline: 3px solid #a56d2a; outline-offset: 3px; }
.elf-action-tools { padding: 1rem; background: #fff; border: 1px solid #cbd5df; border-radius: .5rem; }
.elf-action-tools button { margin: 0 .5rem .7rem 0; }
.elf-action-market { max-width: 800px; padding: 1.4rem; border: 1px solid #cbd5df; background: #fff; border-radius: .5rem; margin: 1.8rem 0; }
.elf-action-market-row { display: grid; grid-template-columns: 1fr auto; gap: .5rem; margin: 1.2rem 0; }
.elf-action-bar { grid-column: 1 / -1; height: 16px; background: #e3eaf0; border-radius: 3px; overflow: hidden; }
.elf-action-bar span { display: block; height: 100%; background: #23506e; }
.elf-action-plan [hidden] { display: none !important; }
.elf-action-schedule { padding: 1.4rem; background: #fff; border: 1px solid #cbd5df; border-radius: .5rem; margin: 1.8rem 0; }
.elf-action-schedule-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 1rem; margin-bottom: 1.2rem; }
.elf-action-schedule label { display: block; font-weight: 600; margin-bottom: .4rem; }
.elf-action-schedule input { width: 100%; padding: .6rem; border: 1px solid #8d9ead; border-radius: .25rem; color: #172d40; font: inherit; }
@media (max-width: 767px) { .elf-action-flow { grid-template-columns: 1fr; gap: .5rem; } .elf-action-table th, .elf-action-table td { padding: .7rem; } }
