/*! tailwindcss v4.1.3 | MIT License | https://tailwindcss.com */ @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; --default-font-family: var(--font-sans); --default-mono-font-family: var(--font-mono); } } @layer base { *, :after, :before, ::backdrop { box-sizing: border-box; border: 0 solid; margin: 0; padding: 0; } ::file-selector-button { box-sizing: border-box; border: 0 solid; margin: 0; padding: 0; } html, :host { -webkit-text-size-adjust: 100%; tab-size: 4; line-height: 1.5; 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; -webkit-text-decoration: 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 { vertical-align: baseline; font-size: 75%; line-height: 0; position: relative; } sub { bottom: -.25em; } sup { top: -.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 { vertical-align: middle; display: block; } img, video { max-width: 100%; height: auto; } button, input, select, optgroup, textarea { font: inherit; font-feature-settings: inherit; font-variation-settings: inherit; letter-spacing: inherit; color: inherit; opacity: 1; background-color: #0000; border-radius: 0; } ::file-selector-button { font: inherit; font-feature-settings: inherit; font-variation-settings: inherit; letter-spacing: inherit; color: inherit; opacity: 1; background-color: #0000; border-radius: 0; } :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)) { ::placeholder { 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 { padding-block: 0; } ::-webkit-datetime-edit-year-field { padding-block: 0; } ::-webkit-datetime-edit-month-field { padding-block: 0; } ::-webkit-datetime-edit-day-field { padding-block: 0; } ::-webkit-datetime-edit-hour-field { padding-block: 0; } ::-webkit-datetime-edit-minute-field { padding-block: 0; } ::-webkit-datetime-edit-second-field { padding-block: 0; } ::-webkit-datetime-edit-millisecond-field { padding-block: 0; } ::-webkit-datetime-edit-meridiem-field { padding-block: 0; } :-moz-ui-invalid { box-shadow: none; } button, input:where([type="button"], [type="reset"], [type="submit"]) { appearance: button; } ::file-selector-button { appearance: button; } ::-webkit-inner-spin-button { height: auto; } ::-webkit-outer-spin-button { height: auto; } [hidden]:where(:not([hidden="until-found"])) { display: none !important; } :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% .006 285.885); --color-primary: oklch(45% .24 277.023); --color-primary-content: oklch(93% .034 272.788); --color-secondary: oklch(65% .241 354.308); --color-secondary-content: oklch(94% .028 342.258); --color-accent: oklch(77% .152 181.912); --color-accent-content: oklch(38% .063 188.416); --color-neutral: oklch(14% .005 285.823); --color-neutral-content: oklch(92% .004 286.32); --color-info: oklch(74% .16 232.661); --color-info-content: oklch(29% .066 243.157); --color-success: oklch(76% .177 163.223); --color-success-content: oklch(37% .077 168.94); --color-warning: oklch(82% .189 84.429); --color-warning-content: oklch(41% .112 45.904); --color-error: oklch(71% .194 13.428); --color-error-content: oklch(27% .105 12.094); --radius-selector: .5rem; --radius-field: .25rem; --radius-box: .5rem; --size-selector: .25rem; --size-field: .25rem; --border: 1px; --depth: 1; --noise: 0; } @media (prefers-color-scheme: dark) { :root { color-scheme: dark; --color-base-100: oklch(25.33% .016 252.42); --color-base-200: oklch(23.26% .014 253.1); --color-base-300: oklch(21.15% .012 254.09); --color-base-content: oklch(97.807% .029 256.847); --color-primary: oklch(58% .233 277.117); --color-primary-content: oklch(96% .018 272.314); --color-secondary: oklch(65% .241 354.308); --color-secondary-content: oklch(94% .028 342.258); --color-accent: oklch(77% .152 181.912); --color-accent-content: oklch(38% .063 188.416); --color-neutral: oklch(14% .005 285.823); --color-neutral-content: oklch(92% .004 286.32); --color-info: oklch(74% .16 232.661); --color-info-content: oklch(29% .066 243.157); --color-success: oklch(76% .177 163.223); --color-success-content: oklch(37% .077 168.94); --color-warning: oklch(82% .189 84.429); --color-warning-content: oklch(41% .112 45.904); --color-error: oklch(71% .194 13.428); --color-error-content: oklch(27% .105 12.094); --radius-selector: .5rem; --radius-field: .25rem; --radius-box: .5rem; --size-selector: .25rem; --size-field: .25rem; --border: 1px; --depth: 1; --noise: 0; } } :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% .006 285.885); --color-primary: oklch(45% .24 277.023); --color-primary-content: oklch(93% .034 272.788); --color-secondary: oklch(65% .241 354.308); --color-secondary-content: oklch(94% .028 342.258); --color-accent: oklch(77% .152 181.912); --color-accent-content: oklch(38% .063 188.416); --color-neutral: oklch(14% .005 285.823); --color-neutral-content: oklch(92% .004 286.32); --color-info: oklch(74% .16 232.661); --color-info-content: oklch(29% .066 243.157); --color-success: oklch(76% .177 163.223); --color-success-content: oklch(37% .077 168.94); --color-warning: oklch(82% .189 84.429); --color-warning-content: oklch(41% .112 45.904); --color-error: oklch(71% .194 13.428); --color-error-content: oklch(27% .105 12.094); --radius-selector: .5rem; --radius-field: .25rem; --radius-box: .5rem; --size-selector: .25rem; --size-field: .25rem; --border: 1px; --depth: 1; --noise: 0; } :root:has(input.theme-controller[value="dark"]:checked), [data-theme="dark"] { color-scheme: dark; --color-base-100: oklch(25.33% .016 252.42); --color-base-200: oklch(23.26% .014 253.1); --color-base-300: oklch(21.15% .012 254.09); --color-base-content: oklch(97.807% .029 256.847); --color-primary: oklch(58% .233 277.117); --color-primary-content: oklch(96% .018 272.314); --color-secondary: oklch(65% .241 354.308); --color-secondary-content: oklch(94% .028 342.258); --color-accent: oklch(77% .152 181.912); --color-accent-content: oklch(38% .063 188.416); --color-neutral: oklch(14% .005 285.823); --color-neutral-content: oklch(92% .004 286.32); --color-info: oklch(74% .16 232.661); --color-info-content: oklch(29% .066 243.157); --color-success: oklch(76% .177 163.223); --color-success-content: oklch(37% .077 168.94); --color-warning: oklch(82% .189 84.429); --color-warning-content: oklch(41% .112 45.904); --color-error: oklch(71% .194 13.428); --color-error-content: oklch(27% .105 12.094); --radius-selector: .5rem; --radius-field: .25rem; --radius-box: .5rem; --size-selector: .25rem; --size-field: .25rem; --border: 1px; --depth: 1; --noise: 0; } @property --radialprogress { syntax: ""; inherits: true; initial-value: 0%; } :root { scrollbar-color: currentColor #0000; } @supports (color: color-mix(in lab, red, red)) { :root { scrollbar-color: color-mix(in oklch, currentColor 35%, #0000) #0000; } } :root:has(.modal-open, .modal[open], .modal:target, .modal-toggle:checked, .drawer:not([class*="drawer-open"]) > .drawer-toggle:checked) { overflow: hidden; } :root, [data-theme] { background-color: var(--root-bg, var(--color-base-100)); color: var(--color-base-content); } :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"); } .chat { --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"); } :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: color-mix(in srgb, var(--color-base-100), oklch(0% 0 0) 40%); } @supports (color: color-mix(in lab, red, red)) { :where(:root:has(.modal-open, .modal[open], .modal:target, .modal-toggle:checked, .drawer:not(.drawer-open) > .drawer-toggle:checked)) { --root-bg: color-mix(in srgb, var(--color-base-100), oklch(0% 0 0) 40%); } } } @layer components; @layer utilities { .btn { cursor: pointer; text-align: center; vertical-align: middle; outline-offset: 2px; webkit-user-select: none; -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, .875rem); outline-color: var(--btn-color, var(--color-base-content)); 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 .5px oklch(100% 0 0 / calc(var(--depth) * .15)); box-shadow: 0 .5px 0 .5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow); --size: calc(var(--size-field, .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); --btn-shadow: 0 3px 2px -2px var(--btn-bg), 0 4px 3px -2px var(--btn-bg); --btn-noise: var(--fx-noise); border-start-start-radius: var(--join-ss, var(--radius-field)); border-start-end-radius: var(--join-se, var(--radius-field)); border-end-end-radius: var(--join-ee, var(--radius-field)); border-end-start-radius: var(--join-es, var(--radius-field)); flex-wrap: nowrap; flex-shrink: 0; justify-content: center; align-items: center; gap: .375rem; font-weight: 600; transition-property: color, background-color, border-color, box-shadow; transition-duration: .2s; transition-timing-function: cubic-bezier(0, 0, .2, 1); display: inline-flex; } :where(.btn) { width: unset; } @supports (color: color-mix(in lab, red, red)) { .btn { --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%)); --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); } } .prose .btn { text-decoration-line: none; } @media (hover: hover) { .btn:hover { --btn-bg: var(--btn-color, var(--color-base-200)); } @supports (color: color-mix(in lab, red, red)) { .btn:hover { --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%); } } } .btn:focus-visible { outline-width: 2px; outline-style: solid; } .btn:active:not(.btn-active) { --btn-bg: var(--btn-color, var(--color-base-200)); --btn-border: var(--btn-color, var(--color-base-200)); --btn-shadow: 0 0 0 0 oklch(0% 0 0 / 0), 0 0 0 0 oklch(0% 0 0 / 0); translate: 0 .5px; } @supports (color: color-mix(in lab, red, red)) { .btn:active:not(.btn-active) { --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%); --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%); } } .btn:is(:disabled, [disabled], .btn-disabled) { pointer-events: none; --btn-border: #0000; --btn-noise: none; --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000); } .btn:is(:disabled, [disabled], .btn-disabled):not(.btn-link, .btn-ghost) { background-color: color-mix(in srgb, var(--color-base-content) 10%, transparent); box-shadow: none; } @supports (color: color-mix(in lab, red, red)) { .btn:is(:disabled, [disabled], .btn-disabled):not(.btn-link, .btn-ghost) { background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent); } .btn:is(:disabled, [disabled], .btn-disabled) { --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000); } } @media (hover: hover) { .btn:is(:disabled, [disabled], .btn-disabled):hover { pointer-events: none; background-color: color-mix(in srgb, var(--color-neutral) 20%, transparent); --btn-border: #0000; --btn-fg: color-mix(in srgb, var(--color-base-content) 20%, #0000); } @supports (color: color-mix(in lab, red, red)) { .btn:is(:disabled, [disabled], .btn-disabled):hover { background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent); --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000); } } } .btn:is(input[type="checkbox"], input[type="radio"]) { appearance: none; } .btn:is(input[type="checkbox"], input[type="radio"]):after { content: attr(aria-label); } .btn:where(input:checked:not(.filter .btn)) { --btn-color: var(--color-primary); --btn-fg: var(--color-primary-content); isolation: isolate; } .btn-lg { --fontsize: 1.125rem; --btn-p: 1.25rem; --size: calc(var(--size-field, .25rem) * 12); } .btn-sm { --fontsize: .75rem; --btn-p: .75rem; --size: calc(var(--size-field, .25rem) * 8); } .btn-xl { --fontsize: 1.375rem; --btn-p: 1.5rem; --size: calc(var(--size-field, .25rem) * 14); } .btn-xs { --fontsize: .6875rem; --btn-p: .5rem; --size: calc(var(--size-field, .25rem) * 6); } } @keyframes skeleton { 0% { background-position: 150%; } 100% { background-position: -50%; } } @keyframes progress { 50% { background-position-x: -115%; } } @keyframes radio { 0% { padding: 5px; } 50% { padding: 3px; } } @keyframes dropdown { 0% { opacity: 0; } } @keyframes rating { 0%, 40% { filter: brightness(1.05) contrast(1.05); scale: 1.1; } } @keyframes toast { 0% { opacity: 0; scale: .9; } 100% { opacity: 1; scale: 1; } }