.hidden { display: none !important; } button { -webkit-appearance: none; -moz-appearance: none; user-select: none; padding: 2px 7px; border: 1px solid hsl(0, 0%, 62%); font: 400 13.3333px Arial; color: #000; background-color: hsl(0, 0%, 100%); background: url(../images/button.png)repeat-x; background-size: 100% 100%; transition: background-color .25s, border-color .25s; } button:not(:disabled):hover { background-color: hsl(0, 0%, 95%); border-color: hsl(0, 0%, 52%); } /* For some odd reason these hovers appear lighter than all other button hovers in every browser */ #message-box-buttons button:not(:disabled):hover { background-color: hsl(0, 0%, 90%); border-color: hsl(0, 0%, 50%); } input:not([type]) { background: #fff; color: #000; height: 22px; min-height: 22px!important; line-height: 22px; padding: 0 3px; font: 400 13.3333px Arial; border: 1px solid hsl(0, 0%, 66%); } .svg-icon.checked { position: absolute; height: 8px; width: 8px; display: none; fill: #000; margin: 2px 0 0 2px; } input[type="checkbox"]:not(.slider):checked + .svg-icon.checked { display: inline-flex; transition: fill .1s; } input[type="checkbox"]:not(.slider) { -webkit-appearance: none; -moz-appearance: none; position: absolute; left: 0; top: 0; border: 1px solid hsl(0, 0%, 46%); height: 12px; width: 12px; display: inline-flex; border-radius: 2px; background-color: hsla(0, 0%, 0%, .1); outline: none; margin: 0; transition: background-color .1s, border-color .1s; } input[type="checkbox"]:not(.slider):not(:disabled):hover { border-color: hsl(0, 0%, 32%); background-color: hsl(0, 0%, 82%); } input[type="checkbox"]:not(.slider):checked + .svg-icon.checked { position: absolute; top: 0; left: 0; pointer-events: none; } input[type="checkbox"]:not(.slider):disabled { background-color: transparent; border-color: hsl(0, 0%, 50%); } input[type="checkbox"]:not(.slider):disabled + .svg-icon.checked { fill: hsl(0, 0%, 50%); } input[type="checkbox"]:not(.slider):disabled + .svg-icon.checked + span { color: hsl(0, 0%, 50%); } label { transition: color .1s; } select { -moz-appearance: none; -webkit-appearance: none; height: 22px; font: 400 13.3333px Arial; color: #000; background-color: transparent; border: 1px solid hsl(0, 0%, 66%); padding: 0 20px 0 6px; transition: color .5s; } .select-resizer { display: inline-flex!important; cursor: default; position: relative; } .svg-icon.select-arrow { pointer-events: none; cursor: default; display: inline-flex; height: 14px; width: 14px; fill: #000; position: absolute; top: 4px; right: 4px; transition: fill .5s; } input[type="radio"] { -webkit-appearance: none; -moz-appearance: none; outline: none; background: hsl(0, 0%, 88%); border-radius: 50%; border: 1px solid hsl(0, 0%, 60%); cursor: default; height: 13px; width: 13px; position: relative; } input[type="radio"]:after { content: ''; background-color: transparent; transform: scale(0); transform-origin: 50% 50%; transition: background-color .5s, transform .5s; border-radius: 50%; height: 7px; width: 7px; left: 2px; top: 2px; position: absolute; } input[type="radio"]:checked:after { background-color: hsl(0, 0%, 30%); transform: scale(1); } /* restore disabled state dimming */ button:disabled, select:disabled, option:disabled, select[disabled] > option { color: graytext; } @supports (-moz-appearance: none) { .moz-appearance-bug .svg-icon.checked, .moz-appearance-bug input[type="radio"]:after { display: none !important; } .moz-appearance-bug input[type="checkbox"] { -moz-appearance: checkbox !important; } .moz-appearance-bug input[type="radio"] { -moz-appearance: radio !important; } .firefox select { font-size: 13px; padding: 0 20px 0 2px; line-height: 22px!important; } svg { transform: scale(1); /* de-blur */ } /* We can customize everything about number inputs except arrows. They're horrible in Linux FF, so we'll hide them unless hovered or focused. */ .firefox.non-windows input[type="number"] { -moz-appearance: textfield; background: #fff; color: #000; border: 1px solid hsl(0, 0%, 66%); } .firefox.non-windows input[type="number"]:not(:disabled):hover, .firefox.non-windows input[type="number"]:focus { -moz-appearance: number-input; } .firefox.non-windows input[type="color"] { background: #fff; border: 1px solid hsl(0, 0%, 66%); padding: 4px; } .firefox.non-windows .style-name { font-family: Arial, sans-serif; } /* Firefox cannot handle fractions in font-size */ .firefox button:not(.install) { font-size: 13px; line-height: 13px; padding: 3px 7px; } .firefox.moz-appearance-bug button:not(.install) { padding: 2px 4px; } }