.setting-line { margin: 1.2em 0.6em; position: relative; } .setting-line .radio-line input, .setting-line .settings-toggle input { margin-right: 0.3em; height: 1.2rem; width: 1.2rem; color: inherit; border: 1px solid currentColor; outline: none; -webkit-appearance: none; cursor: pointer; } .setting-line .radio-line input { border-radius: 50%; } .setting-line .settings-toggle input:checked { content: url('data:image/svg+xml,\ \ '); } .setting-line .radio-line input + span, .setting-line .settings-toggle span { padding-bottom: 1px; } .radio-line .choice { margin-top: 0.1em; margin-bottom: 0.1em; min-width: 3.8em; padding: 0.3em; display: inline-flex; align-items: center; cursor: pointer; } .radio-line .choice + .choice { margin-left: 0.5em; } .settings-toggle { position: relative; width: 100%; margin-right: 20px; display: flex; align-items: center; cursor: pointer; } .setting-line .radio-line input:checked { box-shadow: inset 0 0 0 3px var(--main-background-color); background-color: var(--settings-input-color); } .setting-line .settings-toggle input:checked { background-color: var(--settings-input-color); } .setting-line .radio-line input:focus, .setting-line .settings-toggle input:focus { box-shadow: 0 0 1px 1px var(--settings-input-color); } /* In here we combine both `:focus` and `:checked` properties. */ .setting-line .radio-line input:checked:focus { box-shadow: inset 0 0 0 3px var(--main-background-color), 0 0 2px 2px var(--settings-input-color); } .setting-line .radio-line input:hover, .setting-line .settings-toggle input:hover { border-color: var(--settings-input-color) !important; }