/*! tailwindcss v4.2.1 | 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; --color-black: #000; --spacing: 0.25rem; --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; } ::-webkit-calendar-picker-indicator { line-height: 1; } :-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 { .modal { @layer daisyui.l1.l2.l3 { pointer-events: none; visibility: hidden; position: fixed; inset: calc(0.25rem * 0); margin: calc(0.25rem * 0); display: grid; height: 100%; max-height: none; width: 100%; max-width: none; align-items: center; justify-items: center; background-color: transparent; padding: calc(0.25rem * 0); color: inherit; transition: visibility 0.3s allow-discrete, background-color 0.3s ease-out, opacity 0.1s ease-out; overflow: clip; overscroll-behavior: contain; z-index: 999; scrollbar-gutter: auto; &::backdrop { display: none; } } @layer daisyui.l1.l2 { &.modal-open, &[open], &:target, .modal-toggle:checked + & { pointer-events: auto; visibility: visible; opacity: 100%; transition: visibility 0s allow-discrete, background-color 0.3s ease-out, opacity 0.1s ease-out; background-color: oklch(0% 0 0/ 0.4); .modal-box { translate: 0 0; scale: 1; opacity: 1; } :root:has(&) { --page-has-backdrop: 1; --page-overflow: hidden; --page-scroll-bg: var(--page-scroll-bg-on); --page-scroll-gutter: stable; --page-scroll-transition: var(--page-scroll-transition-on); animation: set-page-has-scroll forwards; animation-timeline: scroll(); } } @starting-style { &.modal-open, &[open], &:target, .modal-toggle:checked + & { opacity: 0%; } } } } .tab { @layer daisyui.l1.l2.l3 { position: relative; display: inline-flex; cursor: pointer; appearance: none; flex-wrap: wrap; align-items: center; justify-content: center; text-align: center; webkit-user-select: none; user-select: none; &:hover { @media (hover: hover) { color: var(--color-base-content); } } --tab-p: 0.75rem; --tab-bg: var(--color-base-100); --tab-border-color: var(--color-base-300); --tab-radius-ss: 0; --tab-radius-se: 0; --tab-radius-es: 0; --tab-radius-ee: 0; --tab-order: 0; --tab-radius-min: calc(0.75rem - var(--border)); --tab-radius-limit: min(var(--radius-field), var(--tab-radius-min)); --tab-radius-grad: #0000 calc(69% - var(--border)), var(--tab-border-color) calc(69% - var(--border) + 0.25px), var(--tab-border-color) 69%, var(--tab-bg) calc(69% + 0.25px); border-color: #0000; order: var(--tab-order); height: var(--tab-height); font-size: 0.875rem; padding-inline: var(--tab-p); &:is(input[type="radio"]) { min-width: fit-content; &:after { --tw-content: attr(aria-label); content: var(--tw-content); } } &:is(label) { position: relative; input { position: absolute; inset: calc(0.25rem * 0); cursor: pointer; appearance: none; opacity: 0%; } } &:checked, &:is(label:has(:checked)), &:is(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]) { & + .tab-content { display: block; } } &:not( :checked, label:has(:checked), :hover, .tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"] ) { color: var(--color-base-content); @supports (color: color-mix(in lab, red, red)) { color: color-mix(in oklab, var(--color-base-content) 50%, transparent); } } &:not(input):empty { flex-grow: 1; cursor: default; } &:focus { --tw-outline-style: none; outline-style: none; @media (forced-colors: active) { outline: 2px solid transparent; outline-offset: 2px; } } &:focus-visible, &:is(label:has(:checked:focus-visible)) { outline: 2px solid currentColor; outline-offset: -5px; } &[disabled] { pointer-events: none; opacity: 40%; } } } .dropdown { @layer daisyui.l1.l2.l3 { position: relative; display: inline-block; position-area: var(--anchor-v, bottom) var(--anchor-h, span-right); & > *:not(:has(~ [class*="dropdown-content"])):focus { --tw-outline-style: none; outline-style: none; @media (forced-colors: active) { outline: 2px solid transparent; outline-offset: 2px; } } .dropdown-content { position: absolute; } &.dropdown-close .dropdown-content, &:not(details, .dropdown-open, .dropdown-hover:hover, :focus-within) .dropdown-content, &.dropdown-hover:not(:hover) [tabindex]:first-child:focus:not(:focus-visible) ~ .dropdown-content { display: none; transform-origin: top; opacity: 0%; scale: 95%; } &[popover], .dropdown-content { z-index: 999; @media (prefers-reduced-motion: no-preference) { animation: dropdown 0.2s; transition-property: opacity, scale, display; transition-behavior: allow-discrete; transition-duration: 0.2s; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); } } @starting-style { &[popover], .dropdown-content { scale: 95%; opacity: 0; } } &:not(.dropdown-close) { &.dropdown-open, &:not(.dropdown-hover):focus, &:focus-within { > [tabindex]:first-child { pointer-events: none; } .dropdown-content { opacity: 100%; scale: 100%; } } &.dropdown-hover:hover { .dropdown-content { opacity: 100%; scale: 100%; } } } &:is(details) { summary { &::-webkit-details-marker { display: none; } } } &:where([popover]) { background: #0000; } &[popover] { position: fixed; color: inherit; @supports not (position-area: bottom) { margin: auto; &.dropdown-close, &.dropdown-open:not(:popover-open) { display: none; transform-origin: top; opacity: 0%; scale: 95%; } &::backdrop { background-color: color-mix(in oklab, #000 30%, #0000); } } &.dropdown-close, &:not(.dropdown-open, :popover-open) { display: none; transform-origin: top; opacity: 0%; scale: 95%; } } } } .btn { :where(&) { @layer daisyui.l1.l2.l3 { width: unset; } } .prose :where(a&:not(.btn-link)):not(:where([class~="not-prose"], [class~="not-prose"] *)) { text-decoration-line: none; } @layer daisyui.l1.l2.l3 { 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); @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, &:has(: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(input[type="checkbox"], input[type="radio"]) { appearance: none; &[aria-label]::after { --tw-content: attr(aria-label); content: var(--tw-content); } } &:where(input:checked:not(.filter .btn)) { --btn-color: var(--color-primary); --btn-fg: var(--color-primary-content); isolation: isolate; } } &:disabled { @layer daisyui.l1.l2 { &: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); } } } &[disabled] { @layer daisyui.l1.l2 { &: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); } } } } .loading { @layer daisyui.l1.l2.l3 { pointer-events: none; display: inline-block; aspect-ratio: 1 / 1; background-color: currentcolor; vertical-align: middle; width: calc(var(--size-selector, 0.25rem) * 6); mask-size: 100%; mask-repeat: no-repeat; mask-position: center; mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E"); } } .visible { visibility: visible; } .list { @layer daisyui.l1.l2.l3 { display: flex; flex-direction: column; font-size: 0.875rem; .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); } & > :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); } } } } } @layer daisyui.l1.l2 { .list-row { &: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; } > * { grid-row-start: 1; } } } } .toggle { @layer daisyui.l1.l2.l3 { border: var(--border) solid currentColor; color: var(--input-color); position: relative; display: inline-grid; flex-shrink: 0; cursor: pointer; appearance: none; place-content: center; vertical-align: middle; webkit-user-select: none; user-select: none; grid-template-columns: 0fr 1fr 1fr; --radius-selector-max: calc( var(--radius-selector) + var(--radius-selector) + var(--radius-selector) ); border-radius: calc( var(--radius-selector) + min(var(--toggle-p), var(--radius-selector-max)) + min(var(--border), var(--radius-selector-max)) ); padding: var(--toggle-p); box-shadow: 0 1px currentColor inset; @supports (color: color-mix(in lab, red, red)) { box-shadow: 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000) inset; } transition: color 0.3s, grid-template-columns 0.2s; --input-color: var(--color-base-content); @supports (color: color-mix(in lab, red, red)) { --input-color: color-mix(in oklab, var(--color-base-content) 50%, #0000); } --toggle-p: calc(var(--size) * 0.125); --size: calc(var(--size-selector, 0.25rem) * 6); width: calc((var(--size) * 2) - (var(--border) + var(--toggle-p)) * 2); height: var(--size); > * { z-index: 1; grid-column: span 1 / span 1; grid-column-start: 2; grid-row-start: 1; height: 100%; cursor: pointer; appearance: none; background-color: transparent; padding: calc(0.25rem * 0.5); transition: opacity 0.2s, rotate 0.4s; border: none; &:focus { --tw-outline-style: none; outline-style: none; @media (forced-colors: active) { outline: 2px solid transparent; outline-offset: 2px; } } &:nth-child(2) { color: var(--color-base-100); rotate: 0deg; } &:nth-child(3) { color: var(--color-base-100); opacity: 0%; rotate: -15deg; } } &:has(:checked) { > :nth-child(2) { opacity: 0%; rotate: 15deg; } > :nth-child(3) { opacity: 100%; rotate: 0deg; } } &:before { position: relative; inset-inline-start: calc(0.25rem * 0); grid-column-start: 2; grid-row-start: 1; aspect-ratio: 1 / 1; height: 100%; width: 100%; border-radius: var(--radius-selector); background-color: currentcolor; translate: 0; --tw-content: ""; content: var(--tw-content); transition: background-color 0.1s, translate 0.2s, inset-inline-start 0.2s; box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px currentColor; @supports (color: color-mix(in lab, red, red)) { box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000); } background-size: auto, calc(var(--noise) * 100%); background-image: none, var(--fx-noise); } @media (forced-colors: active) { &:before { outline-style: var(--tw-outline-style); outline-width: 1px; outline-offset: calc(1px * -1); } } @media print { &:before { outline: 0.25rem solid; outline-offset: -1rem; } } &:focus-visible, &:has(:focus-visible) { outline: 2px solid currentColor; outline-offset: 2px; } &:checked, &[aria-checked="true"], &:has(> input:checked) { grid-template-columns: 1fr 1fr 0fr; background-color: var(--color-base-100); --input-color: var(--color-base-content); &:before { background-color: currentcolor; } @starting-style { &:before { opacity: 0; } } } &:indeterminate { grid-template-columns: 0.5fr 1fr 0.5fr; } &:disabled { cursor: not-allowed; opacity: 30%; &:before { background-color: transparent; border: var(--border) solid currentColor; } } } } .input { @layer daisyui.l1.l2.l3 { 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: max(var(--font-size, 0.875rem), 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-flex; } &: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; } @media (pointer: coarse) { @supports (-webkit-touch-callout: none) { &:focus, &:focus-within { --font-size: 1rem; } } } &:has(> input[disabled]), &:is(:disabled, [disabled]), fieldset: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; } &:has(> input[type="date"]) { :where(input[type="date"]) { display: inline-flex; webkit-appearance: none; appearance: none; } input[type="date"]::-webkit-calendar-picker-indicator { position: absolute; inset-inline-end: 0.75em; width: 1em; height: 1em; cursor: pointer; } } } } .indicator { @layer daisyui.l1.l2.l3 { position: relative; display: inline-flex; width: max-content; :where(.indicator-item) { z-index: 1; position: absolute; white-space: nowrap; top: var(--indicator-t, 0); bottom: var(--indicator-b, auto); left: var(--indicator-s, auto); right: var(--indicator-e, 0); translate: var(--indicator-x, 50%) var(--indicator-y, -50%); } } } .table { @layer daisyui.l1.l2.l3 { font-size: 0.875rem; position: relative; width: 100%; border-collapse: separate; --tw-border-spacing-x: calc(0.25rem * 0); --tw-border-spacing-y: calc(0.25rem * 0); border-spacing: var(--tw-border-spacing-x) var(--tw-border-spacing-y); border-radius: var(--radius-box); text-align: left; &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) { text-align: right; } tr.row-hover { &, &:nth-child(even) { &:hover { @media (hover: hover) { background-color: var(--color-base-200); } } } } :where(th, td) { padding-inline: calc(0.25rem * 4); padding-block: calc(0.25rem * 3); vertical-align: middle; } :where(thead, tfoot) { white-space: nowrap; color: var(--color-base-content); @supports (color: color-mix(in lab, red, red)) { color: color-mix(in oklab, var(--color-base-content) 60%, transparent); } font-size: 0.875rem; font-weight: 600; } :where(tfoot tr:first-child :is(td, th)) { border-top: var(--border) solid var(--color-base-content); @supports (color: color-mix(in lab, red, red)) { border-top: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000); } } :where(.table-pin-rows thead tr) { position: sticky; top: calc(0.25rem * 0); z-index: 1; background-color: var(--color-base-100); } :where(.table-pin-rows tfoot tr) { position: sticky; bottom: calc(0.25rem * 0); z-index: 1; background-color: var(--color-base-100); } :where(.table-pin-cols tr th) { position: sticky; right: calc(0.25rem * 0); left: calc(0.25rem * 0); background-color: var(--color-base-100); } :where(thead tr :is(td, th), tbody tr:not(:last-child) :is(td, th)) { border-bottom: var(--border) solid var(--color-base-content); @supports (color: color-mix(in lab, red, red)) { border-bottom: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000); } } } } .steps { @layer daisyui.l1.l2.l3 { display: inline-grid; grid-auto-flow: column; overflow: hidden; overflow-x: auto; counter-reset: step; grid-auto-columns: 1fr; .step { display: grid; grid-template-columns: repeat(1, minmax(0, 1fr)); grid-template-columns: auto; grid-template-rows: repeat(2, minmax(0, 1fr)); grid-template-rows: 40px 1fr; place-items: center; text-align: center; min-width: 4rem; --step-bg: var(--color-base-300); --step-fg: var(--color-base-content); &:before { top: calc(0.25rem * 0); grid-column-start: 1; grid-row-start: 1; height: calc(0.25rem * 2); width: 100%; border: 1px solid; color: var(--step-bg); background-color: var(--step-bg); content: ""; margin-inline-start: -100%; } > .step-icon, &:not(:has(.step-icon)):after { --tw-content: counter(step); content: var(--tw-content); counter-increment: step; z-index: 1; color: var(--step-fg); background-color: var(--step-bg); border: 1px solid var(--step-bg); position: relative; grid-column-start: 1; grid-row-start: 1; display: grid; height: calc(0.25rem * 8); width: calc(0.25rem * 8); place-items: center; place-self: center; border-radius: calc(infinity * 1px); } &:first-child:before { --tw-content: none; content: var(--tw-content); } &[data-content]:after { --tw-content: attr(data-content); content: var(--tw-content); } } } @layer daisyui.l1.l2 { .step-neutral { + .step-neutral:before, &:after, > .step-icon { --step-bg: var(--color-neutral); --step-fg: var(--color-neutral-content); } } .step-primary { + .step-primary:before, &:after, > .step-icon { --step-bg: var(--color-primary); --step-fg: var(--color-primary-content); } } .step-secondary { + .step-secondary:before, &:after, > .step-icon { --step-bg: var(--color-secondary); --step-fg: var(--color-secondary-content); } } .step-accent { + .step-accent:before, &:after, > .step-icon { --step-bg: var(--color-accent); --step-fg: var(--color-accent-content); } } .step-info { + .step-info:before, &:after, > .step-icon { --step-bg: var(--color-info); --step-fg: var(--color-info-content); } } .step-success { + .step-success:before, &:after, > .step-icon { --step-bg: var(--color-success); --step-fg: var(--color-success-content); } } .step-warning { + .step-warning:before, &:after, > .step-icon { --step-bg: var(--color-warning); --step-fg: var(--color-warning-content); } } .step-error { + .step-error:before, &:after, > .step-icon { --step-bg: var(--color-error); --step-fg: var(--color-error-content); } } } } .range { @layer daisyui.l1.l2.l3 { appearance: none; webkit-appearance: none; --range-thumb: var(--color-base-100); --range-thumb-size: calc(var(--size-selector, 0.25rem) * 6); --range-progress: currentColor; --range-fill: 1; --range-p: 0.25rem; --range-bg: currentColor; @supports (color: color-mix(in lab, red, red)) { --range-bg: color-mix(in oklab, currentColor 10%, #0000); } cursor: pointer; overflow: hidden; background-color: transparent; vertical-align: middle; width: clamp(3rem, 20rem, 100%); --radius-selector-max: calc( var(--radius-selector) + var(--radius-selector) + var(--radius-selector) ); border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max))); border: none; height: var(--range-thumb-size); [dir="rtl"] & { --range-dir: -1; } &:focus { outline: none; } &:focus-visible { outline: 2px solid; outline-offset: 2px; } &::-webkit-slider-runnable-track { width: 100%; background-color: var(--range-bg); border-radius: var(--radius-selector); height: calc(var(--range-thumb-size) * 0.5); } @media (forced-colors: active) { &::-webkit-slider-runnable-track { border: 1px solid; } } @media (forced-colors: active) { &::-moz-range-track { border: 1px solid; } } &::-webkit-slider-thumb { position: relative; box-sizing: border-box; border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max))); background-color: var(--range-thumb); height: var(--range-thumb-size); width: var(--range-thumb-size); border: var(--range-p) solid; appearance: none; webkit-appearance: none; top: 50%; color: var(--range-progress); transform: translateY(-50%); box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100cqw) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill)); @supports (color: color-mix(in lab, red, red)) { box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100cqw) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill)); } } &::-moz-range-track { width: 100%; background-color: var(--range-bg); border-radius: var(--radius-selector); height: calc(var(--range-thumb-size) * 0.5); } &::-moz-range-thumb { position: relative; box-sizing: border-box; border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max))); background-color: currentColor; height: var(--range-thumb-size); width: var(--range-thumb-size); border: var(--range-p) solid; top: 50%; color: var(--range-progress); box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100cqw) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill)); @supports (color: color-mix(in lab, red, red)) { box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100cqw) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100cqw * var(--range-fill)); } } &:disabled { cursor: not-allowed; opacity: 30%; } } } .select { @layer daisyui.l1.l2.l3 { border: var(--border) solid #0000; position: relative; display: inline-flex; flex-shrink: 1; appearance: none; align-items: center; gap: calc(0.25rem * 1.5); background-color: var(--color-base-100); padding-inline-start: calc(0.25rem * 3); padding-inline-end: calc(0.25rem * 7); vertical-align: middle; 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)); background-image: linear-gradient(45deg, #0000 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, #0000 50%); background-position: calc(100% - 20px) calc(1px + 50%), calc(100% - 16.1px) calc(1px + 50%); background-size: 4px 4px, 4px 4px; background-repeat: no-repeat; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; 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; } border-color: var(--input-color); --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); } --size: calc(var(--size-field, 0.25rem) * 10); [dir="rtl"] & { background-position: calc(0% + 12px) calc(1px + 50%), calc(0% + 16px) calc(1px + 50%); &::picker(select), select::picker(select) { translate: 0.5rem 0; } } &[multiple] { height: auto; overflow: auto; padding-block: calc(0.25rem * 3); padding-inline-end: calc(0.25rem * 3); background-image: none; } select { margin-inline-start: calc(0.25rem * -3); margin-inline-end: calc(0.25rem * -7); width: calc(100% + 2.75rem); appearance: none; padding-inline-start: calc(0.25rem * 3); padding-inline-end: calc(0.25rem * 7); height: calc(100% - calc(var(--border) * 2)); align-items: center; background: inherit; border-radius: inherit; border-style: none; &:focus, &:focus-within { --tw-outline-style: none; outline-style: none; @media (forced-colors: active) { outline: 2px solid transparent; outline-offset: 2px; } } &:not(:last-child) { margin-inline-end: calc(0.25rem * -5.5); background-image: none; } } &: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(> select[disabled]), &:is(:disabled, [disabled]), fieldset: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); } } } &:has(> select[disabled]) > select[disabled] { cursor: not-allowed; } &, & select { @supports (appearance: base-select) { appearance: base-select; } @supports (appearance: base-select) { &::picker(select) { appearance: base-select; } } &::picker(select) { color: inherit; max-height: min(24rem, 70dvh); margin-inline: 0.5rem; translate: -0.5rem 0; border: var(--border) solid var(--color-base-200); margin-block: calc(0.25rem * 2); border-radius: var(--radius-box); padding: calc(0.25rem * 2); background-color: inherit; box-shadow: 0 2px calc(var(--depth) * 3px) -2px oklch(0% 0 0/0.2); box-shadow: 0 20px 25px -5px rgb(0 0 0 / calc(var(--depth) * 0.1)), 0 8px 10px -6px rgb(0 0 0 / calc(var(--depth) * 0.1)); } &::picker-icon { display: none; } optgroup { padding-top: 0.5em; option { &:nth-child(1) { margin-top: 0.5em; } } } option { border-radius: var(--radius-field); padding-inline: calc(0.25rem * 3); padding-block: calc(0.25rem * 1.5); transition-property: color, background-color; transition-duration: 0.2s; transition-timing-function: cubic-bezier(0, 0, 0.2, 1); white-space: normal; &:not(:disabled) { &:hover, &: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); } --tw-outline-style: none; outline-style: none; @media (forced-colors: active) { outline: 2px solid transparent; outline-offset: 2px; } } &:active { background-color: var(--color-neutral); color: var(--color-neutral-content); box-shadow: 0 2px calc(var(--depth) * 3px) -2px var(--color-neutral); } } } } } } .avatar { @layer daisyui.l1.l2.l3 { position: relative; display: inline-flex; vertical-align: middle; & > div { display: block; aspect-ratio: 1 / 1; overflow: hidden; } img { height: 100%; width: 100%; object-fit: cover; } } } .card { @layer daisyui.l1.l2.l3 { position: relative; display: flex; flex-direction: column; border-radius: var(--radius-box); outline-width: 2px; transition: outline 0.2s ease-in-out; outline: 0 solid #0000; outline-offset: 2px; &:focus { --tw-outline-style: none; outline-style: none; @media (forced-colors: active) { outline: 2px solid transparent; outline-offset: 2px; } } &:focus-visible { outline-color: currentColor; } :where(figure:first-child) { overflow: hidden; border-start-start-radius: inherit; border-start-end-radius: inherit; border-end-start-radius: unset; border-end-end-radius: unset; } :where(figure:last-child) { overflow: hidden; border-start-start-radius: unset; border-start-end-radius: unset; border-end-start-radius: inherit; border-end-end-radius: inherit; } figure { display: flex; align-items: center; justify-content: center; } &:has(> input:is(input[type="checkbox"], input[type="radio"])) { cursor: pointer; user-select: none; } &:has(> :checked) { outline: 2px solid currentColor; } } } .stats { @layer daisyui.l1.l2.l3 { position: relative; display: inline-grid; grid-auto-flow: column; overflow-x: auto; border-radius: var(--radius-box); } } .progress { @layer daisyui.l1.l2.l3 { position: relative; height: calc(0.25rem * 2); width: 100%; appearance: none; overflow: hidden; border-radius: var(--radius-box); background-color: currentcolor; @supports (color: color-mix(in lab, red, red)) { background-color: color-mix(in oklab, currentcolor 20%, transparent); } color: var(--color-base-content); &:indeterminate { background-image: repeating-linear-gradient( 90deg, currentColor -1%, currentColor 10%, #0000 10%, #0000 90% ); background-size: 200%; background-position-x: 15%; @media (prefers-reduced-motion: no-preference) { animation: progress 5s ease-in-out infinite; } @supports (-moz-appearance: none) { &::-moz-progress-bar { background-color: transparent; @media (prefers-reduced-motion: no-preference) { animation: progress 5s ease-in-out infinite; background-image: repeating-linear-gradient( 90deg, currentColor -1%, currentColor 10%, #0000 10%, #0000 90% ); background-size: 200%; background-position-x: 15%; } } } } @supports (-moz-appearance: none) { &::-moz-progress-bar { border-radius: var(--radius-box); background-color: currentcolor; } } @supports (-webkit-appearance: none) { &::-webkit-progress-bar { border-radius: var(--radius-box); background-color: transparent; } &::-webkit-progress-value { border-radius: var(--radius-box); background-color: currentColor; } } } } .relative { position: relative; } .static { position: static; } .start { inset-inline-start: var(--spacing); } .end { inset-inline-end: var(--spacing); } .join { display: inline-flex; align-items: stretch; --join-ss: 0; --join-se: 0; --join-es: 0; --join-ee: 0; :where(.join-item) { border-start-start-radius: var(--join-ss, 0); border-start-end-radius: var(--join-se, 0); border-end-start-radius: var(--join-es, 0); border-end-end-radius: var(--join-ee, 0); * { --join-ss: var(--radius-field); --join-se: var(--radius-field); --join-es: var(--radius-field); --join-ee: var(--radius-field); } } > .join-item:where(:first-child) { --join-ss: var(--radius-field); --join-se: 0; --join-es: var(--radius-field); --join-ee: 0; } :first-child:not(:last-child) { :where(.join-item) { --join-ss: var(--radius-field); --join-se: 0; --join-es: var(--radius-field); --join-ee: 0; } } > .join-item:where(:last-child) { --join-ss: 0; --join-se: var(--radius-field); --join-es: 0; --join-ee: var(--radius-field); } :last-child:not(:first-child) { :where(.join-item) { --join-ss: 0; --join-se: var(--radius-field); --join-es: 0; --join-ee: var(--radius-field); } } > .join-item:where(:only-child) { --join-ss: var(--radius-field); --join-se: var(--radius-field); --join-es: var(--radius-field); --join-ee: var(--radius-field); } :only-child { :where(.join-item) { --join-ss: var(--radius-field); --join-se: var(--radius-field); --join-es: var(--radius-field); --join-ee: var(--radius-field); } } > :where(:focus, :has(:focus)) { z-index: 1; } @media (hover: hover) { > :where(.btn:hover, :has(.btn:hover)) { isolation: isolate; } } } .hero-content { @layer daisyui.l1.l2.l3 { isolation: isolate; display: flex; max-width: 80rem; align-items: center; justify-content: center; gap: calc(0.25rem * 4); padding: calc(0.25rem * 4); } } .stack { @layer daisyui.l1.l2.l3 { display: inline-grid; grid-template-columns: 3px 4px 1fr 4px 3px; grid-template-rows: 3px 4px 1fr 4px 3px; & > * { height: 100%; width: 100%; &:nth-child(n + 2) { width: 100%; opacity: 70%; } &:nth-child(2) { z-index: 2; opacity: 90%; } &:nth-child(1) { z-index: 3; width: 100%; } } } @layer daisyui.l1.l2 { &, &.stack-bottom { > * { grid-column: 3 / 4; grid-row: 3 / 6; &:nth-child(2) { grid-column: 2 / 5; grid-row: 2 / 5; } &:nth-child(1) { grid-column: 1 / 6; grid-row: 1 / 4; } } } &.stack-top { > * { grid-column: 3 / 4; grid-row: 1 / 4; &:nth-child(2) { grid-column: 2 / 5; grid-row: 2 / 5; } &:nth-child(1) { grid-column: 1 / 6; grid-row: 3 / 6; } } } &.stack-start { > * { grid-column: 1 / 4; grid-row: 3 / 4; &:nth-child(2) { grid-column: 2 / 5; grid-row: 2 / 5; } &:nth-child(1) { grid-column: 3 / 6; grid-row: 1 / 6; } } } &.stack-end { > * { grid-column: 3 / 6; grid-row: 3 / 4; &:nth-child(2) { grid-column: 2 / 5; grid-row: 2 / 5; } &:nth-child(1) { grid-column: 1 / 4; grid-row: 1 / 6; } } } } } .hero { @layer daisyui.l1.l2.l3 { display: grid; width: 100%; place-items: center; background-size: cover; background-position: center; & > * { grid-column-start: 1; grid-row-start: 1; } } } .container { width: 100%; @media (width >= 40rem) { max-width: 40rem; } @media (width >= 48rem) { max-width: 48rem; } @media (width >= 64rem) { max-width: 64rem; } @media (width >= 80rem) { max-width: 80rem; } @media (width >= 96rem) { max-width: 96rem; } } .filter { @layer daisyui.l1.l2.l3 { display: flex; flex-wrap: wrap; input[type="radio"] { width: auto; } input { overflow: hidden; opacity: 100%; scale: 1; transition: margin 0.1s, opacity 0.3s, padding 0.3s, border-width 0.1s; &:not(:last-child) { margin-inline-end: calc(0.25rem * 1); } &.filter-reset { aspect-ratio: 1 / 1; &::after { --tw-content: "×"; content: var(--tw-content); } } } &:not(:has(input:checked:not(.filter-reset))) { .filter-reset, input[type="reset"] { scale: 0; border-width: 0; margin-inline: calc(0.25rem * 0); width: calc(0.25rem * 0); padding-inline: calc(0.25rem * 0); opacity: 0%; } } &:has(input:checked:not(.filter-reset)) { input:not(:checked, .filter-reset, input[type="reset"]) { scale: 0; border-width: 0; margin-inline: calc(0.25rem * 0); width: calc(0.25rem * 0); padding-inline: calc(0.25rem * 0); opacity: 0%; } } } } .label { @layer daisyui.l1.l2.l3 { 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); } } } } } .status { @layer daisyui.l1.l2.l3 { display: inline-block; aspect-ratio: 1 / 1; width: calc(0.25rem * 2); height: calc(0.25rem * 2); border-radius: var(--radius-selector); background-color: var(--color-base-content); @supports (color: color-mix(in lab, red, red)) { background-color: color-mix(in oklab, var(--color-base-content) 20%, transparent); } background-position: center; background-repeat: no-repeat; vertical-align: middle; color: color-mix(in srgb, #000 30%, transparent); @supports (color: color-mix(in lab, red, red)) { color: color-mix(in oklab, var(--color-black) 30%, transparent); } background-image: radial-gradient( circle at 35% 30%, oklch(1 0 0 / calc(var(--depth) * 0.5)), #0000 ); box-shadow: 0 2px 3px -1px currentColor; @supports (color: color-mix(in lab, red, red)) { box-shadow: 0 2px 3px -1px color-mix(in oklab, currentColor calc(var(--depth) * 100%), #0000); } } } .badge { @layer daisyui.l1.l2.l3 { display: inline-flex; align-items: center; justify-content: center; gap: calc(0.25rem * 2); border-radius: var(--radius-selector); vertical-align: middle; color: var(--badge-fg); border: var(--border) solid var(--badge-color, var(--color-base-200)); font-size: 0.875rem; width: fit-content; background-size: auto, calc(var(--noise) * 100%); background-image: none, var(--fx-noise); background-color: var(--badge-bg); --badge-bg: var(--badge-color, var(--color-base-100)); --badge-fg: var(--color-base-content); --size: calc(var(--size-selector, 0.25rem) * 6); height: var(--size); padding-inline: calc(var(--size) / 2 - var(--border)); } } .tabs { @layer daisyui.l1.l2.l3 { display: flex; flex-wrap: wrap; --tabs-height: auto; --tabs-direction: row; --tab-height: calc(var(--size-field, 0.25rem) * 10); height: var(--tabs-height); flex-direction: var(--tabs-direction); } } .footer { @layer daisyui.l1.l2.l3 { display: grid; width: 100%; grid-auto-flow: row; place-items: start; column-gap: calc(0.25rem * 4); row-gap: calc(0.25rem * 10); font-size: 0.875rem; line-height: 1.25rem; & > * { display: grid; place-items: start; gap: calc(0.25rem * 2); } &.footer-center { grid-auto-flow: column dense; place-items: center; text-align: center; & > * { place-items: center; } } } } .chat { @layer daisyui.l1.l2.l3 { display: grid; grid-auto-rows: min-content; column-gap: calc(0.25rem * 3); padding-block: calc(0.25rem * 1); --mask-chat: url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e"); } } .card-title { @layer daisyui.l1.l2.l3 { display: flex; align-items: center; gap: calc(0.25rem * 2); font-size: var(--cardtitle-fs, 1.125rem); font-weight: 600; } } .grid { display: grid; } .hidden { display: none; } .inline { display: inline; } .table { display: table; } .transform { transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,); } .link { @layer daisyui.l1.l2.l3 { 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; } } } .badge-outline { @layer daisyui.l1.l2 { color: var(--badge-color); --badge-bg: #0000; background-image: none; border-color: currentColor; } } .glass { border: none; backdrop-filter: blur(var(--glass-blur, 40px)); background-color: #0000; background-image: linear-gradient( 135deg, oklch(100% 0 0 / var(--glass-opacity, 30%)) 0%, oklch(0% 0 0 / 0%) 100% ), linear-gradient( var(--glass-reflect-degree, 100deg), oklch(100% 0 0 / var(--glass-reflect-opacity, 5%)) 25%, oklch(0% 0 0 / 0%) 25% ); box-shadow: 0 0 0 1px oklch(100% 0 0 / var(--glass-border-opacity, 20%)) inset, 0 0 0 2px oklch(0% 0 0 / 5%); text-shadow: 0 1px oklch(0% 0 0 / var(--glass-text-shadow-opacity, 5%)); } .p-6 { padding: calc(var(--spacing) * 6); } .text-center { text-align: center; } .lowercase { text-transform: lowercase; } .outline { outline-style: var(--tw-outline-style); outline-width: 1px; } .btn-ghost { @layer daisyui.l1 { &:not(.btn-active, :hover, :active:focus, :focus-visible, input:checked:not(.filter .btn)) { --btn-shadow: ""; --btn-bg: #0000; --btn-border: #0000; --btn-noise: none; &:not(:disabled, [disabled], .btn-disabled) { outline-color: currentcolor; --btn-fg: var(--btn-color, currentColor); } } @media (hover: none) { &:not(.btn-active, :active, :focus-visible, input:checked:not(.filter .btn)):hover { outline-color: currentcolor; --btn-shadow: ""; --btn-bg: #0000; --btn-fg: var(--btn-color, currentColor); --btn-border: #0000; --btn-noise: none; } } } } .filter { filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,); } .btn-outline { @layer daisyui.l1 { &:not( .btn-active, :hover, :active:focus, :focus-visible, input:checked:not(.filter .btn), :disabled, [disabled], .btn-disabled ) { --btn-shadow: ""; --btn-bg: #0000; --btn-fg: var(--btn-color); --btn-border: var(--btn-color); --btn-noise: none; } @media (hover: none) { &:not(.btn-active, :active, :focus-visible, input:checked:not(.filter .btn)):hover { --btn-shadow: ""; --btn-bg: #0000; --btn-fg: var(--btn-color); --btn-border: var(--btn-color); --btn-noise: none; } } } } .btn-lg { @layer daisyui.l1.l2 { --fontsize: 1.125rem; --btn-p: 1.25rem; --size: calc(var(--size-field, 0.25rem) * 12); } } .btn-sm { @layer daisyui.l1.l2 { --fontsize: 0.75rem; --btn-p: 0.75rem; --size: calc(var(--size-field, 0.25rem) * 8); } } .btn-primary { @layer daisyui.l1.l2.l3 { --btn-color: var(--color-primary); --btn-fg: var(--color-primary-content); } } .btn-secondary { @layer daisyui.l1.l2.l3 { --btn-color: var(--color-secondary); --btn-fg: var(--color-secondary-content); } } } @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:not([data-theme]) { 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' viewBox='0 0 200 200'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E"); } } @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; } } } @layer base { @property --radialprogress { syntax: ""; inherits: true; initial-value: 0%; } } @layer base { :root:not(span) { overflow: var(--page-overflow); } } @layer base { :root { background: var(--page-scroll-bg, var(--root-bg)); --page-scroll-bg-on: linear-gradient(var(--root-bg, #0000), var(--root-bg, #0000)) var(--root-bg, #0000); @supports (color: color-mix(in lab, red, red)) { --page-scroll-bg-on: linear-gradient(var(--root-bg, #0000), var(--root-bg, #0000)) color-mix(in srgb, var(--root-bg, #0000), oklch(0% 0 0) calc(var(--page-has-backdrop, 0) * 40%)); } --page-scroll-transition-on: background-color 0.3s ease-out; transition: var(--page-scroll-transition); scrollbar-gutter: var(--page-scroll-gutter, unset); scrollbar-gutter: if(style(--page-has-scroll: 1): var(--page-scroll-gutter, unset) ; else: unset); } @keyframes set-page-has-scroll { 0%, to { --page-has-scroll: 1; } } } @layer base { :root, [data-theme] { background: var(--page-scroll-bg, var(--root-bg)); color: var(--color-base-content); } :where(:root, [data-theme]) { --root-bg: var(--color-base-100); } } @keyframes rating { 0%, 40% { scale: 1.1; filter: brightness(1.05) contrast(1.05); } } @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; } } @keyframes rotator { 89.9999%, 100% { --first-item-position: 0 0%; } 90%, 99.9999% { --first-item-position: 0 calc(var(--items) * 100%); } 100% { translate: 0 -100%; } } @keyframes skeleton { 0% { background-position: 150%; } 100% { background-position: -50%; } } @keyframes menu { 0% { opacity: 0; } } @keyframes progress { 50% { background-position-x: -115%; } } @layer base { @media (prefers-color-scheme: dark) { :root:not([data-theme]) { color-scheme: dark; --color-base-100: oklch(18% 0.02 260); --color-base-200: oklch(14% 0.02 260); --color-base-300: oklch(11% 0.02 260); --color-base-content: oklch(90% 0.01 260); --color-primary: oklch(62% 0.26 275); --color-primary-content: oklch(98% 0.01 275); --color-secondary: oklch(68% 0.18 25); --color-secondary-content: oklch(98% 0.01 25); --color-accent: oklch(72% 0.15 185); --color-accent-content: oklch(12% 0.03 185); --color-neutral: oklch(25% 0.02 260); --color-neutral-content: oklch(85% 0.01 260); --color-info: oklch(70% 0.18 230); --color-info-content: oklch(98% 0.01 230); --color-success: oklch(68% 0.19 145); --color-success-content: oklch(98% 0.01 145); --color-warning: oklch(82% 0.22 85); --color-warning-content: oklch(18% 0.04 85); --color-error: oklch(65% 0.26 25); --color-error-content: oklch(98% 0.01 25); --radius-selector: 0.25rem; --radius-field: 0.25rem; --radius-box: 0.5rem; --size-selector: 0.25rem; --size-field: 0.25rem; --border: 1px; --depth: 1; --noise: 0; } } } @layer base { :where(:root),:root:has(input.theme-controller[value=certifai-dark]:checked),[data-theme="certifai-dark"] { color-scheme: dark; --color-base-100: oklch(18% 0.02 260); --color-base-200: oklch(14% 0.02 260); --color-base-300: oklch(11% 0.02 260); --color-base-content: oklch(90% 0.01 260); --color-primary: oklch(62% 0.26 275); --color-primary-content: oklch(98% 0.01 275); --color-secondary: oklch(68% 0.18 25); --color-secondary-content: oklch(98% 0.01 25); --color-accent: oklch(72% 0.15 185); --color-accent-content: oklch(12% 0.03 185); --color-neutral: oklch(25% 0.02 260); --color-neutral-content: oklch(85% 0.01 260); --color-info: oklch(70% 0.18 230); --color-info-content: oklch(98% 0.01 230); --color-success: oklch(68% 0.19 145); --color-success-content: oklch(98% 0.01 145); --color-warning: oklch(82% 0.22 85); --color-warning-content: oklch(18% 0.04 85); --color-error: oklch(65% 0.26 25); --color-error-content: oklch(98% 0.01 25); --radius-selector: 0.25rem; --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=certifai-light]:checked),[data-theme="certifai-light"] { color-scheme: light; --color-base-100: oklch(98% 0.005 260); --color-base-200: oklch(95% 0.008 260); --color-base-300: oklch(91% 0.012 260); --color-base-content: oklch(20% 0.03 260); --color-primary: oklch(50% 0.26 275); --color-primary-content: oklch(98% 0.01 275); --color-secondary: oklch(58% 0.18 25); --color-secondary-content: oklch(98% 0.01 25); --color-accent: oklch(55% 0.15 185); --color-accent-content: oklch(98% 0.01 185); --color-neutral: oklch(35% 0.02 260); --color-neutral-content: oklch(98% 0.01 260); --color-info: oklch(55% 0.18 230); --color-info-content: oklch(98% 0.01 230); --color-success: oklch(52% 0.19 145); --color-success-content: oklch(98% 0.01 145); --color-warning: oklch(72% 0.22 85); --color-warning-content: oklch(18% 0.04 85); --color-error: oklch(55% 0.26 25); --color-error-content: oklch(98% 0.01 25); --radius-selector: 0.25rem; --radius-field: 0.25rem; --radius-box: 0.5rem; --size-selector: 0.25rem; --size-field: 0.25rem; --border: 1px; --depth: 1; --noise: 0; } } @property --tw-rotate-x { syntax: "*"; inherits: false; } @property --tw-rotate-y { syntax: "*"; inherits: false; } @property --tw-rotate-z { syntax: "*"; inherits: false; } @property --tw-skew-x { syntax: "*"; inherits: false; } @property --tw-skew-y { syntax: "*"; inherits: false; } @property --tw-outline-style { syntax: "*"; inherits: false; initial-value: solid; } @property --tw-blur { syntax: "*"; inherits: false; } @property --tw-brightness { syntax: "*"; inherits: false; } @property --tw-contrast { syntax: "*"; inherits: false; } @property --tw-grayscale { syntax: "*"; inherits: false; } @property --tw-hue-rotate { syntax: "*"; inherits: false; } @property --tw-invert { syntax: "*"; inherits: false; } @property --tw-opacity { syntax: "*"; inherits: false; } @property --tw-saturate { syntax: "*"; inherits: false; } @property --tw-sepia { syntax: "*"; inherits: false; } @property --tw-drop-shadow { syntax: "*"; inherits: false; } @property --tw-drop-shadow-color { syntax: "*"; inherits: false; } @property --tw-drop-shadow-alpha { syntax: ""; inherits: false; initial-value: 100%; } @property --tw-drop-shadow-size { 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-rotate-x: initial; --tw-rotate-y: initial; --tw-rotate-z: initial; --tw-skew-x: initial; --tw-skew-y: initial; --tw-outline-style: solid; --tw-blur: initial; --tw-brightness: initial; --tw-contrast: initial; --tw-grayscale: initial; --tw-hue-rotate: initial; --tw-invert: initial; --tw-opacity: initial; --tw-saturate: initial; --tw-sepia: initial; --tw-drop-shadow: initial; --tw-drop-shadow-color: initial; --tw-drop-shadow-alpha: 100%; --tw-drop-shadow-size: initial; } } }