@import '../../../../vendor/filament/filament/resources/css/theme.css'; @source '../../../../app/Filament/**/*'; @source '../../../views/filament/**/*'; /* * Heritage Editorial parity for the admin panel — same rules as * resources/css/tokens.css, expressed through Filament's own theming layer * instead of touching its component CSS. Filament's public site tokens (and * the test that pins them, HeritageEditorialTokensTest) must never gain * shadow-shaped tokens, so this Filament-scoped file is the only legal home * for the "flat surfaces, no card shadows" half of that rule. */ @theme { /* Sharp Edge Rule — no rounded corners anywhere in the panel. Filament's * component CSS overwhelmingly uses `rounded-{sm,md,lg,xl}` (mirroring * tokens.css's own four stops), but ~227 rules across the import graph * use the bare `rounded` utility, which Tailwind resolves against the * suffixless `--radius` key — easy to miss since tokens.css has no * bare-`--amare-radius` equivalent to copy from. */ --radius: 0; --radius-sm: 0; --radius-md: 0; --radius-lg: 0; --radius-xl: 0; /* Tonal Layer Rule — flat surfaces, no card shadows. */ --shadow-2xs: 0 0 #0000; --shadow-xs: 0 0 #0000; --shadow-sm: 0 0 #0000; --shadow: 0 0 #0000; --shadow-md: 0 0 #0000; --shadow-lg: 0 0 #0000; --shadow-xl: 0 0 #0000; --shadow-2xl: 0 0 #0000; --shadow-inner: 0 0 #0000; } /* * `@theme` above reaches every *source* Filament component rule that resolves * `rounded-*`/`shadow-*` against `var(--radius-*)`/the default shadow tokens, * because `theme.css` imports the uncompiled CSS for every Filament * sub-package. It cannot reach CSS that was already compiled to literal * values before this build runs. Two such fragments exist: * * - vendor/filament/support/dist/index.css ships vendored Tippy.js tooltip * styles (`.tippy-box` / `.tippy-box[data-theme~="light"]`) with a literal * `border-radius: 4px` and `box-shadow: 0 0 20px ...`. Tooltips render on * every panel page, so they get an explicit override below. * - vendor/filament/forms/dist/index.css also ships vendored noUiSlider, * FilePond, and EasyMDE/CodeMirror CSS with their own hardcoded * radius/shadow rules (verified: `grep -rEo '[A-Za-z]+::make\(' app/Filament` * turns up no slider, FileUpload, MarkdownEditor, or RichEditor field in * this app), so none of those fragments ever render and they're left alone. */ .tippy-box { border-radius: 0; } .tippy-box[data-theme~='light'] { box-shadow: 0 0 #0000; }