gnu-social/public/assets/css/reset.css

284 lines
5.7 KiB
CSS
Raw Normal View History

/* 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;
}
2020-08-29 14:20:02 +09:00
/* 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 {
float: right !important;
width: min-content !important;
align-self: end !important;
}
button,
input:not([type=text]) {
all: unset;
cursor: pointer;
font-size: var(--medium-size);
background-image: linear-gradient(180deg, var(--bg2), transparent);
color: var(--white);
border: solid 2px var(--bg2);
border-radius: var(--unit-size);
padding: 6px 12px;
}
*|*::-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;
}