Spaces:
Sleeping
Sleeping
| /* a11y button */ | |
| #has-a11y { | |
| margin-right: auto; | |
| } | |
| #has-a11y-summary { | |
| padding: .6ex 1ex; | |
| font-weight: 700; | |
| } | |
| #has-a11y-summary::before{ | |
| font-family: 'base-ui'; | |
| font-weight: 400; | |
| content: '\e900'; | |
| } | |
| #has-a11y[open] #a11y { | |
| --anm: expand 99ms forwards; | |
| --tso: bottom; | |
| } | |
| /* a11y container */ | |
| #a11y { | |
| display: flex; | |
| position: fixed; | |
| bottom: calc(1rem + var(--vfoot)); | |
| flex-direction: column; | |
| margin: 0; | |
| border: var(--border); | |
| border-radius: 1ex; | |
| background: var(--bg); | |
| padding: 1rem; | |
| max-height: calc(100vh - var(--vhead) - var(--vfoot) - 2rem ); | |
| overflow-y: auto; | |
| gap: var(--medskip); | |
| } | |
| /* hide input checkbox */ | |
| #a11y input[type=checkbox], | |
| #a11y input[type=radio], | |
| #bionReadSwitch { | |
| position: absolute; | |
| top: -100vh; | |
| } | |
| #a11y select, | |
| #a11y input[type=range], | |
| #setColorScheme label, | |
| #setOpenDyslexic, | |
| button { | |
| cursor: pointer; | |
| } | |
| /* range */ | |
| label.range { | |
| display: flex; | |
| flex-direction: row-reverse; | |
| } | |
| label.range > input { | |
| flex: 1; | |
| accent-color: var(--ac); | |
| } | |
| label.range > output { | |
| width: 4rem; | |
| text-align: center; | |
| color: var(--ac); | |
| font: 700 var(--large) var(--sf), sans-serif; | |
| } | |
| #setColorScheme { | |
| display: flex; | |
| flex-direction: row; | |
| align-items: center; | |
| margin-bottom: 1ex; | |
| } | |
| /* lightswitch */ | |
| #lightSwitch + label { | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| border-radius: 0.5ex; | |
| padding: 1ex; | |
| width: 4rem; | |
| font-weight: 700; | |
| gap: 1ex; | |
| } | |
| #lightSwitch:hover + label, | |
| #lightSwitch:focus + label, | |
| #setContrast > input:hover + label { | |
| background: var(--g18s); | |
| color: var(--ac); | |
| } | |
| /* credit to @mrozilla on codepen https://codepen.io/mrozilla/pen/OJJNjRb */ | |
| input + label > #lightSwitchIndicator { | |
| --ray-size: calc(var(--size) * -0.4); | |
| --offset-orthogonal: calc(var(--size) * 0.65); | |
| --offset-diagonal: calc(var(--size) * 0.45); | |
| --tsf: scale(0.75); | |
| --size: 1.414em; | |
| display: block; | |
| outline: none; | |
| border-radius: 999px; | |
| box-shadow: inset 0 0 0 var(--size), | |
| calc(var(--offset-orthogonal) * -1) 0 0 var(--ray-size), | |
| var(--offset-orthogonal) 0 0 var(--ray-size), | |
| 0 calc(var(--offset-orthogonal) * -1) 0 var(--ray-size), | |
| 0 var(--offset-orthogonal) 0 var(--ray-size), | |
| calc(var(--offset-diagonal) * -1) calc(var(--offset-diagonal) * -1) 0 var(--ray-size), | |
| var(--offset-diagonal) var(--offset-diagonal) 0 var(--ray-size), | |
| calc(var(--offset-diagonal) * -1) var(--offset-diagonal) 0 var(--ray-size), | |
| var(--offset-diagonal) calc(var(--offset-diagonal) * -1) 0 var(--ray-size); | |
| width: var(--size); | |
| height: var(--size); | |
| color: #ffaa00; | |
| } | |
| input:checked + label > #lightSwitchIndicator { | |
| --tsf: scale(1); | |
| box-shadow: inset calc(var(--size) * 0.33) calc(var(--size) * -0.25) 0; | |
| } | |
| /* contrast */ | |
| #setContrast { | |
| display: flex; | |
| position: relative; | |
| flex: 1; | |
| justify-content: center; | |
| margin: 0 0 0 1ex; | |
| border: none; | |
| border-left: var(--bound); | |
| padding: 2.5em 0 0 1ex; | |
| } | |
| #setContrast legend { | |
| position: absolute; | |
| top: 0; | |
| padding: 1ex; | |
| } | |
| #setContrast label { | |
| -webkit-transition: 99ms; | |
| -moz-transition: 99ms; | |
| -o-transition: 99ms; | |
| transition: 99ms; | |
| border-radius: 1rem; | |
| padding: 3pt 7pt; | |
| font-size: 0.84em ; | |
| } | |
| #setContrast > input:checked + label { | |
| background: var(--fg); | |
| color: var(--bg); | |
| } | |
| #setContrast > input + label::before { | |
| font-family:'base-ui'; | |
| content: '\e904\a0'; | |
| } | |
| #setContrast > input:checked + label::before { | |
| content: '\e903\a0'; | |
| } | |
| /* color palette */ | |
| #setColorPalette { | |
| align-items: baseline; | |
| } | |
| #setColorPalette > *, | |
| #setOpenDyslexic > * { | |
| padding: 1ex 0; | |
| } | |
| #colorPalette { | |
| flex: 1; | |
| margin-left: 0.5ex; | |
| border: unset; | |
| border-radius: 1rem; | |
| background: var(--bg); | |
| padding: 0.5ex 1.25ex; | |
| color: var(--fg); | |
| font: inherit ; | |
| } | |
| /* font */ | |
| #baselineStretchState::after { | |
| font-size: 0.8em; | |
| content: '×'; | |
| } | |
| #fontSizeState::after { | |
| font-size: 0.8em; | |
| content: 'pt'; | |
| } | |
| #setOpenDyslexic > label { | |
| display: flex; | |
| align-items: center; | |
| } | |
| #OpenDyslexicState { | |
| display: flex; | |
| margin-left: auto; | |
| border-radius: 1em; | |
| background: #80808080; | |
| width: 2.4em; | |
| height: 0.8em; | |
| } | |
| #OpenDyslexicIndicator { | |
| --tst: 0.5s ease-out; | |
| position: relative; | |
| align-self: center; | |
| border: 1pt solid #80808008; | |
| border-radius: 1em; | |
| box-shadow: var(--box-shadow-focus); | |
| background: #fff; | |
| padding: 6pt; | |
| } | |
| #OpenDyslexic:hover + label #OpenDyslexicIndicator, | |
| #OpenDyslexic:focus + label #OpenDyslexicIndicator { | |
| --anm: grab 3s ease-out 3; | |
| } | |
| #OpenDyslexic:checked:hover + label #OpenDyslexicIndicator, | |
| #OpenDyslexic:checked:focus + label #OpenDyslexicIndicator { | |
| --anm: unset; | |
| } | |
| #OpenDyslexic:checked + label #OpenDyslexicIndicator { | |
| left: 1.3em; | |
| } | |
| @keyframes grab { | |
| 0%, 10%, 20%, 100% { | |
| left: 0; | |
| } | |
| 5%, 15% { | |
| left: 3pt; | |
| } | |
| } | |
| @-webkit-keyframes grab { | |
| 0%, 20%, 40%, 100% { | |
| left: 0; | |
| } | |
| 10%, 30% { | |
| left: 3pt; | |
| } | |
| } | |
| /* menu */ | |
| #a11y-menu { | |
| display: inline-flex; | |
| align-items: center; | |
| margin: 0; | |
| padding: 0; | |
| width: 100%; | |
| gap: 1ex; | |
| } | |
| #a11y-menu > button { | |
| display: inline-flex; | |
| flex-direction: column; | |
| align-items: center; | |
| border: unset; | |
| padding: 1ex; | |
| } | |
| #a11y-menu > .has-aria-label { | |
| background: unset; | |
| color: var(--fg); | |
| } | |
| #a11y-menu > .has-aria-label::before { | |
| margin: auto; | |
| padding: 0.25rem 0.5rem; | |
| } | |
| #a11y-menu .has-aria-label:after { | |
| font-size: 0.7em; | |
| } | |
| #resetButton::before { | |
| font-family: 'base-ui'; | |
| content: '\e90f'; | |
| } | |
| #closeButton::before { | |
| font-family: 'base-ui'; | |
| content: '\e913'; | |
| } | |
| #bionReadButton, | |
| #saveButton { | |
| flex: 1; | |
| margin-left: auto; | |
| cursor: pointer; | |
| } | |
| /* bionRead */ | |
| b.k { | |
| vertical-align: baseline; | |
| letter-spacing: var(--bion); | |
| color: var(--off); | |
| font-weight: 400 ; | |
| -webkit-text-stroke: var(--bion) var(--off); | |
| font-synthesis: weight; | |
| } | |
| #useBionRead { | |
| display: none; | |
| margin: auto; | |
| letter-spacing: 0.1em; | |
| font-size: var(--footnotesize); | |
| } | |
| legend, | |
| .has-aria-label-top:before, | |
| #setColorPalette > label, | |
| input + label > span { | |
| font-weight: 700; | |
| } | |
| #setContrast > input + label > span { | |
| font-weight: 400; | |
| } | |
| #bionReadButton > span { | |
| font-weight: 400; | |
| text-transform: uppercase; | |
| } | |
| #noScript, | |
| #noLocalStorage { | |
| margin: auto; | |
| border-top: var(--bound); | |
| padding-top: 1rem; | |
| max-width: 20rem; | |
| } | |
| @media only screen and (max-width: 640px) { | |
| #has-a11y > summary > span { | |
| display: none; | |
| } | |
| } |