/* Localize.Inputs.Core baseline tokens.
*
* Imported by consumers via:
*
* @import "localize_inputs_core/priv/static/localize_inputs_core.css";
*
* Sibling libraries (localize_number_inputs,
* localize_datetime_inputs, money_input) reference the same
* `--li-*` token set, so one override here re-themes the
* entire input family.
*/
:root {
--li-border: #d4d4d8;
--li-border-focus: #047857;
--li-bg: #ffffff;
--li-bg-muted: #f5f5f4;
--li-fg: #1c1917;
--li-fg-muted: #78716c;
--li-accent: #047857;
--li-accent-fg: #ffffff;
--li-row-hover: rgba(0, 0, 0, 0.04);
--li-radius: 0.375rem;
}
/* Dark-mode defaults. Honoured automatically when the OS
prefers dark and the host page hasn't opted into a
specific theme. */
@media (prefers-color-scheme: dark) {
:root:not([data-theme="light"]) {
--li-border: #3f3f46;
--li-border-focus: #34d399;
--li-bg: #18181b;
--li-bg-muted: #27272a;
--li-fg: #fafafa;
--li-fg-muted: #a1a1aa;
--li-accent: #10b981;
--li-accent-fg: #052e16;
--li-row-hover: rgba(255, 255, 255, 0.06);
}
}
/* Explicit dark-theme override for class-based theme toggles
(e.g. <html data-theme="dark">). */
[data-theme="dark"] {
--li-border: #3f3f46;
--li-border-focus: #34d399;
--li-bg: #18181b;
--li-bg-muted: #27272a;
--li-fg: #fafafa;
--li-fg-muted: #a1a1aa;
--li-accent: #10b981;
--li-accent-fg: #052e16;
--li-row-hover: rgba(255, 255, 255, 0.06);
}
/* Visually-hidden helper for screen-reader-only labels. */
.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0 0 0 0);
white-space: nowrap;
border: 0;
}
/* Mobile sheet slide-in. Used by every picker overlay that
supports the `is-sheet` variant; the per-library overlay
rule positions itself fixed and animates via this
keyframe set. */
@keyframes li-sheet-slide-in {
from { transform: translateY(100%); }
to { transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
[class*="-overlay"].is-sheet { animation: none; }
}