.option-presets { margin: 16px 0; color: inherit; }
.option-presets__title { font-weight: 600; margin-bottom: 6px; }
.option-presets__hint { font-size: .85rem; opacity: .8; margin-bottom: 10px; }
.option-presets__buttons { display: flex; flex-wrap: wrap; gap: 10px; }
.option-presets__item { position: relative; display: inline-flex; align-items: stretch; max-width: 100%; }
.option-presets__item--has-tip .option-presets__apply { padding-right: 38px; }
.option-presets__apply { border: 1px solid var(--bs-primary, #b99b50); background: transparent; color: inherit; padding: 9px 15px; border-radius: 6px; font: inherit; overflow-wrap: anywhere; }
.option-presets__apply:hover, .option-presets__apply[aria-pressed="true"] { background: #b99b50; color: #111; }
.option-presets__apply:disabled { opacity: .55; cursor: wait; }
.option-presets__help { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; padding: 0; border-radius: 50%; border: 0; background: transparent; color: inherit; font: 600 11px/1 sans-serif; cursor: help; opacity: .8; }
.option-presets__help::before { content: ''; position: absolute; width: 15px; height: 15px; border: 1px solid currentColor; border-radius: 50%; pointer-events: none; }
.option-presets__help:hover, .option-presets__help:focus-visible { opacity: 1; }
.option-presets button:focus-visible { outline: 2px solid #b99b50; outline-offset: 3px; }
.option-presets__help-wrap { position: absolute; top: 2px; right: 3px; display: inline-flex; }
.option-presets__apply:hover + .option-presets__help-wrap,
.option-presets__apply[aria-pressed="true"] + .option-presets__help-wrap { color: #111; }
.option-presets__tip { display: none; position: absolute; z-index: 1040; top: 100%; right: 0; width: min(290px, 75vw); padding: 12px; border: 1px solid #b99b50; border-radius: 6px; background: #222; color: #fff; font-size: .85rem; line-height: 1.6; white-space: pre-line; overflow-wrap: anywhere; box-shadow: 0 4px 16px #0005; }
.option-presets__help-wrap:not(.is-dismissed):hover .option-presets__tip,
.option-presets__help-wrap:not(.is-dismissed):focus-within .option-presets__tip { display: block; }
.option-presets__status { font-size: .85rem; margin-top: 8px; }
.option-presets__status:empty { display: none; }
.option-presets__status.is-error { color: #dc5b65; }
@media (max-width: 575px) { .option-presets__item { flex: 1 1 calc(50% - 10px); } .option-presets__apply { flex: 1; } }
