workout/assets/css/main.css

1267 lines
39 KiB
CSS

/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
:root, :host {
--font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
"Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
"Courier New", monospace;
--spacing: 0.25rem;
--container-2xl: 42rem;
--container-3xl: 48rem;
--container-4xl: 56rem;
--container-5xl: 64rem;
--container-7xl: 80rem;
--text-xs: 0.75rem;
--text-xs--line-height: calc(1 / 0.75);
--text-xl: 1.25rem;
--text-xl--line-height: calc(1.75 / 1.25);
--text-2xl: 1.5rem;
--text-2xl--line-height: calc(2 / 1.5);
--text-3xl: 1.875rem;
--text-3xl--line-height: calc(2.25 / 1.875);
--font-weight-bold: 700;
--default-font-family: var(--font-sans);
--default-mono-font-family: var(--font-mono);
}
}
@layer base {
*, ::after, ::before, ::backdrop, ::file-selector-button {
box-sizing: border-box;
margin: 0;
padding: 0;
border: 0 solid;
}
html, :host {
line-height: 1.5;
-webkit-text-size-adjust: 100%;
tab-size: 4;
font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
font-feature-settings: var(--default-font-feature-settings, normal);
font-variation-settings: var(--default-font-variation-settings, normal);
-webkit-tap-highlight-color: transparent;
}
hr {
height: 0;
color: inherit;
border-top-width: 1px;
}
abbr:where([title]) {
-webkit-text-decoration: underline dotted;
text-decoration: underline dotted;
}
h1, h2, h3, h4, h5, h6 {
font-size: inherit;
font-weight: inherit;
}
a {
color: inherit;
-webkit-text-decoration: inherit;
text-decoration: inherit;
}
b, strong {
font-weight: bolder;
}
code, kbd, samp, pre {
font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
font-feature-settings: var(--default-mono-font-feature-settings, normal);
font-variation-settings: var(--default-mono-font-variation-settings, normal);
font-size: 1em;
}
small {
font-size: 80%;
}
sub, sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
table {
text-indent: 0;
border-color: inherit;
border-collapse: collapse;
}
:-moz-focusring {
outline: auto;
}
progress {
vertical-align: baseline;
}
summary {
display: list-item;
}
ol, ul, menu {
list-style: none;
}
img, svg, video, canvas, audio, iframe, embed, object {
display: block;
vertical-align: middle;
}
img, video {
max-width: 100%;
height: auto;
}
button, input, select, optgroup, textarea, ::file-selector-button {
font: inherit;
font-feature-settings: inherit;
font-variation-settings: inherit;
letter-spacing: inherit;
color: inherit;
border-radius: 0;
background-color: transparent;
opacity: 1;
}
:where(select:is([multiple], [size])) optgroup {
font-weight: bolder;
}
:where(select:is([multiple], [size])) optgroup option {
padding-inline-start: 20px;
}
::file-selector-button {
margin-inline-end: 4px;
}
::placeholder {
opacity: 1;
}
@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
::placeholder {
color: currentcolor;
@supports (color: color-mix(in lab, red, red)) {
color: color-mix(in oklab, currentcolor 50%, transparent);
}
}
}
textarea {
resize: vertical;
}
::-webkit-search-decoration {
-webkit-appearance: none;
}
::-webkit-date-and-time-value {
min-height: 1lh;
text-align: inherit;
}
::-webkit-datetime-edit {
display: inline-flex;
}
::-webkit-datetime-edit-fields-wrapper {
padding: 0;
}
::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
padding-block: 0;
}
:-moz-ui-invalid {
box-shadow: none;
}
button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
appearance: button;
}
::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
height: auto;
}
[hidden]:where(:not([hidden="until-found"])) {
display: none !important;
}
}
@layer utilities {
.menu {
display: flex;
width: fit-content;
flex-direction: column;
flex-wrap: wrap;
padding: calc(0.25rem * 2);
--menu-active-fg: var(--color-neutral-content);
--menu-active-bg: var(--color-neutral);
font-size: 0.875rem;
:where(li ul) {
position: relative;
margin-inline-start: calc(0.25rem * 4);
padding-inline-start: calc(0.25rem * 2);
white-space: nowrap;
&:before {
position: absolute;
inset-inline-start: calc(0.25rem * 0);
top: calc(0.25rem * 3);
bottom: calc(0.25rem * 3);
background-color: var(--color-base-content);
opacity: 10%;
width: var(--border);
content: "";
}
}
:where(li > .menu-dropdown:not(.menu-dropdown-show)) {
display: none;
}
:where(li:not(.menu-title) > *:not(ul, details, .menu-title, .btn)), :where(li:not(.menu-title) > details > summary:not(.menu-title)) {
display: grid;
grid-auto-flow: column;
align-content: flex-start;
align-items: center;
gap: calc(0.25rem * 2);
border-radius: var(--radius-field);
padding-inline: calc(0.25rem * 3);
padding-block: calc(0.25rem * 1.5);
text-align: start;
transition-property: color, background-color, box-shadow;
transition-duration: 0.2s;
transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
grid-auto-columns: minmax(auto, max-content) auto max-content;
text-wrap: balance;
user-select: none;
}
:where(li > details > summary) {
--tw-outline-style: none;
outline-style: none;
@media (forced-colors: active) {
outline: 2px solid transparent;
outline-offset: 2px;
}
&::-webkit-details-marker {
display: none;
}
}
:where(li > details > summary), :where(li > .menu-dropdown-toggle) {
&:after {
justify-self: flex-end;
display: block;
height: 0.375rem;
width: 0.375rem;
rotate: -135deg;
translate: 0 -1px;
transition-property: rotate, translate;
transition-duration: 0.2s;
content: "";
transform-origin: 50% 50%;
box-shadow: 2px 2px inset;
pointer-events: none;
}
}
:where(li > details[open] > summary):after, :where(li > .menu-dropdown-toggle.menu-dropdown-show):after {
rotate: 45deg;
translate: 0 1px;
}
:where( li:not(.menu-title, .disabled) > *:not(ul, details, .menu-title), li:not(.menu-title, .disabled) > details > summary:not(.menu-title) ):not(.menu-active, :active, .btn) {
&.menu-focus, &:focus-visible {
cursor: pointer;
background-color: var(--color-base-content);
@supports (color: color-mix(in lab, red, red)) {
background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
}
color: var(--color-base-content);
--tw-outline-style: none;
outline-style: none;
@media (forced-colors: active) {
outline: 2px solid transparent;
outline-offset: 2px;
}
}
}
:where( li:not(.menu-title, .disabled) > *:not(ul, details, .menu-title):not(.menu-active, :active, .btn):hover, li:not(.menu-title, .disabled) > details > summary:not(.menu-title):not(.menu-active, :active, .btn):hover ) {
cursor: pointer;
background-color: var(--color-base-content);
@supports (color: color-mix(in lab, red, red)) {
background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
}
--tw-outline-style: none;
outline-style: none;
@media (forced-colors: active) {
outline: 2px solid transparent;
outline-offset: 2px;
}
box-shadow: 0 1px oklch(0% 0 0 / 0.01) inset, 0 -1px oklch(100% 0 0 / 0.01) inset;
}
:where(li:empty) {
background-color: var(--color-base-content);
opacity: 10%;
margin: 0.5rem 1rem;
height: 1px;
}
:where(li) {
position: relative;
display: flex;
flex-shrink: 0;
flex-direction: column;
flex-wrap: wrap;
align-items: stretch;
.badge {
justify-self: flex-end;
}
& > *:not(ul, .menu-title, details, .btn):active, & > *:not(ul, .menu-title, details, .btn).menu-active, & > details > summary:active {
--tw-outline-style: none;
outline-style: none;
@media (forced-colors: active) {
outline: 2px solid transparent;
outline-offset: 2px;
}
color: var(--menu-active-fg);
background-color: var(--menu-active-bg);
background-size: auto, calc(var(--noise) * 100%);
background-image: none, var(--fx-noise);
&:not(&:active) {
box-shadow: 0 2px calc(var(--depth) * 3px) -2px var(--menu-active-bg);
}
}
&.menu-disabled {
pointer-events: none;
color: var(--color-base-content);
@supports (color: color-mix(in lab, red, red)) {
color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
}
}
}
.dropdown:focus-within {
.menu-dropdown-toggle:after {
rotate: 45deg;
translate: 0 1px;
}
}
.dropdown-content {
margin-top: calc(0.25rem * 2);
padding: calc(0.25rem * 2);
&:before {
display: none;
}
}
}
.btn {
:where(&) {
width: unset;
}
display: inline-flex;
flex-shrink: 0;
cursor: pointer;
flex-wrap: nowrap;
align-items: center;
justify-content: center;
gap: calc(0.25rem * 1.5);
text-align: center;
vertical-align: middle;
outline-offset: 2px;
webkit-user-select: none;
user-select: none;
padding-inline: var(--btn-p);
color: var(--btn-fg);
--tw-prose-links: var(--btn-fg);
height: var(--size);
font-size: var(--fontsize, 0.875rem);
font-weight: 600;
outline-color: var(--btn-color, var(--color-base-content));
transition-property: color, background-color, border-color, box-shadow;
transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
transition-duration: 0.2s;
border-start-start-radius: var(--join-ss, var(--radius-field));
border-start-end-radius: var(--join-se, var(--radius-field));
border-end-start-radius: var(--join-es, var(--radius-field));
border-end-end-radius: var(--join-ee, var(--radius-field));
background-color: var(--btn-bg);
background-size: auto, calc(var(--noise) * 100%);
background-image: none, var(--btn-noise);
border-width: var(--border);
border-style: solid;
border-color: var(--btn-border);
text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
touch-action: manipulation;
box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
--size: calc(var(--size-field, 0.25rem) * 10);
--btn-bg: var(--btn-color, var(--color-base-200));
--btn-fg: var(--color-base-content);
--btn-p: 1rem;
--btn-border: var(--btn-bg);
@supports (color: color-mix(in lab, red, red)) {
--btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
}
--btn-shadow: 0 3px 2px -2px var(--btn-bg),
0 4px 3px -2px var(--btn-bg);
@supports (color: color-mix(in lab, red, red)) {
--btn-shadow: 0 3px 2px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000),
0 4px 3px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000);
}
--btn-noise: var(--fx-noise);
.prose & {
text-decoration-line: none;
}
@media (hover: hover) {
&:hover {
--btn-bg: var(--btn-color, var(--color-base-200));
@supports (color: color-mix(in lab, red, red)) {
--btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
}
}
}
&:focus-visible {
outline-width: 2px;
outline-style: solid;
isolation: isolate;
}
&:active:not(.btn-active) {
translate: 0 0.5px;
--btn-bg: var(--btn-color, var(--color-base-200));
@supports (color: color-mix(in lab, red, red)) {
--btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
}
--btn-border: var(--btn-color, var(--color-base-200));
@supports (color: color-mix(in lab, red, red)) {
--btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
}
--btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
}
&:is(:disabled, [disabled], .btn-disabled) {
&:not(.btn-link, .btn-ghost) {
background-color: var(--color-base-content);
@supports (color: color-mix(in lab, red, red)) {
background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
}
box-shadow: none;
}
pointer-events: none;
--btn-border: #0000;
--btn-noise: none;
--btn-fg: var(--color-base-content);
@supports (color: color-mix(in lab, red, red)) {
--btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
}
@media (hover: hover) {
&:hover {
pointer-events: none;
background-color: var(--color-neutral);
@supports (color: color-mix(in lab, red, red)) {
background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
}
--btn-border: #0000;
--btn-fg: var(--color-base-content);
@supports (color: color-mix(in lab, red, red)) {
--btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
}
}
}
}
&:is(input[type="checkbox"], input[type="radio"]) {
appearance: none;
&::after {
content: attr(aria-label);
}
}
&:where(input:checked:not(.filter .btn)) {
--btn-color: var(--color-primary);
--btn-fg: var(--color-primary-content);
isolation: isolate;
}
}
.list {
display: flex;
flex-direction: column;
font-size: 0.875rem;
:where(.list-row) {
--list-grid-cols: minmax(0, auto) 1fr;
position: relative;
display: grid;
grid-auto-flow: column;
gap: calc(0.25rem * 4);
border-radius: var(--radius-box);
padding: calc(0.25rem * 4);
word-break: break-word;
grid-template-columns: var(--list-grid-cols);
&:has(.list-col-grow:nth-child(1)) {
--list-grid-cols: 1fr;
}
&:has(.list-col-grow:nth-child(2)) {
--list-grid-cols: minmax(0, auto) 1fr;
}
&:has(.list-col-grow:nth-child(3)) {
--list-grid-cols: minmax(0, auto) minmax(0, auto) 1fr;
}
&:has(.list-col-grow:nth-child(4)) {
--list-grid-cols: minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr;
}
&:has(.list-col-grow:nth-child(5)) {
--list-grid-cols: minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr;
}
&:has(.list-col-grow:nth-child(6)) {
--list-grid-cols: minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto)
minmax(0, auto) 1fr;
}
:not(.list-col-wrap) {
grid-row-start: 1;
}
}
& > :not(:last-child) {
&.list-row, .list-row {
&:after {
content: "";
border-bottom: var(--border) solid;
inset-inline: var(--radius-box);
position: absolute;
bottom: calc(0.25rem * 0);
border-color: var(--color-base-content);
@supports (color: color-mix(in lab, red, red)) {
border-color: color-mix(in oklab, var(--color-base-content) 5%, transparent);
}
}
}
}
}
.input {
cursor: text;
border: var(--border) solid #0000;
position: relative;
display: inline-flex;
flex-shrink: 1;
appearance: none;
align-items: center;
gap: calc(0.25rem * 2);
background-color: var(--color-base-100);
padding-inline: calc(0.25rem * 3);
vertical-align: middle;
white-space: nowrap;
width: clamp(3rem, 20rem, 100%);
height: var(--size);
font-size: 0.875rem;
touch-action: manipulation;
border-start-start-radius: var(--join-ss, var(--radius-field));
border-start-end-radius: var(--join-se, var(--radius-field));
border-end-start-radius: var(--join-es, var(--radius-field));
border-end-end-radius: var(--join-ee, var(--radius-field));
border-color: var(--input-color);
box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
@supports (color: color-mix(in lab, red, red)) {
box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
}
--size: calc(var(--size-field, 0.25rem) * 10);
--input-color: var(--color-base-content);
@supports (color: color-mix(in lab, red, red)) {
--input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
}
&:where(input) {
display: inline-flex;
}
:where(input) {
display: inline-flex;
height: 100%;
width: 100%;
appearance: none;
background-color: transparent;
border: none;
&:focus, &:focus-within {
--tw-outline-style: none;
outline-style: none;
@media (forced-colors: active) {
outline: 2px solid transparent;
outline-offset: 2px;
}
}
}
:where(input[type="url"]), :where(input[type="email"]) {
direction: ltr;
}
:where(input[type="date"]) {
display: inline-block;
}
&:focus, &:focus-within {
--input-color: var(--color-base-content);
box-shadow: 0 1px var(--input-color);
@supports (color: color-mix(in lab, red, red)) {
box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
}
outline: 2px solid var(--input-color);
outline-offset: 2px;
isolation: isolate;
z-index: 1;
}
&:has(> input[disabled]), &:is(:disabled, [disabled]) {
cursor: not-allowed;
border-color: var(--color-base-200);
background-color: var(--color-base-200);
color: var(--color-base-content);
@supports (color: color-mix(in lab, red, red)) {
color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
}
&::placeholder {
color: var(--color-base-content);
@supports (color: color-mix(in lab, red, red)) {
color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
}
}
box-shadow: none;
}
&:has(> input[disabled]) > input[disabled] {
cursor: not-allowed;
}
&::-webkit-date-and-time-value {
text-align: inherit;
}
&[type="number"] {
&::-webkit-inner-spin-button {
margin-block: calc(0.25rem * -3);
margin-inline-end: calc(0.25rem * -3);
}
}
&::-webkit-calendar-picker-indicator {
position: absolute;
inset-inline-end: 0.75em;
}
}
.checkbox {
border: var(--border) solid var(--input-color, var(--color-base-content));
@supports (color: color-mix(in lab, red, red)) {
border: var(--border) solid var(--input-color, color-mix(in oklab, var(--color-base-content) 20%, #0000));
}
position: relative;
display: inline-block;
flex-shrink: 0;
cursor: pointer;
appearance: none;
border-radius: var(--radius-selector);
padding: calc(0.25rem * 1);
vertical-align: middle;
color: var(--color-base-content);
box-shadow: 0 1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 0 #0000 inset, 0 0 #0000;
transition: background-color 0.2s, box-shadow 0.2s;
--size: calc(var(--size-selector, 0.25rem) * 6);
width: var(--size);
height: var(--size);
background-size: auto, calc(var(--noise) * 100%);
background-image: none, var(--fx-noise);
&:before {
--tw-content: "";
content: var(--tw-content);
display: block;
width: 100%;
height: 100%;
rotate: 45deg;
background-color: currentColor;
opacity: 0%;
transition: clip-path 0.3s, opacity 0.1s, rotate 0.3s, translate 0.3s;
transition-delay: 0.1s;
clip-path: polygon(20% 100%, 20% 80%, 50% 80%, 50% 80%, 70% 80%, 70% 100%);
box-shadow: 0px 3px 0 0px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
font-size: 1rem;
line-height: 0.75;
}
&:focus-visible {
outline: 2px solid var(--input-color, currentColor);
outline-offset: 2px;
}
&:checked, &[aria-checked="true"] {
background-color: var(--input-color, #0000);
box-shadow: 0 0 #0000 inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px oklch(0% 0 0 / calc(var(--depth) * 0.1));
&:before {
clip-path: polygon(20% 100%, 20% 80%, 50% 80%, 50% 0%, 70% 0%, 70% 100%);
opacity: 100%;
}
@media (forced-colors: active) {
&:before {
rotate: 0deg;
background-color: transparent;
--tw-content: "✔︎";
clip-path: none;
}
}
@media print {
&:before {
rotate: 0deg;
background-color: transparent;
--tw-content: "✔︎";
clip-path: none;
}
}
}
&:indeterminate {
&:before {
rotate: 0deg;
opacity: 100%;
translate: 0 -35%;
clip-path: polygon(20% 100%, 20% 80%, 50% 80%, 50% 80%, 80% 80%, 80% 100%);
}
}
&:disabled {
cursor: not-allowed;
opacity: 20%;
}
}
.textarea {
border: var(--border) solid #0000;
min-height: calc(0.25rem * 20);
flex-shrink: 1;
appearance: none;
border-radius: var(--radius-field);
background-color: var(--color-base-100);
padding-block: calc(0.25rem * 2);
vertical-align: middle;
width: clamp(3rem, 20rem, 100%);
padding-inline-start: 0.75rem;
padding-inline-end: 0.75rem;
font-size: 0.875rem;
touch-action: manipulation;
border-color: var(--input-color);
box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
@supports (color: color-mix(in lab, red, red)) {
box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
}
--input-color: var(--color-base-content);
@supports (color: color-mix(in lab, red, red)) {
--input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
}
textarea {
appearance: none;
background-color: transparent;
border: none;
&:focus, &:focus-within {
--tw-outline-style: none;
outline-style: none;
@media (forced-colors: active) {
outline: 2px solid transparent;
outline-offset: 2px;
}
}
}
&:focus, &:focus-within {
--input-color: var(--color-base-content);
box-shadow: 0 1px var(--input-color);
@supports (color: color-mix(in lab, red, red)) {
box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
}
outline: 2px solid var(--input-color);
outline-offset: 2px;
isolation: isolate;
}
&:has(> textarea[disabled]), &:is(:disabled, [disabled]) {
cursor: not-allowed;
border-color: var(--color-base-200);
background-color: var(--color-base-200);
color: var(--color-base-content);
@supports (color: color-mix(in lab, red, red)) {
color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
}
&::placeholder {
color: var(--color-base-content);
@supports (color: color-mix(in lab, red, red)) {
color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
}
}
box-shadow: none;
}
&:has(> textarea[disabled]) > textarea[disabled] {
cursor: not-allowed;
}
}
.label {
display: inline-flex;
align-items: center;
gap: calc(0.25rem * 1.5);
white-space: nowrap;
color: currentColor;
@supports (color: color-mix(in lab, red, red)) {
color: color-mix(in oklab, currentColor 60%, transparent);
}
&:has(input) {
cursor: pointer;
}
&:is(.input > *, .select > *) {
display: flex;
height: calc(100% - 0.5rem);
align-items: center;
padding-inline: calc(0.25rem * 3);
white-space: nowrap;
font-size: inherit;
&:first-child {
margin-inline-start: calc(0.25rem * -3);
margin-inline-end: calc(0.25rem * 3);
border-inline-end: var(--border) solid currentColor;
@supports (color: color-mix(in lab, red, red)) {
border-inline-end: var(--border) solid color-mix(in oklab, currentColor 10%, #0000);
}
}
&:last-child {
margin-inline-start: calc(0.25rem * 3);
margin-inline-end: calc(0.25rem * -3);
border-inline-start: var(--border) solid currentColor;
@supports (color: color-mix(in lab, red, red)) {
border-inline-start: var(--border) solid color-mix(in oklab, currentColor 10%, #0000);
}
}
}
}
.mt-3 {
margin-top: calc(var(--spacing) * 3);
}
.mt-auto {
margin-top: auto;
}
.fieldset-legend {
margin-bottom: calc(0.25rem * -1);
display: flex;
align-items: center;
justify-content: space-between;
gap: calc(0.25rem * 2);
padding-block: calc(0.25rem * 2);
color: var(--color-base-content);
font-weight: 600;
}
.mb-3 {
margin-bottom: calc(var(--spacing) * 3);
}
.mb-5 {
margin-bottom: calc(var(--spacing) * 5);
}
.ml-auto {
margin-left: auto;
}
.fieldset {
display: grid;
gap: calc(0.25rem * 1.5);
padding-block: calc(0.25rem * 1);
font-size: 0.75rem;
grid-template-columns: 1fr;
grid-auto-rows: max-content;
}
.flex {
display: flex;
}
.btn-square {
padding-inline: calc(0.25rem * 0);
width: var(--size);
height: var(--size);
}
.size-\[1\.6em\] {
width: 1.6em;
height: 1.6em;
}
.h-full {
height: 100%;
}
.h-screen {
height: 100vh;
}
.w-56 {
width: calc(var(--spacing) * 56);
}
.w-full {
width: 100%;
}
.max-w-2xl {
max-width: var(--container-2xl);
}
.max-w-3xl {
max-width: var(--container-3xl);
}
.max-w-4xl {
max-width: var(--container-4xl);
}
.max-w-5xl {
max-width: var(--container-5xl);
}
.max-w-7xl {
max-width: var(--container-7xl);
}
.link {
cursor: pointer;
text-decoration-line: underline;
&:focus {
--tw-outline-style: none;
outline-style: none;
@media (forced-colors: active) {
outline: 2px solid transparent;
outline-offset: 2px;
}
}
&:focus-visible {
outline: 2px solid currentColor;
outline-offset: 2px;
}
}
.justify-center {
justify-content: center;
}
.space-y-1 {
:where(& > :not(:last-child)) {
--tw-space-y-reverse: 0;
margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
}
}
.rounded-box {
border-radius: var(--radius-box);
}
.rounded-box {
border-radius: var(--radius-box);
}
.border-r {
border-right-style: var(--tw-border-style);
border-right-width: 1px;
}
.border-base-200 {
border-color: var(--color-base-200);
}
.border-base-300 {
border-color: var(--color-base-300);
}
.border-base-content {
border-color: var(--color-base-content);
}
.bg-base-100 {
background-color: var(--color-base-100);
}
.bg-base-200 {
background-color: var(--color-base-200);
}
.bg-base-300 {
background-color: var(--color-base-300);
}
.p-5 {
padding: calc(var(--spacing) * 5);
}
.p-10 {
padding: calc(var(--spacing) * 10);
}
.px-3 {
padding-inline: calc(var(--spacing) * 3);
}
.px-10 {
padding-inline: calc(var(--spacing) * 10);
}
.py-3 {
padding-block: calc(var(--spacing) * 3);
}
.pt-3 {
padding-top: calc(var(--spacing) * 3);
}
.pt-10 {
padding-top: calc(var(--spacing) * 10);
}
.pb-6 {
padding-bottom: calc(var(--spacing) * 6);
}
.pl-10 {
padding-left: calc(var(--spacing) * 10);
}
.text-xs {
font-size: var(--text-xs);
line-height: var(--tw-leading, var(--text-xs--line-height));
}
.font-bold {
--tw-font-weight: var(--font-weight-bold);
font-weight: var(--font-weight-bold);
}
.btn-ghost {
&:not(.btn-active, :hover, :active:focus, :focus-visible) {
--btn-shadow: "";
--btn-bg: #0000;
--btn-border: #0000;
--btn-noise: none;
&:not(:disabled, [disabled], .btn-disabled) {
outline-color: currentColor;
--btn-fg: currentColor;
}
}
@media (hover: none) {
&:hover:not(.btn-active, :active, :focus-visible, :disabled, [disabled], .btn-disabled) {
--btn-shadow: "";
--btn-bg: #0000;
--btn-border: #0000;
--btn-noise: none;
--btn-fg: currentColor;
}
}
}
.btn-error {
--btn-color: var(--color-error);
--btn-fg: var(--color-error-content);
}
}
h1 {
font-size: var(--text-3xl);
line-height: var(--tw-leading, var(--text-3xl--line-height));
}
h2 {
font-size: var(--text-2xl);
line-height: var(--tw-leading, var(--text-2xl--line-height));
}
h3 {
font-size: var(--text-xl);
line-height: var(--tw-leading, var(--text-xl--line-height));
}
@layer base {
:where(:root),:root:has(input.theme-controller[value=light]:checked),[data-theme=light] {
color-scheme: light;
--color-base-100: oklch(100% 0 0);
--color-base-200: oklch(98% 0 0);
--color-base-300: oklch(95% 0 0);
--color-base-content: oklch(21% 0.006 285.885);
--color-primary: oklch(45% 0.24 277.023);
--color-primary-content: oklch(93% 0.034 272.788);
--color-secondary: oklch(65% 0.241 354.308);
--color-secondary-content: oklch(94% 0.028 342.258);
--color-accent: oklch(77% 0.152 181.912);
--color-accent-content: oklch(38% 0.063 188.416);
--color-neutral: oklch(14% 0.005 285.823);
--color-neutral-content: oklch(92% 0.004 286.32);
--color-info: oklch(74% 0.16 232.661);
--color-info-content: oklch(29% 0.066 243.157);
--color-success: oklch(76% 0.177 163.223);
--color-success-content: oklch(37% 0.077 168.94);
--color-warning: oklch(82% 0.189 84.429);
--color-warning-content: oklch(41% 0.112 45.904);
--color-error: oklch(71% 0.194 13.428);
--color-error-content: oklch(27% 0.105 12.094);
--radius-selector: 0.5rem;
--radius-field: 0.25rem;
--radius-box: 0.5rem;
--size-selector: 0.25rem;
--size-field: 0.25rem;
--border: 1px;
--depth: 1;
--noise: 0;
}
}
@layer base {
@media (prefers-color-scheme: dark) {
:root {
color-scheme: dark;
--color-base-100: oklch(25.33% 0.016 252.42);
--color-base-200: oklch(23.26% 0.014 253.1);
--color-base-300: oklch(21.15% 0.012 254.09);
--color-base-content: oklch(97.807% 0.029 256.847);
--color-primary: oklch(58% 0.233 277.117);
--color-primary-content: oklch(96% 0.018 272.314);
--color-secondary: oklch(65% 0.241 354.308);
--color-secondary-content: oklch(94% 0.028 342.258);
--color-accent: oklch(77% 0.152 181.912);
--color-accent-content: oklch(38% 0.063 188.416);
--color-neutral: oklch(14% 0.005 285.823);
--color-neutral-content: oklch(92% 0.004 286.32);
--color-info: oklch(74% 0.16 232.661);
--color-info-content: oklch(29% 0.066 243.157);
--color-success: oklch(76% 0.177 163.223);
--color-success-content: oklch(37% 0.077 168.94);
--color-warning: oklch(82% 0.189 84.429);
--color-warning-content: oklch(41% 0.112 45.904);
--color-error: oklch(71% 0.194 13.428);
--color-error-content: oklch(27% 0.105 12.094);
--radius-selector: 0.5rem;
--radius-field: 0.25rem;
--radius-box: 0.5rem;
--size-selector: 0.25rem;
--size-field: 0.25rem;
--border: 1px;
--depth: 1;
--noise: 0;
}
}
}
@layer base {
:root:has(input.theme-controller[value=light]:checked),[data-theme=light] {
color-scheme: light;
--color-base-100: oklch(100% 0 0);
--color-base-200: oklch(98% 0 0);
--color-base-300: oklch(95% 0 0);
--color-base-content: oklch(21% 0.006 285.885);
--color-primary: oklch(45% 0.24 277.023);
--color-primary-content: oklch(93% 0.034 272.788);
--color-secondary: oklch(65% 0.241 354.308);
--color-secondary-content: oklch(94% 0.028 342.258);
--color-accent: oklch(77% 0.152 181.912);
--color-accent-content: oklch(38% 0.063 188.416);
--color-neutral: oklch(14% 0.005 285.823);
--color-neutral-content: oklch(92% 0.004 286.32);
--color-info: oklch(74% 0.16 232.661);
--color-info-content: oklch(29% 0.066 243.157);
--color-success: oklch(76% 0.177 163.223);
--color-success-content: oklch(37% 0.077 168.94);
--color-warning: oklch(82% 0.189 84.429);
--color-warning-content: oklch(41% 0.112 45.904);
--color-error: oklch(71% 0.194 13.428);
--color-error-content: oklch(27% 0.105 12.094);
--radius-selector: 0.5rem;
--radius-field: 0.25rem;
--radius-box: 0.5rem;
--size-selector: 0.25rem;
--size-field: 0.25rem;
--border: 1px;
--depth: 1;
--noise: 0;
}
}
@layer base {
:root:has(input.theme-controller[value=dark]:checked),[data-theme=dark] {
color-scheme: dark;
--color-base-100: oklch(25.33% 0.016 252.42);
--color-base-200: oklch(23.26% 0.014 253.1);
--color-base-300: oklch(21.15% 0.012 254.09);
--color-base-content: oklch(97.807% 0.029 256.847);
--color-primary: oklch(58% 0.233 277.117);
--color-primary-content: oklch(96% 0.018 272.314);
--color-secondary: oklch(65% 0.241 354.308);
--color-secondary-content: oklch(94% 0.028 342.258);
--color-accent: oklch(77% 0.152 181.912);
--color-accent-content: oklch(38% 0.063 188.416);
--color-neutral: oklch(14% 0.005 285.823);
--color-neutral-content: oklch(92% 0.004 286.32);
--color-info: oklch(74% 0.16 232.661);
--color-info-content: oklch(29% 0.066 243.157);
--color-success: oklch(76% 0.177 163.223);
--color-success-content: oklch(37% 0.077 168.94);
--color-warning: oklch(82% 0.189 84.429);
--color-warning-content: oklch(41% 0.112 45.904);
--color-error: oklch(71% 0.194 13.428);
--color-error-content: oklch(27% 0.105 12.094);
--radius-selector: 0.5rem;
--radius-field: 0.25rem;
--radius-box: 0.5rem;
--size-selector: 0.25rem;
--size-field: 0.25rem;
--border: 1px;
--depth: 1;
--noise: 0;
}
}
@layer base {
:root {
--fx-noise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E");
}
}
@layer base {
:root, [data-theme] {
background-color: var(--root-bg, var(--color-base-100));
color: var(--color-base-content);
}
}
@layer base {
:root:has( .modal-open, .modal[open], .modal:target, .modal-toggle:checked, .drawer:not([class*="drawer-open"]) > .drawer-toggle:checked ) {
overflow: hidden;
}
}
@layer base {
@property --radialprogress {
syntax: "<percentage>";
inherits: true;
initial-value: 0%;
}
}
@layer base {
:where( :root:has( .modal-open, .modal[open], .modal:target, .modal-toggle:checked, .drawer:not(.drawer-open) > .drawer-toggle:checked ) ) {
scrollbar-gutter: stable;
background-image: linear-gradient(var(--color-base-100), var(--color-base-100));
--root-bg: var(--color-base-100);
@supports (color: color-mix(in lab, red, red)) {
--root-bg: color-mix(in srgb, var(--color-base-100), oklch(0% 0 0) 40%);
}
}
:where(.modal[open], .modal-open, .modal-toggle:checked + .modal):not(.modal-start, .modal-end) {
scrollbar-gutter: stable;
}
}
@layer base {
:root {
scrollbar-color: currentColor #0000;
@supports (color: color-mix(in lab, red, red)) {
scrollbar-color: color-mix(in oklch, currentColor 35%, #0000) #0000;
}
}
}
@keyframes progress {
50% {
background-position-x: -115%;
}
}
@keyframes rating {
0%, 40% {
scale: 1.1;
filter: brightness(1.05) contrast(1.05);
}
}
@keyframes skeleton {
0% {
background-position: 150%;
}
100% {
background-position: -50%;
}
}
@keyframes dropdown {
0% {
opacity: 0;
}
}
@keyframes radio {
0% {
padding: 5px;
}
50% {
padding: 3px;
}
}
@keyframes toast {
0% {
scale: 0.9;
opacity: 0;
}
100% {
scale: 1;
opacity: 1;
}
}
@layer base {
:where(:root),:root:has(input.theme-controller[value=night]:checked),[data-theme="night"] {
color-scheme: dark;
--color-base-100: oklch(20.768% 0.039 265.754);
--color-base-200: oklch(19.314% 0.037 265.754);
--color-base-300: oklch(17.86% 0.034 265.754);
--color-base-content: oklch(84.153% 0.007 265.754);
--color-primary: oklch(75.351% 0.138 232.661);
--color-primary-content: oklch(15.07% 0.027 232.661);
--color-secondary: oklch(68.011% 0.158 276.934);
--color-secondary-content: oklch(13.602% 0.031 276.934);
--color-accent: oklch(72.36% 0.176 350.048);
--color-accent-content: oklch(14.472% 0.035 350.048);
--color-neutral: oklch(27.949% 0.036 260.03);
--color-neutral-content: oklch(85.589% 0.007 260.03);
--color-info: oklch(68.455% 0.148 237.251);
--color-info-content: oklch(0% 0 0);
--color-success: oklch(78.452% 0.132 181.911);
--color-success-content: oklch(15.69% 0.026 181.911);
--color-warning: oklch(83.242% 0.139 82.95);
--color-warning-content: oklch(16.648% 0.027 82.95);
--color-error: oklch(71.785% 0.17 13.118);
--color-error-content: oklch(14.357% 0.034 13.118);
--radius-selector: 1rem;
--radius-field: 0.5rem;
--radius-box: 1rem;
--size-selector: 0.25rem;
--size-field: 0.25rem;
--border: 1px;
--depth: 0;
--noise: 0;
}
}
@property --tw-space-y-reverse {
syntax: "*";
inherits: false;
initial-value: 0;
}
@property --tw-border-style {
syntax: "*";
inherits: false;
initial-value: solid;
}
@property --tw-font-weight {
syntax: "*";
inherits: false;
}
@layer properties {
@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
*, ::before, ::after, ::backdrop {
--tw-space-y-reverse: 0;
--tw-border-style: solid;
--tw-font-weight: initial;
}
}
}