/* link underlines tend to make hypertext less readable, because underlines obscure the shapes of the lower halves of words */ :link, :visited { text-decoration: none } /* no list-markers by default, since lists are used more often for semantics */ ul, ol { list-style: none } /* avoid browser default inconsistent heading font-sizes */ /* and pre/code too */ h1, h2, h3, h4, h5, h6, pre, code { font-size: 1rem; } /* remove the inconsistent (among browsers) default ul,ol padding or margin */ /* the default spacing on headings does not match nor align with normal interline spacing at all, so let's get rid of it. */ /* zero out the spacing around pre, form, body, html, p, blockquote as well */ /* form elements are oddly inconsistent, and not quite CSS emulatable. */ /* nonetheless strip their margin and padding as well */ ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, body, html, p, blockquote, fieldset, input, textarea { margin: 0; padding: 0; border: none; } /* whoever thought blue linked image borders were a good idea? */ a img, :link img, :visited img { border: none; } /* de-italicize address */ address { font-style: normal; } /* firefox focus outline */ :focus { outline: none; } ::-moz-focus-inner { border: 0; } form { all: unset; } /* details element arrow */ details > summary { list-style: none; } details > summary::-webkit-details-marker { display: none; } /* have IE ignore the detail elements altogether */ @supports not (-ms-ime-align: auto) { details summary { cursor: pointer; } } [hidden] { display: none; } * { box-sizing: border-box; } /* TYPOGRAPHY AND GENERAL SELECTORS */ body, html { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; background-attachment: fixed; color: var(--white); font-family: var(--main-font); } h1 { font-family: var(--display-font); font-size: var(--main-size); font-weight: 900; opacity: 1.00; letter-spacing: -0.40px; word-spacing: 4.00px; } h2 { font-family: var(--display-font); font-size: var(--medium-size); font-weight: 800; letter-spacing: -0.75px; word-spacing: 3.00px; text-transform: none; } h3 { font-family: var(--display-font); font-size: var(--medium-size); font-weight: 600; line-height: 1.00; letter-spacing: -0.20px; word-spacing: 1.00px; text-transform: none; } p { font-family: var(--main-font); font-size: var(--medium-size); font-weight: 400; letter-spacing: -0.30px; word-spacing: -0.10px; margin-bottom: var(--small-size); text-transform: none; } ul { text-decoration: none; margin: 0; padding: 0; list-style: none; } li { margin: 0; padding: 0; } a { text-decoration: none; color: var(--white); border-radius: var(--unit-size); padding-left: var(--unit-size); padding-right: var(--unit-size); margin-bottom: 1px; outline: 0; } a:visited { color: var(--white); padding-left: var(--unit-size); padding-right: var(--unit-size); outline: 0; margin: 0; } a:focus, a:hover { background: var(--white); color: var(--bg1) !important; transition: var(--cubic-transition); } figcaption a:link { font-size: var(--small-size); color: var(--white); } summary:hover > svg, summary:focus > svg { border-radius: var(--unit-size); background-color: var(--white); fill: var(--bg1); border: 2px solid var(--white); transition: var(--cubic-transition); } hr { all: unset; display: block; height: 2px; background: var(--translucent); } /* BUTTONS AND FILEPICKER */ button, input:not([type=text]) { all: unset; cursor: pointer; font-size: var(--medium-size); background: linear-gradient(135deg, var(--bg2), transparent); color: var(--white); border: solid 2px var(--bg2); border-radius: var(--unit-size); padding: var(--unit-size) var(--small-size); } *|*::-moz-button-content { all: unset; } /* TODO: hover and focus feedback, checkbox */ input[type=radio] { all: unset; display: inline-block; width: var(--unit-size); height: var(--unit-size); border: solid 5px var(--bg2) !important; border-radius: 50%; margin: 3px 3px 0px 5px; background-color: var(--bg1); } input[type=radio]:checked { background-color: var(--white); } button:hover, button:focus, input:hover, input:focus { border: solid 2px var(--bg3); color: var(--white); } button:hover, input:is([type=reset], [type=button], [type=submit]):hover { color: var(--white); } :focus-visible::-moz-focus-inner { border-color: var(--bg3) !important; } :is(:disabled, :disabled:active)::file-selector-button, button:is(:disabled, :disabled:active), input:is([type=reset], [type=button], [type=submit]):is(:disabled, :disabled:active), select:is(:disabled, :disabled:active) > button { color: var(--white); } /* file selector */ input[type=file] { all: unset; display: block; max-width: 100%; background: linear-gradient(135deg, var(--bg2), transparent); font-family: var(--main-font); font-size: var(--medium-size); border-radius: var(--unit-size); } input[type=file]:focus, input[type=file]:hover { background: linear-gradient(135deg, var(--bg2), var(--bg3) 200%); } input + label { all: unset; align-self: center; } /* button part of file selector */ ::file-selector-button { font-family: var(--display-font); cursor: pointer; background-color: unset; color: var(--white); border: unset; margin: 5px; }