Files
tallytome/public/stylesheets/tallytome.css
2024-03-23 16:21:05 +01:00

2004 lines
61 KiB
CSS
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@charset "UTF-8";
/*!
* Pico CSS ✨ v2.0.6 (https://picocss.com)
* Copyright 2019-2024 - Licensed under MIT
*/
/**
* Document
* Content-box & Responsive typography
*/
*,
*::before,
*::after {
box-sizing: border-box;
background-repeat: no-repeat;
}
::before,
::after {
text-decoration: inherit;
vertical-align: inherit;
}
:where(:root) {
-webkit-tap-highlight-color: transparent;
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
background-color: var(--pico-background-color);
color: var(--pico-color);
font-weight: var(--pico-font-weight);
font-size: var(--pico-font-size);
line-height: var(--pico-line-height);
font-family: var(--pico-font-family);
text-underline-offset: var(--pico-text-underline-offset);
text-rendering: optimizeLegibility;
overflow-wrap: break-word;
tab-size: 4;
}
/**
* Landmarks
*/
body {
width: 100%;
margin: 0;
}
main {
display: block;
}
body > header,
body > main,
body > footer {
padding-block: var(--pico-block-spacing-vertical);
}
/**
* Section
*/
section {
margin-bottom: var(--pico-block-spacing-vertical);
}
/**
* Container
*/
.container,
.container-fluid {
width: 100%;
margin-right: auto;
margin-left: auto;
padding-right: var(--pico-spacing);
padding-left: var(--pico-spacing);
}
@media (min-width: 576px) {
.container {
max-width: 510px;
padding-right: 0;
padding-left: 0;
}
}
@media (min-width: 768px) {
.container {
max-width: 700px;
}
}
@media (min-width: 1024px) {
.container {
max-width: 950px;
}
}
@media (min-width: 1280px) {
.container {
max-width: 1200px;
}
}
@media (min-width: 1536px) {
.container {
max-width: 1450px;
}
}
/**
* Grid
* Minimal grid system with auto-layout columns
*/
.grid {
grid-column-gap: var(--pico-grid-column-gap);
grid-row-gap: var(--pico-grid-row-gap);
display: grid;
grid-template-columns: 1fr;
}
@media (min-width: 768px) {
.grid {
grid-template-columns: repeat(auto-fit, minmax(0%, 1fr));
}
}
.grid > * {
min-width: 0;
}
/**
* Typography
*/
b,
strong {
font-weight: bolder;
}
sub,
sup {
position: relative;
font-size: 0.75em;
line-height: 0;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
address,
blockquote,
dl,
ol,
p,
pre,
table,
ul {
margin-top: 0;
margin-bottom: var(--pico-typography-spacing-vertical);
color: var(--pico-color);
font-style: normal;
font-weight: var(--pico-font-weight);
}
h1,
h2,
h3,
h4,
h5,
h6 {
margin-top: 0;
margin-bottom: var(--pico-typography-spacing-vertical);
color: var(--pico-color);
font-weight: var(--pico-font-weight);
font-size: var(--pico-font-size);
line-height: var(--pico-line-height);
font-family: var(--pico-font-family);
}
h1 {
--pico-color: var(--pico-h1-color);
}
h2 {
--pico-color: var(--pico-h2-color);
}
h3 {
--pico-color: var(--pico-h3-color);
}
h4 {
--pico-color: var(--pico-h4-color);
}
h5 {
--pico-color: var(--pico-h5-color);
}
h6 {
--pico-color: var(--pico-h6-color);
}
:where(article, address, blockquote, dl, figure, form, ol, p, pre, table, ul) ~ :is(h1, h2, h3, h4, h5, h6) {
margin-top: var(--pico-typography-spacing-top);
}
p {
margin-bottom: var(--pico-typography-spacing-vertical);
}
hgroup {
margin-bottom: var(--pico-typography-spacing-vertical);
}
hgroup > * {
margin-top: 0;
margin-bottom: 0;
}
hgroup > *:not(:first-child):last-child {
--pico-color: var(--pico-muted-color);
--pico-font-weight: unset;
font-size: 1rem;
}
:where(ol, ul) li {
margin-bottom: calc(var(--pico-typography-spacing-vertical) * 0.25);
}
:where(dl, ol, ul) :where(dl, ol, ul) {
margin: 0;
margin-top: calc(var(--pico-typography-spacing-vertical) * 0.25);
}
ul li {
list-style: square;
}
mark {
padding: 0.125rem 0.25rem;
background-color: var(--pico-mark-background-color);
color: var(--pico-mark-color);
vertical-align: baseline;
}
blockquote {
display: block;
margin: var(--pico-typography-spacing-vertical) 0;
padding: var(--pico-spacing);
border-right: none;
border-left: 0.25rem solid var(--pico-blockquote-border-color);
border-inline-start: 0.25rem solid var(--pico-blockquote-border-color);
border-inline-end: none;
}
blockquote footer {
margin-top: calc(var(--pico-typography-spacing-vertical) * 0.5);
color: var(--pico-blockquote-footer-color);
}
abbr[title] {
border-bottom: 1px dotted;
text-decoration: none;
cursor: help;
}
ins {
color: var(--pico-ins-color);
text-decoration: none;
}
del {
color: var(--pico-del-color);
}
::selection {
background-color: var(--pico-text-selection-color);
}
/**
* Link
*/
:where(a:not([role=button])),
[role=link] {
--pico-color: var(--pico-primary);
--pico-background-color: transparent;
--pico-underline: var(--pico-primary-underline);
outline: none;
background-color: var(--pico-background-color);
color: var(--pico-color);
text-decoration: var(--pico-text-decoration);
text-decoration-color: var(--pico-underline);
text-underline-offset: 0.125em;
transition: background-color var(--pico-transition), color var(--pico-transition), text-decoration var(--pico-transition), box-shadow var(--pico-transition);
}
:where(a:not([role=button])):is([aria-current]:not([aria-current=false]), :hover, :active, :focus),
[role=link]:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-color: var(--pico-primary-hover);
--pico-underline: var(--pico-primary-hover-underline);
--pico-text-decoration: underline;
}
:where(a:not([role=button])):focus-visible,
[role=link]:focus-visible {
box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-primary-focus);
}
:where(a:not([role=button])).secondary,
[role=link].secondary {
--pico-color: var(--pico-secondary);
--pico-underline: var(--pico-secondary-underline);
}
:where(a:not([role=button])).secondary:is([aria-current]:not([aria-current=false]), :hover, :active, :focus),
[role=link].secondary:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-color: var(--pico-secondary-hover);
--pico-underline: var(--pico-secondary-hover-underline);
}
:where(a:not([role=button])).contrast,
[role=link].contrast {
--pico-color: var(--pico-contrast);
--pico-underline: var(--pico-contrast-underline);
}
:where(a:not([role=button])).contrast:is([aria-current]:not([aria-current=false]), :hover, :active, :focus),
[role=link].contrast:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-color: var(--pico-contrast-hover);
--pico-underline: var(--pico-contrast-hover-underline);
}
a[role=button] {
display: inline-block;
}
/**
* Button
*/
button {
margin: 0;
overflow: visible;
font-family: inherit;
text-transform: none;
}
button,
[type=submit],
[type=reset],
[type=button] {
-webkit-appearance: button;
}
button,
[type=submit],
[type=reset],
[type=button],
[type=file]::file-selector-button,
[role=button] {
--pico-background-color: var(--pico-primary-background);
--pico-border-color: var(--pico-primary-border);
--pico-color: var(--pico-primary-inverse);
--pico-box-shadow: var(--pico-button-box-shadow, 0 0 0 rgba(0, 0, 0, 0));
padding: var(--pico-form-element-spacing-vertical) var(--pico-form-element-spacing-horizontal);
border: var(--pico-border-width) solid var(--pico-border-color);
border-radius: var(--pico-border-radius);
outline: none;
background-color: var(--pico-background-color);
box-shadow: var(--pico-box-shadow);
color: var(--pico-color);
font-weight: var(--pico-font-weight);
font-size: 1rem;
line-height: var(--pico-line-height);
text-align: center;
text-decoration: none;
cursor: pointer;
user-select: none;
transition: background-color var(--pico-transition), border-color var(--pico-transition), color var(--pico-transition), box-shadow var(--pico-transition);
}
button:is([aria-current]:not([aria-current=false])), button:is(:hover, :active, :focus),
[type=submit]:is([aria-current]:not([aria-current=false])),
[type=submit]:is(:hover, :active, :focus),
[type=reset]:is([aria-current]:not([aria-current=false])),
[type=reset]:is(:hover, :active, :focus),
[type=button]:is([aria-current]:not([aria-current=false])),
[type=button]:is(:hover, :active, :focus),
[type=file]::file-selector-button:is([aria-current]:not([aria-current=false])),
[type=file]::file-selector-button:is(:hover, :active, :focus),
[role=button]:is([aria-current]:not([aria-current=false])),
[role=button]:is(:hover, :active, :focus) {
--pico-background-color: var(--pico-primary-hover-background);
--pico-border-color: var(--pico-primary-hover-border);
--pico-box-shadow: var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0));
--pico-color: var(--pico-primary-inverse);
}
button:focus, button:is([aria-current]:not([aria-current=false])):focus,
[type=submit]:focus,
[type=submit]:is([aria-current]:not([aria-current=false])):focus,
[type=reset]:focus,
[type=reset]:is([aria-current]:not([aria-current=false])):focus,
[type=button]:focus,
[type=button]:is([aria-current]:not([aria-current=false])):focus,
[type=file]::file-selector-button:focus,
[type=file]::file-selector-button:is([aria-current]:not([aria-current=false])):focus,
[role=button]:focus,
[role=button]:is([aria-current]:not([aria-current=false])):focus {
--pico-box-shadow: var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)), 0 0 0 var(--pico-outline-width) var(--pico-primary-focus);
}
[type=submit],
[type=reset],
[type=button] {
margin-bottom: var(--pico-spacing);
}
:is(button, [type=submit], [type=button], [role=button]).secondary,
[type=reset],
[type=file]::file-selector-button {
--pico-background-color: var(--pico-secondary-background);
--pico-border-color: var(--pico-secondary-border);
--pico-color: var(--pico-secondary-inverse);
cursor: pointer;
}
:is(button, [type=submit], [type=button], [role=button]).secondary:is([aria-current]:not([aria-current=false]), :hover, :active, :focus),
[type=reset]:is([aria-current]:not([aria-current=false]), :hover, :active, :focus),
[type=file]::file-selector-button:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-background-color: var(--pico-secondary-hover-background);
--pico-border-color: var(--pico-secondary-hover-border);
--pico-color: var(--pico-secondary-inverse);
}
:is(button, [type=submit], [type=button], [role=button]).secondary:focus, :is(button, [type=submit], [type=button], [role=button]).secondary:is([aria-current]:not([aria-current=false])):focus,
[type=reset]:focus,
[type=reset]:is([aria-current]:not([aria-current=false])):focus,
[type=file]::file-selector-button:focus,
[type=file]::file-selector-button:is([aria-current]:not([aria-current=false])):focus {
--pico-box-shadow: var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)), 0 0 0 var(--pico-outline-width) var(--pico-secondary-focus);
}
:is(button, [type=submit], [type=button], [role=button]).contrast {
--pico-background-color: var(--pico-contrast-background);
--pico-border-color: var(--pico-contrast-border);
--pico-color: var(--pico-contrast-inverse);
}
:is(button, [type=submit], [type=button], [role=button]).contrast:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-background-color: var(--pico-contrast-hover-background);
--pico-border-color: var(--pico-contrast-hover-border);
--pico-color: var(--pico-contrast-inverse);
}
:is(button, [type=submit], [type=button], [role=button]).contrast:focus, :is(button, [type=submit], [type=button], [role=button]).contrast:is([aria-current]:not([aria-current=false])):focus {
--pico-box-shadow: var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)), 0 0 0 var(--pico-outline-width) var(--pico-contrast-focus);
}
:is(button, [type=submit], [type=button], [role=button]).outline,
[type=reset].outline {
--pico-background-color: transparent;
--pico-color: var(--pico-primary);
--pico-border-color: var(--pico-primary);
}
:is(button, [type=submit], [type=button], [role=button]).outline:is([aria-current]:not([aria-current=false]), :hover, :active, :focus),
[type=reset].outline:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-background-color: transparent;
--pico-color: var(--pico-primary-hover);
--pico-border-color: var(--pico-primary-hover);
}
:is(button, [type=submit], [type=button], [role=button]).outline.secondary,
[type=reset].outline {
--pico-color: var(--pico-secondary);
--pico-border-color: var(--pico-secondary);
}
:is(button, [type=submit], [type=button], [role=button]).outline.secondary:is([aria-current]:not([aria-current=false]), :hover, :active, :focus),
[type=reset].outline:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-color: var(--pico-secondary-hover);
--pico-border-color: var(--pico-secondary-hover);
}
:is(button, [type=submit], [type=button], [role=button]).outline.contrast {
--pico-color: var(--pico-contrast);
--pico-border-color: var(--pico-contrast);
}
:is(button, [type=submit], [type=button], [role=button]).outline.contrast:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-color: var(--pico-contrast-hover);
--pico-border-color: var(--pico-contrast-hover);
}
:where(button, [type=submit], [type=reset], [type=button], [role=button])[disabled],
:where(fieldset[disabled]) :is(button, [type=submit], [type=button], [type=reset], [role=button]) {
opacity: 0.5;
pointer-events: none;
}
/**
* Embedded content
*/
:where(audio, canvas, iframe, img, svg, video) {
vertical-align: middle;
}
audio,
video {
display: inline-block;
}
audio:not([controls]) {
display: none;
height: 0;
}
:where(iframe) {
border-style: none;
}
img {
max-width: 100%;
height: auto;
border-style: none;
}
:where(svg:not([fill])) {
fill: currentColor;
}
svg:not(:root) {
overflow: hidden;
}
/**
* Miscs
*/
hr {
height: 0;
margin: var(--pico-typography-spacing-vertical) 0;
border: 0;
border-top: 1px solid var(--pico-muted-border-color);
color: inherit;
}
[hidden],
template {
display: none !important;
}
canvas {
display: inline-block;
}
/**
* Basics form elements
*/
input,
optgroup,
select,
textarea {
margin: 0;
font-size: 1rem;
line-height: var(--pico-line-height);
font-family: inherit;
letter-spacing: inherit;
}
input {
overflow: visible;
}
select {
text-transform: none;
}
legend {
max-width: 100%;
padding: 0;
color: inherit;
white-space: normal;
}
textarea {
overflow: auto;
}
[type=checkbox],
[type=radio] {
padding: 0;
}
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
height: auto;
}
[type=search] {
-webkit-appearance: textfield;
outline-offset: -2px;
}
[type=search]::-webkit-search-decoration {
-webkit-appearance: none;
}
::-webkit-file-upload-button {
-webkit-appearance: button;
font: inherit;
}
::-moz-focus-inner {
padding: 0;
border-style: none;
}
:-moz-focusring {
outline: none;
}
:-moz-ui-invalid {
box-shadow: none;
}
::-ms-expand {
display: none;
}
[type=file],
[type=range] {
padding: 0;
border-width: 0;
}
input:not([type=checkbox], [type=radio], [type=range]) {
height: calc(1rem * var(--pico-line-height) + var(--pico-form-element-spacing-vertical) * 2 + var(--pico-border-width) * 2);
}
fieldset {
width: 100%;
margin: 0;
margin-bottom: var(--pico-spacing);
padding: 0;
border: 0;
}
label,
fieldset legend {
display: block;
margin-bottom: calc(var(--pico-spacing) * 0.375);
color: var(--pico-color);
font-weight: var(--pico-form-label-font-weight, var(--pico-font-weight));
}
fieldset legend {
margin-bottom: calc(var(--pico-spacing) * 0.5);
}
input:not([type=checkbox], [type=radio]),
button[type=submit],
select,
textarea {
width: 100%;
}
input:not([type=checkbox], [type=radio], [type=range], [type=file]),
select,
textarea {
appearance: none;
padding: var(--pico-form-element-spacing-vertical) var(--pico-form-element-spacing-horizontal);
}
input,
select,
textarea {
--pico-background-color: var(--pico-form-element-background-color);
--pico-border-color: var(--pico-form-element-border-color);
--pico-color: var(--pico-form-element-color);
--pico-box-shadow: none;
border: var(--pico-border-width) solid var(--pico-border-color);
border-radius: var(--pico-border-radius);
outline: none;
background-color: var(--pico-background-color);
box-shadow: var(--pico-box-shadow);
color: var(--pico-color);
font-weight: var(--pico-font-weight);
transition: background-color var(--pico-transition), border-color var(--pico-transition), color var(--pico-transition), box-shadow var(--pico-transition);
}
input:not([type=submit],
[type=button],
[type=reset],
[type=checkbox],
[type=radio],
[readonly]):is(:active, :focus),
:where(select, textarea):not([readonly]):is(:active, :focus) {
--pico-background-color: var(--pico-form-element-active-background-color);
}
input:not([type=submit], [type=button], [type=reset], [role=switch], [readonly]):is(:active, :focus),
:where(select, textarea):not([readonly]):is(:active, :focus) {
--pico-border-color: var(--pico-form-element-active-border-color);
}
input:not([type=submit],
[type=button],
[type=reset],
[type=range],
[type=file],
[readonly]):focus,
:where(select, textarea):not([readonly]):focus {
--pico-box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-form-element-focus-color);
}
input:not([type=submit], [type=button], [type=reset])[disabled],
select[disabled],
textarea[disabled],
label[aria-disabled=true],
:where(fieldset[disabled]) :is(input:not([type=submit], [type=button], [type=reset]), select, textarea) {
opacity: var(--pico-form-element-disabled-opacity);
pointer-events: none;
}
label[aria-disabled=true] input[disabled] {
opacity: 1;
}
:where(input, select, textarea):not([type=checkbox],
[type=radio],
[type=date],
[type=datetime-local],
[type=month],
[type=time],
[type=week],
[type=range])[aria-invalid] {
padding-right: calc(var(--pico-form-element-spacing-horizontal) + 1.5rem) !important;
padding-left: var(--pico-form-element-spacing-horizontal);
padding-inline-start: var(--pico-form-element-spacing-horizontal) !important;
padding-inline-end: calc(var(--pico-form-element-spacing-horizontal) + 1.5rem) !important;
background-position: center right 0.75rem;
background-size: 1rem auto;
background-repeat: no-repeat;
}
:where(input, select, textarea):not([type=checkbox],
[type=radio],
[type=date],
[type=datetime-local],
[type=month],
[type=time],
[type=week],
[type=range])[aria-invalid=false]:not(select) {
background-image: var(--pico-icon-valid);
}
:where(input, select, textarea):not([type=checkbox],
[type=radio],
[type=date],
[type=datetime-local],
[type=month],
[type=time],
[type=week],
[type=range])[aria-invalid=true]:not(select) {
background-image: var(--pico-icon-invalid);
}
:where(input, select, textarea)[aria-invalid=false] {
--pico-border-color: var(--pico-form-element-valid-border-color);
}
:where(input, select, textarea)[aria-invalid=false]:is(:active, :focus) {
--pico-border-color: var(--pico-form-element-valid-active-border-color) !important;
}
:where(input, select, textarea)[aria-invalid=false]:is(:active, :focus):not([type=checkbox], [type=radio]) {
--pico-box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-form-element-valid-focus-color) !important;
}
:where(input, select, textarea)[aria-invalid=true] {
--pico-border-color: var(--pico-form-element-invalid-border-color);
}
:where(input, select, textarea)[aria-invalid=true]:is(:active, :focus) {
--pico-border-color: var(--pico-form-element-invalid-active-border-color) !important;
}
:where(input, select, textarea)[aria-invalid=true]:is(:active, :focus):not([type=checkbox], [type=radio]) {
--pico-box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-form-element-invalid-focus-color) !important;
}
[dir=rtl] :where(input, select, textarea):not([type=checkbox], [type=radio]):is([aria-invalid], [aria-invalid=true], [aria-invalid=false]) {
background-position: center left 0.75rem;
}
input::placeholder,
input::-webkit-input-placeholder,
textarea::placeholder,
textarea::-webkit-input-placeholder,
select:invalid {
color: var(--pico-form-element-placeholder-color);
opacity: 1;
}
input:not([type=checkbox], [type=radio]),
select,
textarea {
margin-bottom: var(--pico-spacing);
}
select::-ms-expand {
border: 0;
background-color: transparent;
}
select:not([multiple], [size]) {
padding-right: calc(var(--pico-form-element-spacing-horizontal) + 1.5rem);
padding-left: var(--pico-form-element-spacing-horizontal);
padding-inline-start: var(--pico-form-element-spacing-horizontal);
padding-inline-end: calc(var(--pico-form-element-spacing-horizontal) + 1.5rem);
background-image: var(--pico-icon-chevron);
background-position: center right 0.75rem;
background-size: 1rem auto;
background-repeat: no-repeat;
}
select[multiple] option:checked {
background: var(--pico-form-element-selected-background-color);
color: var(--pico-form-element-color);
}
[dir=rtl] select:not([multiple], [size]) {
background-position: center left 0.75rem;
}
textarea {
display: block;
resize: vertical;
}
textarea[aria-invalid] {
--pico-icon-height: calc(1rem * var(--pico-line-height) + var(--pico-form-element-spacing-vertical) * 2 + var(--pico-border-width) * 2);
background-position: top right 0.75rem !important;
background-size: 1rem var(--pico-icon-height) !important;
}
:where(input, select, textarea, fieldset, .grid) + small {
display: block;
width: 100%;
margin-top: calc(var(--pico-spacing) * -0.75);
margin-bottom: var(--pico-spacing);
color: var(--pico-muted-color);
}
:where(input, select, textarea, fieldset, .grid)[aria-invalid=false] + small {
color: var(--pico-ins-color);
}
:where(input, select, textarea, fieldset, .grid)[aria-invalid=true] + small {
color: var(--pico-del-color);
}
label > :where(input, select, textarea) {
margin-top: calc(var(--pico-spacing) * 0.25);
}
/**
* Checkboxes, Radios and Switches
*/
label:has([type=checkbox], [type=radio]) {
width: fit-content;
cursor: pointer;
}
[type=checkbox],
[type=radio] {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
width: 1.25em;
height: 1.25em;
margin-top: -0.125em;
margin-inline-end: 0.5em;
border-width: var(--pico-border-width);
vertical-align: middle;
cursor: pointer;
}
[type=checkbox]::-ms-check,
[type=radio]::-ms-check {
display: none;
}
[type=checkbox]:checked, [type=checkbox]:checked:active, [type=checkbox]:checked:focus,
[type=radio]:checked,
[type=radio]:checked:active,
[type=radio]:checked:focus {
--pico-background-color: var(--pico-primary-background);
--pico-border-color: var(--pico-primary-border);
background-image: var(--pico-icon-checkbox);
background-position: center;
background-size: 0.75em auto;
background-repeat: no-repeat;
}
[type=checkbox] ~ label,
[type=radio] ~ label {
display: inline-block;
margin-bottom: 0;
cursor: pointer;
}
[type=checkbox] ~ label:not(:last-of-type),
[type=radio] ~ label:not(:last-of-type) {
margin-inline-end: 1em;
}
[type=checkbox]:indeterminate {
--pico-background-color: var(--pico-primary-background);
--pico-border-color: var(--pico-primary-border);
background-image: var(--pico-icon-minus);
background-position: center;
background-size: 0.75em auto;
background-repeat: no-repeat;
}
[type=radio] {
border-radius: 50%;
}
[type=radio]:checked, [type=radio]:checked:active, [type=radio]:checked:focus {
--pico-background-color: var(--pico-primary-inverse);
border-width: 0.35em;
background-image: none;
}
[type=checkbox][role=switch] {
--pico-background-color: var(--pico-switch-background-color);
--pico-color: var(--pico-switch-color);
width: 2.25em;
height: 1.25em;
border: var(--pico-border-width) solid var(--pico-border-color);
border-radius: 1.25em;
background-color: var(--pico-background-color);
line-height: 1.25em;
}
[type=checkbox][role=switch]:not([aria-invalid]) {
--pico-border-color: var(--pico-switch-background-color);
}
[type=checkbox][role=switch]:before {
display: block;
aspect-ratio: 1;
height: 100%;
border-radius: 50%;
background-color: var(--pico-color);
box-shadow: var(--pico-switch-thumb-box-shadow);
content: "";
transition: margin 0.1s ease-in-out;
}
[type=checkbox][role=switch]:focus {
--pico-background-color: var(--pico-switch-background-color);
--pico-border-color: var(--pico-switch-background-color);
}
[type=checkbox][role=switch]:checked {
--pico-background-color: var(--pico-switch-checked-background-color);
--pico-border-color: var(--pico-switch-checked-background-color);
background-image: none;
}
[type=checkbox][role=switch]:checked::before {
margin-inline-start: calc(2.25em - 1.25em);
}
[type=checkbox][role=switch][disabled] {
--pico-background-color: var(--pico-border-color);
}
[type=checkbox][aria-invalid=false]:checked, [type=checkbox][aria-invalid=false]:checked:active, [type=checkbox][aria-invalid=false]:checked:focus,
[type=checkbox][role=switch][aria-invalid=false]:checked,
[type=checkbox][role=switch][aria-invalid=false]:checked:active,
[type=checkbox][role=switch][aria-invalid=false]:checked:focus {
--pico-background-color: var(--pico-form-element-valid-border-color);
}
[type=checkbox]:checked[aria-invalid=true], [type=checkbox]:checked:active[aria-invalid=true], [type=checkbox]:checked:focus[aria-invalid=true],
[type=checkbox][role=switch]:checked[aria-invalid=true],
[type=checkbox][role=switch]:checked:active[aria-invalid=true],
[type=checkbox][role=switch]:checked:focus[aria-invalid=true] {
--pico-background-color: var(--pico-form-element-invalid-border-color);
}
[type=checkbox][aria-invalid=false]:checked, [type=checkbox][aria-invalid=false]:checked:active, [type=checkbox][aria-invalid=false]:checked:focus,
[type=radio][aria-invalid=false]:checked,
[type=radio][aria-invalid=false]:checked:active,
[type=radio][aria-invalid=false]:checked:focus,
[type=checkbox][role=switch][aria-invalid=false]:checked,
[type=checkbox][role=switch][aria-invalid=false]:checked:active,
[type=checkbox][role=switch][aria-invalid=false]:checked:focus {
--pico-border-color: var(--pico-form-element-valid-border-color);
}
[type=checkbox]:checked[aria-invalid=true], [type=checkbox]:checked:active[aria-invalid=true], [type=checkbox]:checked:focus[aria-invalid=true],
[type=radio]:checked[aria-invalid=true],
[type=radio]:checked:active[aria-invalid=true],
[type=radio]:checked:focus[aria-invalid=true],
[type=checkbox][role=switch]:checked[aria-invalid=true],
[type=checkbox][role=switch]:checked:active[aria-invalid=true],
[type=checkbox][role=switch]:checked:focus[aria-invalid=true] {
--pico-border-color: var(--pico-form-element-invalid-border-color);
}
/**
* Accordion (<details>)
*/
details {
display: block;
margin-bottom: var(--pico-spacing);
}
details summary {
line-height: 1rem;
list-style-type: none;
cursor: pointer;
transition: color var(--pico-transition);
}
details summary:not([role]) {
color: var(--pico-accordion-close-summary-color);
}
details summary::-webkit-details-marker {
display: none;
}
details summary::marker {
display: none;
}
details summary::-moz-list-bullet {
list-style-type: none;
}
details summary::after {
display: block;
width: 1rem;
height: 1rem;
margin-inline-start: calc(var(--pico-spacing, 1rem) * 0.5);
float: right;
transform: rotate(-90deg);
background-image: var(--pico-icon-chevron);
background-position: right center;
background-size: 1rem auto;
background-repeat: no-repeat;
content: "";
transition: transform var(--pico-transition);
}
details summary:focus {
outline: none;
}
details summary:focus:not([role]) {
color: var(--pico-accordion-active-summary-color);
}
details summary:focus-visible:not([role]) {
outline: var(--pico-outline-width) solid var(--pico-primary-focus);
outline-offset: calc(var(--pico-spacing, 1rem) * 0.5);
color: var(--pico-primary);
}
details summary[role=button] {
width: 100%;
text-align: left;
}
details summary[role=button]::after {
height: calc(1rem * var(--pico-line-height, 1.5));
}
details[open] > summary {
margin-bottom: var(--pico-spacing);
}
details[open] > summary:not([role]):not(:focus) {
color: var(--pico-accordion-open-summary-color);
}
details[open] > summary::after {
transform: rotate(0);
}
[dir=rtl] details summary {
text-align: right;
}
[dir=rtl] details summary::after {
float: left;
background-position: left center;
}
/**
* Group ([role="group"], [role="search"])
*/
[role=search],
[role=group] {
display: inline-flex;
position: relative;
width: 100%;
margin-bottom: var(--pico-spacing);
border-radius: var(--pico-border-radius);
box-shadow: var(--pico-group-box-shadow, 0 0 0 rgba(0, 0, 0, 0));
vertical-align: middle;
transition: box-shadow var(--pico-transition);
}
[role=search] > *,
[role=search] input:not([type=checkbox], [type=radio]),
[role=search] select,
[role=group] > *,
[role=group] input:not([type=checkbox], [type=radio]),
[role=group] select {
position: relative;
flex: 1 1 auto;
margin-bottom: 0;
}
[role=search] > *:not(:first-child),
[role=search] input:not([type=checkbox], [type=radio]):not(:first-child),
[role=search] select:not(:first-child),
[role=group] > *:not(:first-child),
[role=group] input:not([type=checkbox], [type=radio]):not(:first-child),
[role=group] select:not(:first-child) {
margin-left: 0;
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
[role=search] > *:not(:last-child),
[role=search] input:not([type=checkbox], [type=radio]):not(:last-child),
[role=search] select:not(:last-child),
[role=group] > *:not(:last-child),
[role=group] input:not([type=checkbox], [type=radio]):not(:last-child),
[role=group] select:not(:last-child) {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
[role=search] > *:focus,
[role=search] input:not([type=checkbox], [type=radio]):focus,
[role=search] select:focus,
[role=group] > *:focus,
[role=group] input:not([type=checkbox], [type=radio]):focus,
[role=group] select:focus {
z-index: 2;
}
[role=search] button:not(:first-child),
[role=search] [type=submit]:not(:first-child),
[role=search] [type=reset]:not(:first-child),
[role=search] [type=button]:not(:first-child),
[role=search] [role=button]:not(:first-child),
[role=search] input:not([type=checkbox], [type=radio]):not(:first-child),
[role=search] select:not(:first-child),
[role=group] button:not(:first-child),
[role=group] [type=submit]:not(:first-child),
[role=group] [type=reset]:not(:first-child),
[role=group] [type=button]:not(:first-child),
[role=group] [role=button]:not(:first-child),
[role=group] input:not([type=checkbox], [type=radio]):not(:first-child),
[role=group] select:not(:first-child) {
margin-left: calc(var(--pico-border-width) * -1);
}
[role=search] button,
[role=search] [type=submit],
[role=search] [type=reset],
[role=search] [type=button],
[role=search] [role=button],
[role=group] button,
[role=group] [type=submit],
[role=group] [type=reset],
[role=group] [type=button],
[role=group] [role=button] {
width: auto;
}
@supports selector(:has(*)) {
[role=search]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus),
[role=group]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) {
--pico-group-box-shadow: var(--pico-group-box-shadow-focus-with-button);
}
[role=search]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) input:not([type=checkbox], [type=radio]),
[role=search]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) select,
[role=group]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) input:not([type=checkbox], [type=radio]),
[role=group]:has(button:focus, [type=submit]:focus, [type=button]:focus, [role=button]:focus) select {
border-color: transparent;
}
[role=search]:has(input:not([type=submit], [type=button]):focus, select:focus),
[role=group]:has(input:not([type=submit], [type=button]):focus, select:focus) {
--pico-group-box-shadow: var(--pico-group-box-shadow-focus-with-input);
}
[role=search]:has(input:not([type=submit], [type=button]):focus, select:focus) button,
[role=search]:has(input:not([type=submit], [type=button]):focus, select:focus) [type=submit],
[role=search]:has(input:not([type=submit], [type=button]):focus, select:focus) [type=button],
[role=search]:has(input:not([type=submit], [type=button]):focus, select:focus) [role=button],
[role=group]:has(input:not([type=submit], [type=button]):focus, select:focus) button,
[role=group]:has(input:not([type=submit], [type=button]):focus, select:focus) [type=submit],
[role=group]:has(input:not([type=submit], [type=button]):focus, select:focus) [type=button],
[role=group]:has(input:not([type=submit], [type=button]):focus, select:focus) [role=button] {
--pico-button-box-shadow: 0 0 0 var(--pico-border-width) var(--pico-primary-border);
--pico-button-hover-box-shadow: 0 0 0 var(--pico-border-width) var(--pico-primary-hover-border);
}
[role=search] button:focus,
[role=search] [type=submit]:focus,
[role=search] [type=reset]:focus,
[role=search] [type=button]:focus,
[role=search] [role=button]:focus,
[role=group] button:focus,
[role=group] [type=submit]:focus,
[role=group] [type=reset]:focus,
[role=group] [type=button]:focus,
[role=group] [role=button]:focus {
box-shadow: none;
}
}
[role=search] > *:first-child {
border-top-left-radius: 5rem;
border-bottom-left-radius: 5rem;
}
[role=search] > *:last-child {
border-top-right-radius: 5rem;
border-bottom-right-radius: 5rem;
}
/**
* Nav
*/
:where(nav li)::before {
float: left;
content: "";
}
nav,
nav ul {
display: flex;
}
nav {
justify-content: space-between;
overflow: visible;
}
nav ol,
nav ul {
align-items: center;
margin-bottom: 0;
padding: 0;
list-style: none;
}
nav ol:first-of-type,
nav ul:first-of-type {
margin-left: calc(var(--pico-nav-element-spacing-horizontal) * -1);
}
nav ol:last-of-type,
nav ul:last-of-type {
margin-right: calc(var(--pico-nav-element-spacing-horizontal) * -1);
}
nav li {
display: inline-block;
margin: 0;
padding: var(--pico-nav-element-spacing-vertical) var(--pico-nav-element-spacing-horizontal);
}
nav li :where(a, [role=link]) {
display: inline-block;
margin: calc(var(--pico-nav-link-spacing-vertical) * -1) calc(var(--pico-nav-link-spacing-horizontal) * -1);
padding: var(--pico-nav-link-spacing-vertical) var(--pico-nav-link-spacing-horizontal);
border-radius: var(--pico-border-radius);
}
nav li :where(a, [role=link]):not(:hover) {
text-decoration: none;
}
nav li button,
nav li [role=button],
nav li [type=button],
nav li input:not([type=checkbox], [type=radio], [type=range], [type=file]),
nav li select {
height: auto;
margin-right: inherit;
margin-bottom: 0;
margin-left: inherit;
padding: calc(var(--pico-nav-link-spacing-vertical) - var(--pico-border-width) * 2) var(--pico-nav-link-spacing-horizontal);
}
nav[aria-label=breadcrumb] {
align-items: center;
justify-content: start;
}
nav[aria-label=breadcrumb] ul li:not(:first-child) {
margin-inline-start: var(--pico-nav-link-spacing-horizontal);
}
nav[aria-label=breadcrumb] ul li a {
margin: calc(var(--pico-nav-link-spacing-vertical) * -1) 0;
margin-inline-start: calc(var(--pico-nav-link-spacing-horizontal) * -1);
}
nav[aria-label=breadcrumb] ul li:not(:last-child)::after {
display: inline-block;
position: absolute;
width: calc(var(--pico-nav-link-spacing-horizontal) * 4);
margin: 0 calc(var(--pico-nav-link-spacing-horizontal) * -1);
content: var(--pico-nav-breadcrumb-divider);
color: var(--pico-muted-color);
text-align: center;
text-decoration: none;
white-space: nowrap;
}
nav[aria-label=breadcrumb] a[aria-current]:not([aria-current=false]) {
background-color: transparent;
color: inherit;
text-decoration: none;
pointer-events: none;
}
aside nav,
aside ol,
aside ul,
aside li {
display: block;
}
aside li {
padding: calc(var(--pico-nav-element-spacing-vertical) * 0.5) var(--pico-nav-element-spacing-horizontal);
}
aside li a {
display: block;
}
aside li [role=button] {
margin: inherit;
}
[dir=rtl] nav[aria-label=breadcrumb] ul li:not(:last-child) ::after {
content: "\\";
}
/**
* Progress
*/
progress {
display: inline-block;
vertical-align: baseline;
}
progress {
-webkit-appearance: none;
-moz-appearance: none;
display: inline-block;
appearance: none;
width: 100%;
height: 0.5rem;
margin-bottom: calc(var(--pico-spacing) * 0.5);
overflow: hidden;
border: 0;
border-radius: var(--pico-border-radius);
background-color: var(--pico-progress-background-color);
color: var(--pico-progress-color);
}
progress::-webkit-progress-bar {
border-radius: var(--pico-border-radius);
background: none;
}
progress[value]::-webkit-progress-value {
background-color: var(--pico-progress-color);
transition: inline-size var(--pico-transition);
}
progress::-moz-progress-bar {
background-color: var(--pico-progress-color);
}
@media (prefers-reduced-motion: no-preference) {
progress:indeterminate {
background: var(--pico-progress-background-color) linear-gradient(to right, var(--pico-progress-color) 30%, var(--pico-progress-background-color) 30%) top left/150% 150% no-repeat;
animation: progress-indeterminate 1s linear infinite;
}
progress:indeterminate[value]::-webkit-progress-value {
background-color: transparent;
}
progress:indeterminate::-moz-progress-bar {
background-color: transparent;
}
}
@media (prefers-reduced-motion: no-preference) {
[dir=rtl] progress:indeterminate {
animation-direction: reverse;
}
}
@keyframes progress-indeterminate {
0% {
background-position: 200% 0;
}
100% {
background-position: -200% 0;
}
}
/**
* Accessibility & User interaction
*/
[aria-controls] {
cursor: pointer;
}
[aria-disabled=true],
[disabled] {
cursor: not-allowed;
}
[aria-hidden=false][hidden] {
display: initial;
}
[aria-hidden=false][hidden]:not(:focus) {
clip: rect(0, 0, 0, 0);
position: absolute;
}
a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
-ms-touch-action: manipulation;
}
[dir=rtl] {
direction: rtl;
}
/**
* Reduce Motion Features
*/
@media (prefers-reduced-motion: reduce) {
*:not([aria-busy=true]),
:not([aria-busy=true])::before,
:not([aria-busy=true])::after {
background-attachment: initial !important;
animation-duration: 1ms !important;
animation-delay: -1ms !important;
animation-iteration-count: 1 !important;
scroll-behavior: auto !important;
transition-delay: 0s !important;
transition-duration: 0s !important;
}
}
/**
* Styles
*/
:root {
--pico-font-family-emoji: "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
--pico-font-family-sans-serif: system-ui, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, Helvetica, Arial, "Helvetica Neue", sans-serif, var(--pico-font-family-emoji);
--pico-font-family-monospace: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace, var(--pico-font-family-emoji);
--pico-font-family: var(--pico-font-family-sans-serif);
--pico-line-height: 1.5;
--pico-font-weight: 400;
--pico-font-size: 1rem;
--pico-text-underline-offset: 0.1rem;
--pico-border-radius: 0.25rem;
--pico-border-width: 0.0625rem;
--pico-outline-width: 0.125rem;
--pico-transition: 0.2s ease-in-out;
--pico-spacing: 1rem;
--pico-typography-spacing-vertical: 1rem;
--pico-block-spacing-vertical: var(--pico-spacing);
--pico-block-spacing-horizontal: var(--pico-spacing);
--pico-grid-column-gap: var(--pico-spacing);
--pico-form-element-spacing-vertical: 0.5rem;
--pico-form-element-spacing-horizontal: 1rem;
--pico-group-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
--pico-group-box-shadow-focus-with-button: 0 0 0 var(--pico-outline-width) var(--pico-primary-focus);
--pico-group-box-shadow-focus-with-input: 0 0 0 0.0625rem var(--pico-form-element-border-color);
--pico-nav-element-spacing-vertical: 1rem;
--pico-nav-element-spacing-horizontal: 0.5rem;
--pico-nav-link-spacing-vertical: 0.5rem;
--pico-nav-link-spacing-horizontal: 0.5rem;
--pico-nav-breadcrumb-divider: ">";
--pico-icon-checkbox: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
--pico-icon-minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3C/svg%3E");
--pico-icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(136, 145, 164)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
}
@media (min-width: 576px) {
:root {
--pico-font-size: 106.25%;
}
}
@media (min-width: 768px) {
:root {
--pico-font-size: 112.5%;
}
}
@media (min-width: 1024px) {
:root {
--pico-font-size: 118.75%;
}
}
@media (min-width: 1280px) {
:root {
--pico-font-size: 125%;
}
}
@media (min-width: 1536px) {
:root {
--pico-font-size: 131.25%;
}
}
:root nav .brand {
width: clamp(70px, 10%, 100px);
}
a {
--pico-text-decoration: none;
}
a.secondary, a.contrast {
--pico-text-decoration: none;
}
a:is([aria-current]:not([aria-current=false]), :hover, :active, :focus) {
--pico-text-decoration: underline;
}
small {
--pico-font-size: 0.875em;
}
:where(progress) + small {
display: block;
width: 100%;
margin-top: calc(var(--pico-spacing) * -0.75);
margin-bottom: var(--pico-spacing);
color: var(--pico-muted-color);
}
h1,
h2,
h3,
h4,
h5,
h6 {
--pico-font-weight: 700;
}
h1 {
--pico-font-size: 2rem;
--pico-line-height: 1.125;
--pico-typography-spacing-top: 3rem;
}
h2 {
--pico-font-size: 1.75rem;
--pico-line-height: 1.15;
--pico-typography-spacing-top: 2.625rem;
}
h3 {
--pico-font-size: 1.5rem;
--pico-line-height: 1.175;
--pico-typography-spacing-top: 2.25rem;
}
h4 {
--pico-font-size: 1.25rem;
--pico-line-height: 1.2;
--pico-typography-spacing-top: 1.874rem;
}
h5 {
--pico-font-size: 1.125rem;
--pico-line-height: 1.225;
--pico-typography-spacing-top: 1.6875rem;
}
h6 {
--pico-font-size: 1rem;
--pico-line-height: 1.25;
--pico-typography-spacing-top: 1.5rem;
}
input:not([type=submit],
[type=button],
[type=reset],
[type=checkbox],
[type=radio],
[type=file]),
:where(select, textarea) {
--pico-outline-width: 0.0625rem;
}
[type=search] {
--pico-border-radius: 5rem;
}
[type=checkbox],
[type=radio] {
--pico-border-width: 0.125rem;
}
[type=checkbox][role=switch] {
--pico-border-width: 0.1875rem;
}
[role=search] {
--pico-border-radius: 5rem;
}
[role=search],
[role=group] {
margin-top: calc(var(--pico-spacing) * 0.25);
}
[role=search]:has(button.secondary:focus,
[type=submit].secondary:focus,
[type=button].secondary:focus,
[role=button].secondary:focus),
[role=group]:has(button.secondary:focus,
[type=submit].secondary:focus,
[type=button].secondary:focus,
[role=button].secondary:focus) {
--pico-group-box-shadow-focus-with-button: 0 0 0 var(--pico-outline-width) var(--pico-secondary-focus);
}
[role=search]:has(button.contrast:focus,
[type=submit].contrast:focus,
[type=button].contrast:focus,
[role=button].contrast:focus),
[role=group]:has(button.contrast:focus,
[type=submit].contrast:focus,
[type=button].contrast:focus,
[role=button].contrast:focus) {
--pico-group-box-shadow-focus-with-button: 0 0 0 var(--pico-outline-width) var(--pico-contrast-focus);
}
[role=search] button,
[role=search] [type=submit],
[role=search] [type=button],
[role=search] [role=button],
[role=group] button,
[role=group] [type=submit],
[role=group] [type=button],
[role=group] [role=button] {
--pico-form-element-spacing-horizontal: 2rem;
}
details summary[role=button]:not(.outline)::after {
filter: brightness(0) invert(1);
}
/**
* Color schemes
*/
[data-theme=light],
:root:not([data-theme=dark]) {
--pico-background-color: #fff;
--pico-color: #373c44;
--pico-text-selection-color: rgba(5, 162, 162, 0.25);
--pico-muted-color: #646b79;
--pico-muted-border-color: #e7eaf0;
--pico-primary: #047878;
--pico-primary-background: #047878;
--pico-primary-border: var(--pico-primary-background);
--pico-primary-underline: rgba(4, 120, 120, 0.5);
--pico-primary-hover: #025d5d;
--pico-primary-hover-background: #046a6a;
--pico-primary-hover-border: var(--pico-primary-hover-background);
--pico-primary-hover-underline: var(--pico-primary-hover);
--pico-primary-focus: rgba(5, 162, 162, 0.5);
--pico-primary-inverse: #fff;
--pico-secondary: #5d6b89;
--pico-secondary-background: #525f7a;
--pico-secondary-border: var(--pico-secondary-background);
--pico-secondary-underline: rgba(93, 107, 137, 0.5);
--pico-secondary-hover: #48536b;
--pico-secondary-hover-background: #48536b;
--pico-secondary-hover-border: var(--pico-secondary-hover-background);
--pico-secondary-hover-underline: var(--pico-secondary-hover);
--pico-secondary-focus: rgba(93, 107, 137, 0.25);
--pico-secondary-inverse: #fff;
--pico-contrast: #181c25;
--pico-contrast-background: #181c25;
--pico-contrast-border: var(--pico-contrast-background);
--pico-contrast-underline: rgba(24, 28, 37, 0.5);
--pico-contrast-hover: #000;
--pico-contrast-hover-background: #000;
--pico-contrast-hover-border: var(--pico-contrast-hover-background);
--pico-contrast-hover-underline: var(--pico-secondary-hover);
--pico-contrast-focus: rgba(93, 107, 137, 0.25);
--pico-contrast-inverse: #fff;
--pico-box-shadow: 0.0145rem 0.029rem 0.174rem rgba(129, 145, 181, 0.01698), 0.0335rem 0.067rem 0.402rem rgba(129, 145, 181, 0.024), 0.0625rem 0.125rem 0.75rem rgba(129, 145, 181, 0.03), 0.1125rem 0.225rem 1.35rem rgba(129, 145, 181, 0.036), 0.2085rem 0.417rem 2.502rem rgba(129, 145, 181, 0.04302), 0.5rem 1rem 6rem rgba(129, 145, 181, 0.06), 0 0 0 0.0625rem rgba(129, 145, 181, 0.015);
--pico-h1-color: #2d3138;
--pico-h2-color: #373c44;
--pico-h3-color: #424751;
--pico-h4-color: #4d535e;
--pico-h5-color: #5c6370;
--pico-h6-color: #646b79;
--pico-mark-background-color: #fde7c0;
--pico-mark-color: #0f1114;
--pico-ins-color: #1d6a54;
--pico-del-color: #883935;
--pico-blockquote-border-color: var(--pico-muted-border-color);
--pico-blockquote-footer-color: var(--pico-muted-color);
--pico-button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
--pico-button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
--pico-form-element-background-color: #fbfcfc;
--pico-form-element-selected-background-color: #dfe3eb;
--pico-form-element-border-color: #cfd5e2;
--pico-form-element-color: #23262c;
--pico-form-element-placeholder-color: var(--pico-muted-color);
--pico-form-element-active-background-color: #fff;
--pico-form-element-active-border-color: var(--pico-primary-border);
--pico-form-element-focus-color: var(--pico-primary-border);
--pico-form-element-disabled-opacity: 0.5;
--pico-form-element-invalid-border-color: #b86a6b;
--pico-form-element-invalid-active-border-color: #c84f48;
--pico-form-element-invalid-focus-color: var(--pico-form-element-invalid-active-border-color);
--pico-form-element-valid-border-color: #4c9b8a;
--pico-form-element-valid-active-border-color: #279977;
--pico-form-element-valid-focus-color: var(--pico-form-element-valid-active-border-color);
--pico-switch-background-color: #bfc7d9;
--pico-switch-checked-background-color: var(--pico-primary-background);
--pico-switch-color: #fff;
--pico-switch-thumb-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
--pico-accordion-border-color: var(--pico-muted-border-color);
--pico-accordion-active-summary-color: var(--pico-primary-hover);
--pico-accordion-close-summary-color: var(--pico-color);
--pico-accordion-open-summary-color: var(--pico-muted-color);
--pico-progress-background-color: #dfe3eb;
--pico-progress-color: var(--pico-primary-background);
--pico-icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(76, 155, 138)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
--pico-icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(200, 79, 72)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
color-scheme: light;
}
[data-theme=light] input:is([type=submit],
[type=button],
[type=reset],
[type=checkbox],
[type=radio],
[type=file]),
:root:not([data-theme=dark]) input:is([type=submit],
[type=button],
[type=reset],
[type=checkbox],
[type=radio],
[type=file]) {
--pico-form-element-focus-color: var(--pico-primary-focus);
}
@media only screen and (prefers-color-scheme: dark) {
:root:not([data-theme]) {
--pico-background-color: #13171f;
--pico-color: #c2c7d0;
--pico-text-selection-color: rgba(10, 177, 177, 0.1875);
--pico-muted-color: #7b8495;
--pico-muted-border-color: #202632;
--pico-primary: #0ab1b1;
--pico-primary-background: #047878;
--pico-primary-border: var(--pico-primary-background);
--pico-primary-underline: rgba(10, 177, 177, 0.5);
--pico-primary-hover: #0ccece;
--pico-primary-hover-background: #058686;
--pico-primary-hover-border: var(--pico-primary-hover-background);
--pico-primary-hover-underline: var(--pico-primary-hover);
--pico-primary-focus: rgba(10, 177, 177, 0.375);
--pico-primary-inverse: #fff;
--pico-secondary: #969eaf;
--pico-secondary-background: #525f7a;
--pico-secondary-border: var(--pico-secondary-background);
--pico-secondary-underline: rgba(150, 158, 175, 0.5);
--pico-secondary-hover: #b3b9c5;
--pico-secondary-hover-background: #5d6b89;
--pico-secondary-hover-border: var(--pico-secondary-hover-background);
--pico-secondary-hover-underline: var(--pico-secondary-hover);
--pico-secondary-focus: rgba(144, 158, 190, 0.25);
--pico-secondary-inverse: #fff;
--pico-contrast: #dfe3eb;
--pico-contrast-background: #eff1f4;
--pico-contrast-border: var(--pico-contrast-background);
--pico-contrast-underline: rgba(223, 227, 235, 0.5);
--pico-contrast-hover: #fff;
--pico-contrast-hover-background: #fff;
--pico-contrast-hover-border: var(--pico-contrast-hover-background);
--pico-contrast-hover-underline: var(--pico-contrast-hover);
--pico-contrast-focus: rgba(207, 213, 226, 0.25);
--pico-contrast-inverse: #000;
--pico-box-shadow: 0.0145rem 0.029rem 0.174rem rgba(7, 9, 12, 0.01698), 0.0335rem 0.067rem 0.402rem rgba(7, 9, 12, 0.024), 0.0625rem 0.125rem 0.75rem rgba(7, 9, 12, 0.03), 0.1125rem 0.225rem 1.35rem rgba(7, 9, 12, 0.036), 0.2085rem 0.417rem 2.502rem rgba(7, 9, 12, 0.04302), 0.5rem 1rem 6rem rgba(7, 9, 12, 0.06), 0 0 0 0.0625rem rgba(7, 9, 12, 0.015);
--pico-h1-color: #f0f1f3;
--pico-h2-color: #e0e3e7;
--pico-h3-color: #c2c7d0;
--pico-h4-color: #b3b9c5;
--pico-h5-color: #a4acba;
--pico-h6-color: #8891a4;
--pico-mark-background-color: #014063;
--pico-mark-color: #fff;
--pico-ins-color: #62af9a;
--pico-del-color: #ce7e7b;
--pico-blockquote-border-color: var(--pico-muted-border-color);
--pico-blockquote-footer-color: var(--pico-muted-color);
--pico-button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
--pico-button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
--pico-form-element-background-color: #1c212c;
--pico-form-element-selected-background-color: #2a3140;
--pico-form-element-border-color: #2a3140;
--pico-form-element-color: #e0e3e7;
--pico-form-element-placeholder-color: #8891a4;
--pico-form-element-active-background-color: #1a1f28;
--pico-form-element-active-border-color: var(--pico-primary-border);
--pico-form-element-focus-color: var(--pico-primary-border);
--pico-form-element-disabled-opacity: 0.5;
--pico-form-element-invalid-border-color: #964a50;
--pico-form-element-invalid-active-border-color: #b7403b;
--pico-form-element-invalid-focus-color: var(--pico-form-element-invalid-active-border-color);
--pico-form-element-valid-border-color: #2a7b6f;
--pico-form-element-valid-active-border-color: #16896a;
--pico-form-element-valid-focus-color: var(--pico-form-element-valid-active-border-color);
--pico-switch-background-color: #333c4e;
--pico-switch-checked-background-color: var(--pico-primary-background);
--pico-switch-color: #fff;
--pico-switch-thumb-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
--pico-accordion-border-color: var(--pico-muted-border-color);
--pico-accordion-active-summary-color: var(--pico-primary-hover);
--pico-accordion-close-summary-color: var(--pico-color);
--pico-accordion-open-summary-color: var(--pico-muted-color);
--pico-progress-background-color: #202632;
--pico-progress-color: var(--pico-primary-background);
--pico-icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(42, 123, 111)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
--pico-icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(150, 74, 80)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
color-scheme: dark;
}
:root:not([data-theme]) input:is([type=submit],
[type=button],
[type=reset],
[type=checkbox],
[type=radio],
[type=file]) {
--pico-form-element-focus-color: var(--pico-primary-focus);
}
:root:not([data-theme]) details summary[role=button].contrast:not(.outline)::after {
filter: brightness(0);
}
}
[data-theme=dark] {
--pico-background-color: #13171f;
--pico-color: #c2c7d0;
--pico-text-selection-color: rgba(10, 177, 177, 0.1875);
--pico-muted-color: #7b8495;
--pico-muted-border-color: #202632;
--pico-primary: #0ab1b1;
--pico-primary-background: #047878;
--pico-primary-border: var(--pico-primary-background);
--pico-primary-underline: rgba(10, 177, 177, 0.5);
--pico-primary-hover: #0ccece;
--pico-primary-hover-background: #058686;
--pico-primary-hover-border: var(--pico-primary-hover-background);
--pico-primary-hover-underline: var(--pico-primary-hover);
--pico-primary-focus: rgba(10, 177, 177, 0.375);
--pico-primary-inverse: #fff;
--pico-secondary: #969eaf;
--pico-secondary-background: #525f7a;
--pico-secondary-border: var(--pico-secondary-background);
--pico-secondary-underline: rgba(150, 158, 175, 0.5);
--pico-secondary-hover: #b3b9c5;
--pico-secondary-hover-background: #5d6b89;
--pico-secondary-hover-border: var(--pico-secondary-hover-background);
--pico-secondary-hover-underline: var(--pico-secondary-hover);
--pico-secondary-focus: rgba(144, 158, 190, 0.25);
--pico-secondary-inverse: #fff;
--pico-contrast: #dfe3eb;
--pico-contrast-background: #eff1f4;
--pico-contrast-border: var(--pico-contrast-background);
--pico-contrast-underline: rgba(223, 227, 235, 0.5);
--pico-contrast-hover: #fff;
--pico-contrast-hover-background: #fff;
--pico-contrast-hover-border: var(--pico-contrast-hover-background);
--pico-contrast-hover-underline: var(--pico-contrast-hover);
--pico-contrast-focus: rgba(207, 213, 226, 0.25);
--pico-contrast-inverse: #000;
--pico-box-shadow: 0.0145rem 0.029rem 0.174rem rgba(7, 9, 12, 0.01698), 0.0335rem 0.067rem 0.402rem rgba(7, 9, 12, 0.024), 0.0625rem 0.125rem 0.75rem rgba(7, 9, 12, 0.03), 0.1125rem 0.225rem 1.35rem rgba(7, 9, 12, 0.036), 0.2085rem 0.417rem 2.502rem rgba(7, 9, 12, 0.04302), 0.5rem 1rem 6rem rgba(7, 9, 12, 0.06), 0 0 0 0.0625rem rgba(7, 9, 12, 0.015);
--pico-h1-color: #f0f1f3;
--pico-h2-color: #e0e3e7;
--pico-h3-color: #c2c7d0;
--pico-h4-color: #b3b9c5;
--pico-h5-color: #a4acba;
--pico-h6-color: #8891a4;
--pico-mark-background-color: #014063;
--pico-mark-color: #fff;
--pico-ins-color: #62af9a;
--pico-del-color: #ce7e7b;
--pico-blockquote-border-color: var(--pico-muted-border-color);
--pico-blockquote-footer-color: var(--pico-muted-color);
--pico-button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
--pico-button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
--pico-form-element-background-color: #1c212c;
--pico-form-element-selected-background-color: #2a3140;
--pico-form-element-border-color: #2a3140;
--pico-form-element-color: #e0e3e7;
--pico-form-element-placeholder-color: #8891a4;
--pico-form-element-active-background-color: #1a1f28;
--pico-form-element-active-border-color: var(--pico-primary-border);
--pico-form-element-focus-color: var(--pico-primary-border);
--pico-form-element-disabled-opacity: 0.5;
--pico-form-element-invalid-border-color: #964a50;
--pico-form-element-invalid-active-border-color: #b7403b;
--pico-form-element-invalid-focus-color: var(--pico-form-element-invalid-active-border-color);
--pico-form-element-valid-border-color: #2a7b6f;
--pico-form-element-valid-active-border-color: #16896a;
--pico-form-element-valid-focus-color: var(--pico-form-element-valid-active-border-color);
--pico-switch-background-color: #333c4e;
--pico-switch-checked-background-color: var(--pico-primary-background);
--pico-switch-color: #fff;
--pico-switch-thumb-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
--pico-accordion-border-color: var(--pico-muted-border-color);
--pico-accordion-active-summary-color: var(--pico-primary-hover);
--pico-accordion-close-summary-color: var(--pico-color);
--pico-accordion-open-summary-color: var(--pico-muted-color);
--pico-progress-background-color: #202632;
--pico-progress-color: var(--pico-primary-background);
--pico-icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(42, 123, 111)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
--pico-icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(150, 74, 80)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
color-scheme: dark;
}
[data-theme=dark] input:is([type=submit],
[type=button],
[type=reset],
[type=checkbox],
[type=radio],
[type=file]) {
--pico-form-element-focus-color: var(--pico-primary-focus);
}
[data-theme=dark] details summary[role=button].contrast:not(.outline)::after {
filter: brightness(0);
}
progress,
[type=checkbox],
[type=radio],
[type=range] {
accent-color: var(--pico-primary);
}
:root {
--color-hp: #f06048;
--color-mana: #01aaff;
--color-error: #c52f21;
}
.text-center {
text-align: center;
}
.text-right {
text-align: right;
}
a {
cursor: pointer;
}
progress {
height: 1.25rem;
}
.stat-container {
display: flex;
margin-bottom: var(--pico-spacing);
}
.stat-container .start {
justify-content: flex-start;
margin-right: auto;
}
.stat-container .middle {
justify-content: center;
margin-left: auto;
margin-right: auto;
}
.stat-container .end {
justify-content: flex-end;
margin-left: auto;
}
.lbl-offset {
display: flex;
margin-bottom: calc(var(--pico-spacing) * 0.4);
}
.lbl-offset button {
margin-top: auto;
}
.progress {
border-radius: var(--pico-border-radius);
color: var(--pico-contrast);
height: 1.25rem;
background-color: var(--pico-progress-background-color);
position: relative;
display: flex;
justify-content: center;
align-items: center;
margin-bottom: calc(var(--pico-spacing) * 0.5);
}
.progress .progress-label {
position: absolute;
top: 0;
z-index: 20;
font-size: 0.9rem;
}
.progress div {
height: 100%;
border-radius: var(--pico-border-radius);
background: var(--pico-primary);
position: relative;
z-index: 10;
align-self: start;
margin-right: auto;
animation-duration: 1s;
animation-fill-mode: forwards;
}
.progress div.mana {
background-color: var(--color-mana);
animation-name: manaAnimation;
}
@keyframes manaAnimation {
0% {
width: var(--mana-from-width);
}
100% {
width: var(--mana-to-width);
}
}
.progress div.hp {
background-color: var(--color-hp);
animation-name: hpAnimation;
}
@keyframes hpAnimation {
0% {
width: var(--hp-from-width);
}
100% {
width: var(--hp-to-width);
}
}
.error-helper {
color: var(--color-error);
}
.mb-0 {
margin-bottom: 0 !important;
}
.mb-1 {
margin-bottom: calc(var(--pico-spacing) * 0.25);
}
.mb-2 {
margin-bottom: calc(var(--pico-spacing) * 0.5);
}
.mb-3 {
margin-bottom: calc(var(--pico-spacing) * 0.75);
}
.mb-4 {
margin-bottom: var(--pico-spacing);
}