@shamar/adonis 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,196 @@
1
+ # @shamar/adonis
2
+
3
+ AdonisJS **service provider** for Shamar — panels, routes, controllers, Edge views, CSS assets, and Cherubim auth wiring.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ pnpm add @shamar/adonis
9
+ # pick one persistence stack:
10
+ pnpm add @adonisjs/lucid # SQL
11
+ # or
12
+ pnpm add mongoose # MongoDB
13
+ ```
14
+
15
+ ### Peer dependencies
16
+
17
+ | Peer | Required when |
18
+ |------|----------------|
19
+ | `@adonisjs/core` `>=6` | Always |
20
+ | `@adonisjs/lucid` `>=21` | `orm: 'lucid'` |
21
+ | `mongoose` `>=8` | `orm: 'mongoose'` |
22
+ | `edge.js` `>=6` | Rendering Edge views (usually already present) |
23
+
24
+ Workspace packages pulled in automatically: `@shamar/core`, `@shamar/cherubim`, `@shamar/lucid`, `@shamar/mongoose`.
25
+
26
+ ## Configure
27
+
28
+ ```bash
29
+ node ace configure @shamar/adonis
30
+ ```
31
+
32
+ You choose **Lucid** or **Mongoose**. Codemods then:
33
+
34
+ 1. Register `@shamar/adonis/provider` in `adonisrc.ts`
35
+ 2. Write `config/shamar.ts` from the package stub
36
+
37
+ Your app still owns the database connection (Lucid provider or `mongoose.connect`).
38
+
39
+ ## Quick start
40
+
41
+ ```ts
42
+ // config/shamar.ts
43
+ import { defineConfig, panel } from '@shamar/adonis'
44
+
45
+ export default defineConfig({
46
+ orm: 'lucid', // or 'mongoose'
47
+ branding: { name: 'Admin' },
48
+ panels: [
49
+ panel('admin')
50
+ .path('/admin')
51
+ .discoverResources('app/resources/admin'),
52
+ ],
53
+ })
54
+ ```
55
+
56
+ ```ts
57
+ // app/resources/admin/product_resource.ts
58
+ import { Resource, form, table, TextInput, TextColumn } from '@shamar/core'
59
+ import Product from '#models/product'
60
+
61
+ export default class ProductResource extends Resource {
62
+ static model = Product
63
+ static slug = 'products'
64
+ static label = 'Products'
65
+
66
+ static form() {
67
+ return form((f) => {
68
+ f.schema([
69
+ TextInput.make('name').required(),
70
+ TextInput.make('sku').required().unique(),
71
+ ])
72
+ })
73
+ }
74
+
75
+ static table() {
76
+ return table((t) => {
77
+ t.schema([
78
+ TextColumn.make('name').sortable().searchable(),
79
+ TextColumn.make('sku').sortable().searchable(),
80
+ ])
81
+ })
82
+ }
83
+ }
84
+ ```
85
+
86
+ Open `/admin` after starting the server. Single-panel apps can still use legacy top-level `path` + `resources` (normalized into one default panel).
87
+
88
+ ## Config reference
89
+
90
+ `defineConfig` accepts:
91
+
92
+ | Key | Description |
93
+ |-----|-------------|
94
+ | `orm` | `'lucid'` \| `'mongoose'` (default Lucid). Panels may override. |
95
+ | `panels` | Array of `panel(id).path(…).discoverResources(…).branding(…)` |
96
+ | `branding` | Default branding inherited by panels |
97
+
98
+ #### Branding
99
+
100
+ ```ts
101
+ branding: {
102
+ name: 'Admin',
103
+ primaryColor: '#f1511b',
104
+ accentColor: '#286291',
105
+ // Load a Google Font and apply it to the admin UI:
106
+ googleFont: 'DM Sans',
107
+ // Or with options:
108
+ // googleFont: { family: 'Inter', weights: [400, 500, 600, 700], italic: true },
109
+ // Manual override (skips auto URL/stack from googleFont when set):
110
+ // fontFamily: '"DM Sans", system-ui, sans-serif',
111
+ // fontUrl: 'https://fonts.googleapis.com/css2?family=DM+Sans&display=swap',
112
+ }
113
+ ```
114
+
115
+ Panel-level `.branding({ googleFont: '…' })` overrides the default.
116
+ | `apiPrefix` | JSON API prefix (default `/api/shamar`) |
117
+ | `adapter` | Escape hatch: custom `DataAdapter` (or factory) for all panels |
118
+ | `auth` | Session / API / policy wiring (see below) |
119
+
120
+ ### Auth
121
+
122
+ ```ts
123
+ auth: {
124
+ guard: 'web', // Adonis auth guard (default web)
125
+ loginPath: '/login',
126
+ logoutPath: '/logout',
127
+ required: true, // default true when guard or resolveUser is set
128
+ strictPermissions: true, // Cherubim strict mode
129
+ superUser: (user) => user.permissions?.includes('*'),
130
+ roleResolver: { resolveRolePermissions },
131
+ policies: { posts: instancePolicy(PostPolicy, 'posts') },
132
+ resolveUser: async (ctx) => { /* map session → CherubimUser */ },
133
+ apiKeys: {
134
+ resolve: (plainText, ctx) => resolveFromApiKey(plainText, store, { loadUser }),
135
+ protectApi: true, // RequireApiKeyMiddleware on /api/shamar
136
+ intersectGatewayAbilities: true,
137
+ },
138
+ }
139
+ ```
140
+
141
+ Full RBAC, policies, and credential details: [`@shamar/cherubim`](../cherubim).
142
+
143
+ ### API keys admin UI
144
+
145
+ ```ts
146
+ import { ApiKeyResource } from '@shamar/adonis'
147
+ import ApiKey from '#models/api_key'
148
+
149
+ export default class AppApiKeyResource extends ApiKeyResource {
150
+ static override model = ApiKey
151
+ }
152
+ ```
153
+
154
+ Register under a panel’s `discoverResources` folder (or `.resources([...])`).
155
+
156
+ ### Middleware export
157
+
158
+ Apply API-key checks on selected routes without `protectApi`:
159
+
160
+ ```ts
161
+ import router from '@adonisjs/core/services/router'
162
+
163
+ const middleware = router.named({
164
+ shamarApiKey: () => import('@shamar/adonis/require_api_key_middleware'),
165
+ })
166
+
167
+ router
168
+ .group(() => {
169
+ router.get('/mobile/products', /* … */)
170
+ })
171
+ .use([middleware.shamarApiKey()])
172
+ ```
173
+
174
+ ## Assets & views
175
+
176
+ Shipped with the package (no copy step required for defaults):
177
+
178
+ - Edge templates under `resources/views/shamar`
179
+ - Admin CSS under `assets/` (built via `pnpm build:css` in this package)
180
+
181
+ Override branding colors via `branding.primaryColor` / `accentColor` in config.
182
+
183
+ ## Package exports
184
+
185
+ | Export | Purpose |
186
+ |--------|---------|
187
+ | `@shamar/adonis` | `defineConfig`, `panel`, `ApiKeyResource`, runtime helpers |
188
+ | `@shamar/adonis/provider` | Service provider |
189
+ | `@shamar/adonis/require_api_key_middleware` | Named middleware |
190
+
191
+ ## Related
192
+
193
+ - [`@shamar/core`](../core) — Resource DSL
194
+ - [`@shamar/cherubim`](../cherubim) — policies, Authorizer, API keys
195
+ - [`@shamar/lucid`](../lucid) / [`@shamar/mongoose`](../mongoose) — adapters
196
+ - [Playground](../../apps/playground) — Mongoose dual-panel demo
package/assets/admin.css CHANGED
@@ -1,2 +1,2 @@
1
1
  /*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */
2
- @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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--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;--tw-duration:initial;--tw-ease:initial}}}@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-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-medium:500;--font-weight-semibold:600;--tracking-wide:.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary-50:#fff4f0;--color-primary-100:#fee9e2;--color-primary-200:#fdc9b8;--color-primary-300:#f89a72;--color-primary-400:#f36d3d;--color-primary-500:#f1511b;--color-primary-600:#e04a18;--color-primary-700:#c94115;--color-primary-800:#a23512;--color-primary-900:#7a280e;--color-primary-950:#451a0a;--color-shamar-primary:#f1511b;--color-shamar-accent:#286291;--color-shamar-muted:#64748b;--color-body:#475569;--color-body-subtle:#64748b;--color-heading:#0f172a;--color-neutral-primary:#fff;--color-neutral-secondary:#fff4f0;--color-neutral-tertiary:#fee9e2;--color-default:#fdc9b8;--color-fg-brand:#f1511b;--color-fg-brand-strong:#a23512;--color-brand-soft:#fee9e2;--color-brand-softer:#fee9e2;--color-fg-danger:#b91c1c;--color-danger-soft:#fef2f2;--color-success-soft:#ecfdf5;--color-success-strong:#047857;--color-warning-soft:#fffbeb;--color-warning-strong:#b45309;--color-toast-success-bg:#059669;--color-toast-success-border:#047857;--color-toast-success-glow:#05966947;--color-toast-success-title:#fff;--color-toast-success-body:#d1fae5;--color-toast-success-icon:#ecfdf5;--color-toast-error-bg:#dc2626;--color-toast-error-border:#b91c1c;--color-toast-error-glow:#dc262647;--color-toast-error-title:#fff;--color-toast-error-body:#fee2e2;--color-toast-error-icon:#fef2f2;--color-toast-warning-bg:#d97706;--color-toast-warning-border:#b45309;--color-toast-warning-glow:#d9770647;--color-toast-warning-title:#fff;--color-toast-warning-body:#fef3c7;--color-toast-warning-icon:#fffbeb;--color-toast-info-bg:#2563eb;--color-toast-info-border:#1d4ed8;--color-toast-info-glow:#2563eb47;--color-toast-info-title:#fff;--color-toast-info-body:#dbeafe;--color-toast-info-icon:#eff6ff;--color-shamar-shell:#fffbfa}@supports (color:color-mix(in lab, red, red)){:root,:host{--color-shamar-shell:color-mix(in srgb, var(--color-primary-50) 35%, #fff)}}:root,:host{--color-card-border:var(--color-gray-200);--color-surface-hover:var(--color-neutral-tertiary);--color-surface-header:#fee9e280}@supports (color:color-mix(in lab, red, red)){:root,:host{--color-surface-header:color-mix(in srgb, var(--color-neutral-tertiary) 50%, transparent)}}:root,:host{--color-surface-inset:#fee9e273}@supports (color:color-mix(in lab, red, red)){:root,:host{--color-surface-inset:color-mix(in srgb, var(--color-neutral-tertiary) 45%, transparent)}}:root,:host{--color-surface-row-hover:#fee9e24d}@supports (color:color-mix(in lab, red, red)){:root,:host{--color-surface-row-hover:color-mix(in srgb, var(--color-neutral-tertiary) 30%, transparent)}}:root,:host{--color-badge-neutral:var(--color-neutral-tertiary)}}@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}::-webkit-calendar-picker-indicator{line-height:1}:-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}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-1\/2{top:50%}.top-full{top:100%}.right-0{right:0}.right-1\.5{right:calc(var(--spacing) * 1.5)}.right-3{right:calc(var(--spacing) * 3)}.left-0{left:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-50{z-index:50}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.shamar-radio{width:1rem;height:1rem;accent-color:var(--color-fg-brand);color:var(--color-fg-brand);cursor:pointer;vertical-align:middle;flex-shrink:0;margin:0}.shamar-radio:focus-visible{outline:none;box-shadow:0 0 0 3px #f1511b47}@supports (color:color-mix(in lab, red, red)){.shamar-radio:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-fg-brand) 28%, transparent)}}.shamar-radio:focus-visible{border-radius:9999px}.shamar-radio:disabled{opacity:.55;cursor:not-allowed}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-auto{margin-top:auto}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.-ml-1\.5{margin-left:calc(var(--spacing) * -1.5)}.ml-1{margin-left:var(--spacing)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-\[2\.375rem\]{height:2.375rem}.h-full{height:100%}.max-h-32{max-height:calc(var(--spacing) * 32)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-56{max-height:calc(var(--spacing) * 56)}.max-h-72{max-height:calc(var(--spacing) * 72)}.min-h-0{min-height:0}.min-h-\[2\.375rem\]{min-height:2.375rem}.min-h-\[40px\]{min-height:40px}.min-h-\[60px\]{min-height:60px}.min-h-screen{min-height:100vh}.shamar-input{border:1px solid var(--color-default);background-color:var(--color-neutral-primary);width:100%;color:var(--color-heading);accent-color:var(--color-fg-brand);appearance:none;border-radius:.5rem;outline:none;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem}.shamar-input:focus,.shamar-input:focus-visible{border-color:var(--color-fg-brand);box-shadow:0 0 0 3px #f1511b47}@supports (color:color-mix(in lab, red, red)){.shamar-input:focus,.shamar-input:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-fg-brand) 28%, transparent)}}.shamar-input:focus,.shamar-input:focus-visible{outline:none}.shamar-input::placeholder{color:var(--color-body-subtle)}.shamar-input[type=search]::-webkit-search-decoration{appearance:none}.shamar-input[type=search]::-webkit-search-cancel-button{appearance:none}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-16{width:calc(var(--spacing) * 16)}.w-56{width:calc(var(--spacing) * 56)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-auto{width:auto}.w-full{width:100%}.max-w-5xl{max-width:var(--container-5xl)}.max-w-\[9rem\]{max-width:9rem}.max-w-\[12rem\]{max-width:12rem}.max-w-\[120px\]{max-width:120px}.max-w-\[140px\]{max-width:140px}.max-w-\[200px\]{max-width:200px}.max-w-full{max-width:100%}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-\[2\.25rem\]{min-width:2.25rem}.min-w-\[5\.5rem\]{min-width:5.5rem}.min-w-\[7rem\]{min-width:7rem}.min-w-\[10rem\]{min-width:10rem}.min-w-\[120px\]{min-width:120px}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.shamar-select{appearance:none;border:1px solid var(--color-default);background-color:var(--color-neutral-primary);color:var(--color-heading);accent-color:var(--color-fg-brand);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%239ca3af' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19.5 8.25l-7.5 7.5-7.5-7.5'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:.875rem;border-radius:.5rem;outline:none;padding:.4375rem 1.75rem .4375rem .625rem;font-size:.8125rem;line-height:1.25rem}.shamar-select:focus,.shamar-select:focus-visible{border-color:var(--color-fg-brand);box-shadow:0 0 0 3px #f1511b47}@supports (color:color-mix(in lab, red, red)){.shamar-select:focus,.shamar-select:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-fg-brand) 28%, transparent)}}.shamar-select:focus,.shamar-select:focus-visible{outline:none}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.shamar-card{border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);border-radius:.75rem}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-card-border{border-color:var(--color-card-border)}.border-default{border-color:var(--color-default)}.bg-badge-neutral{background-color:var(--color-badge-neutral)}.bg-black\/30{background-color:#0000004d}@supports (color:color-mix(in lab, red, red)){.bg-black\/30{background-color:color-mix(in oklab, var(--color-black) 30%, transparent)}}.bg-brand-softer{background-color:var(--color-brand-softer)}.bg-fg-brand{background-color:var(--color-fg-brand)}.bg-fg-danger{background-color:var(--color-fg-danger)}.bg-neutral-primary{background-color:var(--color-neutral-primary)}.bg-neutral-primary\/50{background-color:#ffffff80}@supports (color:color-mix(in lab, red, red)){.bg-neutral-primary\/50{background-color:color-mix(in oklab, var(--color-neutral-primary) 50%, transparent)}}.bg-neutral-primary\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab, red, red)){.bg-neutral-primary\/90{background-color:color-mix(in oklab, var(--color-neutral-primary) 90%, transparent)}}.bg-shamar-shell{background-color:var(--color-shamar-shell)}.bg-success-soft{background-color:var(--color-success-soft)}.bg-success-strong{background-color:var(--color-success-strong)}.bg-surface-header{background-color:var(--color-surface-header)}.bg-surface-inset{background-color:var(--color-surface-inset)}.bg-transparent{background-color:#0000}.bg-warning-soft{background-color:var(--color-warning-soft)}.bg-warning-strong{background-color:var(--color-warning-strong)}.object-contain{object-fit:contain}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-0\.5{padding-inline:calc(var(--spacing) * .5)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-1{padding-top:var(--spacing)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pl-1{padding-left:var(--spacing)}.pl-2{padding-left:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.whitespace-nowrap{white-space:nowrap}.text-body{color:var(--color-body)}.text-body-subtle{color:var(--color-body-subtle)}.text-body-subtle\/50{color:#64748b80}@supports (color:color-mix(in lab, red, red)){.text-body-subtle\/50{color:color-mix(in oklab, var(--color-body-subtle) 50%, transparent)}}.text-fg-brand{color:var(--color-fg-brand)}.text-fg-brand\/70{color:#f1511bb3}@supports (color:color-mix(in lab, red, red)){.text-fg-brand\/70{color:color-mix(in oklab, var(--color-fg-brand) 70%, transparent)}}.text-fg-danger{color:var(--color-fg-danger)}.text-heading{color:var(--color-heading)}.text-success-strong{color:var(--color-success-strong)}.text-warning-strong{color:var(--color-warning-strong)}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);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,)}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:text-fg-brand:is(:where(.group):hover *){color:var(--color-fg-brand)}}.placeholder\:text-body-subtle::placeholder{color:var(--color-body-subtle)}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.last\:border-r-0:last-child{border-right-style:var(--tw-border-style);border-right-width:0}.focus-within\:border-fg-brand:focus-within{border-color:var(--color-fg-brand)}.focus-within\:ring-2:focus-within{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-within\:ring-fg-brand:focus-within{--tw-ring-color:var(--color-fg-brand)}@media (hover:hover){.hover\:border-fg-brand:hover{border-color:var(--color-fg-brand)}.hover\:bg-danger-soft:hover{background-color:var(--color-danger-soft)}.hover\:bg-neutral-secondary:hover{background-color:var(--color-neutral-secondary)}.hover\:bg-surface-hover:hover{background-color:var(--color-surface-hover)}.hover\:bg-surface-row-hover:hover{background-color:var(--color-surface-row-hover)}.hover\:text-fg-brand:hover{color:var(--color-fg-brand)}.hover\:text-fg-danger:hover{color:var(--color-fg-danger)}.hover\:text-heading:hover{color:var(--color-heading)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}}.focus\:ring-0:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}@media (min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.sm\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.sm\:border-card-border{border-color:var(--color-card-border)}}@media (min-width:48rem){.md\:relative{position:relative}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:translate-x-0{--tw-translate-x:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.md\:flex-row{flex-direction:row}.md\:p-4{padding:calc(var(--spacing) * 4)}.md\:px-6{padding-inline:calc(var(--spacing) * 6)}}@media (min-width:64rem){.lg\:flex-row{flex-direction:row}.lg\:items-start{align-items:flex-start}.lg\:justify-between{justify-content:space-between}}@media (min-width:80rem){.xl\:col-span-3{grid-column:span 3/span 3}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.dark\:block:where(.dark,.dark *){display:block}.dark\:hidden:where(.dark,.dark *){display:none}}.dark{--color-body:var(--color-gray-300);--color-body-subtle:var(--color-gray-400);--color-heading:#f3f4f6;--color-neutral-primary:var(--color-gray-900);--color-neutral-secondary:var(--color-gray-800);--color-neutral-tertiary:#151c28;--color-default:var(--color-gray-700);--color-fg-brand:var(--color-primary-500);--color-fg-brand-strong:var(--color-primary-400);--color-brand-soft:var(--color-primary-900);--color-brand-softer:var(--color-primary-950);--color-shamar-shell:var(--color-gray-800);--color-card-border:#4b55638c}@supports (color:color-mix(in lab, red, red)){.dark{--color-card-border:color-mix(in srgb, var(--color-gray-600) 55%, transparent)}}.dark{--color-fg-danger:#f87171;--color-danger-soft:#450a0a;--color-success-soft:#064e3b;--color-success-strong:#6ee7b7;--color-warning-soft:#451a03;--color-warning-strong:#fcd34d;--color-toast-success-bg:#065f46;--color-toast-success-border:#047857;--color-toast-success-glow:#10b98138;--color-toast-success-title:#ecfdf5;--color-toast-success-body:#a7f3d0;--color-toast-success-icon:#d1fae5;--color-toast-error-bg:#991b1b;--color-toast-error-border:#b91c1c;--color-toast-error-glow:#f8717133;--color-toast-error-title:#fef2f2;--color-toast-error-body:#fecaca;--color-toast-error-icon:#fee2e2;--color-toast-warning-bg:#92400e;--color-toast-warning-border:#b45309;--color-toast-warning-glow:#fbbf242e;--color-toast-warning-title:#fffbeb;--color-toast-warning-body:#fde68a;--color-toast-warning-icon:#fef3c7;--color-toast-info-bg:#1e40af;--color-toast-info-border:#1d4ed8;--color-toast-info-glow:#60a5fa2e;--color-toast-info-title:#eff6ff;--color-toast-info-body:#bfdbfe;--color-toast-info-icon:#dbeafe;--color-surface-hover:#242d3c}@supports (color:color-mix(in lab, red, red)){.dark{--color-surface-hover:color-mix(in srgb, var(--color-gray-700) 50%, var(--color-gray-900))}}.dark{--color-surface-header:#1a2331}@supports (color:color-mix(in lab, red, red)){.dark{--color-surface-header:color-mix(in srgb, var(--color-gray-800) 65%, var(--color-gray-900))}}.dark{--color-surface-inset:#192130}@supports (color:color-mix(in lab, red, red)){.dark{--color-surface-inset:color-mix(in srgb, var(--color-gray-800) 55%, var(--color-gray-900))}}.dark{--color-surface-row-hover:#1e2636}@supports (color:color-mix(in lab, red, red)){.dark{--color-surface-row-hover:color-mix(in srgb, var(--color-gray-700) 35%, var(--color-gray-900))}}.dark{--color-badge-neutral:#222a3a}@supports (color:color-mix(in lab, red, red)){.dark{--color-badge-neutral:color-mix(in srgb, var(--color-gray-700) 45%, var(--color-gray-900))}}:where(.dark,.dark *){color-scheme:dark}:where(html),:where(.dark,.dark *),input[type=checkbox],input[type=radio],input[type=range],input[type=color],progress,meter{accent-color:var(--color-fg-brand)}input[type=checkbox],input[type=radio]{width:1rem;height:1rem;color:var(--color-fg-brand);accent-color:var(--color-fg-brand);cursor:pointer;vertical-align:middle;flex-shrink:0;margin:0}input[type=checkbox]{appearance:none;border:1.5px solid var(--color-default);background-color:var(--color-neutral-primary);background-position:50%;background-repeat:no-repeat;background-size:.7rem;border-radius:.3rem;transition:background-color .12s,border-color .12s,box-shadow .12s}input[type=checkbox]:hover:not(:disabled){border-color:#f68762}@supports (color:color-mix(in lab, red, red)){input[type=checkbox]:hover:not(:disabled){border-color:color-mix(in srgb, var(--color-fg-brand) 55%, var(--color-default))}}input[type=checkbox]:checked{background-color:var(--color-fg-brand);border-color:var(--color-fg-brand);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5 6.5 11.5 12.5 4.5'/%3E%3C/svg%3E")}input[type=checkbox]:indeterminate{background-color:var(--color-fg-brand);border-color:var(--color-fg-brand);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M3.5 8h9'/%3E%3C/svg%3E")}input[type=radio]{border-radius:9999px}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:none;box-shadow:0 0 0 3px #f1511b47}@supports (color:color-mix(in lab, red, red)){input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-fg-brand) 28%, transparent)}}input[type=checkbox]:disabled,input[type=radio]:disabled{opacity:.55;cursor:not-allowed}[x-cloak]{display:none!important}a[href],button:not(:disabled),[role=button]:not([aria-disabled=true]),[role=tab],label[for],label:has(input,select,textarea),summary,select,input[type=checkbox],input[type=radio],.shamar-interactive{cursor:pointer}button:disabled,[aria-disabled=true]{cursor:not-allowed}.nav-item{color:var(--color-body)}@media (hover:hover){.nav-item:hover{background-color:var(--color-primary-100);color:var(--color-fg-brand)}}.nav-item.nav-active{background-color:var(--color-primary-200);color:var(--color-fg-brand-strong);font-weight:600}:where(.dark,.dark *) .nav-item:hover{background-color:var(--color-surface-hover);color:var(--color-heading)}:where(.dark,.dark *) .nav-item.nav-active{background-color:var(--color-surface-inset);color:var(--color-fg-brand);font-weight:600}fieldset.shamar-card{border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);min-width:0;margin:0}:where(.dark,.dark *) .shamar-card,:where(.dark,.dark *) fieldset.shamar-card{background-color:var(--color-neutral-primary)}.shamar-form-section__header{border-bottom:1px solid var(--color-card-border);background-color:var(--color-surface-header,var(--color-neutral-secondary));align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;display:flex}.shamar-form-section__header--centered{align-items:center}.shamar-form-section__icon{width:2rem;height:2rem;color:var(--color-fg-brand);background-color:var(--color-brand-soft);border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.shamar-form-section__titles{flex-direction:column;justify-content:center;min-width:0;display:flex}.shamar-form-section__title{color:var(--color-heading);margin:0;font-size:.875rem;font-weight:600;line-height:1.35}.shamar-form-section__description{color:var(--color-body-subtle,var(--color-shamar-muted));margin:.25rem 0 0;font-size:.8125rem;line-height:1.4}.shamar-form-section__body{padding:1.25rem 1.25rem 1.75rem}.shamar-wizard__panel{padding-bottom:.5rem}.shamar-radio{padding-bottom:.15rem}.shamar-form-fieldset{border:1px solid var(--color-card-border);background-color:#0000;border-radius:.75rem;min-width:0;margin:0;padding:.75rem 1rem 1rem}.shamar-form-fieldset--card{background-color:var(--color-neutral-primary)}.shamar-form-section--plain{border:1px solid var(--color-card-border);background-color:#0000}.shamar-form-fieldset__legend{color:var(--color-heading);padding:0 .35rem;font-size:.8125rem;font-weight:600}.shamar-form-fieldset__description{color:var(--color-body-subtle,var(--color-shamar-muted));margin:0 0 .75rem;font-size:.8125rem}:where(.dark,.dark *) .shamar-form-fieldset{border-color:var(--color-card-border)}.shamar-dialog-backdrop{z-index:50;background-color:#0006;position:fixed;inset:0}.shamar-dialog-panel{z-index:51;border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);border-radius:.75rem;flex-direction:column;max-width:calc(100vw - 1.5rem);max-height:calc(100vh - 1.5rem);display:flex;position:fixed;top:50%;left:50%;overflow:hidden}.shamar-dialog-panel.is-fullscreen{max-width:none;max-height:none;width:auto!important;height:auto!important;inset:.75rem!important;transform:none!important}.shamar-dialog-panel.is-prompt{max-height:calc(100vh - 1.5rem);width:min(28rem,100vw - 1.5rem)!important;height:auto!important}.shamar-dialog-header{border-bottom:1px solid var(--color-card-border);cursor:move;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;padding:.625rem .875rem;display:flex}.shamar-dialog-body{flex:1;min-height:0;padding:1rem;overflow:auto}.shamar-embed-section+.shamar-embed-section{border-top:1px solid var(--color-card-border);margin-top:1.25rem;padding-top:1.25rem}.shamar-embed-section__header{margin-bottom:1rem}.shamar-embed-section .shamar-field--readonly .shamar-field__value{background:0 0;border:0;padding:0}.shamar-dialog-footer{border-top:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);flex-shrink:0;justify-content:flex-end;align-items:center;gap:.5rem;padding:.75rem .875rem;display:flex}.shamar-dialog-body--prompt{padding-top:1.25rem;padding-bottom:1.25rem}.shamar-dialog-prompt-icon{border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;display:flex}.shamar-dialog-prompt-icon.is-danger{background-color:var(--color-danger-soft);color:var(--color-fg-danger)}.shamar-dialog-prompt-icon.is-warning{background-color:var(--color-warning-soft);color:var(--color-warning-strong)}.shamar-dialog-prompt-icon.is-info{background-color:var(--color-brand-soft);color:var(--color-fg-brand)}.shamar-dialog-prompt-icon.is-success{background-color:var(--color-success-soft);color:var(--color-success-strong)}.shamar-bulk-bar{border-top:1px solid var(--color-card-border);background-color:var(--color-surface-header,var(--color-neutral-primary));flex-wrap:wrap;align-items:center;gap:.75rem 1rem;padding:.625rem 1rem;display:flex}.shamar-bulk-bar__meta{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;min-width:0;display:flex}.shamar-bulk-bar__count{color:var(--color-body);font-size:.875rem;font-weight:500}.shamar-bulk-bar__link{color:var(--color-body-subtle);cursor:pointer;background:0 0;border:0;padding:0;font-size:.75rem;text-decoration:underline}.shamar-bulk-bar__link:hover{color:var(--color-fg-brand)}.shamar-bulk-menu{position:relative}.shamar-bulk-menu__trigger{border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);color:var(--color-body);cursor:pointer;border-radius:.375rem;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.875rem;font-weight:500;display:inline-flex}.shamar-bulk-menu__trigger:hover{background-color:var(--color-surface-hover)}.shamar-bulk-menu__trigger[aria-expanded=true]{border-color:var(--color-fg-brand);color:var(--color-heading)}.shamar-bulk-menu__chevron{width:.875rem;height:.875rem;transition:transform .12s}.shamar-bulk-menu__chevron.is-open{transform:rotate(180deg)}.shamar-bulk-menu__panel{z-index:30;border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);border-radius:.5rem;min-width:12rem;padding:.25rem;position:absolute;top:calc(100% + .25rem);left:0;box-shadow:0 10px 24px #0000001f}.shamar-bulk-menu__item{text-align:left;width:100%;color:var(--color-body);cursor:pointer;background:0 0;border:0;border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem;display:block}.shamar-bulk-menu__item:hover{background-color:var(--color-surface-hover);color:var(--color-heading)}.shamar-bulk-menu__item.is-danger{color:var(--color-fg-danger)}.shamar-bulk-menu__item.is-danger:hover{background-color:var(--color-danger-soft);color:var(--color-fg-danger)}.shamar-chip{background-color:var(--color-brand-soft);max-width:100%;color:var(--color-fg-brand);border-radius:.375rem;align-items:center;gap:.25rem;padding:.125rem .25rem .125rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.shamar-chip--group{background-color:var(--color-badge-neutral,var(--color-surface-hover));color:var(--color-heading)}.shamar-chip__remove{color:inherit;cursor:pointer;background:0 0;border:0;border-radius:.25rem;justify-content:center;align-items:center;padding:.125rem;display:inline-flex}.shamar-chip__remove:hover{background-color:currentColor}@supports (color:color-mix(in lab, red, red)){.shamar-chip__remove:hover{background-color:color-mix(in srgb, currentColor 16%, transparent)}}.shamar-toolbar-menu{position:relative}.shamar-toolbar-btn{border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);color:var(--color-body);cursor:pointer;border-radius:.375rem;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.875rem;font-weight:500;display:inline-flex}.shamar-toolbar-btn:hover{background-color:var(--color-surface-hover)}.shamar-toolbar-btn.is-active{border-color:var(--color-fg-brand);color:var(--color-heading)}.shamar-toolbar-btn__badge{background-color:var(--color-fg-brand);color:#fff;border-radius:9999px;justify-content:center;align-items:center;min-width:1.25rem;height:1.25rem;padding:0 .35rem;font-size:.6875rem;font-weight:700;display:inline-flex}.shamar-toolbar-panel{z-index:40;border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);border-radius:.625rem;width:min(18rem,100vw - 2rem);position:absolute;top:calc(100% + .35rem);right:0;overflow:hidden;box-shadow:0 12px 28px #00000024}.shamar-toolbar-panel__head{justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem .875rem .5rem;display:flex}.shamar-toolbar-panel__list{max-height:18rem;padding:.25rem;overflow:auto}.shamar-toolbar-panel__item{text-align:left;width:100%;color:var(--color-body);cursor:pointer;background:0 0;border:0;border-radius:.375rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .75rem;font-size:.875rem;display:flex}.shamar-toolbar-panel__item:hover,.shamar-toolbar-panel__item.is-selected{background-color:var(--color-surface-hover);color:var(--color-heading)}.shamar-toolbar-panel__back{border:0;border-bottom:1px solid var(--color-card-border);width:100%;color:var(--color-heading);cursor:pointer;background:0 0;align-items:center;gap:.35rem;padding:.65rem .875rem;font-size:.8125rem;font-weight:600;display:inline-flex}.shamar-toolbar-panel__back:hover{background-color:var(--color-surface-hover)}.shamar-list-group__cell{background:color-mix(in srgb, color-mix(in srgb, var(--color-neutral-tertiary) 50%, transparent) 88%, transparent);padding:.5rem 1rem}@supports (color:color-mix(in lab, red, red)){.shamar-list-group__cell{background:color-mix(in srgb, var(--color-surface-header,#f5f5f5) 88%, transparent)}}.shamar-list-group__cell{border-top:1px solid var(--color-card-border)}.shamar-list-group__label{letter-spacing:.02em;text-transform:uppercase;color:var(--color-heading);font-size:.75rem;font-weight:700}.shamar-list-group__count{color:var(--color-body-subtle);margin-left:.5rem;font-size:.75rem}.shamar-list-group__count:before{content:"· "}.shamar-secret-reveal{border:1px solid var(--color-card-border);background-color:var(--color-neutral-secondary,var(--color-neutral-primary));border-radius:.5rem;align-items:stretch;gap:.5rem;margin-top:.25rem;display:flex;overflow:hidden}.shamar-secret-reveal__value{word-break:break-all;min-width:0;color:var(--color-heading);flex:1;padding:.75rem .875rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.75rem;line-height:1.4}.shamar-secret-reveal__copy{border:none;border-left:1px solid var(--color-card-border);color:var(--color-fg-brand);cursor:pointer;background:0 0;flex-shrink:0;align-self:stretch;padding:0 .875rem;font-size:.8125rem;font-weight:600}.shamar-secret-reveal__copy:hover{background-color:var(--color-surface-hover)}.shamar-dialog-resize-handle{cursor:nwse-resize;width:1rem;height:1rem;position:absolute;bottom:0;right:0}#shamar-toast-stack{z-index:60;pointer-events:none;flex-direction:column;gap:.75rem;width:min(26rem,100vw - 2rem);display:flex;position:fixed;top:1rem;right:1rem}.shamar-toast{pointer-events:auto;box-shadow:0 18px 40px -16px var(--shamar-toast-glow,#0f172a2e), 0 8px 16px -12px #0f172a29;opacity:0;border:1px solid #0000;border-radius:.9rem;align-items:flex-start;gap:.875rem;padding:.95rem 1rem;transition:opacity .2s,transform .2s;display:flex;transform:translate(.75rem)scale(.98)}.shamar-toast.is-visible{opacity:1;transform:translate(0)scale(1)}.shamar-toast--success{background:var(--color-toast-success-bg);border-color:var(--color-toast-success-border);--shamar-toast-glow:var(--color-toast-success-glow)}.shamar-toast--error{background:var(--color-toast-error-bg);border-color:var(--color-toast-error-border);--shamar-toast-glow:var(--color-toast-error-glow)}.shamar-toast--warning{background:var(--color-toast-warning-bg);border-color:var(--color-toast-warning-border);--shamar-toast-glow:var(--color-toast-warning-glow)}.shamar-toast--info{background:var(--color-toast-info-bg);border-color:var(--color-toast-info-border);--shamar-toast-glow:var(--color-toast-info-glow)}.shamar-toast__icon{width:2.25rem;height:2.25rem;color:var(--shamar-toast-icon,#fff);background:#ffffff29;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.shamar-toast--success .shamar-toast__icon{--shamar-toast-icon:var(--color-toast-success-icon)}.shamar-toast--error .shamar-toast__icon{--shamar-toast-icon:var(--color-toast-error-icon)}.shamar-toast--warning .shamar-toast__icon{--shamar-toast-icon:var(--color-toast-warning-icon)}.shamar-toast--info .shamar-toast__icon{--shamar-toast-icon:var(--color-toast-info-icon)}.shamar-toast__icon svg{width:1.15rem;height:1.15rem}.shamar-toast__content{flex:1;min-width:0;padding-top:.1rem}.shamar-toast__title{letter-spacing:-.01em;color:var(--shamar-toast-title,#fff);margin:0;font-size:.95rem;font-weight:700;line-height:1.35}.shamar-toast--success .shamar-toast__title{--shamar-toast-title:var(--color-toast-success-title)}.shamar-toast--error .shamar-toast__title{--shamar-toast-title:var(--color-toast-error-title)}.shamar-toast--warning .shamar-toast__title{--shamar-toast-title:var(--color-toast-warning-title)}.shamar-toast--info .shamar-toast__title{--shamar-toast-title:var(--color-toast-info-title)}.shamar-toast__body{color:var(--shamar-toast-body,#ffffffe0);margin:.2rem 0 0;font-size:.875rem;line-height:1.5}.shamar-toast--success .shamar-toast__body{--shamar-toast-body:var(--color-toast-success-body)}.shamar-toast--error .shamar-toast__body{--shamar-toast-body:var(--color-toast-error-body)}.shamar-toast--warning .shamar-toast__body{--shamar-toast-body:var(--color-toast-warning-body)}.shamar-toast--info .shamar-toast__body{--shamar-toast-body:var(--color-toast-info-body)}.shamar-toast__dismiss{width:1.75rem;height:1.75rem;color:var(--shamar-toast-body,#ffffffe0);cursor:pointer;background:0 0;border:0;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;margin:-.15rem -.15rem 0 0;font-size:1.15rem;line-height:1;transition:background-color .15s,color .15s;display:inline-flex}.shamar-toast__dismiss:hover{color:var(--shamar-toast-title,#fff);background:#ffffff1f}.shamar-kanban-grid{grid-template-columns:repeat(1,minmax(0,1fr));gap:1rem;display:grid}@media (min-width:640px){.shamar-kanban-grid{grid-template-columns:repeat(min(2, var(--shamar-kanban-cols,4)), minmax(0, 1fr))}}@media (min-width:768px){.shamar-kanban-grid{grid-template-columns:repeat(min(3, var(--shamar-kanban-cols,4)), minmax(0, 1fr))}}@media (min-width:1024px){.shamar-kanban-grid{grid-template-columns:repeat(var(--shamar-kanban-cols,4), minmax(0, 1fr))}}.shamar-kanban-board{align-items:stretch;gap:1rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.shamar-kanban-column{border:1px solid var(--color-border-default,#0000001a);background:var(--color-surface-header,#00000008);border-radius:.75rem;flex-direction:column;flex:0 0 min(18rem,85vw);min-height:16rem;max-height:min(70vh,42rem);display:flex}.shamar-kanban-column__header{border-bottom:1px solid var(--color-border-default,#00000014);justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem .875rem;display:flex}.shamar-kanban-column__title{color:var(--color-text-heading,inherit);text-transform:capitalize;margin:0;font-size:.8125rem;font-weight:600}.shamar-kanban-column__count{color:var(--color-text-body-subtle,#00000073);font-variant-numeric:tabular-nums;font-size:.75rem}.shamar-kanban-column__body{flex-direction:column;flex:auto;gap:.75rem;padding:.75rem;display:flex;overflow-y:auto}.shamar-kanban-column__empty{text-align:center;color:var(--color-text-body-subtle,#00000073);margin:0;padding:1.5rem .5rem;font-size:.8125rem}select.shamar-select option,select.shamar-input option{background-color:var(--color-neutral-primary);color:var(--color-heading)}.shamar-form-grid{grid-template-columns:repeat(var(--shamar-form-cols,2), minmax(0, 1fr));gap:1.25rem;display:grid}.shamar-detail-grid{grid-template-columns:repeat(var(--shamar-detail-cols,2), minmax(0, 1fr));gap:0;display:grid}@media (max-width:639px){.shamar-form-grid,.shamar-detail-grid{grid-template-columns:1fr}.shamar-field-cell,.shamar-detail-cell{grid-column:1/-1!important}}.shamar-field-cell,.shamar-detail-cell{min-width:0}.shamar-detail__label{letter-spacing:.02em;text-transform:uppercase;color:var(--color-heading);margin:0;font-size:.75rem;font-weight:650;display:block}.shamar-detail__label-row,.shamar-field__label-row{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.5rem;display:flex}.shamar-detail__label-row{margin-bottom:0}.shamar-detail__label-row .shamar-detail__label{flex:auto;min-width:0}.shamar-field__label-row .shamar-field__label{flex:auto;min-width:0;margin-bottom:0}.shamar-field__label{color:var(--color-heading);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.shamar-field__required{color:var(--color-fg-danger)}.shamar-field__hint{text-align:right;max-width:55%;color:var(--color-body-subtle);flex:0 auto;margin:0;font-size:.75rem;font-weight:500;line-height:1.35}.shamar-field__help{color:var(--color-body-subtle);margin-top:.5rem;font-size:.75rem;line-height:1.4}.shamar-field__error{color:var(--color-fg-danger);margin-top:.375rem;font-size:.75rem;line-height:1.4}.shamar-field.is-invalid .shamar-field__label{color:var(--color-fg-danger)}.shamar-input.is-invalid,.shamar-select.is-invalid,.shamar-m2m-checkboxes.is-invalid,[data-shamar-m2o-config].is-invalid,[data-shamar-m2m-config].is-invalid{border-color:var(--color-fg-danger)}.shamar-input.is-invalid:focus,.shamar-select.is-invalid:focus{outline-color:var(--color-fg-danger);border-color:var(--color-fg-danger)}.shamar-field__value{color:var(--color-body);font-size:.875rem;line-height:1.5}.shamar-field--readonly .shamar-field__value{border:1px solid var(--color-card-border);background:var(--color-surface-inset);border-radius:.5rem;padding:.625rem .75rem}.shamar-input-group__affix--icon,.shamar-input-group__affix--action{padding:0 .65rem}.shamar-input-group__affix--action{cursor:pointer;background:var(--color-neutral-primary);color:var(--color-body-subtle)}.shamar-input-group__affix--action:hover{color:var(--color-heading);background:var(--color-surface-hover,var(--color-neutral-secondary))}.shamar-field__counter{color:var(--color-body-subtle);text-align:right;margin:.35rem 0 0;font-size:.75rem}.shamar-input--file{padding:.4rem .5rem}.shamar-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.75rem;width:100%;min-width:0;display:flex;position:relative}.shamar-toggle--inline{min-height:2.5rem;padding:.375rem 0}.shamar-toggle__text{flex-direction:column;flex:auto;gap:.15rem;min-width:0;display:flex}.shamar-toggle.is-disabled{opacity:.55;cursor:not-allowed}.shamar-toggle__input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shamar-toggle__track{background:var(--color-gray-300);border:1px solid #9ca3afb3;border-radius:9999px;flex-shrink:0;width:2.75rem;height:1.5rem;position:relative}@supports (color:color-mix(in lab, red, red)){.shamar-toggle__track{border:1px solid color-mix(in srgb, var(--color-gray-400) 70%, transparent)}}.shamar-toggle__track{transition:background-color .18s,border-color .18s,box-shadow .18s}:where(.dark,.dark *) .shamar-toggle__track{background:var(--color-gray-700);border-color:var(--color-gray-600)}.shamar-toggle__thumb{background:#fff;border-radius:9999px;width:1.125rem;height:1.125rem;transition:transform .18s;position:absolute;top:.125rem;left:.125rem;box-shadow:0 1px 3px #0f172a2e}.shamar-toggle__input:focus-visible+.shamar-toggle__track{border-color:var(--color-fg-brand);box-shadow:0 0 0 3px #f1511b47}@supports (color:color-mix(in lab, red, red)){.shamar-toggle__input:focus-visible+.shamar-toggle__track{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-fg-brand) 28%, transparent)}}.shamar-toggle__input:focus-visible+.shamar-toggle__track{outline:none}.shamar-toggle__input:checked+.shamar-toggle__track{background:var(--color-fg-brand);border-color:#c14116}@supports (color:color-mix(in lab, red, red)){.shamar-toggle__input:checked+.shamar-toggle__track{border-color:color-mix(in srgb, var(--color-fg-brand) 80%, #000)}}.shamar-toggle__input:checked+.shamar-toggle__track .shamar-toggle__thumb{transform:translate(1.25rem)}.shamar-toggle__label{color:var(--color-heading);font-size:.875rem;font-weight:500}.shamar-boolean{border:1px solid #0000;border-radius:9999px;align-items:center;gap:.4rem;max-width:100%;padding:.2rem .65rem .2rem .3rem;font-size:.8125rem;font-weight:600;line-height:1.2;display:inline-flex}.shamar-boolean--custom{padding-left:.35rem}.shamar-boolean--icon-only{padding:.3rem}.shamar-boolean__mark{background:currentColor;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:1.35rem;height:1.35rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.shamar-boolean__mark{background:color-mix(in srgb, currentColor 14%, transparent)}}.shamar-boolean__glyph{font-size:.8rem;line-height:1}.shamar-boolean__label{letter-spacing:.01em;padding-right:.15rem}.shamar-boolean.is-true{background:var(--color-success-soft);color:var(--color-success-strong);border-color:#0478572e}@supports (color:color-mix(in lab, red, red)){.shamar-boolean.is-true{border-color:color-mix(in srgb, var(--color-success-strong) 18%, transparent)}}.shamar-boolean.is-false{background:var(--color-badge-neutral);color:var(--color-body-subtle);border-color:#e5e7ebcc}@supports (color:color-mix(in lab, red, red)){.shamar-boolean.is-false{border-color:color-mix(in srgb, var(--color-card-border) 80%, transparent)}}.shamar-field .shamar-select,.shamar-field-cell .shamar-select{width:100%;min-width:0;max-width:100%;display:block}.shamar-combobox{width:100%;min-width:0;position:relative}.shamar-combobox__control{border:1px solid var(--color-default);background:var(--color-neutral-primary);cursor:text;border-radius:.5rem;align-items:center;gap:.35rem;width:100%;min-height:2.5rem;padding:.25rem .35rem .25rem .65rem;transition:border-color .15s,box-shadow .15s;display:flex}.shamar-combobox.is-open .shamar-combobox__control,.shamar-combobox__control:focus-within{border-color:var(--color-fg-brand);box-shadow:0 0 0 3px #f1511b47}@supports (color:color-mix(in lab, red, red)){.shamar-combobox.is-open .shamar-combobox__control,.shamar-combobox__control:focus-within{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-fg-brand) 28%, transparent)}}.shamar-combobox.is-invalid .shamar-combobox__control{border-color:var(--color-fg-danger)}.shamar-combobox.is-disabled .shamar-combobox__control{opacity:.55;cursor:not-allowed;background:var(--color-surface-inset,var(--color-neutral-secondary))}.shamar-combobox__chips{flex-wrap:wrap;flex:auto;align-items:center;gap:.35rem;min-width:0;display:flex}.shamar-combobox__chip{background:var(--color-brand-soft);max-width:100%;color:var(--color-fg-brand);border-radius:999px;align-items:center;gap:.2rem;padding:.15rem .2rem .15rem .5rem;font-size:.75rem;font-weight:550;line-height:1.25;display:inline-flex}.shamar-combobox__chip-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.shamar-combobox__chip-remove{width:1.15rem;height:1.15rem;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.shamar-combobox__chip-remove:hover{background:#f1511b2e}@supports (color:color-mix(in lab, red, red)){.shamar-combobox__chip-remove:hover{background:color-mix(in srgb, var(--color-fg-brand) 18%, transparent)}}.shamar-combobox__search{width:auto;min-width:4rem;color:var(--color-heading);box-shadow:none;background:0 0;border:0;outline:none;flex:6rem;margin:0;padding:.3rem 0;font-size:.875rem}.shamar-combobox__search--single{flex:auto;min-width:0}.shamar-combobox__search:disabled{cursor:not-allowed}.shamar-combobox__clear,.shamar-combobox__toggle{width:1.75rem;height:1.75rem;color:var(--color-body-subtle);cursor:pointer;background:0 0;border:0;border-radius:.375rem;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.shamar-combobox__clear:hover,.shamar-combobox__toggle:hover{color:var(--color-heading);background:var(--color-surface-hover,var(--color-neutral-secondary))}.shamar-combobox__toggle{color:var(--color-body-subtle)}.shamar-combobox.is-open .shamar-combobox__toggle{color:var(--color-fg-brand)}.shamar-combobox__dropdown{z-index:40;border:1px solid var(--color-default);background:var(--color-neutral-primary);border-radius:.5rem;max-height:16rem;padding:.35rem;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow:auto;box-shadow:0 10px 30px #0000001f}.shamar-combobox__option{width:100%;color:var(--color-heading);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.375rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem .6rem;font-size:.875rem;display:flex}.shamar-combobox__option:hover,.shamar-combobox__option.is-active{background:var(--color-surface-hover,var(--color-neutral-secondary))}.shamar-combobox__option.is-selected{color:var(--color-fg-brand);font-weight:550}.shamar-combobox__option-check{color:var(--color-fg-brand);flex-shrink:0}.shamar-combobox__empty{color:var(--color-body-subtle);padding:.65rem .6rem;font-size:.8125rem}.shamar-field.text-right .shamar-input,.shamar-field.text-right .shamar-select,.shamar-field.text-right .shamar-combobox__search{text-align:right}.shamar-field.text-center .shamar-input,.shamar-field.text-center .shamar-select,.shamar-field.text-center .shamar-combobox__search{text-align:center}.shamar-field.text-justify .shamar-input,.shamar-field.text-justify .shamar-select,.shamar-field.text-justify .shamar-combobox__search{text-align:justify}.shamar-boolean-badge{border-radius:9999px;align-items:center;padding:.2rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.shamar-boolean-badge.is-true{background:var(--color-success-soft);color:var(--color-success-strong)}.shamar-boolean-badge.is-false{background:var(--color-badge-neutral);color:var(--color-body-subtle)}.shamar-field[data-field-type=relation],.shamar-m2o,.shamar-m2o__row{width:100%}.shamar-m2o__input{min-height:2.375rem}.shamar-m2o__input.is-readonly{cursor:default;opacity:.85}.shamar-m2o__dropdown{min-width:100%}.shamar-m2o__dropdown li[role=option],.shamar-m2m__dropdown li[role=option],.shamar-m2m-table li{cursor:pointer}.shamar-m2o__dropdown svg,.shamar-m2m__dropdown svg,.shamar-m2m-table svg{flex-shrink:0;width:.875rem;height:.875rem}.shamar-m2o__clear svg,.shamar-m2m .shamar-chip__remove svg{flex-shrink:0;width:.75rem;height:.75rem}.shamar-m2o__open{align-self:stretch}.shamar-m2m{width:100%}.shamar-m2m__box{cursor:text}.shamar-m2m__box.is-readonly{cursor:default;opacity:.85}.shamar-m2m__box.is-open{border-color:var(--color-fg-brand,currentColor)}.shamar-m2m__input{min-height:1.25rem}.shamar-m2m__dropdown{min-width:100%}.shamar-chip{line-height:1.25}.shamar-m2m-checkboxes,.shamar-m2m-table{width:100%}.shamar-m2m-table__card{overflow:visible}.shamar-m2m-table__toolbar{z-index:2;position:relative}.shamar-m2m-table__add{position:relative}.shamar-m2m-table__add-dropdown{z-index:50}.shamar-form-section:has(.shamar-m2m-table),.shamar-form-section:has(.shamar-m2o),.shamar-form-section:has(.shamar-m2m){overflow:visible}.shamar-m2m-checkboxes__body--framed{border:1px solid var(--color-default);border-radius:.5rem;max-height:28rem;padding:.5rem;overflow:auto}.shamar-m2m-checkboxes__body--open{border:0;max-height:none;padding:0;overflow:visible}.shamar-m2m-checkboxes__list{grid-template-columns:repeat(var(--shamar-checkbox-cols,1), minmax(0, 1fr));gap:.125rem .5rem;display:grid}.shamar-m2m-checkboxes__clusters{grid-template-columns:repeat(var(--shamar-checkbox-cols,1), minmax(0, 1fr));align-items:start;gap:.625rem;display:grid}.shamar-m2m-checkboxes__cluster{border:1px solid var(--color-default);background:var(--color-neutral-primary);border-radius:.5rem;flex-direction:column;min-width:0;display:flex;overflow:hidden}.shamar-m2m-checkboxes__cluster-header{border-bottom:1px solid var(--color-default);background:var(--color-surface-header,var(--color-neutral-secondary,transparent));justify-content:space-between;align-items:flex-start;gap:.5rem;padding:.5rem .625rem;display:flex}.shamar-m2m-checkboxes__cluster-count{color:var(--color-body-subtle);font-variant-numeric:tabular-nums;font-size:.65rem;line-height:1.25}.shamar-m2m-checkboxes__cluster-body{flex-direction:column;gap:.0625rem;padding:.375rem;display:flex}.shamar-m2m-checkboxes__clusters--cols-1,.shamar-m2m-checkboxes__list--cols-1{--shamar-checkbox-cols:1}.shamar-m2m-checkboxes__clusters--cols-2,.shamar-m2m-checkboxes__list--cols-2{--shamar-checkbox-cols:2}.shamar-m2m-checkboxes__clusters--cols-3,.shamar-m2m-checkboxes__list--cols-3{--shamar-checkbox-cols:3}.shamar-m2m-checkboxes__clusters--cols-4,.shamar-m2m-checkboxes__list--cols-4{--shamar-checkbox-cols:4}@media (max-width:1024px){.shamar-m2m-checkboxes__clusters--cols-3,.shamar-m2m-checkboxes__clusters--cols-4{--shamar-checkbox-cols:2}}@media (max-width:640px){.shamar-m2m-checkboxes__clusters,.shamar-m2m-checkboxes__list{--shamar-checkbox-cols:1!important}}.shamar-list-refresh{border:1px solid var(--color-default);background:var(--color-neutral-primary);width:2.25rem;height:2.25rem;color:var(--color-body-subtle);border-radius:.5rem;justify-content:center;align-items:center;transition:color .15s,border-color .15s,background-color .15s,box-shadow .15s;display:inline-flex}.shamar-list-refresh:hover{color:var(--color-fg-brand);border-color:var(--color-fg-brand);background:var(--color-brand-softer)}.shamar-list-refresh.is-auto{color:var(--color-fg-brand);border-color:var(--color-fg-brand);background:var(--color-brand-softer);box-shadow:0 0 0 1px #f1511b59}@supports (color:color-mix(in lab, red, red)){.shamar-list-refresh.is-auto{box-shadow:0 0 0 1px color-mix(in srgb, var(--color-fg-brand) 35%, transparent)}}.shamar-list-refresh:disabled,.shamar-list-refresh.is-busy{cursor:wait;opacity:.55;pointer-events:none}.shamar-list-refresh.is-auto .shamar-list-refresh__icon,.shamar-list-refresh.is-busy .shamar-list-refresh__icon{animation:1.25s linear infinite shamar-refresh-spin}@keyframes shamar-refresh-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.shamar-list-refresh.is-auto .shamar-list-refresh__icon{animation:none}}.shamar-form-grid.is-dense,.shamar-detail-grid.is-dense{gap:.5rem}.shamar-form-grid.is-gapless,.shamar-detail-grid.is-gapless{gap:0}.shamar-tabs{flex-direction:column;gap:0;display:flex}.shamar-tabs--contained{border:1px solid var(--color-card-border);background:var(--color-neutral-primary);border-radius:.75rem;overflow:hidden}.shamar-tabs--vertical{flex-direction:row;align-items:stretch}.shamar-tabs__list{border-bottom:1px solid var(--color-card-border);background:var(--color-surface-header,var(--color-neutral-secondary));gap:.25rem;padding:.5rem;display:flex;overflow-x:auto}.shamar-tabs--vertical .shamar-tabs__list{border-bottom:0;border-right:1px solid var(--color-card-border);flex-direction:column;min-width:10rem}.shamar-tabs__tab{color:var(--color-body-subtle);cursor:pointer;background:0 0;border:0;border-radius:.5rem;align-items:center;gap:.4rem;padding:.45rem .75rem;font-size:.8125rem;font-weight:550;display:inline-flex}.shamar-tabs__tab.is-active{color:var(--color-heading);background:var(--color-neutral-primary);box-shadow:0 0 0 1px var(--color-card-border)}.shamar-tabs__badge{background:var(--color-brand-soft);color:var(--color-fg-brand);border-radius:999px;padding:.1rem .4rem;font-size:.7rem}.shamar-tabs__panels{flex:1;padding:1rem}.shamar-wizard{padding:1rem}.shamar-wizard__steps{flex-wrap:wrap;gap:.75rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.shamar-wizard__step{color:var(--color-body-subtle);align-items:center;gap:.4rem;font-size:.8125rem;display:inline-flex}.shamar-wizard__step.is-active{color:var(--color-heading);font-weight:600}.shamar-wizard__step.is-done{color:var(--color-fg-brand)}.shamar-wizard__index{background:var(--color-neutral-secondary);border-radius:999px;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;display:inline-flex}.shamar-wizard__step.is-active .shamar-wizard__index{background:var(--color-fg-brand);color:#fff}.shamar-wizard__description{color:var(--color-body-subtle);margin:0 0 .75rem;font-size:.875rem}.shamar-wizard__nav{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.shamar-wizard__btn{border:1px solid var(--color-card-border);background:var(--color-neutral-primary);cursor:pointer;border-radius:.5rem;padding:.4rem .85rem;font-size:.8125rem}.shamar-wizard__btn--primary{background:var(--color-fg-brand);color:#fff;border-color:#0000}.shamar-flex{flex-direction:column;gap:1rem;display:flex}@media (min-width:768px){.shamar-flex--from-md{flex-direction:row;align-items:flex-start}}.shamar-flex__item{flex:1 1 0;min-width:0}.shamar-flex__item--fixed{flex:none}.shamar-callout{border:1px solid var(--color-card-border);border-radius:.75rem;padding:.85rem 1rem}.shamar-callout__title{color:var(--color-heading);font-size:.875rem;font-weight:600}.shamar-callout__body{color:var(--color-body-subtle);margin-top:.25rem;font-size:.8125rem}.shamar-callout--info{background:#f1511b14}@supports (color:color-mix(in lab, red, red)){.shamar-callout--info{background:color-mix(in srgb, var(--color-fg-brand) 8%, transparent)}}.shamar-callout--info{border-color:#f1511b4d}@supports (color:color-mix(in lab, red, red)){.shamar-callout--info{border-color:color-mix(in srgb, var(--color-fg-brand) 30%, transparent)}}.shamar-callout--success{background:#16a34a1a}.shamar-callout--warning{background:#d977061a}.shamar-callout--danger{background:#b91c1c1a}@supports (color:color-mix(in lab, red, red)){.shamar-callout--danger{background:color-mix(in srgb, var(--color-fg-danger) 10%, transparent)}}.shamar-empty-state{text-align:center;color:var(--color-body-subtle);padding:2rem 1rem}.shamar-empty-state__title{color:var(--color-heading);margin:0;font-size:1rem}.shamar-empty-state__description{margin:.35rem 0 0;font-size:.875rem}.shamar-placeholder__label{text-transform:uppercase;color:var(--color-heading);font-size:.75rem;font-weight:600}.shamar-placeholder__content{color:var(--color-body);margin-top:.25rem;font-size:.875rem}.shamar-checkbox{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;width:100%;min-width:0;font-size:.875rem;display:flex}.shamar-checkbox--inline{min-height:2.5rem;padding:.375rem 0}.shamar-checkbox.is-disabled{opacity:.55;cursor:not-allowed}.shamar-checkbox__text{flex-direction:column;flex:auto;gap:.15rem;min-width:0;display:flex}.shamar-checkbox__label{color:var(--color-heading);font-size:.875rem;font-weight:500}.shamar-radio__option{align-items:center;gap:.5rem;font-size:.875rem;display:flex}.shamar-radio{flex-direction:column;gap:.5rem;display:flex}.shamar-radio--inline{flex-flow:wrap;gap:.75rem 1.25rem}.shamar-color{align-items:center;gap:.5rem;display:flex}.shamar-color__swatch{border:1px solid var(--color-card-border);cursor:pointer;background:0 0;border-radius:.4rem;width:2.25rem;height:2.25rem;padding:0}.shamar-color__value{cursor:default;min-width:0;color:var(--color-body-subtle);flex:auto}.shamar-color__value:read-only{background:var(--color-surface-inset,var(--color-neutral-secondary))}.shamar-input-affixes{align-items:stretch;gap:.5rem;width:100%;min-width:0;display:flex}.shamar-input-affixes>.shamar-input-group,.shamar-input-affixes>.shamar-input{flex:auto;min-width:0}.shamar-input-affixes--stacked{flex-direction:column;align-items:stretch;gap:.35rem}.shamar-input-affixes__outside{color:var(--color-body-subtle);white-space:nowrap;align-items:center;font-size:.8125rem;font-weight:500;display:inline-flex}.shamar-input-affixes__outside--icon{color:var(--color-heading)}.shamar-input-affixes:not(.shamar-input-affixes--stacked) .shamar-input-affixes__outside{align-self:center}.shamar-color-entry{align-items:center;gap:.4rem;display:inline-flex}.shamar-color-entry__swatch{border:1px solid var(--color-card-border);border-radius:.25rem;width:1rem;height:1rem}.shamar-tags{flex-direction:column;gap:.5rem;display:flex}.shamar-tags__list{flex-wrap:wrap;gap:.35rem;display:flex}.shamar-tags__chip{background:var(--color-brand-soft);color:var(--color-fg-brand);border-radius:999px;align-items:center;gap:.25rem;padding:.15rem .45rem;font-size:.75rem;display:inline-flex}.shamar-tags__remove{cursor:pointer;color:inherit;background:0 0;border:0;line-height:1}.shamar-input-group{align-items:stretch;width:100%;display:flex}.shamar-input-group .shamar-input{flex:1;min-width:0}.shamar-input-group.has-prefix .shamar-input{border-top-left-radius:0;border-bottom-left-radius:0}.shamar-input-group.has-suffix .shamar-input{border-top-right-radius:0;border-bottom-right-radius:0}.shamar-input-group__affix{border:1px solid var(--color-card-border);background:var(--color-surface-header,var(--color-neutral-secondary));color:var(--color-body-subtle);white-space:nowrap;align-items:center;padding:0 .75rem;font-size:.8125rem;display:inline-flex}.shamar-input-group.has-prefix .shamar-input-group__affix:first-child{border-right:0;border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.shamar-input-group.has-suffix .shamar-input-group__affix:last-child{border-left:0;border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.shamar-badge{background:var(--color-brand-soft);color:var(--color-fg-brand);border-radius:999px;padding:.15rem .5rem;font-size:.75rem;font-weight:550;display:inline-flex}.shamar-badges{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.shamar-copyable{align-items:center;gap:.5rem;display:inline-flex}.shamar-copyable__btn{border:1px solid var(--color-card-border);background:var(--color-neutral-primary);cursor:pointer;border-radius:.35rem;padding:.15rem .4rem;font-size:.75rem}.shamar-image-entry{object-fit:cover;border:1px solid var(--color-card-border);border-radius:.5rem;max-width:8rem;max-height:8rem}.shamar-form-section__header--collapsible{cursor:pointer;-webkit-user-select:none;user-select:none}.shamar-form-section__header--collapsible:hover .shamar-form-section__chevron{color:var(--color-heading);background:var(--color-neutral-primary);border-color:var(--color-card-border)}.shamar-form-section__chevron{width:1.75rem;height:1.75rem;color:var(--color-body-subtle);background:0 0;border:1px solid #0000;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;transition:transform .18s,color .15s,background-color .15s,border-color .15s;display:inline-flex}.shamar-form-section__chevron svg{transition:transform .18s;display:block}.shamar-form-section__chevron.is-open svg{transform:rotate(180deg)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value: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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@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:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
2
+ @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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--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;--tw-duration:initial;--tw-ease:initial}}}@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-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-medium:500;--font-weight-semibold:600;--tracking-wide:.025em;--tracking-wider:.05em;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary-50:#fff4f0;--color-primary-100:#fee9e2;--color-primary-200:#fdc9b8;--color-primary-300:#f89a72;--color-primary-400:#f36d3d;--color-primary-500:#f1511b;--color-primary-600:#e04a18;--color-primary-700:#c94115;--color-primary-800:#a23512;--color-primary-900:#7a280e;--color-primary-950:#451a0a;--color-shamar-primary:#f1511b;--color-shamar-accent:#286291;--color-shamar-muted:#64748b;--color-body:#475569;--color-body-subtle:#64748b;--color-heading:#0f172a;--color-neutral-primary:#fff;--color-neutral-secondary:#fff4f0;--color-neutral-tertiary:#fee9e2;--color-default:#fdc9b8;--color-fg-brand:#f1511b;--color-fg-brand-strong:#a23512;--color-brand-soft:#fee9e2;--color-brand-softer:#fee9e2;--color-fg-danger:#b91c1c;--color-danger-soft:#fef2f2;--color-success-soft:#ecfdf5;--color-success-strong:#047857;--color-warning-soft:#fffbeb;--color-warning-strong:#b45309;--color-toast-success-bg:#059669;--color-toast-success-border:#047857;--color-toast-success-glow:#05966947;--color-toast-success-title:#fff;--color-toast-success-body:#d1fae5;--color-toast-success-icon:#ecfdf5;--color-toast-error-bg:#dc2626;--color-toast-error-border:#b91c1c;--color-toast-error-glow:#dc262647;--color-toast-error-title:#fff;--color-toast-error-body:#fee2e2;--color-toast-error-icon:#fef2f2;--color-toast-warning-bg:#d97706;--color-toast-warning-border:#b45309;--color-toast-warning-glow:#d9770647;--color-toast-warning-title:#fff;--color-toast-warning-body:#fef3c7;--color-toast-warning-icon:#fffbeb;--color-toast-info-bg:#2563eb;--color-toast-info-border:#1d4ed8;--color-toast-info-glow:#2563eb47;--color-toast-info-title:#fff;--color-toast-info-body:#dbeafe;--color-toast-info-icon:#eff6ff;--color-shamar-shell:#fffbfa}@supports (color:color-mix(in lab, red, red)){:root,:host{--color-shamar-shell:color-mix(in srgb, var(--color-primary-50) 35%, #fff)}}:root,:host{--color-card-border:var(--color-gray-200);--color-surface-hover:var(--color-neutral-tertiary);--color-surface-header:#fee9e280}@supports (color:color-mix(in lab, red, red)){:root,:host{--color-surface-header:color-mix(in srgb, var(--color-neutral-tertiary) 50%, transparent)}}:root,:host{--color-surface-inset:#fee9e273}@supports (color:color-mix(in lab, red, red)){:root,:host{--color-surface-inset:color-mix(in srgb, var(--color-neutral-tertiary) 45%, transparent)}}:root,:host{--color-surface-row-hover:#fee9e24d}@supports (color:color-mix(in lab, red, red)){:root,:host{--color-surface-row-hover:color-mix(in srgb, var(--color-neutral-tertiary) 30%, transparent)}}:root,:host{--color-badge-neutral:var(--color-neutral-tertiary)}}@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}::-webkit-calendar-picker-indicator{line-height:1}:-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}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-1\/2{top:50%}.top-full{top:100%}.right-0{right:0}.right-1\.5{right:calc(var(--spacing) * 1.5)}.right-3{right:calc(var(--spacing) * 3)}.left-0{left:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-50{z-index:50}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.shamar-radio{width:1rem;height:1rem;accent-color:var(--color-fg-brand);color:var(--color-fg-brand);cursor:pointer;vertical-align:middle;flex-shrink:0;margin:0}.shamar-radio:focus-visible{outline:none;box-shadow:0 0 0 3px #f1511b47}@supports (color:color-mix(in lab, red, red)){.shamar-radio:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-fg-brand) 28%, transparent)}}.shamar-radio:focus-visible{border-radius:9999px}.shamar-radio:disabled{opacity:.55;cursor:not-allowed}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-auto{margin-top:auto}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.-ml-1\.5{margin-left:calc(var(--spacing) * -1.5)}.ml-1{margin-left:var(--spacing)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-\[2\.375rem\]{height:2.375rem}.h-full{height:100%}.max-h-32{max-height:calc(var(--spacing) * 32)}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-56{max-height:calc(var(--spacing) * 56)}.max-h-72{max-height:calc(var(--spacing) * 72)}.min-h-0{min-height:0}.min-h-\[2\.375rem\]{min-height:2.375rem}.min-h-\[40px\]{min-height:40px}.min-h-\[60px\]{min-height:60px}.min-h-screen{min-height:100vh}.shamar-input{border:1px solid var(--color-default);background-color:var(--color-neutral-primary);width:100%;color:var(--color-heading);accent-color:var(--color-fg-brand);appearance:none;border-radius:.5rem;outline:none;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem}.shamar-input:focus,.shamar-input:focus-visible{border-color:var(--color-fg-brand);box-shadow:0 0 0 3px #f1511b47}@supports (color:color-mix(in lab, red, red)){.shamar-input:focus,.shamar-input:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-fg-brand) 28%, transparent)}}.shamar-input:focus,.shamar-input:focus-visible{outline:none}.shamar-input::placeholder{color:var(--color-body-subtle)}.shamar-input[type=search]::-webkit-search-decoration{appearance:none}.shamar-input[type=search]::-webkit-search-cancel-button{appearance:none}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-16{width:calc(var(--spacing) * 16)}.w-56{width:calc(var(--spacing) * 56)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-auto{width:auto}.w-full{width:100%}.max-w-5xl{max-width:var(--container-5xl)}.max-w-\[9rem\]{max-width:9rem}.max-w-\[12rem\]{max-width:12rem}.max-w-\[120px\]{max-width:120px}.max-w-\[140px\]{max-width:140px}.max-w-\[200px\]{max-width:200px}.max-w-full{max-width:100%}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-\[2\.25rem\]{min-width:2.25rem}.min-w-\[5\.5rem\]{min-width:5.5rem}.min-w-\[7rem\]{min-width:7rem}.min-w-\[10rem\]{min-width:10rem}.min-w-\[120px\]{min-width:120px}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.shamar-select{appearance:none;border:1px solid var(--color-default);background-color:var(--color-neutral-primary);color:var(--color-heading);accent-color:var(--color-fg-brand);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%239ca3af' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19.5 8.25l-7.5 7.5-7.5-7.5'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:.875rem;border-radius:.5rem;outline:none;padding:.4375rem 1.75rem .4375rem .625rem;font-size:.8125rem;line-height:1.25rem}.shamar-select:focus,.shamar-select:focus-visible{border-color:var(--color-fg-brand);box-shadow:0 0 0 3px #f1511b47}@supports (color:color-mix(in lab, red, red)){.shamar-select:focus,.shamar-select:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-fg-brand) 28%, transparent)}}.shamar-select:focus,.shamar-select:focus-visible{outline:none}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.shamar-card{border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);border-radius:.75rem}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-card-border{border-color:var(--color-card-border)}.border-default{border-color:var(--color-default)}.bg-badge-neutral{background-color:var(--color-badge-neutral)}.bg-black\/30{background-color:#0000004d}@supports (color:color-mix(in lab, red, red)){.bg-black\/30{background-color:color-mix(in oklab, var(--color-black) 30%, transparent)}}.bg-brand-softer{background-color:var(--color-brand-softer)}.bg-fg-brand{background-color:var(--color-fg-brand)}.bg-fg-danger{background-color:var(--color-fg-danger)}.bg-neutral-primary{background-color:var(--color-neutral-primary)}.bg-neutral-primary\/50{background-color:#ffffff80}@supports (color:color-mix(in lab, red, red)){.bg-neutral-primary\/50{background-color:color-mix(in oklab, var(--color-neutral-primary) 50%, transparent)}}.bg-neutral-primary\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab, red, red)){.bg-neutral-primary\/90{background-color:color-mix(in oklab, var(--color-neutral-primary) 90%, transparent)}}.bg-shamar-shell{background-color:var(--color-shamar-shell)}.bg-success-soft{background-color:var(--color-success-soft)}.bg-success-strong{background-color:var(--color-success-strong)}.bg-surface-header{background-color:var(--color-surface-header)}.bg-surface-inset{background-color:var(--color-surface-inset)}.bg-transparent{background-color:#0000}.bg-warning-soft{background-color:var(--color-warning-soft)}.bg-warning-strong{background-color:var(--color-warning-strong)}.object-contain{object-fit:contain}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.px-0\.5{padding-inline:calc(var(--spacing) * .5)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-1{padding-top:var(--spacing)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pl-1{padding-left:var(--spacing)}.pl-2{padding-left:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.whitespace-nowrap{white-space:nowrap}.text-body{color:var(--color-body)}.text-body-subtle{color:var(--color-body-subtle)}.text-body-subtle\/50{color:#64748b80}@supports (color:color-mix(in lab, red, red)){.text-body-subtle\/50{color:color-mix(in oklab, var(--color-body-subtle) 50%, transparent)}}.text-fg-brand{color:var(--color-fg-brand)}.text-fg-brand\/70{color:#f1511bb3}@supports (color:color-mix(in lab, red, red)){.text-fg-brand\/70{color:color-mix(in oklab, var(--color-fg-brand) 70%, transparent)}}.text-fg-danger{color:var(--color-fg-danger)}.text-heading{color:var(--color-heading)}.text-success-strong{color:var(--color-success-strong)}.text-warning-strong{color:var(--color-warning-strong)}.text-white{color:var(--color-white)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);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,)}.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,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:text-fg-brand:is(:where(.group):hover *){color:var(--color-fg-brand)}}.placeholder\:text-body-subtle::placeholder{color:var(--color-body-subtle)}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.last\:border-r-0:last-child{border-right-style:var(--tw-border-style);border-right-width:0}.focus-within\:border-fg-brand:focus-within{border-color:var(--color-fg-brand)}.focus-within\:ring-2:focus-within{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-within\:ring-fg-brand:focus-within{--tw-ring-color:var(--color-fg-brand)}@media (hover:hover){.hover\:border-fg-brand:hover{border-color:var(--color-fg-brand)}.hover\:bg-danger-soft:hover{background-color:var(--color-danger-soft)}.hover\:bg-neutral-secondary:hover{background-color:var(--color-neutral-secondary)}.hover\:bg-surface-hover:hover{background-color:var(--color-surface-hover)}.hover\:bg-surface-row-hover:hover{background-color:var(--color-surface-row-hover)}.hover\:text-fg-brand:hover{color:var(--color-fg-brand)}.hover\:text-fg-danger:hover{color:var(--color-fg-danger)}.hover\:text-heading:hover{color:var(--color-heading)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}}.focus\:ring-0:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}@media (min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.sm\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.sm\:border-card-border{border-color:var(--color-card-border)}}@media (min-width:48rem){.md\:relative{position:relative}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:translate-x-0{--tw-translate-x:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.md\:flex-row{flex-direction:row}.md\:p-4{padding:calc(var(--spacing) * 4)}.md\:px-6{padding-inline:calc(var(--spacing) * 6)}}@media (min-width:64rem){.lg\:flex-row{flex-direction:row}.lg\:items-start{align-items:flex-start}.lg\:justify-between{justify-content:space-between}}@media (min-width:80rem){.xl\:col-span-3{grid-column:span 3/span 3}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.dark\:block:where(.dark,.dark *){display:block}.dark\:hidden:where(.dark,.dark *){display:none}}.dark{--color-body:var(--color-gray-300);--color-body-subtle:var(--color-gray-400);--color-heading:#f3f4f6;--color-neutral-primary:var(--color-gray-900);--color-neutral-secondary:var(--color-gray-800);--color-neutral-tertiary:#151c28;--color-default:var(--color-gray-700);--color-fg-brand:var(--color-primary-500);--color-fg-brand-strong:var(--color-primary-400);--color-brand-soft:var(--color-primary-900);--color-brand-softer:var(--color-primary-950);--color-shamar-shell:var(--color-gray-800);--color-card-border:#4b55638c}@supports (color:color-mix(in lab, red, red)){.dark{--color-card-border:color-mix(in srgb, var(--color-gray-600) 55%, transparent)}}.dark{--color-fg-danger:#f87171;--color-danger-soft:#450a0a;--color-success-soft:#064e3b;--color-success-strong:#6ee7b7;--color-warning-soft:#451a03;--color-warning-strong:#fcd34d;--color-toast-success-bg:#065f46;--color-toast-success-border:#047857;--color-toast-success-glow:#10b98138;--color-toast-success-title:#ecfdf5;--color-toast-success-body:#a7f3d0;--color-toast-success-icon:#d1fae5;--color-toast-error-bg:#991b1b;--color-toast-error-border:#b91c1c;--color-toast-error-glow:#f8717133;--color-toast-error-title:#fef2f2;--color-toast-error-body:#fecaca;--color-toast-error-icon:#fee2e2;--color-toast-warning-bg:#92400e;--color-toast-warning-border:#b45309;--color-toast-warning-glow:#fbbf242e;--color-toast-warning-title:#fffbeb;--color-toast-warning-body:#fde68a;--color-toast-warning-icon:#fef3c7;--color-toast-info-bg:#1e40af;--color-toast-info-border:#1d4ed8;--color-toast-info-glow:#60a5fa2e;--color-toast-info-title:#eff6ff;--color-toast-info-body:#bfdbfe;--color-toast-info-icon:#dbeafe;--color-surface-hover:#242d3c}@supports (color:color-mix(in lab, red, red)){.dark{--color-surface-hover:color-mix(in srgb, var(--color-gray-700) 50%, var(--color-gray-900))}}.dark{--color-surface-header:#1a2331}@supports (color:color-mix(in lab, red, red)){.dark{--color-surface-header:color-mix(in srgb, var(--color-gray-800) 65%, var(--color-gray-900))}}.dark{--color-surface-inset:#192130}@supports (color:color-mix(in lab, red, red)){.dark{--color-surface-inset:color-mix(in srgb, var(--color-gray-800) 55%, var(--color-gray-900))}}.dark{--color-surface-row-hover:#1e2636}@supports (color:color-mix(in lab, red, red)){.dark{--color-surface-row-hover:color-mix(in srgb, var(--color-gray-700) 35%, var(--color-gray-900))}}.dark{--color-badge-neutral:#222a3a}@supports (color:color-mix(in lab, red, red)){.dark{--color-badge-neutral:color-mix(in srgb, var(--color-gray-700) 45%, var(--color-gray-900))}}:where(.dark,.dark *){color-scheme:dark}:where(html),:where(.dark,.dark *),input[type=checkbox],input[type=radio],input[type=range],input[type=color],progress,meter{accent-color:var(--color-fg-brand)}input[type=checkbox],input[type=radio]{width:1rem;height:1rem;color:var(--color-fg-brand);accent-color:var(--color-fg-brand);cursor:pointer;vertical-align:middle;flex-shrink:0;margin:0}input[type=checkbox]{appearance:none;border:1.5px solid var(--color-default);background-color:var(--color-neutral-primary);background-position:50%;background-repeat:no-repeat;background-size:.7rem;border-radius:.3rem;transition:background-color .12s,border-color .12s,box-shadow .12s}input[type=checkbox]:hover:not(:disabled){border-color:#f68762}@supports (color:color-mix(in lab, red, red)){input[type=checkbox]:hover:not(:disabled){border-color:color-mix(in srgb, var(--color-fg-brand) 55%, var(--color-default))}}input[type=checkbox]:checked{background-color:var(--color-fg-brand);border-color:var(--color-fg-brand);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5 6.5 11.5 12.5 4.5'/%3E%3C/svg%3E")}input[type=checkbox]:indeterminate{background-color:var(--color-fg-brand);border-color:var(--color-fg-brand);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M3.5 8h9'/%3E%3C/svg%3E")}input[type=radio]{border-radius:9999px}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:none;box-shadow:0 0 0 3px #f1511b47}@supports (color:color-mix(in lab, red, red)){input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-fg-brand) 28%, transparent)}}input[type=checkbox]:disabled,input[type=radio]:disabled{opacity:.55;cursor:not-allowed}[x-cloak]{display:none!important}a[href],button:not(:disabled),[role=button]:not([aria-disabled=true]),[role=tab],label[for],label:has(input,select,textarea),summary,select,input[type=checkbox],input[type=radio],.shamar-interactive{cursor:pointer}button:disabled,[aria-disabled=true]{cursor:not-allowed}.nav-item{color:var(--color-body)}@media (hover:hover){.nav-item:hover{background-color:var(--color-primary-100);color:var(--color-fg-brand)}}.nav-item.nav-active{background-color:var(--color-primary-200);color:var(--color-fg-brand-strong);font-weight:600}:where(.dark,.dark *) .nav-item:hover{background-color:var(--color-surface-hover);color:var(--color-heading)}:where(.dark,.dark *) .nav-item.nav-active{background-color:var(--color-surface-inset);color:var(--color-fg-brand);font-weight:600}fieldset.shamar-card{border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);min-width:0;margin:0}:where(.dark,.dark *) .shamar-card,:where(.dark,.dark *) fieldset.shamar-card{background-color:var(--color-neutral-primary)}.shamar-form-section__header{border-bottom:1px solid var(--color-card-border);background-color:var(--color-surface-header,var(--color-neutral-secondary));align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;display:flex}.shamar-form-section__header--centered{align-items:center}.shamar-form-section__icon{width:2rem;height:2rem;color:var(--color-fg-brand);background-color:var(--color-brand-soft);border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.shamar-form-section__titles{flex-direction:column;justify-content:center;min-width:0;display:flex}.shamar-form-section__title{color:var(--color-heading);margin:0;font-size:.875rem;font-weight:600;line-height:1.35}.shamar-form-section__description{color:var(--color-body-subtle,var(--color-shamar-muted));margin:.25rem 0 0;font-size:.8125rem;line-height:1.4}.shamar-form-section__body{padding:1.25rem 1.25rem 1.75rem}.shamar-wizard__panel{padding-bottom:.5rem}.shamar-radio{padding-bottom:.15rem}.shamar-form-fieldset{border:1px solid var(--color-card-border);background-color:#0000;border-radius:.75rem;min-width:0;margin:0;padding:.75rem 1rem 1rem}.shamar-form-fieldset--card{background-color:var(--color-neutral-primary)}.shamar-form-section--plain{border:1px solid var(--color-card-border);background-color:#0000}.shamar-form-fieldset__legend{color:var(--color-heading);padding:0 .35rem;font-size:.8125rem;font-weight:600}.shamar-form-fieldset__description{color:var(--color-body-subtle,var(--color-shamar-muted));margin:0 0 .75rem;font-size:.8125rem}:where(.dark,.dark *) .shamar-form-fieldset{border-color:var(--color-card-border)}.shamar-dialog-backdrop{z-index:50;background-color:#0006;position:fixed;inset:0}.shamar-dialog-panel{z-index:51;border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);border-radius:.75rem;flex-direction:column;max-width:calc(100vw - 1.5rem);max-height:calc(100vh - 1.5rem);display:flex;position:fixed;top:50%;left:50%;overflow:hidden}.shamar-dialog-panel.is-fullscreen{max-width:none;max-height:none;width:auto!important;height:auto!important;inset:.75rem!important;transform:none!important}.shamar-dialog-panel.is-prompt{max-height:calc(100vh - 1.5rem);width:min(28rem,100vw - 1.5rem)!important;height:auto!important}.shamar-dialog-header{border-bottom:1px solid var(--color-card-border);cursor:move;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;padding:.625rem .875rem;display:flex}.shamar-dialog-body{flex:1;min-height:0;padding:1rem;overflow:auto}.shamar-embed-section+.shamar-embed-section{border-top:1px solid var(--color-card-border);margin-top:1.25rem;padding-top:1.25rem}.shamar-embed-section__header{margin-bottom:1rem}.shamar-embed-section .shamar-field--readonly .shamar-field__value{background:0 0;border:0;padding:0}.shamar-dialog-footer{border-top:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);flex-shrink:0;justify-content:flex-end;align-items:center;gap:.5rem;padding:.75rem .875rem;display:flex}.shamar-dialog-body--prompt{padding-top:1.25rem;padding-bottom:1.25rem}.shamar-dialog-prompt-icon{border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;display:flex}.shamar-dialog-prompt-icon.is-danger{background-color:var(--color-danger-soft);color:var(--color-fg-danger)}.shamar-dialog-prompt-icon.is-warning{background-color:var(--color-warning-soft);color:var(--color-warning-strong)}.shamar-dialog-prompt-icon.is-info{background-color:var(--color-brand-soft);color:var(--color-fg-brand)}.shamar-dialog-prompt-icon.is-success{background-color:var(--color-success-soft);color:var(--color-success-strong)}.shamar-bulk-bar{border-top:1px solid var(--color-card-border);background-color:var(--color-surface-header,var(--color-neutral-primary));flex-wrap:wrap;align-items:center;gap:.75rem 1rem;padding:.625rem 1rem;display:flex}.shamar-bulk-bar__meta{flex-wrap:wrap;align-items:center;gap:.5rem .75rem;min-width:0;display:flex}.shamar-bulk-bar__count{color:var(--color-body);font-size:.875rem;font-weight:500}.shamar-bulk-bar__link{color:var(--color-body-subtle);cursor:pointer;background:0 0;border:0;padding:0;font-size:.75rem;text-decoration:underline}.shamar-bulk-bar__link:hover{color:var(--color-fg-brand)}.shamar-bulk-menu{position:relative}.shamar-bulk-menu__trigger{border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);color:var(--color-body);cursor:pointer;border-radius:.375rem;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.875rem;font-weight:500;display:inline-flex}.shamar-bulk-menu__trigger:hover{background-color:var(--color-surface-hover)}.shamar-bulk-menu__trigger[aria-expanded=true]{border-color:var(--color-fg-brand);color:var(--color-heading)}.shamar-bulk-menu__chevron{width:.875rem;height:.875rem;transition:transform .12s}.shamar-bulk-menu__chevron.is-open{transform:rotate(180deg)}.shamar-bulk-menu__panel{z-index:50;border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);border-radius:.5rem;min-width:12rem;padding:.25rem;position:absolute;top:calc(100% + .25rem);left:0;box-shadow:0 10px 24px #0000001f}.shamar-bulk-menu__item{text-align:left;width:100%;color:var(--color-body);cursor:pointer;background:0 0;border:0;border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem;display:block}.shamar-bulk-menu__item:hover{background-color:var(--color-surface-hover);color:var(--color-heading)}.shamar-bulk-menu__item.is-danger{color:var(--color-fg-danger)}.shamar-bulk-menu__item.is-danger:hover{background-color:var(--color-danger-soft);color:var(--color-fg-danger)}.shamar-chip{background-color:var(--color-brand-soft);max-width:100%;color:var(--color-fg-brand);border-radius:.375rem;align-items:center;gap:.25rem;padding:.125rem .25rem .125rem .5rem;font-size:.75rem;font-weight:500;display:inline-flex}.shamar-chip--group{background-color:var(--color-badge-neutral,var(--color-surface-hover));color:var(--color-heading)}.shamar-chip__remove{color:inherit;cursor:pointer;background:0 0;border:0;border-radius:.25rem;justify-content:center;align-items:center;padding:.125rem;display:inline-flex}.shamar-chip__remove:hover{background-color:currentColor}@supports (color:color-mix(in lab, red, red)){.shamar-chip__remove:hover{background-color:color-mix(in srgb, currentColor 16%, transparent)}}.shamar-list-card{overflow:visible}.shamar-list-toolbar,.shamar-bulk-bar{z-index:20;position:relative}.shamar-list-table-scroll{z-index:0;border-bottom-right-radius:.75rem;border-bottom-left-radius:.75rem;position:relative;overflow-x:auto}.shamar-toolbar-menu{position:relative}.shamar-toolbar-btn{border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);color:var(--color-body);cursor:pointer;border-radius:.375rem;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.875rem;font-weight:500;display:inline-flex}.shamar-toolbar-btn:hover{background-color:var(--color-surface-hover)}.shamar-toolbar-btn.is-active{border-color:var(--color-fg-brand);color:var(--color-heading)}.shamar-toolbar-btn__badge{background-color:var(--color-fg-brand);color:#fff;border-radius:9999px;justify-content:center;align-items:center;min-width:1.25rem;height:1.25rem;padding:0 .35rem;font-size:.6875rem;font-weight:700;display:inline-flex}.shamar-toolbar-panel{z-index:50;border:1px solid var(--color-card-border);background-color:var(--color-neutral-primary);border-radius:.625rem;width:min(18rem,100vw - 2rem);position:absolute;top:calc(100% + .35rem);right:0;overflow:hidden;box-shadow:0 12px 28px #00000024}.shamar-toolbar-panel__head{justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem .875rem .5rem;display:flex}.shamar-toolbar-panel__list{max-height:18rem;padding:.25rem;overflow:auto}.shamar-toolbar-panel__item{text-align:left;width:100%;color:var(--color-body);cursor:pointer;background:0 0;border:0;border-radius:.375rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.55rem .75rem;font-size:.875rem;display:flex}.shamar-toolbar-panel__item:hover,.shamar-toolbar-panel__item.is-selected{background-color:var(--color-surface-hover);color:var(--color-heading)}.shamar-toolbar-panel__back{border:0;border-bottom:1px solid var(--color-card-border);width:100%;color:var(--color-heading);cursor:pointer;background:0 0;align-items:center;gap:.35rem;padding:.65rem .875rem;font-size:.8125rem;font-weight:600;display:inline-flex}.shamar-toolbar-panel__back:hover{background-color:var(--color-surface-hover)}.shamar-list-group__cell{background:color-mix(in srgb, color-mix(in srgb, var(--color-neutral-tertiary) 50%, transparent) 88%, transparent);padding:.5rem 1rem}@supports (color:color-mix(in lab, red, red)){.shamar-list-group__cell{background:color-mix(in srgb, var(--color-surface-header,#f5f5f5) 88%, transparent)}}.shamar-list-group__cell{border-top:1px solid var(--color-card-border)}.shamar-list-group__label{letter-spacing:.02em;text-transform:uppercase;color:var(--color-heading);font-size:.75rem;font-weight:700}.shamar-list-group__count{color:var(--color-body-subtle);margin-left:.5rem;font-size:.75rem}.shamar-list-group__count:before{content:"· "}.shamar-secret-reveal{border:1px solid var(--color-card-border);background-color:var(--color-neutral-secondary,var(--color-neutral-primary));border-radius:.5rem;align-items:stretch;gap:.5rem;margin-top:.25rem;display:flex;overflow:hidden}.shamar-secret-reveal__value{word-break:break-all;min-width:0;color:var(--color-heading);flex:1;padding:.75rem .875rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.75rem;line-height:1.4}.shamar-secret-reveal__copy{border:none;border-left:1px solid var(--color-card-border);color:var(--color-fg-brand);cursor:pointer;background:0 0;flex-shrink:0;align-self:stretch;padding:0 .875rem;font-size:.8125rem;font-weight:600}.shamar-secret-reveal__copy:hover{background-color:var(--color-surface-hover)}.shamar-dialog-resize-handle{cursor:nwse-resize;width:1rem;height:1rem;position:absolute;bottom:0;right:0}#shamar-toast-stack{z-index:60;pointer-events:none;flex-direction:column;gap:.75rem;width:min(26rem,100vw - 2rem);display:flex;position:fixed;top:1rem;right:1rem}.shamar-toast{pointer-events:auto;box-shadow:0 18px 40px -16px var(--shamar-toast-glow,#0f172a2e), 0 8px 16px -12px #0f172a29;opacity:0;border:1px solid #0000;border-radius:.9rem;align-items:flex-start;gap:.875rem;padding:.95rem 1rem;transition:opacity .2s,transform .2s;display:flex;transform:translate(.75rem)scale(.98)}.shamar-toast.is-visible{opacity:1;transform:translate(0)scale(1)}.shamar-toast--success{background:var(--color-toast-success-bg);border-color:var(--color-toast-success-border);--shamar-toast-glow:var(--color-toast-success-glow)}.shamar-toast--error{background:var(--color-toast-error-bg);border-color:var(--color-toast-error-border);--shamar-toast-glow:var(--color-toast-error-glow)}.shamar-toast--warning{background:var(--color-toast-warning-bg);border-color:var(--color-toast-warning-border);--shamar-toast-glow:var(--color-toast-warning-glow)}.shamar-toast--info{background:var(--color-toast-info-bg);border-color:var(--color-toast-info-border);--shamar-toast-glow:var(--color-toast-info-glow)}.shamar-toast__icon{width:2.25rem;height:2.25rem;color:var(--shamar-toast-icon,#fff);background:#ffffff29;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.shamar-toast--success .shamar-toast__icon{--shamar-toast-icon:var(--color-toast-success-icon)}.shamar-toast--error .shamar-toast__icon{--shamar-toast-icon:var(--color-toast-error-icon)}.shamar-toast--warning .shamar-toast__icon{--shamar-toast-icon:var(--color-toast-warning-icon)}.shamar-toast--info .shamar-toast__icon{--shamar-toast-icon:var(--color-toast-info-icon)}.shamar-toast__icon svg{width:1.15rem;height:1.15rem}.shamar-toast__content{flex:1;min-width:0;padding-top:.1rem}.shamar-toast__title{letter-spacing:-.01em;color:var(--shamar-toast-title,#fff);margin:0;font-size:.95rem;font-weight:700;line-height:1.35}.shamar-toast--success .shamar-toast__title{--shamar-toast-title:var(--color-toast-success-title)}.shamar-toast--error .shamar-toast__title{--shamar-toast-title:var(--color-toast-error-title)}.shamar-toast--warning .shamar-toast__title{--shamar-toast-title:var(--color-toast-warning-title)}.shamar-toast--info .shamar-toast__title{--shamar-toast-title:var(--color-toast-info-title)}.shamar-toast__body{color:var(--shamar-toast-body,#ffffffe0);margin:.2rem 0 0;font-size:.875rem;line-height:1.5}.shamar-toast--success .shamar-toast__body{--shamar-toast-body:var(--color-toast-success-body)}.shamar-toast--error .shamar-toast__body{--shamar-toast-body:var(--color-toast-error-body)}.shamar-toast--warning .shamar-toast__body{--shamar-toast-body:var(--color-toast-warning-body)}.shamar-toast--info .shamar-toast__body{--shamar-toast-body:var(--color-toast-info-body)}.shamar-toast__dismiss{width:1.75rem;height:1.75rem;color:var(--shamar-toast-body,#ffffffe0);cursor:pointer;background:0 0;border:0;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;margin:-.15rem -.15rem 0 0;font-size:1.15rem;line-height:1;transition:background-color .15s,color .15s;display:inline-flex}.shamar-toast__dismiss:hover{color:var(--shamar-toast-title,#fff);background:#ffffff1f}.shamar-kanban-grid{grid-template-columns:repeat(1,minmax(0,1fr));gap:1rem;display:grid}@media (min-width:640px){.shamar-kanban-grid{grid-template-columns:repeat(min(2, var(--shamar-kanban-cols,4)), minmax(0, 1fr))}}@media (min-width:768px){.shamar-kanban-grid{grid-template-columns:repeat(min(3, var(--shamar-kanban-cols,4)), minmax(0, 1fr))}}@media (min-width:1024px){.shamar-kanban-grid{grid-template-columns:repeat(var(--shamar-kanban-cols,4), minmax(0, 1fr))}}.shamar-kanban-board{align-items:stretch;gap:1rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.shamar-kanban-column{border:1px solid var(--color-border-default,#0000001a);background:var(--color-surface-header,#00000008);border-radius:.75rem;flex-direction:column;flex:0 0 min(18rem,85vw);min-height:16rem;max-height:min(70vh,42rem);display:flex}.shamar-kanban-column__header{border-bottom:1px solid var(--color-border-default,#00000014);justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem .875rem;display:flex}.shamar-kanban-column__title{color:var(--color-text-heading,inherit);text-transform:capitalize;margin:0;font-size:.8125rem;font-weight:600}.shamar-kanban-column__count{color:var(--color-text-body-subtle,#00000073);font-variant-numeric:tabular-nums;font-size:.75rem}.shamar-kanban-column__body{flex-direction:column;flex:auto;gap:.75rem;padding:.75rem;display:flex;overflow-y:auto}.shamar-kanban-column__empty{text-align:center;color:var(--color-text-body-subtle,#00000073);margin:0;padding:1.5rem .5rem;font-size:.8125rem}select.shamar-select option,select.shamar-input option{background-color:var(--color-neutral-primary);color:var(--color-heading)}.shamar-form-grid{grid-template-columns:repeat(var(--shamar-form-cols,2), minmax(0, 1fr));gap:1.25rem;display:grid}.shamar-detail-grid{grid-template-columns:repeat(var(--shamar-detail-cols,2), minmax(0, 1fr));gap:0;display:grid}@media (max-width:639px){.shamar-form-grid,.shamar-detail-grid{grid-template-columns:1fr}.shamar-field-cell,.shamar-detail-cell{grid-column:1/-1!important}}.shamar-field-cell,.shamar-detail-cell{min-width:0}.shamar-detail__label{letter-spacing:.02em;text-transform:uppercase;color:var(--color-heading);margin:0;font-size:.75rem;font-weight:650;display:block}.shamar-detail__label-row,.shamar-field__label-row{justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.5rem;display:flex}.shamar-detail__label-row{margin-bottom:0}.shamar-detail__label-row .shamar-detail__label{flex:auto;min-width:0}.shamar-field__label-row .shamar-field__label{flex:auto;min-width:0;margin-bottom:0}.shamar-field__label{color:var(--color-heading);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.shamar-field__required{color:var(--color-fg-danger)}.shamar-field__hint{text-align:right;max-width:55%;color:var(--color-body-subtle);flex:0 auto;margin:0;font-size:.75rem;font-weight:500;line-height:1.35}.shamar-field__help{color:var(--color-body-subtle);margin-top:.5rem;font-size:.75rem;line-height:1.4}.shamar-field__error{color:var(--color-fg-danger);margin-top:.375rem;font-size:.75rem;line-height:1.4}.shamar-field.is-invalid .shamar-field__label{color:var(--color-fg-danger)}.shamar-input.is-invalid,.shamar-select.is-invalid,.shamar-m2m-checkboxes.is-invalid,[data-shamar-m2o-config].is-invalid,[data-shamar-m2m-config].is-invalid{border-color:var(--color-fg-danger)}.shamar-input.is-invalid:focus,.shamar-select.is-invalid:focus{outline-color:var(--color-fg-danger);border-color:var(--color-fg-danger)}.shamar-field__value{color:var(--color-body);font-size:.875rem;line-height:1.5}.shamar-textarea-entry{border:1px solid var(--color-card-border);background:var(--color-surface-inset);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-all;border-radius:.5rem;max-height:24rem;margin:0;padding:.625rem .75rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.8125rem;line-height:1.45;display:block;overflow:auto}.shamar-field--readonly .shamar-field__value{border:1px solid var(--color-card-border);background:var(--color-surface-inset);border-radius:.5rem;padding:.625rem .75rem}.shamar-input-group__affix--icon,.shamar-input-group__affix--action{padding:0 .65rem}.shamar-input-group__affix--action{cursor:pointer;background:var(--color-neutral-primary);color:var(--color-body-subtle)}.shamar-input-group__affix--action:hover{color:var(--color-heading);background:var(--color-surface-hover,var(--color-neutral-secondary))}.shamar-field__counter{color:var(--color-body-subtle);text-align:right;margin:.35rem 0 0;font-size:.75rem}.shamar-input--file{padding:.4rem .5rem}.shamar-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.75rem;width:100%;min-width:0;display:flex;position:relative}.shamar-toggle--inline{min-height:2.5rem;padding:.375rem 0}.shamar-toggle__text{flex-direction:column;flex:auto;gap:.15rem;min-width:0;display:flex}.shamar-toggle.is-disabled{opacity:.55;cursor:not-allowed}.shamar-toggle__input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shamar-toggle__track{background:var(--color-gray-300);border:1px solid #9ca3afb3;border-radius:9999px;flex-shrink:0;width:2.75rem;height:1.5rem;position:relative}@supports (color:color-mix(in lab, red, red)){.shamar-toggle__track{border:1px solid color-mix(in srgb, var(--color-gray-400) 70%, transparent)}}.shamar-toggle__track{transition:background-color .18s,border-color .18s,box-shadow .18s}:where(.dark,.dark *) .shamar-toggle__track{background:var(--color-gray-700);border-color:var(--color-gray-600)}.shamar-toggle__thumb{background:#fff;border-radius:9999px;width:1.125rem;height:1.125rem;transition:transform .18s;position:absolute;top:.125rem;left:.125rem;box-shadow:0 1px 3px #0f172a2e}.shamar-toggle__input:focus-visible+.shamar-toggle__track{border-color:var(--color-fg-brand);box-shadow:0 0 0 3px #f1511b47}@supports (color:color-mix(in lab, red, red)){.shamar-toggle__input:focus-visible+.shamar-toggle__track{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-fg-brand) 28%, transparent)}}.shamar-toggle__input:focus-visible+.shamar-toggle__track{outline:none}.shamar-toggle__input:checked+.shamar-toggle__track{background:var(--color-fg-brand);border-color:#c14116}@supports (color:color-mix(in lab, red, red)){.shamar-toggle__input:checked+.shamar-toggle__track{border-color:color-mix(in srgb, var(--color-fg-brand) 80%, #000)}}.shamar-toggle__input:checked+.shamar-toggle__track .shamar-toggle__thumb{transform:translate(1.25rem)}.shamar-toggle__label{color:var(--color-heading);font-size:.875rem;font-weight:500}.shamar-boolean{border:1px solid #0000;border-radius:9999px;align-items:center;gap:.4rem;max-width:100%;padding:.2rem .65rem .2rem .3rem;font-size:.8125rem;font-weight:600;line-height:1.2;display:inline-flex}.shamar-boolean--custom{padding-left:.35rem}.shamar-boolean--icon-only{padding:.3rem}.shamar-boolean__mark{background:currentColor;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:1.35rem;height:1.35rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.shamar-boolean__mark{background:color-mix(in srgb, currentColor 14%, transparent)}}.shamar-boolean__glyph{font-size:.8rem;line-height:1}.shamar-boolean__label{letter-spacing:.01em;padding-right:.15rem}.shamar-boolean.is-true{background:var(--color-success-soft);color:var(--color-success-strong);border-color:#0478572e}@supports (color:color-mix(in lab, red, red)){.shamar-boolean.is-true{border-color:color-mix(in srgb, var(--color-success-strong) 18%, transparent)}}.shamar-boolean.is-false{background:var(--color-badge-neutral);color:var(--color-body-subtle);border-color:#e5e7ebcc}@supports (color:color-mix(in lab, red, red)){.shamar-boolean.is-false{border-color:color-mix(in srgb, var(--color-card-border) 80%, transparent)}}.shamar-field .shamar-select,.shamar-field-cell .shamar-select{width:100%;min-width:0;max-width:100%;display:block}.shamar-combobox{width:100%;min-width:0;position:relative}.shamar-combobox__control{border:1px solid var(--color-default);background:var(--color-neutral-primary);cursor:text;border-radius:.5rem;align-items:center;gap:.35rem;width:100%;min-height:2.5rem;padding:.25rem .35rem .25rem .65rem;transition:border-color .15s,box-shadow .15s;display:flex}.shamar-combobox.is-open .shamar-combobox__control,.shamar-combobox__control:focus-within{border-color:var(--color-fg-brand);box-shadow:0 0 0 3px #f1511b47}@supports (color:color-mix(in lab, red, red)){.shamar-combobox.is-open .shamar-combobox__control,.shamar-combobox__control:focus-within{box-shadow:0 0 0 3px color-mix(in srgb, var(--color-fg-brand) 28%, transparent)}}.shamar-combobox.is-invalid .shamar-combobox__control{border-color:var(--color-fg-danger)}.shamar-combobox.is-disabled .shamar-combobox__control{opacity:.55;cursor:not-allowed;background:var(--color-surface-inset,var(--color-neutral-secondary))}.shamar-combobox__chips{flex-wrap:wrap;flex:auto;align-items:center;gap:.35rem;min-width:0;display:flex}.shamar-combobox__chip{background:var(--color-brand-soft);max-width:100%;color:var(--color-fg-brand);border-radius:999px;align-items:center;gap:.2rem;padding:.15rem .2rem .15rem .5rem;font-size:.75rem;font-weight:550;line-height:1.25;display:inline-flex}.shamar-combobox__chip-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.shamar-combobox__chip-remove{width:1.15rem;height:1.15rem;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.shamar-combobox__chip-remove:hover{background:#f1511b2e}@supports (color:color-mix(in lab, red, red)){.shamar-combobox__chip-remove:hover{background:color-mix(in srgb, var(--color-fg-brand) 18%, transparent)}}.shamar-combobox__search{width:auto;min-width:4rem;color:var(--color-heading);box-shadow:none;background:0 0;border:0;outline:none;flex:6rem;margin:0;padding:.3rem 0;font-size:.875rem}.shamar-combobox__search--single{flex:auto;min-width:0}.shamar-combobox__search:disabled{cursor:not-allowed}.shamar-combobox__clear,.shamar-combobox__toggle{width:1.75rem;height:1.75rem;color:var(--color-body-subtle);cursor:pointer;background:0 0;border:0;border-radius:.375rem;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.shamar-combobox__clear:hover,.shamar-combobox__toggle:hover{color:var(--color-heading);background:var(--color-surface-hover,var(--color-neutral-secondary))}.shamar-combobox__toggle{color:var(--color-body-subtle)}.shamar-combobox.is-open .shamar-combobox__toggle{color:var(--color-fg-brand)}.shamar-combobox__dropdown{z-index:40;border:1px solid var(--color-default);background:var(--color-neutral-primary);border-radius:.5rem;max-height:16rem;padding:.35rem;position:absolute;top:calc(100% + .25rem);left:0;right:0;overflow:auto;box-shadow:0 10px 30px #0000001f}.shamar-combobox__option{width:100%;color:var(--color-heading);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.375rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.45rem .6rem;font-size:.875rem;display:flex}.shamar-combobox__option:hover,.shamar-combobox__option.is-active{background:var(--color-surface-hover,var(--color-neutral-secondary))}.shamar-combobox__option.is-selected{color:var(--color-fg-brand);font-weight:550}.shamar-combobox__option-check{color:var(--color-fg-brand);flex-shrink:0}.shamar-combobox__empty{color:var(--color-body-subtle);padding:.65rem .6rem;font-size:.8125rem}.shamar-field.text-right .shamar-input,.shamar-field.text-right .shamar-select,.shamar-field.text-right .shamar-combobox__search{text-align:right}.shamar-field.text-center .shamar-input,.shamar-field.text-center .shamar-select,.shamar-field.text-center .shamar-combobox__search{text-align:center}.shamar-field.text-justify .shamar-input,.shamar-field.text-justify .shamar-select,.shamar-field.text-justify .shamar-combobox__search{text-align:justify}.shamar-boolean-badge{border-radius:9999px;align-items:center;padding:.2rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.shamar-boolean-badge.is-true{background:var(--color-success-soft);color:var(--color-success-strong)}.shamar-boolean-badge.is-false{background:var(--color-badge-neutral);color:var(--color-body-subtle)}.shamar-field[data-field-type=relation],.shamar-m2o,.shamar-m2o__row{width:100%}.shamar-m2o__input{min-height:2.375rem}.shamar-m2o__input.is-readonly{cursor:default;opacity:.85}.shamar-m2o__dropdown{min-width:100%}.shamar-m2o__dropdown li[role=option],.shamar-m2m__dropdown li[role=option],.shamar-m2m-table li{cursor:pointer}.shamar-m2o__dropdown svg,.shamar-m2m__dropdown svg,.shamar-m2m-table svg{flex-shrink:0;width:.875rem;height:.875rem}.shamar-m2o__clear svg,.shamar-m2m .shamar-chip__remove svg{flex-shrink:0;width:.75rem;height:.75rem}.shamar-m2o__open{align-self:stretch}.shamar-m2m{width:100%}.shamar-m2m__box{cursor:text}.shamar-m2m__box.is-readonly{cursor:default;opacity:.85}.shamar-m2m__box.is-open{border-color:var(--color-fg-brand,currentColor)}.shamar-m2m__input{min-height:1.25rem}.shamar-m2m__dropdown{min-width:100%}.shamar-chip{line-height:1.25}.shamar-m2m-checkboxes,.shamar-m2m-table{width:100%}.shamar-m2m-table__card{overflow:visible}.shamar-m2m-table__toolbar{z-index:2;position:relative}.shamar-m2m-table__add{position:relative}.shamar-m2m-table__add-dropdown{z-index:50}.shamar-form-section:has(.shamar-m2m-table),.shamar-form-section:has(.shamar-m2o),.shamar-form-section:has(.shamar-m2m){overflow:visible}.shamar-m2m-checkboxes__body--framed{border:1px solid var(--color-default);border-radius:.5rem;max-height:28rem;padding:.5rem;overflow:auto}.shamar-m2m-checkboxes__body--open{border:0;max-height:none;padding:0;overflow:visible}.shamar-m2m-checkboxes__list{grid-template-columns:repeat(var(--shamar-checkbox-cols,1), minmax(0, 1fr));gap:.125rem .5rem;display:grid}.shamar-m2m-checkboxes__clusters{grid-template-columns:repeat(var(--shamar-checkbox-cols,1), minmax(0, 1fr));align-items:start;gap:.625rem;display:grid}.shamar-m2m-checkboxes__cluster{border:1px solid var(--color-default);background:var(--color-neutral-primary);border-radius:.5rem;flex-direction:column;min-width:0;display:flex;overflow:hidden}.shamar-m2m-checkboxes__cluster-header{border-bottom:1px solid var(--color-default);background:var(--color-surface-header,var(--color-neutral-secondary,transparent));justify-content:space-between;align-items:flex-start;gap:.5rem;padding:.5rem .625rem;display:flex}.shamar-m2m-checkboxes__cluster-count{color:var(--color-body-subtle);font-variant-numeric:tabular-nums;font-size:.65rem;line-height:1.25}.shamar-m2m-checkboxes__cluster-body{flex-direction:column;gap:.0625rem;padding:.375rem;display:flex}.shamar-m2m-checkboxes__clusters--cols-1,.shamar-m2m-checkboxes__list--cols-1{--shamar-checkbox-cols:1}.shamar-m2m-checkboxes__clusters--cols-2,.shamar-m2m-checkboxes__list--cols-2{--shamar-checkbox-cols:2}.shamar-m2m-checkboxes__clusters--cols-3,.shamar-m2m-checkboxes__list--cols-3{--shamar-checkbox-cols:3}.shamar-m2m-checkboxes__clusters--cols-4,.shamar-m2m-checkboxes__list--cols-4{--shamar-checkbox-cols:4}@media (max-width:1024px){.shamar-m2m-checkboxes__clusters--cols-3,.shamar-m2m-checkboxes__clusters--cols-4{--shamar-checkbox-cols:2}}@media (max-width:640px){.shamar-m2m-checkboxes__clusters,.shamar-m2m-checkboxes__list{--shamar-checkbox-cols:1!important}}.shamar-list-refresh{border:1px solid var(--color-default);background:var(--color-neutral-primary);width:2.25rem;height:2.25rem;color:var(--color-body-subtle);border-radius:.5rem;justify-content:center;align-items:center;transition:color .15s,border-color .15s,background-color .15s,box-shadow .15s;display:inline-flex}.shamar-list-refresh:hover{color:var(--color-fg-brand);border-color:var(--color-fg-brand);background:var(--color-brand-softer)}.shamar-list-refresh.is-auto{color:var(--color-fg-brand);border-color:var(--color-fg-brand);background:var(--color-brand-softer);box-shadow:0 0 0 1px #f1511b59}@supports (color:color-mix(in lab, red, red)){.shamar-list-refresh.is-auto{box-shadow:0 0 0 1px color-mix(in srgb, var(--color-fg-brand) 35%, transparent)}}.shamar-list-refresh:disabled,.shamar-list-refresh.is-busy{cursor:wait;opacity:.55;pointer-events:none}.shamar-list-refresh.is-auto .shamar-list-refresh__icon,.shamar-list-refresh.is-busy .shamar-list-refresh__icon{animation:1.25s linear infinite shamar-refresh-spin}@keyframes shamar-refresh-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.shamar-list-refresh.is-auto .shamar-list-refresh__icon{animation:none}}.shamar-form-grid.is-dense,.shamar-detail-grid.is-dense{gap:.5rem}.shamar-form-grid.is-gapless,.shamar-detail-grid.is-gapless{gap:0}.shamar-tabs{flex-direction:column;gap:0;display:flex}.shamar-tabs--contained{border:1px solid var(--color-card-border);background:var(--color-neutral-primary);border-radius:.75rem;overflow:hidden}.shamar-tabs--vertical{flex-direction:row;align-items:stretch}.shamar-tabs__list{border-bottom:1px solid var(--color-card-border);background:var(--color-surface-header,var(--color-neutral-secondary));gap:.25rem;padding:.5rem;display:flex;overflow-x:auto}.shamar-tabs--vertical .shamar-tabs__list{border-bottom:0;border-right:1px solid var(--color-card-border);flex-direction:column;min-width:10rem}.shamar-tabs__tab{color:var(--color-body-subtle);cursor:pointer;background:0 0;border:0;border-radius:.5rem;align-items:center;gap:.4rem;padding:.45rem .75rem;font-size:.8125rem;font-weight:550;display:inline-flex}.shamar-tabs__tab.is-active{color:var(--color-heading);background:var(--color-neutral-primary);box-shadow:0 0 0 1px var(--color-card-border)}.shamar-tabs__badge{background:var(--color-brand-soft);color:var(--color-fg-brand);border-radius:999px;padding:.1rem .4rem;font-size:.7rem}.shamar-tabs__panels{flex:1;padding:1rem}.shamar-wizard{padding:1rem}.shamar-wizard__steps{flex-wrap:wrap;gap:.75rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.shamar-wizard__step{color:var(--color-body-subtle);align-items:center;gap:.4rem;font-size:.8125rem;display:inline-flex}.shamar-wizard__step.is-active{color:var(--color-heading);font-weight:600}.shamar-wizard__step.is-done{color:var(--color-fg-brand)}.shamar-wizard__index{background:var(--color-neutral-secondary);border-radius:999px;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;display:inline-flex}.shamar-wizard__step.is-active .shamar-wizard__index{background:var(--color-fg-brand);color:#fff}.shamar-wizard__description{color:var(--color-body-subtle);margin:0 0 .75rem;font-size:.875rem}.shamar-wizard__nav{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.shamar-wizard__btn{border:1px solid var(--color-card-border);background:var(--color-neutral-primary);cursor:pointer;border-radius:.5rem;padding:.4rem .85rem;font-size:.8125rem}.shamar-wizard__btn--primary{background:var(--color-fg-brand);color:#fff;border-color:#0000}.shamar-flex{flex-direction:column;gap:1rem;display:flex}@media (min-width:768px){.shamar-flex--from-md{flex-direction:row;align-items:flex-start}}.shamar-flex__item{flex:1 1 0;min-width:0}.shamar-flex__item--fixed{flex:none}.shamar-callout{border:1px solid var(--color-card-border);border-radius:.75rem;padding:.85rem 1rem}.shamar-callout__title{color:var(--color-heading);font-size:.875rem;font-weight:600}.shamar-callout__body{color:var(--color-body-subtle);margin-top:.25rem;font-size:.8125rem}.shamar-callout--info{background:#f1511b14}@supports (color:color-mix(in lab, red, red)){.shamar-callout--info{background:color-mix(in srgb, var(--color-fg-brand) 8%, transparent)}}.shamar-callout--info{border-color:#f1511b4d}@supports (color:color-mix(in lab, red, red)){.shamar-callout--info{border-color:color-mix(in srgb, var(--color-fg-brand) 30%, transparent)}}.shamar-callout--success{background:#16a34a1a}.shamar-callout--warning{background:#d977061a}.shamar-callout--danger{background:#b91c1c1a}@supports (color:color-mix(in lab, red, red)){.shamar-callout--danger{background:color-mix(in srgb, var(--color-fg-danger) 10%, transparent)}}.shamar-empty-state{text-align:center;color:var(--color-body-subtle);padding:2rem 1rem}.shamar-empty-state__title{color:var(--color-heading);margin:0;font-size:1rem}.shamar-empty-state__description{margin:.35rem 0 0;font-size:.875rem}.shamar-placeholder__label{text-transform:uppercase;color:var(--color-heading);font-size:.75rem;font-weight:600}.shamar-placeholder__content{color:var(--color-body);margin-top:.25rem;font-size:.875rem}.shamar-checkbox{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;width:100%;min-width:0;font-size:.875rem;display:flex}.shamar-checkbox--inline{min-height:2.5rem;padding:.375rem 0}.shamar-checkbox.is-disabled{opacity:.55;cursor:not-allowed}.shamar-checkbox__text{flex-direction:column;flex:auto;gap:.15rem;min-width:0;display:flex}.shamar-checkbox__label{color:var(--color-heading);font-size:.875rem;font-weight:500}.shamar-radio__option{align-items:center;gap:.5rem;font-size:.875rem;display:flex}.shamar-radio{flex-direction:column;gap:.5rem;display:flex}.shamar-radio--inline{flex-flow:wrap;gap:.75rem 1.25rem}.shamar-color{align-items:center;gap:.5rem;display:flex}.shamar-color__swatch{border:1px solid var(--color-card-border);cursor:pointer;background:0 0;border-radius:.4rem;width:2.25rem;height:2.25rem;padding:0}.shamar-color__value{cursor:default;min-width:0;color:var(--color-body-subtle);flex:auto}.shamar-color__value:read-only{background:var(--color-surface-inset,var(--color-neutral-secondary))}.shamar-input-affixes{align-items:stretch;gap:.5rem;width:100%;min-width:0;display:flex}.shamar-input-affixes>.shamar-input-group,.shamar-input-affixes>.shamar-input{flex:auto;min-width:0}.shamar-input-affixes--stacked{flex-direction:column;align-items:stretch;gap:.35rem}.shamar-input-affixes__outside{color:var(--color-body-subtle);white-space:nowrap;align-items:center;font-size:.8125rem;font-weight:500;display:inline-flex}.shamar-input-affixes__outside--icon{color:var(--color-heading)}.shamar-input-affixes:not(.shamar-input-affixes--stacked) .shamar-input-affixes__outside{align-self:center}.shamar-color-entry{align-items:center;gap:.4rem;display:inline-flex}.shamar-color-entry__swatch{border:1px solid var(--color-card-border);border-radius:.25rem;width:1rem;height:1rem}.shamar-tags{flex-direction:column;gap:.5rem;display:flex}.shamar-tags__list{flex-wrap:wrap;gap:.35rem;display:flex}.shamar-tags__chip{background:var(--color-brand-soft);color:var(--color-fg-brand);border-radius:999px;align-items:center;gap:.25rem;padding:.15rem .45rem;font-size:.75rem;display:inline-flex}.shamar-tags__remove{cursor:pointer;color:inherit;background:0 0;border:0;line-height:1}.shamar-input-group{align-items:stretch;width:100%;display:flex}.shamar-input-group .shamar-input{flex:1;min-width:0}.shamar-input-group.has-prefix .shamar-input{border-top-left-radius:0;border-bottom-left-radius:0}.shamar-input-group.has-suffix .shamar-input{border-top-right-radius:0;border-bottom-right-radius:0}.shamar-input-group__affix{border:1px solid var(--color-card-border);background:var(--color-surface-header,var(--color-neutral-secondary));color:var(--color-body-subtle);white-space:nowrap;align-items:center;padding:0 .75rem;font-size:.8125rem;display:inline-flex}.shamar-input-group.has-prefix .shamar-input-group__affix:first-child{border-right:0;border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.shamar-input-group.has-suffix .shamar-input-group__affix:last-child{border-left:0;border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.shamar-badge{background:var(--color-brand-soft);color:var(--color-fg-brand);border-radius:999px;padding:.15rem .5rem;font-size:.75rem;font-weight:550;display:inline-flex}.shamar-badges{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.shamar-copyable{align-items:center;gap:.5rem;display:inline-flex}.shamar-copyable__btn{border:1px solid var(--color-card-border);background:var(--color-neutral-primary);cursor:pointer;border-radius:.35rem;padding:.15rem .4rem;font-size:.75rem}.shamar-image-entry{object-fit:cover;border:1px solid var(--color-card-border);border-radius:.5rem;max-width:8rem;max-height:8rem}.shamar-form-section__header--collapsible{cursor:pointer;-webkit-user-select:none;user-select:none}.shamar-form-section__header--collapsible:hover .shamar-form-section__chevron{color:var(--color-heading);background:var(--color-neutral-primary);border-color:var(--color-card-border)}.shamar-form-section__chevron{width:1.75rem;height:1.75rem;color:var(--color-body-subtle);background:0 0;border:1px solid #0000;border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;transition:transform .18s,color .15s,background-color .15s,border-color .15s;display:inline-flex}.shamar-form-section__chevron svg{transition:transform .18s;display:block}.shamar-form-section__chevron.is-open svg{transform:rotate(180deg)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value: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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@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:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
package/assets/input.css CHANGED
@@ -596,7 +596,7 @@ fieldset.shamar-card {
596
596
  position: absolute;
597
597
  left: 0;
598
598
  top: calc(100% + 0.25rem);
599
- z-index: 30;
599
+ z-index: 50;
600
600
  min-width: 12rem;
601
601
  padding: 0.25rem;
602
602
  border: 1px solid var(--color-card-border);
@@ -666,6 +666,25 @@ fieldset.shamar-card {
666
666
  background-color: color-mix(in srgb, currentColor 16%, transparent);
667
667
  }
668
668
 
669
+ /* List card: keep menus above the table; clip only horizontal table scroll. */
670
+ .shamar-list-card {
671
+ overflow: visible;
672
+ }
673
+
674
+ .shamar-list-toolbar,
675
+ .shamar-bulk-bar {
676
+ position: relative;
677
+ z-index: 20;
678
+ }
679
+
680
+ .shamar-list-table-scroll {
681
+ position: relative;
682
+ z-index: 0;
683
+ overflow-x: auto;
684
+ border-bottom-left-radius: 0.75rem;
685
+ border-bottom-right-radius: 0.75rem;
686
+ }
687
+
669
688
  .shamar-toolbar-menu {
670
689
  position: relative;
671
690
  }
@@ -711,7 +730,7 @@ fieldset.shamar-card {
711
730
  position: absolute;
712
731
  right: 0;
713
732
  top: calc(100% + 0.35rem);
714
- z-index: 40;
733
+ z-index: 50;
715
734
  width: min(18rem, calc(100vw - 2rem));
716
735
  border: 1px solid var(--color-card-border);
717
736
  border-radius: 0.625rem;
@@ -1365,6 +1384,27 @@ select.shamar-input option {
1365
1384
  color: var(--color-body);
1366
1385
  }
1367
1386
 
1387
+ /**
1388
+ * Long / unbroken text on show pages (TextEntry.textarea / form textarea fields).
1389
+ * Breaks mid-token and scrolls when tall.
1390
+ */
1391
+ .shamar-textarea-entry {
1392
+ display: block;
1393
+ margin: 0;
1394
+ max-height: 24rem;
1395
+ overflow: auto;
1396
+ padding: 0.625rem 0.75rem;
1397
+ border-radius: 0.5rem;
1398
+ border: 1px solid var(--color-card-border);
1399
+ background: var(--color-surface-inset);
1400
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
1401
+ font-size: 0.8125rem;
1402
+ line-height: 1.45;
1403
+ white-space: pre-wrap;
1404
+ overflow-wrap: anywhere;
1405
+ word-break: break-all;
1406
+ }
1407
+
1368
1408
  .shamar-field--readonly .shamar-field__value {
1369
1409
  padding: 0.625rem 0.75rem;
1370
1410
  border-radius: 0.5rem;
@@ -9,6 +9,7 @@ export declare class AdminController {
9
9
  private readonly basePath;
10
10
  private readonly registry;
11
11
  private readonly panelBranding;
12
+ private readonly panelContentMaxWidth?;
12
13
  private readonly authorizer;
13
14
  constructor(panel: PanelRuntime, config: ShamarConfig, authorizer?: Authorizer);
14
15
  private isAuthContext;
@@ -1 +1 @@
1
- {"version":3,"file":"admin_controller.d.ts","sourceRoot":"","sources":["../../src/controllers/admin_controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAwDlD,qBAAa,eAAe;IAQxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM;IARzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAqB;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAC5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA2B;IACzD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;gBAGrB,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,YAAY,EACrC,UAAU,CAAC,EAAE,UAAU;IASzB,OAAO,CAAC,aAAa;YAMP,WAAW;YAIX,mBAAmB;YAanB,oBAAoB;IAiClC,OAAO,CAAC,SAAS;IAsDX,SAAS,CAAC,GAAG,EAAE,iBAAiB;IAchC,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;IA4F5D,MAAM,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;IAgD7D,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;IAmD5D,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;IAgD3D,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;IA0D3D,SAAS,CAAC,GAAG,EAAE,iBAAiB;IA4ChC,OAAO,CAAC,GAAG,EAAE,iBAAiB;IAa9B,cAAc,CAAC,GAAG,EAAE,iBAAiB;IA0CrC,mBAAmB,CAAC,GAAG,EAAE,iBAAiB;IAiD1C,cAAc,CAAC,GAAG,EAAE,iBAAiB;IA6CrC,cAAc,CAAC,GAAG,EAAE,iBAAiB;IAyCrC,MAAM,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;IAiD7D,OAAO,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;IAuBpE,6DAA6D;IACvD,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;IAgFjE,oEAAoE;IAC9D,YAAY,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE;IAwCzE,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,cAAc;YAWR,eAAe;IAyD7B,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,SAAS;IAajB,OAAO,CAAC,SAAS;IASjB,OAAO,CAAC,OAAO;IAOf,OAAO,CAAC,iBAAiB;YAuDX,yBAAyB;YAqCzB,UAAU;YAqFV,kBAAkB;IAoChC,OAAO,CAAC,wBAAwB;IAwBhC,OAAO,CAAC,gBAAgB;YAmCV,kBAAkB;IAoEhC,OAAO,CAAC,eAAe;CA2DxB"}
1
+ {"version":3,"file":"admin_controller.d.ts","sourceRoot":"","sources":["../../src/controllers/admin_controller.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@ export class AdminController {
16
16
  basePath;
17
17
  registry;
18
18
  panelBranding;
19
+ panelContentMaxWidth;
19
20
  authorizer;
20
21
  constructor(panel, config, authorizer) {
21
22
  this.panel = panel;
@@ -23,6 +24,7 @@ export class AdminController {
23
24
  this.registry = panel.registry;
24
25
  this.basePath = panel.path;
25
26
  this.panelBranding = panel.config.branding ?? config.branding;
27
+ this.panelContentMaxWidth = panel.config.contentMaxWidth;
26
28
  this.resources = new ResourceController(panel.adapter);
27
29
  this.authorizer = authorizer ?? new AuthorizerClass();
28
30
  }
@@ -71,6 +73,7 @@ export class AdminController {
71
73
  registry: this.registry,
72
74
  basePath: this.basePath,
73
75
  branding: this.panelBranding,
76
+ panelContentMaxWidth: this.panelContentMaxWidth,
74
77
  authorizer: this.authorizer,
75
78
  authCtx,
76
79
  flash: readFlash(ctx),
@@ -1 +1 @@
1
- {"version":3,"file":"admin_controller.js","sourceRoot":"","sources":["../../src/controllers/admin_controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"admin_controller.js","sourceRoot":"","sources":["../../src/controllers/admin_controller.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { GoogleFontOptions, PanelBranding } from '@shamar/core';
1
2
  export interface ShamarBranding {
2
3
  brandName: string;
3
4
  logoUrl?: string;
@@ -5,20 +6,20 @@ export interface ShamarBranding {
5
6
  copyrightText?: string;
6
7
  fontFamily: string;
7
8
  fontUrl?: string;
9
+ /** True when `fontUrl` points at Google Fonts (enables preconnect hints). */
10
+ fontPreconnect?: boolean;
8
11
  primaryColor: string;
9
12
  accentColor: string;
10
13
  }
11
14
  export declare const DEFAULT_SHAMAR_BRANDING: ShamarBranding;
15
+ /**
16
+ * Build a Google Fonts CSS2 URL + CSS font-family stack from a family name or options.
17
+ */
18
+ export declare function resolveGoogleFont(input: string | GoogleFontOptions): {
19
+ fontFamily: string;
20
+ fontUrl: string;
21
+ };
12
22
  export declare function mergeBranding(base: ShamarBranding, override?: Partial<ShamarBranding>): ShamarBranding;
13
- export declare function resolveBranding(config?: {
14
- name?: string;
15
- logo?: string;
16
- logoDark?: string;
17
- copyright?: string;
18
- fontFamily?: string;
19
- fontUrl?: string;
20
- primaryColor?: string;
21
- accentColor?: string;
22
- }): ShamarBranding;
23
+ export declare function resolveBranding(config?: PanelBranding): ShamarBranding;
23
24
  export declare function buildBrandingCss(branding: ShamarBranding): string;
24
25
  //# sourceMappingURL=branding.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"branding.d.ts","sourceRoot":"","sources":["../../src/shamar/branding.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,uBAAuB,EAAE,cAKrC,CAAC;AAEF,wBAAgB,aAAa,CAC3B,IAAI,EAAE,cAAc,EACpB,QAAQ,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GACjC,cAAc,CAQhB;AAED,wBAAgB,eAAe,CAAC,MAAM,CAAC,EAAE;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,cAAc,CAWjB;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAkDjE"}
1
+ {"version":3,"file":"branding.d.ts","sourceRoot":"","sources":["../../src/shamar/branding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAErE,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6EAA6E;IAC7E,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,uBAAuB,EAAE,cAKrC,CAAC;AAIF;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,MAAM,GAAG,iBAAiB,GAChC;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CA2BzC;AAQD,wBAAgB,aAAa,CAC3B,IAAI,EAAE,cAAc,EACpB,QAAQ,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GACjC,cAAc,CAQhB;AAED,wBAAgB,eAAe,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,cAAc,CAsBtE;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAkDjE"}
@@ -4,6 +4,39 @@ export const DEFAULT_SHAMAR_BRANDING = {
4
4
  primaryColor: '#f1511b',
5
5
  accentColor: '#286291',
6
6
  };
7
+ const DEFAULT_GOOGLE_WEIGHTS = [400, 500, 600, 700];
8
+ /**
9
+ * Build a Google Fonts CSS2 URL + CSS font-family stack from a family name or options.
10
+ */
11
+ export function resolveGoogleFont(input) {
12
+ const opts = typeof input === 'string' ? { family: input } : input;
13
+ const family = opts.family.trim();
14
+ if (!family) {
15
+ throw new Error('googleFont.family must be a non-empty string');
16
+ }
17
+ const weights = normalizeWeights(opts.weights ?? [...DEFAULT_GOOGLE_WEIGHTS]);
18
+ const display = opts.display ?? 'swap';
19
+ const familyParam = encodeURIComponent(family).replace(/%20/g, '+');
20
+ let axis;
21
+ if (opts.italic) {
22
+ const pairs = [
23
+ ...weights.map((w) => `0,${w}`),
24
+ ...weights.map((w) => `1,${w}`),
25
+ ].join(';');
26
+ axis = `ital,wght@${pairs}`;
27
+ }
28
+ else {
29
+ axis = `wght@${weights.join(';')}`;
30
+ }
31
+ const fontUrl = `https://fonts.googleapis.com/css2?family=${familyParam}:${axis}&display=${display}`;
32
+ const fontFamily = `"${family.replace(/"/g, '')}", ${DEFAULT_SHAMAR_BRANDING.fontFamily}`;
33
+ return { fontFamily, fontUrl };
34
+ }
35
+ function normalizeWeights(weights) {
36
+ const unique = [...new Set(weights.map((w) => Math.round(Number(w))).filter((w) => w > 0))];
37
+ unique.sort((a, b) => a - b);
38
+ return unique.length ? unique : [...DEFAULT_GOOGLE_WEIGHTS];
39
+ }
7
40
  export function mergeBranding(base, override) {
8
41
  if (!override)
9
42
  return { ...base };
@@ -13,13 +46,20 @@ export function mergeBranding(base, override) {
13
46
  };
14
47
  }
15
48
  export function resolveBranding(config) {
49
+ const google = config?.googleFont
50
+ ? resolveGoogleFont(config.googleFont)
51
+ : undefined;
52
+ const fontUrl = config?.fontUrl || google?.fontUrl;
53
+ const fontFamily = config?.fontFamily || google?.fontFamily;
16
54
  return mergeBranding(DEFAULT_SHAMAR_BRANDING, {
17
55
  brandName: config?.name,
18
56
  logoUrl: config?.logo,
19
57
  logoDarkUrl: config?.logoDark,
20
58
  copyrightText: config?.copyright,
21
- fontFamily: config?.fontFamily,
22
- fontUrl: config?.fontUrl,
59
+ fontFamily,
60
+ fontUrl,
61
+ fontPreconnect: Boolean(fontUrl &&
62
+ (fontUrl.includes('fonts.googleapis.com') || fontUrl.includes('fonts.gstatic.com'))),
23
63
  primaryColor: config?.primaryColor,
24
64
  accentColor: config?.accentColor,
25
65
  });
@@ -1 +1 @@
1
- {"version":3,"file":"branding.js","sourceRoot":"","sources":["../../src/shamar/branding.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,MAAM,uBAAuB,GAAmB;IACrD,SAAS,EAAE,OAAO;IAClB,UAAU,EAAE,6EAA6E;IACzF,YAAY,EAAE,SAAS;IACvB,WAAW,EAAE,SAAS;CACvB,CAAC;AAEF,MAAM,UAAU,aAAa,CAC3B,IAAoB,EACpB,QAAkC;IAElC,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC;IAClC,OAAO;QACL,GAAG,IAAI;QACP,GAAG,MAAM,CAAC,WAAW,CACnB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,CAAC,CACpF;KACgB,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAS/B;IACC,OAAO,aAAa,CAAC,uBAAuB,EAAE;QAC5C,SAAS,EAAE,MAAM,EAAE,IAAI;QACvB,OAAO,EAAE,MAAM,EAAE,IAAI;QACrB,WAAW,EAAE,MAAM,EAAE,QAAQ;QAC7B,aAAa,EAAE,MAAM,EAAE,SAAS;QAChC,UAAU,EAAE,MAAM,EAAE,UAAU;QAC9B,OAAO,EAAE,MAAM,EAAE,OAAO;QACxB,YAAY,EAAE,MAAM,EAAE,YAAY;QAClC,WAAW,EAAE,MAAM,EAAE,WAAW;KACjC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,QAAwB;IACvD,MAAM,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,uBAAuB,CAAC,YAAY,CAAC;IACjG,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,uBAAuB,CAAC,WAAW,CAAC;IAC9F,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;IAEvC,OAAO;;0BAEiB,UAAU;yBACX,OAAO;2CACW,OAAO;4CACN,OAAO;4CACP,OAAO;4CACP,OAAO;4CACP,OAAO;4CACP,OAAO;4CACP,OAAO;4CACP,OAAO;4CACP,OAAO;4CACP,OAAO;4BACvB,OAAO;sBACb,OAAO;gDACmB,OAAO;2CACZ,OAAO;6CACL,OAAO;wCACZ,OAAO;kDACG,OAAO;iDACR,OAAO;gEACQ,OAAO;2BAC5C,MAAM;;;;;sBAKX,OAAO;gDACmB,OAAO;2CACZ,OAAO;6CACL,OAAO;;;;;;;;;;;;;CAanD,CAAC;AACF,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa;IACtC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACnE,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;IACtB,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,IAAI,GAAG;aACX,KAAK,CAAC,EAAE,CAAC;aACT,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC;aAC1B,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IAChB,CAAC;IACD,OAAO,IAAI,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"branding.js","sourceRoot":"","sources":["../../src/shamar/branding.ts"],"names":[],"mappings":"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"}
@@ -135,7 +135,7 @@ export declare function formSections(meta: ResourceMeta): {
135
135
  kind: "section" | "fieldset" | "plain";
136
136
  icon: string | undefined;
137
137
  card: boolean;
138
- columns: 2 | 1 | 3 | 4;
138
+ columns: 4 | 1 | 2 | 3;
139
139
  collapsible: boolean | undefined;
140
140
  collapsed: boolean | undefined;
141
141
  dense: boolean | undefined;
@@ -173,7 +173,7 @@ export declare function detailSections(meta: ResourceMeta): {
173
173
  kind: "section" | "fieldset" | "plain";
174
174
  icon: string | undefined;
175
175
  card: boolean;
176
- columns: 2 | 1 | 3 | 4;
176
+ columns: 4 | 1 | 2 | 3;
177
177
  collapsible: boolean | undefined;
178
178
  collapsed: boolean | undefined;
179
179
  dense: boolean | undefined;
@@ -31,6 +31,10 @@ export interface AdminShellContext {
31
31
  message: string;
32
32
  };
33
33
  flashJson?: string;
34
+ /** Tailwind class for form/show content width (e.g. `max-w-5xl`). */
35
+ contentMaxWidthClass: string;
36
+ /** Optional inline max-width when a CSS length was configured. */
37
+ contentMaxWidthStyle?: string;
34
38
  }
35
39
  export declare function navigationGroups(registry: ResourceRegistry, options?: {
36
40
  authorizer?: Authorizer;
@@ -43,6 +47,8 @@ export declare function buildShellContext(options: {
43
47
  pageTitle: string;
44
48
  basePath?: string;
45
49
  branding?: ShamarConfig['branding'];
50
+ /** Panel-level default; resource `contentMaxWidth` wins when set on meta. */
51
+ panelContentMaxWidth?: string;
46
52
  authorizer?: Authorizer;
47
53
  authCtx?: AuthorizationContext;
48
54
  showCreateButton?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"view-context.d.ts","sourceRoot":"","sources":["../../src/shamar/view-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view-context.d.ts","sourceRoot":"","sources":["../../src/shamar/view-context.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { resolveContentMaxWidth } from '@shamar/core';
1
2
  import { canViewResource } from './auth.js';
2
3
  import { resolveBranding } from './branding.js';
3
4
  import { menuLayoutContext } from './menu.js';
@@ -29,6 +30,7 @@ export function buildShellContext(options) {
29
30
  const userName = authUser?.name ?? brandingInput?.name ?? branding.brandName;
30
31
  const flash = options.flash;
31
32
  const flashJson = flash ? JSON.stringify(flash).replace(/</g, '\\u003c') : undefined;
33
+ const contentMaxWidth = resolveContentMaxWidth(options.meta?.contentMaxWidth ?? options.panelContentMaxWidth);
32
34
  return {
33
35
  basePath,
34
36
  panelTitle: branding.brandName,
@@ -51,6 +53,8 @@ export function buildShellContext(options) {
51
53
  showBackToList: options.showBackToList,
52
54
  flash,
53
55
  flashJson,
56
+ contentMaxWidthClass: contentMaxWidth.className,
57
+ contentMaxWidthStyle: contentMaxWidth.style,
54
58
  };
55
59
  }
56
60
  export function buildListContext(options) {
@@ -1 +1 @@
1
- {"version":3,"file":"view-context.js","sourceRoot":"","sources":["../../src/shamar/view-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view-context.js","sourceRoot":"","sources":["../../src/shamar/view-context.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,9 +1,14 @@
1
1
  {
2
2
  "name": "@shamar/adonis",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "AdonisJS service provider for Shamar admin — routes, controllers, middleware, Edge views.",
5
5
  "license": "MIT",
6
6
  "type": "module",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/coolsam726/shamar.git",
10
+ "directory": "packages/adonis"
11
+ },
7
12
  "main": "./dist/index.js",
8
13
  "types": "./dist/index.d.ts",
9
14
  "exports": {
@@ -27,10 +32,10 @@
27
32
  "stubs"
28
33
  ],
29
34
  "dependencies": {
30
- "@shamar/cherubim": "0.1.0",
31
- "@shamar/lucid": "0.1.0",
32
- "@shamar/mongoose": "0.1.0",
33
- "@shamar/core": "0.1.0"
35
+ "@shamar/cherubim": "0.1.2",
36
+ "@shamar/core": "0.1.2",
37
+ "@shamar/mongoose": "0.1.2",
38
+ "@shamar/lucid": "0.1.2"
34
39
  },
35
40
  "peerDependencies": {
36
41
  "@adonisjs/core": ">=6.0.0",
@@ -46,7 +46,13 @@
46
46
  @else
47
47
  @include('shamar::partials/shell-open')
48
48
 
49
- <div class="mx-auto max-w-5xl space-y-6" data-shamar-record-view="{{ mode }}">
49
+ <div
50
+ class="mx-auto space-y-6 {{ contentMaxWidthClass || 'max-w-5xl' }}"
51
+ @if(contentMaxWidthStyle)
52
+ style="{{ contentMaxWidthStyle }}"
53
+ @endif
54
+ data-shamar-record-view="{{ mode }}"
55
+ >
50
56
  <form
51
57
  id="shamar-form"
52
58
  method="post"
@@ -11,7 +11,8 @@
11
11
  data-shamar-sort="{{ query.sort ?? '' }}"
12
12
  data-shamar-direction="{{ query.direction ?? '' }}"
13
13
  >
14
- <div class="shamar-card rounded-xl overflow-hidden">
14
+ {{-- overflow-visible so Filter/Group/bulk menus are not clipped by the table --}}
15
+ <div class="shamar-card shamar-list-card rounded-xl">
15
16
  @include('shamar::partials/list-toolbar')
16
17
 
17
18
  @if(bulkActions && bulkActions.length)
@@ -73,7 +74,7 @@
73
74
  </div>
74
75
  @endif
75
76
 
76
- <div class="overflow-x-auto">
77
+ <div class="shamar-list-table-scroll">
77
78
  <table class="w-full text-sm">
78
79
  <thead class="bg-surface-header">
79
80
  <tr>
@@ -25,6 +25,8 @@
25
25
  @else
26
26
 
27
27
  @endif
28
+ @elseif(field.format === 'textarea' || field.type === 'textarea')
29
+ <pre class="shamar-textarea-entry">{{ detailValue(record, field) }}</pre>
28
30
  @elseif(field.format === 'badge' || field.type === 'tags')
29
31
  @let(badges = badgeValues(record, field))
30
32
  @if(badges.length)
@@ -1,5 +1,5 @@
1
1
  <div
2
- class="px-4 py-3 space-y-3"
2
+ class="shamar-list-toolbar px-4 py-3 space-y-3"
3
3
  x-data='shamarListToolbar({
4
4
  search: {{ jsonAttr(query.search) }},
5
5
  filters: {{ jsonAttr(query.filters) }},
@@ -4,6 +4,10 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <title>{{ pageTitle }} · {{ panelTitle }}</title>
7
+ @if(branding.fontPreconnect)
8
+ <link rel="preconnect" href="https://fonts.googleapis.com" />
9
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
10
+ @endif
7
11
  @if(branding.fontUrl)
8
12
  <link rel="stylesheet" href="{{ branding.fontUrl }}" />
9
13
  @endif
@@ -1,7 +1,13 @@
1
1
  @let(mode = 'show')
2
2
  @include('shamar::partials/shell-open')
3
3
 
4
- <div class="mx-auto max-w-5xl space-y-6" data-shamar-record-view="show">
4
+ <div
5
+ class="mx-auto space-y-6 {{ contentMaxWidthClass || 'max-w-5xl' }}"
6
+ @if(contentMaxWidthStyle)
7
+ style="{{ contentMaxWidthStyle }}"
8
+ @endif
9
+ data-shamar-record-view="show"
10
+ >
5
11
  @each(node in detailSchema)
6
12
  @!component('shamar::partials/schema-node', {
7
13
  node: node,