.step-limit-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.step-limit-actions button { flex: 1 1 auto; min-height: 44px; padding: 10px 14px; border: 1px solid #c9d3cd; border-radius: 8px; background: #fff; color: #202624; font: inherit; cursor: pointer; }
.step-limit-actions button:hover { background: #eaf0ed; }
.step-limit-actions .step-limit-primary { background: #166344; border-color: #166344; color: #fff; }
.step-limit-actions .step-limit-primary:hover { background: #104e35; }
.step-limit-actions button:disabled { opacity: .6; cursor: wait; }
.step-limit-actions button:focus-visible, .step-limit-setting input:focus-visible { outline: 2px solid #166344; outline-offset: 3px; }
#step-limit-disable { flex-basis: 100%; background: transparent; border-color: transparent; text-decoration: underline; text-underline-offset: 3px; }
#step-limit p { margin: 0 0 12px; }
.step-limit-confirm { box-sizing: border-box; width: min(440px, calc(100% - 24px)); max-height: calc(100dvh - 24px); margin: auto; padding: 22px; overflow: auto; border: 1px solid #c9d3cd; border-radius: 12px; background: #fff; color: #202624; box-shadow: 0 16px 48px rgb(25 40 30 / 18%); font: 14px/1.6 Onest, sans-serif; }
.step-limit-confirm::backdrop { background: rgb(25 35 30 / 28%); }
.step-limit-confirm h2 { margin: 0 0 16px; font-size: 20px; line-height: 1.35; }
.step-limit-confirm p { margin: 0 0 16px; }
.step-limit-confirm .step-limit-note { color: #45574c; font-size: 13px; }
.step-limit-setting { margin-top: 20px; padding: 20px 0 0; border-top: 1px solid #dce2de; color: #202624; font-size: 14px; }
.step-limit-setting h2 { margin: 0 0 16px; font-size: 18px; }
.step-limit-setting label { display: flex; align-items: start; gap: 10px; cursor: pointer; line-height: 1.5; }
#section-account .step-limit-setting input[type=checkbox] { flex: none; width: 20px; height: 20px; min-height: 20px; padding: 0; margin: 0; accent-color: #166344; }
.step-limit-setting p { margin: 10px 0 0; color: #45574c; font-size: 13px; line-height: 1.6; }
