button, select, input[type='submit'], input[type='button'], input[type='checkbox'], input[type='range'], input[type='radio'] { cursor: pointer; } input:not([type='checkbox']):not([type='radio']), select { display: block; } input, button, textarea, select { color: var(--form-text); background-color: var(--background); font-family: inherit; font-size: inherit; margin-right: 6px; margin-bottom: 6px; padding: 10px; border: none; border-radius: 6px; outline: none; } input, select, button, textarea { -webkit-appearance: none; } textarea { margin-right: 0; width: 100%; box-sizing: border-box; resize: vertical; } select { background: var(--background) var(--select-arrow) calc(100% - 12px) 50% / 12px no-repeat; padding-right: 35px; } select::-ms-expand { display: none; } button, input[type='submit'], input[type='button'] { padding-right: 30px; padding-left: 30px; } button:hover, input[type='submit']:hover, input[type='button']:hover { background: var(--button-hover); } input:focus, select:focus, button:focus, textarea:focus { box-shadow: 0 0 0 2px var(--focus); } input[type='checkbox'], input[type='radio'] { position: relative; width: 14px; height: 14px; display: inline-block; vertical-align: middle; margin: 0; margin-right: 2px; } input[type='radio'] { border-radius: 50%; } input[type='checkbox']:checked, input[type='radio']:checked { background: var(--button-hover); } input[type='checkbox']:checked::before, input[type='radio']:checked::before { content: '•'; display: block; position: absolute; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); } input[type='checkbox']:checked::before { content: '✔'; transform: translateY(-50%) translateY(0.5px) translateX(-6px); } input[type='checkbox']:active, input[type='radio']:active, input[type='submit']:active, input[type='button']:active, input[type='range']:active, button:active { transform: translateY(2px); } input:disabled, select:disabled, button:disabled, textarea:disabled { cursor: not-allowed; opacity: 0.5; } ::placeholder { color: var(--form-placeholder); }