.brand-options {
 margin-block: 26px 6px;
 padding-block-start: 20px;
 border-top: 1px solid #e7dfd2;
}
.brand-options h3 { margin: 0 0 12px; }
.brand-option-grid {
 display: grid;
 grid-template-columns: repeat(auto-fit,minmax(min(100%,240px),1fr));
 gap: 12px;
}
.brand-option {
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 gap: 10px;
 padding: 16px;
 background: #fbf7f0;
 border: 1px solid #e7dfd2;
 border-radius: 16px;
}
.brand-option > label { width: 100%; }
.brand-option small { color: #665b53; font-size: 13px; line-height: 1.45; }
.brand-option select,
.brand-option input[type=number] {
 width: 100%;
 margin: 0;
 background-color: #fffdf9;
 border: 1px solid #d7c9b9;
 border-radius: 12px;
 min-height: 46px;
}
.brand-option select:focus-visible,
.brand-option input[type=number]:focus-visible { outline: 2px solid #a72725; outline-offset: 2px; }
.brand-option .ding-toggle { position: relative; width: 86px; height: 44px; display: block; cursor: pointer; }
.ding-toggle input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; z-index: 1; }
.ding-toggle .toggle-track {
 position: absolute;
 inset: 0;
 border-radius: 999px;
 background: #e5dbcc;
 color: #52463c;
 box-shadow: inset 0 1px 4px #4c35262a;
 transition: background-color .18s;
}
.ding-toggle input:checked + .toggle-track { background: #a72725; color: #fff7e8; }
.ding-toggle input:focus-visible + .toggle-track { outline: 2px solid #a72725; outline-offset: 3px; }
.ding-toggle .toggle-track::before {
 content: '';
 position: absolute;
 inset-block-start: 4px;
 inset-inline-start: 4px;
 width: 36px;
 height: 36px;
 border-radius: 50%;
 background: #fff7e8;
 box-shadow: 0 2px 4px #35262340;
 transition: inset-inline-start .18s;
}
.ding-toggle input:checked + .toggle-track::before { inset-inline-start: 46px; }
.ding-toggle .toggle-on,.ding-toggle .toggle-off { position: absolute; top: 50%; transform: translateY(-50%); font-size: 11px; font-weight: 800; }
.ding-toggle .toggle-on { inset-inline-start: 11px; display: none; }
.ding-toggle .toggle-off { inset-inline-end: 10px; }
.ding-toggle input:checked + .toggle-track .toggle-on { display: block; }
.ding-toggle input:checked + .toggle-track .toggle-off { display: none; }
@media (prefers-reduced-motion: reduce) {
 .ding-toggle .toggle-track,.ding-toggle .toggle-track::before { transition: none; }
}
