@livx.cc/bare-v3 0.1.0-alpha.80 → 0.1.0-alpha.81

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 CHANGED
@@ -17,6 +17,8 @@ The comparison UI needs the fixture server for example links. Model outputs repl
17
17
 
18
18
  Install the published alpha with `bun add @livx.cc/bare-v3@alpha`; use `bun pm pack` for an unpublished local build. Import CSS from `@livx.cc/bare-v3/css` or `/css/min`. Put `class="b3-root"` on html and set `data-b3-theme="dark"` explicitly for dark mode. Component references are exported under `/references/*.md`; start with `/references/start.md`. Place generic link defaults in `@layer bare.reset` so they do not override button/navigation colors. Unlayered consumer CSS overrides library layers: scope custom palette colors to each theme rather than applying light-only colors unconditionally to `:root`.
19
19
 
20
+ Live batches are explicit: save `bun lab plan config.json` output, then run `bun lab execute saved-plan.json artifacts/batches/name/runs --live --max-new-jobs 4` with `CURSOR_API_KEY` available in the environment (and the configured `CURSOR_REAL_NODE` where required). This can incur provider charges. The job cap limits new generations in that invocation, not dollars; provider cost is currently unavailable. Obtain the resource budget before execution. Resume with the exact saved plan, artifact directory and unchanged built source. Terminal attempts are retained, including failures; they are not retried automatically. A remaining `.batch.lock` or nonterminal attempt requires checking the recorded process and child handles before any manual recovery. Completion of attempts is never quality qualification. Review that batch with `bun lab compare artifacts/batches/name`; replay one run with `bun lab replay <run-id> artifacts/batches/name/runs`. These explicit paths keep unrelated pilots out of the batch review.
21
+
20
22
  `bun lab plan config.json` creates a seeded, capped development job plan. `bun lab prepare run.json` prepares one isolated workspace and manifest without invoking a model. The [visual playground](http://127.0.0.1:4313/fixtures/playground.html) demonstrates the current component contracts and shows the bare-v2 coverage audit. Composed apps include Signal (system performance), Elsewhere (local discovery/booking), Daylight (iOS/Android web studies), Relay, Gather setup and sign-in, Counter, Margin, Still, Fieldnotes, Interval, and the Forma project workspace. New components are an implemented subset, not full bare-v2 parity or a qualified release. Two public layers ship: `/css` (CSS only) and `/components` — light-DOM custom elements (`<b3-tabs>`, `<b3-reel>`, `<b3-dropdown>`, `<b3-dialog>`, `<b3-sheet>`, `<b3-command>`, `<b3-toast-region>`, `<b3-toc>`) that enhance native markup, plus the document-wide `data-b3-confirm` guard and the `motion`/`layout`/`sequence`/`settle` helpers. Loading the entry (ESM, or re-bundled as a classic script) registers everything; there is no setup call or cleanup, and loading twice is a no-op. Heavier components are opt-in subpaths: `/components/board` (`<b3-board>`), `/components/date-picker` and `/components/image-viewer`. They are separate files rather than one bundle because of weight: the core is ~20 KB minified (~7 KB gzip), the board alone ~117 KB (~36 KB gzip, it bundles a reactive template runtime privately — one that needs no `'unsafe-eval'` under a Content-Security-Policy and loads only when a board first renders), so a single bundle would multiply every page's always-loaded cost by ~5x for a component most pages never show. `/markdown-stream` is a plain module (`MarkdownStream`, a class, not a tag) for streaming LLM markdown into bare-v3 components. Every entry ships `.d.ts` typings. Read `recipes/board.md`, `recipes/image-viewer.md`, `recipes/date-picker.md` or `recipes/markdown-stream.md` for markup and lifecycle; `fixtures/elements/markdown-stream.html` demos the stream; `bun run chat` serves it as a live chat against a real model (needs `OPENROUTER_API_KEY` or `OPENAI_API_KEY`; offline it replays canned replies). The plain/React/Vue demos in `fixtures/elements/` exercise the image viewer; run `bun scripts/verify-image-viewer.ts` through the authorized AgentX browser workflow to verify measured transforms. `bun scripts/verify-components.ts`, `verify-reel.ts` and `verify-confirm.ts` drive headless Chrome against `fixtures/checks/` and re-run every check against a control build without the code.
21
23
 
22
24
  Playground previews accept shareable app/width links, for example [Signal at 390px](http://127.0.0.1:4313/fixtures/playground.html?demo=metrics&width=390#demos). The controls keep these query parameters in sync; unknown values fall back to the authored defaults. This is an iframe layout preview, not mobile-device qualification.
@@ -25,9 +27,9 @@ Source organization: `src/bare.css` is the ordered CSS entry; `src/styles/` grou
25
27
 
26
28
  External TypeScript entrypoints use `<script type="module" src="app.ts">`. Assembly bundles local imports into a separate rendered artifact, preserves the original source, and rejects imports outside the workspace. Replay serves the rendered artifact. Inline TypeScript and package imports are not supported.
27
29
 
28
- Standalone matched comparisons remain pending. The worker uses the pinned AgentX SDK with explicit settings, Composer 2.5 and brokered OS isolation. A live creation and feature-edit pilot passed phone/desktop browser checks; this does not establish comparative design quality or total model cost. See [compact authoring](docs/llm-authoring.md) for protocol, evidence and the lab-only Pug candidate. Browser verification also runs through Composer/AgentX.
30
+ Standalone matched comparisons remain pending. The worker uses the pinned AgentX SDK with explicit settings, Composer 2.5 and brokered OS isolation. Live manifests record resolved runtime package identities separately from declared dependencies; reported aggregate token usage remains distinct from estimates and billing. A live creation and feature-edit pilot passed phone/desktop browser checks; this does not establish comparative design quality or total model cost. See [compact authoring](docs/llm-authoring.md) for protocol, evidence and the lab-only Pug candidate. Browser verification also runs through Composer/AgentX.
29
31
 
30
- The 24 briefs are provisional. Authored fixtures are implementation probes, not blind model evidence. Browser checks cover selected journeys across the authored apps, including themes, persistence, forms, command keyboard behavior, outlines, and narrow viewport emulation. The current evidence and remaining gaps are tracked in the implementation plan. A dedicated mobile-app track now requires matched iOS/Android routines flows, discovery/booking and mobile conversation, with separate native-look and actual-device gates. Actual iOS/Android, full accessibility, populated comparisons in the browser, and held-out qualification remain pending.
32
+ The 25 briefs are provisional: 13 development and 12 reserved. Inventory was reclassified after iterative tuning and submission-desk replaces its reserved slot. The local preserved-request audit is complete; external exposure and related-task transfer still need review before freezing the release holdout set. Authored fixtures are implementation probes, not blind model evidence. Browser checks cover selected journeys across the authored apps, including themes, persistence, forms, command keyboard behavior, outlines, and narrow viewport emulation. The current evidence and remaining gaps are tracked in the implementation plan. A dedicated mobile-app track now requires matched iOS/Android routines flows, discovery/booking and mobile conversation, with separate native-look and actual-device gates. Actual iOS/Android, full accessibility, populated comparisons in the browser, and held-out qualification remain pending.
31
33
 
32
34
  See the [working task board](tasks.md), [implementation plan](docs/plan.md) and [experiment ledger](lab/experiments/ledger.json). The source repository is private; npm releases are public. The [production Offscript experiment](https://blank.bodify.bod.ee/a/a-offscript-v3) uses a pinned release. See tasks.md for integration and qualification status; source may advance beyond the published prerelease.
33
35
 
package/dist/bare.css CHANGED
@@ -29,6 +29,10 @@
29
29
  font: inherit;
30
30
  }
31
31
 
32
+ :where(.b3-root) :where(button:not(:disabled)) {
33
+ color: inherit;
34
+ }
35
+
32
36
  :where(.b3-root) :where(h1, h2, h3, h4, h5, h6, p) {
33
37
  margin: 0;
34
38
  }
@@ -258,9 +262,19 @@
258
262
  }
259
263
 
260
264
  .b3-app-layout {
261
- grid-template-columns: minmax(12rem, 16rem) minmax(0, 1fr);
265
+ flex-wrap: wrap;
262
266
  min-block-size: 100svh;
263
- display: grid;
267
+ display: flex;
268
+ container: b3-app / inline-size;
269
+ }
270
+
271
+ .b3-app-layout > .b3-sidebar {
272
+ flex: 16rem;
273
+ }
274
+
275
+ .b3-app-layout > :not(.b3-sidebar) {
276
+ flex: 999 32rem;
277
+ min-inline-size: 0;
264
278
  }
265
279
 
266
280
  .b3-sidebar {
@@ -297,12 +311,8 @@
297
311
  flex: 0 0 min(85%, 20rem);
298
312
  }
299
313
 
300
- @media (width <= 48rem) {
301
- .b3-app-layout {
302
- grid-template-columns: minmax(0, 1fr);
303
- }
304
-
305
- .b3-sidebar {
314
+ @container b3-app (width < 48rem) {
315
+ .b3-app-layout > .b3-sidebar {
306
316
  border-inline-end: 0;
307
317
  border-block-end: 1px solid var(--b3-color-border);
308
318
  }
@@ -553,17 +563,31 @@
553
563
  position: relative;
554
564
  }
555
565
 
566
+ .b3-bottom-link:has( > .b3-count) {
567
+ min-inline-size: max(var(--b3-touch, 44px), 2.25rem);
568
+ }
569
+
556
570
  .b3-bottom-link > .b3-count {
557
571
  box-shadow: 0 0 0 2px var(--b3-color-surface);
558
572
  position: absolute;
559
573
  inset-block-start: .125rem;
560
- inset-inline-start: calc(50% + .375rem);
574
+ inset-inline-end: max(.125rem, 50% - 2rem);
561
575
  }
562
576
 
563
577
  :is(a, button, [role="button"]).b3-row:is([aria-current]:not([aria-current="false"]), [aria-selected="true"]) {
564
578
  background: color-mix(in srgb, var(--b3-color-accent) 12%, transparent);
565
579
  }
566
580
 
581
+ @media (forced-colors: active) {
582
+ :is(a, button, [role="button"]).b3-row {
583
+ border-inline-start: 3px solid canvas;
584
+ }
585
+
586
+ :is(a, button, [role="button"]).b3-row:is([aria-current]:not([aria-current="false"]), [aria-selected="true"]) {
587
+ border-inline-start-color: highlight;
588
+ }
589
+ }
590
+
567
591
  .b3-badge {
568
592
  overflow-wrap: anywhere;
569
593
  border: 1px solid var(--b3-color-border);
@@ -598,6 +622,10 @@
598
622
  box-shadow: inset 0 0 0 100vmax #00000024;
599
623
  }
600
624
 
625
+ .b3-button[data-b3-emphasis="ghost"]:not(:disabled):active {
626
+ color: var(--b3-color-text);
627
+ }
628
+
601
629
  .b3-button[data-b3-emphasis="outline"] {
602
630
  color: var(--b3-color-accent);
603
631
  background: none;
@@ -673,8 +701,13 @@
673
701
  flex: 12ch;
674
702
  }
675
703
 
676
- .b3-input-group:has( > .b3-button) {
677
- justify-content: end;
704
+ .b3-input-group > .b3-button {
705
+ overflow-wrap: anywhere;
706
+ flex-wrap: wrap;
707
+ min-inline-size: 0;
708
+ max-inline-size: 100%;
709
+ margin-inline-start: auto;
710
+ padding-inline: .75rem;
678
711
  }
679
712
 
680
713
  .b3-input-group:focus-within {
@@ -758,6 +791,37 @@
758
791
  cursor: not-allowed;
759
792
  }
760
793
 
794
+ @media (forced-colors: active) {
795
+ .b3-switch {
796
+ forced-color-adjust: none;
797
+ background: canvas;
798
+ border-color: buttontext;
799
+ }
800
+
801
+ .b3-switch:before {
802
+ background: buttontext;
803
+ }
804
+
805
+ .b3-switch:checked {
806
+ background: highlight;
807
+ border-color: highlight;
808
+ }
809
+
810
+ .b3-switch:checked:before {
811
+ background: highlighttext;
812
+ }
813
+
814
+ .b3-switch:disabled {
815
+ opacity: 1;
816
+ background: canvas;
817
+ border-color: graytext;
818
+ }
819
+
820
+ .b3-switch:disabled:before {
821
+ background: graytext;
822
+ }
823
+ }
824
+
761
825
  .b3-input[type="number"] {
762
826
  appearance: textfield;
763
827
  }
@@ -782,10 +846,6 @@
782
846
  min-block-size: 1lh;
783
847
  }
784
848
 
785
- .b3-input-affix {
786
- white-space: nowrap;
787
- }
788
-
789
849
  .b3-card-header, .b3-card-footer {
790
850
  justify-content: space-between;
791
851
  align-items: center;
@@ -867,13 +927,16 @@
867
927
 
868
928
  .b3-toast-region {
869
929
  z-index: 100;
930
+ inline-size: min(24rem, 100% - 2rem);
931
+ max-block-size: calc(100dvh - 2rem - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
932
+ overscroll-behavior: contain;
870
933
  pointer-events: none;
871
934
  gap: .75rem;
872
- inline-size: min(24rem, 100% - 2rem);
873
935
  display: grid;
874
936
  position: fixed;
875
- inset-block-end: 1rem;
937
+ inset-block-end: calc(1rem + env(safe-area-inset-bottom, 0px));
876
938
  inset-inline-end: 1rem;
939
+ overflow-y: auto;
877
940
  }
878
941
 
879
942
  .b3-toast {
@@ -1445,10 +1508,19 @@
1445
1508
  margin-block-start: 0;
1446
1509
  }
1447
1510
 
1448
- .b3-prose img {
1511
+ .b3-prose :is(img, video, iframe) {
1512
+ max-inline-size: 100%;
1513
+ display: block;
1514
+ }
1515
+
1516
+ .b3-prose :is(img, video) {
1449
1517
  block-size: auto;
1450
1518
  }
1451
1519
 
1520
+ .b3-prose iframe {
1521
+ border: 0;
1522
+ }
1523
+
1452
1524
  .b3-prose blockquote {
1453
1525
  border-inline-start: 3px solid var(--b3-color-accent);
1454
1526
  color: var(--b3-color-muted);
@@ -1775,7 +1847,7 @@
1775
1847
  }
1776
1848
 
1777
1849
  .b3-command .b3-command-item {
1778
- border-radius: calc(var(--b3-radius-large) - .5rem - 1px);
1850
+ border-radius: max(0px, calc(var(--b3-radius-large) - .5rem - 1px));
1779
1851
  }
1780
1852
 
1781
1853
  .b3-command-item > :first-child {
@@ -1896,7 +1968,7 @@
1896
1968
 
1897
1969
  .b3-input::file-selector-button {
1898
1970
  font: inherit;
1899
- border-radius: calc(var(--b3-radius) - .375rem - 1px);
1971
+ border-radius: max(0px, calc(var(--b3-radius) - .375rem - 1px));
1900
1972
  background: var(--b3-color-accent);
1901
1973
  color: var(--b3-color-on-accent);
1902
1974
  cursor: pointer;
@@ -1905,6 +1977,10 @@
1905
1977
  padding: .5rem .75rem;
1906
1978
  }
1907
1979
 
1980
+ .b3-input[data-b3-emphasis="outline"]::file-selector-button {
1981
+ border-radius: max(0px, calc(var(--b3-radius) - .375rem - 2px));
1982
+ }
1983
+
1908
1984
  .b3-input[type="color"] {
1909
1985
  inline-size: 5rem;
1910
1986
  padding: .25rem;
@@ -2137,7 +2213,7 @@
2137
2213
  border-block-start: 1px solid var(--b3-color-border);
2138
2214
  flex-wrap: wrap;
2139
2215
  justify-content: space-around;
2140
- gap: .5rem;
2216
+ gap: .125rem;
2141
2217
  margin-inline: auto;
2142
2218
  display: flex;
2143
2219
  position: fixed;
@@ -2148,16 +2224,17 @@
2148
2224
  .b3-bottom-link {
2149
2225
  appearance: none;
2150
2226
  cursor: pointer;
2151
- overflow-wrap: normal;
2227
+ overflow-wrap: anywhere;
2152
2228
  text-align: center;
2229
+ flex: 1 1 max-content;
2153
2230
  min-block-size: var(--b3-touch, 44px);
2154
- min-inline-size: 0;
2231
+ min-inline-size: var(--b3-touch, 44px);
2232
+ max-inline-size: 100%;
2155
2233
  color: var(--b3-color-muted);
2156
2234
  background: none;
2157
2235
  border: 0;
2158
2236
  border-radius: 1rem;
2159
2237
  flex-direction: column;
2160
- flex: 5ch;
2161
2238
  justify-content: center;
2162
2239
  align-items: center;
2163
2240
  gap: .15rem;
@@ -2307,10 +2384,10 @@
2307
2384
  }
2308
2385
 
2309
2386
  .b3-bottom-link > :where(span, strong):not(.b3-count) {
2310
- white-space: nowrap;
2311
- text-overflow: ellipsis;
2387
+ white-space: normal;
2388
+ overflow-wrap: anywhere;
2312
2389
  max-inline-size: 100%;
2313
- overflow: hidden;
2390
+ overflow: visible;
2314
2391
  }
2315
2392
 
2316
2393
  :has( > .b3-bottom-link:nth-of-type(5)) > .b3-bottom-link {
package/dist/bare.min.css CHANGED
@@ -1 +1 @@
1
- @layer bare.reset{:where(.b3-root),:where(.b3-root *){box-sizing:border-box}:where(.b3-root){font-family:var(--b3-font-body);background:var(--b3-color-canvas);color:var(--b3-color-text);color-scheme:light;margin:0;font-size:1rem;line-height:1.5}:where(.b3-root>body){margin:0}:where(b3-tabs,b3-dropdown,b3-dialog,b3-sheet,b3-command){display:contents}:where(b3-reel,b3-toast-region,b3-toc,b3-board,b3-date-picker,b3-image-viewer){display:block}:where(.b3-root) :where(button,input,select,textarea){font:inherit}:where(.b3-root) :where(h1,h2,h3,h4,h5,h6,p){margin:0}:where(.b3-root) :where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:none;box-shadow:inset 0 0 0 2px}@media (forced-colors:active){:where(.b3-root) :where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline-offset:-2px;outline:1px solid highlight}}:where(.b3-root) :where(img,svg:not([width])){max-inline-size:100%}@media (prefers-reduced-motion:reduce){:where(.b3-root *),:where(.b3-root *):before,:where(.b3-root *):after{transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-b3-motion=reduce] *,[data-b3-motion=reduce] :before,[data-b3-motion=reduce] :after,[data-b3-motion=reduce] ::backdrop{scroll-behavior:auto!important;transition:none!important;animation:none!important}:where(.b3-root [hidden]):not([hidden=until-found]){display:none!important}:where(.b3-root) :where(input[type=checkbox],input[type=radio],input[type=range]){accent-color:var(--b3-color-accent)}}@layer bare.tokens{.b3-root:where(:not(.b3-root .b3-root)),.b3-root[data-b3-theme=light]{--b3-color-canvas:#f6f5f0;--b3-color-surface:#fff;--b3-color-text:#202923;--b3-color-muted:#59655d;--b3-color-border:#d5dbd3;--b3-color-accent:#245c42;--b3-color-on-accent:#fff;--b3-color-danger:#a62c35;--b3-color-focus:#276bdd;--b3-font-body:ui-sans-serif, system-ui, sans-serif;--b3-font-display:var(--b3-font-body);--b3-radius:.75rem;--b3-space:1rem;--b3-content:68rem}.b3-root[data-b3-theme=dark]{color-scheme:dark;--b3-color-canvas:#141c19;--b3-color-surface:#202c26;--b3-color-text:#edf3ec;--b3-color-muted:#a8b9ad;--b3-color-border:#415348;--b3-color-accent:#aadbb8;--b3-color-on-accent:#132b1b;--b3-color-danger:#ffadb1;--b3-color-focus:#9ac4ff}.b3-root:where(:not(.b3-root .b3-root)),.b3-root[data-b3-theme=light]{--b3-space-1:.25rem;--b3-space-2:.5rem;--b3-space-3:.75rem;--b3-space-4:1rem;--b3-space-6:1.5rem;--b3-space-8:2rem;--b3-space-12:3rem;--b3-radius-small:.375rem;--b3-radius-large:1.25rem;--b3-shadow:0 8px 32px #14231b14;--b3-shadow-raised:0 16px 56px #14231b24;--b3-color-success:#256443;--b3-color-warning:#805100;--b3-color-info:#275f99;--b3-duration:.16s}.b3-root[data-b3-theme=dark]{--b3-shadow:0 8px 32px #0004;--b3-shadow-raised:0 16px 56px #0007;--b3-color-success:#99d9ab;--b3-color-warning:#f2c76c;--b3-color-info:#a2cfff}.b3-root[data-b3-density=compact]{--b3-d-control:2.25rem;--b3-d-control-small:1.875rem;--b3-d-pad-block:.4375rem;--b3-d-pad-inline:.875rem;--b3-d-label:.875rem;--b3-d-heading:1.0625rem;--b3-d-avatar:2.25rem;--b3-d-message-pad:.625rem .875rem;--b3-d-meta:.75rem;--b3-d-gap:1rem;--b3-d-surface-pad:1rem}@media (pointer:fine) and (width>=48rem){.b3-root[data-b3-density=auto]{--b3-d-control:2.25rem;--b3-d-control-small:1.875rem;--b3-d-pad-block:.4375rem;--b3-d-pad-inline:.875rem;--b3-d-label:.875rem;--b3-d-heading:1.0625rem;--b3-d-avatar:2.25rem;--b3-d-message-pad:.625rem .875rem;--b3-d-meta:.75rem;--b3-d-gap:1rem;--b3-d-surface-pad:1rem}}}@layer bare.layout{.b3-shell{inline-size:min(100%, var(--b3-content));margin-inline:auto;padding:clamp(1rem,4vw,3rem)}.b3-stack{gap:var(--b3-space);flex-direction:column;min-inline-size:0;display:flex}.b3-stack:where(dialog:not([open])){display:none}.b3-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;min-block-size:0;min-inline-size:0;overflow:auto}dialog.b3-stack>.b3-scroll{min-block-size:min(6rem,30dvh)}.b3-stack:has(>.b3-scroll)>:not(.b3-scroll){flex-shrink:0}.b3-cluster{align-items:center;gap:var(--b3-space);flex-wrap:wrap;min-inline-size:0;display:flex}.b3-cluster>*,.b3-split>*{min-inline-size:0}.b3-inline{vertical-align:middle;align-items:center;gap:.5em;min-inline-size:0;max-inline-size:100%;display:inline-flex}.b3-inline>*{min-inline-size:0}.b3-inline:has(>.b3-badge){flex-wrap:wrap}.b3-inline>.b3-badge{flex-shrink:0}.b3-inline:has(>.b3-badge)>:not(.b3-badge,.b3-icon,svg){flex:1 1 min-content}.b3-grid{grid-template-columns:repeat(auto-fit, minmax(min(100%, var(--b3-grid-min,17rem)), 1fr));gap:var(--b3-space);display:grid}.b3-split{justify-content:space-between;align-items:center;gap:var(--b3-space);flex-wrap:wrap;display:flex}.b3-page{flex-direction:column;min-block-size:100svh;display:flex}.b3-page-body{flex:1;min-inline-size:0}.b3-app-layout{grid-template-columns:minmax(12rem,16rem) minmax(0,1fr);min-block-size:100svh;display:grid}.b3-sidebar{padding:var(--b3-space-6);border-inline-end:1px solid var(--b3-color-border);background:var(--b3-color-surface);min-inline-size:0}.b3-center{padding:var(--b3-space-6);place-items:center;display:grid}.b3-cover{min-block-size:min(42rem,85svh);padding-block:var(--b3-space-12);flex-direction:column;justify-content:center;display:flex}.b3-reel{gap:var(--b3-space);scroll-snap-type:x proximity;padding-block-end:var(--b3-space-2);display:flex;overflow-x:auto}.b3-reel>*{scroll-snap-align:start;flex:0 0 min(85%,20rem)}@media (width<=48rem){.b3-app-layout{grid-template-columns:minmax(0,1fr)}.b3-sidebar{border-inline-end:0;border-block-end:1px solid var(--b3-color-border)}}.b3-reel:has(>.b3-badge){scrollbar-width:none;align-items:center;gap:.5rem;padding-block:.625rem}.b3-reel:has(>.b3-badge)::-webkit-scrollbar{display:none}.b3-reel>.b3-badge{flex:none}.b3-stack>.b3-reel{flex-shrink:0}@supports (animation-timeline:scroll(self inline)){.b3-reel:has(>.b3-badge){mask-image:linear-gradient(to right, #000 calc(100% - var(--b3-reel-fade)), #0000);animation:linear both b3-reel-fade scroll(self inline)}.b3-reel:has(>.b3-badge):dir(rtl){mask-image:linear-gradient(to left, #000 calc(100% - var(--b3-reel-fade)), #0000)}@keyframes b3-reel-fade{90%{--b3-reel-fade:2.5rem}to{--b3-reel-fade:0rem}}}}@layer bare.components{.b3-title{font-family:var(--b3-font-display);letter-spacing:-.04em;overflow-wrap:anywhere;font-size:clamp(2rem,7vw,4rem);line-height:1.05}.b3-heading{font-family:var(--b3-font-display);letter-spacing:-.02em;overflow-wrap:anywhere;font-size:1.375rem;font-weight:650;line-height:1.25}.b3-muted{color:var(--b3-color-muted)}.b3-label{letter-spacing:.06em;text-transform:uppercase;font-size:.8125rem;font-weight:650}.b3-surface{background:var(--b3-color-surface);color:var(--b3-color-text);border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);padding:clamp(1rem,3vw,2rem)}.b3-button{border-radius:var(--b3-radius);background:var(--b3-color-accent);min-block-size:2.75rem;color:var(--b3-color-on-accent);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1rem;font-weight:650;text-decoration:none;display:inline-flex}.b3-button :where(svg){flex-shrink:0;display:block}.b3-button>:where([aria-hidden=true]):has(>svg){flex-shrink:0}.b3-button[data-b3-emphasis=quiet]{color:var(--b3-color-text);border-color:var(--b3-color-border);background:0 0}.b3-button:disabled{opacity:.5;cursor:not-allowed}.b3-field{align-content:start;gap:.375rem;min-inline-size:0;display:grid}.b3-input{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);background:var(--b3-color-surface);min-block-size:2.75rem;inline-size:100%;min-inline-size:0;color:var(--b3-color-text);padding:.625rem .75rem}.b3-error{color:var(--b3-color-danger);font-size:.875rem}select.b3-input:not([multiple]):not([size]),select.b3-input[size="1"]:not([multiple]){appearance:none;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:right calc(1rem + 5px) center,right 1rem center;background-repeat:no-repeat;background-size:5px 5px;padding-inline-end:2.5rem}select.b3-input:not([multiple]):not([size]):dir(rtl),select.b3-input[size="1"]:not([multiple]):dir(rtl){background-position:1rem,calc(1rem + 5px)}@media (forced-colors:active){select.b3-input:not([multiple]):not([size]),select.b3-input[size="1"]:not([multiple]){appearance:auto;background-image:none}}:where(ul,ol):has(>.b3-row){margin:0;padding-inline-start:0}.b3-row{border-block-end:1px solid var(--b3-color-border);align-items:center;gap:.75rem;padding-block:1rem;display:flex}.b3-row:where(.b3-stack){align-items:stretch;gap:var(--b3-space)}:is(a,button,[role=button]).b3-row{padding-inline:var(--b3-space-4);color:inherit;text-align:start;cursor:pointer;transition:background-color var(--b3-duration);text-decoration:none}button.b3-row{appearance:none;border:0;border-block-end:1px solid var(--b3-color-border);background:0 0;inline-size:100%}@media (hover:hover){:is(a,button,[role=button]).b3-row:hover{background:color-mix(in srgb, var(--b3-color-text) 4%, transparent)}}:is(a,button,[role=button]).b3-row:focus-visible{background:color-mix(in srgb, var(--b3-color-text) 4%, transparent)}:is(a,button,[role=button]).b3-row:active{background:color-mix(in srgb, var(--b3-color-text) 8%, transparent)}.b3-clamp{-webkit-line-clamp:var(--b3-clamp,2);line-clamp:var(--b3-clamp,2);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.b3-count{box-sizing:border-box;background:var(--b3-color-danger);block-size:1.25rem;min-inline-size:1.25rem;color:var(--b3-color-canvas);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:100vmax;flex:none;place-items:center;padding-inline:.3125rem;font-size:.6875rem;font-weight:700;line-height:1;display:inline-grid}.b3-count[data-b3-tone=accent]{background:var(--b3-color-accent);color:var(--b3-color-on-accent)}.b3-nav-link>.b3-count{margin-inline-start:auto}.b3-bottom-link{position:relative}.b3-bottom-link>.b3-count{box-shadow:0 0 0 2px var(--b3-color-surface);position:absolute;inset-block-start:.125rem;inset-inline-start:calc(50% + .375rem)}:is(a,button,[role=button]).b3-row:is([aria-current]:not([aria-current=false]),[aria-selected=true]){background:color-mix(in srgb, var(--b3-color-accent) 12%, transparent)}.b3-badge{overflow-wrap:anywhere;border:1px solid var(--b3-color-border);border-radius:100vmax;align-items:center;inline-size:fit-content;max-inline-size:100%;padding:.125rem .5rem;font-size:.75rem;font-weight:650;display:inline-flex}.b3-progress{block-size:.5rem;inline-size:100%;accent-color:var(--b3-color-accent)}.b3-button{transition:box-shadow var(--b3-duration), border-color var(--b3-duration)}@media (hover:hover){.b3-button:not(:disabled):hover{box-shadow:inset 0 0 0 100vmax #00000012}}.b3-button:not(:disabled):active{box-shadow:inset 0 0 0 100vmax #00000024}.b3-button[data-b3-emphasis=outline]{color:var(--b3-color-accent);background:0 0;border-color:currentColor}.b3-button[data-b3-emphasis=danger]{background:var(--b3-color-danger);color:var(--b3-color-canvas)}.b3-button[data-b3-size=small]{padding:.5rem .75rem;font-size:.875rem}.b3-button[data-b3-size=large]{min-block-size:3.25rem;padding:.875rem 1.5rem}.b3-button[aria-busy=true]{cursor:progress}.b3-icon{vertical-align:-.2em;flex:none;block-size:1.25em;inline-size:1.25em;display:inline-block}[data-b3-confirm][data-b3-armed]{outline:2px solid var(--b3-color-danger)!important;outline-offset:2px!important}.b3-button[data-b3-armed]{background:var(--b3-color-danger);color:var(--b3-color-canvas);border-color:var(--b3-color-danger)}.b3-input:disabled{opacity:.6;cursor:not-allowed}.b3-input[readonly]{background:var(--b3-color-canvas)}.b3-input::placeholder{color:var(--b3-color-muted);opacity:.8}.b3-input-group{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);background:var(--b3-color-canvas);flex-wrap:wrap;align-items:stretch;min-inline-size:0;display:flex;overflow:clip}.b3-input-group>.b3-input{border:0;border-radius:0;flex:12ch}.b3-input-group:has(>.b3-button){justify-content:end}.b3-input-group:focus-within{outline:none;box-shadow:inset 0 0 0 2px}.b3-input-affix{overflow-wrap:anywhere;min-inline-size:0;max-inline-size:100%;color:var(--b3-color-muted);background:var(--b3-color-canvas);align-items:center;padding-inline:.75rem;display:flex}.b3-choice{cursor:pointer;flex-wrap:wrap;align-items:start;gap:.75rem;padding-block:.5rem;display:flex}.b3-choice>:not(input){overflow-wrap:anywhere;flex:12ch;min-inline-size:0}.b3-choice input{--b3-choice-control:1.125rem;inline-size:var(--b3-choice-control);block-size:var(--b3-choice-control);flex:none;margin:0;margin-block-start:max(0px, calc((1lh - var(--b3-choice-control)) / 2))}.b3-choice>.b3-switch{--b3-choice-control:1.625rem}.b3-switch{appearance:none;background:var(--b3-color-muted);border:2px solid var(--b3-color-muted);cursor:pointer;border-radius:2rem;position:relative;block-size:1.625rem!important;inline-size:2.75rem!important}.b3-switch:before{content:"";background:var(--b3-color-surface);border-radius:50%;block-size:1.125rem;inline-size:1.125rem;position:absolute;inset-block-start:.125rem;inset-inline-start:.125rem}.b3-switch:checked{background:var(--b3-color-accent);border-color:var(--b3-color-accent)}.b3-switch:checked:before{background:var(--b3-color-on-accent);inset-inline-start:calc(100% - 1.25rem)}.b3-switch:disabled{opacity:.5;cursor:not-allowed}.b3-input[type=number]{appearance:textfield}.b3-input[type=number]::-webkit-inner-spin-button,.b3-input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.b3-input::-webkit-datetime-edit,.b3-input::-webkit-datetime-edit-fields-wrapper{padding-block:0}.b3-input:is([type=date],[type=time],[type=datetime-local],[type=month],[type=week]){appearance:none;max-inline-size:100%;display:block}.b3-input::-webkit-date-and-time-value{text-align:start;min-block-size:1lh}.b3-input-affix{white-space:nowrap}.b3-card-header,.b3-card-footer{justify-content:space-between;align-items:center;gap:var(--b3-space);flex-wrap:wrap;display:flex}.b3-card-header{margin-block-end:var(--b3-space-4)}.b3-card-footer{border-block-start:1px solid var(--b3-color-border);margin-block-start:var(--b3-space-4);padding-block-start:var(--b3-space-4)}.b3-surface[data-b3-elevation=raised]{box-shadow:var(--b3-shadow)}.b3-divider{border:0;border-block-start:1px solid var(--b3-color-border);inline-size:100%;margin-inline:0;margin-block:var(--b3-space)}.b3-stack>.b3-divider{margin-block:0}.b3-alert,.b3-toast{overflow-wrap:anywhere;min-inline-size:0}.b3-alert>*,.b3-toast>*{min-inline-size:0}.b3-alert pre{max-inline-size:100%;overflow-x:auto}.b3-alert{--b3-status-color:var(--b3-color-info);border:1px solid var(--b3-status-color);border-radius:var(--b3-radius-small);color:var(--b3-color-text);background:color-mix(in srgb, var(--b3-status-color) 8%, var(--b3-color-surface));border-inline-start-width:4px;align-items:start;gap:.75rem;padding:1rem;display:flex}.b3-alert[data-b3-tone=success],.b3-badge[data-b3-tone=success]{--b3-status-color:var(--b3-color-success)}.b3-alert[data-b3-tone=warning],.b3-badge[data-b3-tone=warning]{--b3-status-color:var(--b3-color-warning)}.b3-alert[data-b3-tone=danger],.b3-badge[data-b3-tone=danger]{--b3-status-color:var(--b3-color-danger)}.b3-badge[data-b3-tone]{color:var(--b3-status-color,var(--b3-color-info));background:color-mix(in srgb, currentColor 7%, transparent);border-color:currentColor}.b3-toast-region{z-index:100;pointer-events:none;gap:.75rem;inline-size:min(24rem,100% - 2rem);display:grid;position:fixed;inset-block-end:1rem;inset-inline-end:1rem}.b3-toast{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);background:var(--b3-color-surface);color:var(--b3-color-text);box-shadow:var(--b3-shadow-raised);pointer-events:auto;flex-wrap:wrap;align-items:start;gap:1rem;padding:1rem;display:flex}.b3-toast>:not(button,.b3-button){flex:12rem}.b3-toast>:is(button,.b3-button){flex:none;max-inline-size:100%}.b3-spinner{vertical-align:-.125em;border:2px solid;border-inline-end-color:#0000;border-radius:50%;flex:none;block-size:1.125em;inline-size:1.125em;animation:.8s linear infinite b3-spin;display:inline-block}@keyframes b3-spin{to{transform:rotate(360deg)}}.b3-skeleton{background:var(--b3-color-border);border-radius:var(--b3-radius-small);min-block-size:1rem;animation:1.8s ease-in-out infinite b3-pulse}@keyframes b3-pulse{50%{opacity:.45}}:is(button,a).b3-badge{min-block-size:auto;color:var(--b3-color-text);cursor:pointer;background:0 0;gap:.25rem;text-decoration:none;position:relative}:is(button,a).b3-badge:after{content:"";position:absolute;inset:-10px 0}:is(button,a).b3-badge[data-b3-tone]{color:var(--b3-status-color,var(--b3-color-info))}:is(button,a).b3-badge:is([aria-pressed=true],[aria-current]:not([aria-current=false])){color:var(--b3-color-on-accent);background:var(--b3-color-accent);border-color:var(--b3-color-accent)}.b3-avatar{background:var(--b3-color-accent);block-size:2.5rem;inline-size:2.5rem;color:var(--b3-color-on-accent);border-radius:50%;flex:none;place-items:center;font-size:.875rem;font-weight:650;display:inline-grid;overflow:hidden}.b3-avatar>img{object-fit:cover;block-size:100%;inline-size:100%}.b3-avatar[data-b3-unread]{position:relative;overflow:visible}.b3-avatar[data-b3-unread]>img{border-radius:inherit}.b3-avatar[data-b3-unread]:after{content:"";background:var(--b3-color-accent);block-size:.75rem;inline-size:.75rem;box-shadow:0 0 0 2px var(--b3-color-surface);border-radius:50%;position:absolute;inset-block-start:-.0625rem;inset-inline-end:-.0625rem}.b3-avatar-stack{padding-inline-start:.5rem;display:flex}.b3-avatar-stack>.b3-avatar{border:2px solid var(--b3-color-surface);margin-inline-start:-.5rem}.b3-kbd{border:1px solid var(--b3-color-border);background:var(--b3-color-surface);color:var(--b3-color-muted);border-block-end-width:2px;border-radius:.25rem;padding:.15rem .35rem;font:.75rem ui-monospace,monospace}.b3-table-wrap{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);position:relative;overflow-x:auto}.b3-table{border-collapse:collapse;text-align:start;font-variant-numeric:tabular-nums;inline-size:100%}.b3-table th{color:var(--b3-color-muted);background:var(--b3-color-canvas);font-size:.75rem;font-weight:650}.b3-table :is(th,td){border-block-end:1px solid var(--b3-color-border);text-align:start;vertical-align:middle;padding:.875rem 1rem}.b3-table tbody tr:last-child td{border-block-end:0}.b3-table[data-b3-density=compact] :is(th,td){padding:.5rem .75rem}.b3-table tbody tr[aria-selected=true]{background:color-mix(in srgb, var(--b3-color-accent) 10%, var(--b3-color-surface))}.b3-definition{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:.75rem 1.5rem;margin:0;display:grid;container:b3-definition/inline-size}.b3-definition dt{overflow-wrap:anywhere;min-inline-size:0;color:var(--b3-color-muted)}.b3-definition dd{overflow-wrap:anywhere;margin:0}@container b3-definition (width<=26rem){.b3-definition>:is(dt,dd){grid-column:1/-1}.b3-definition>dt:not(:first-child){margin-block-start:.75rem}}.b3-stat{grid-template-columns:minmax(0,1fr);gap:.5rem;display:grid}.b3-stat-value{overflow-wrap:anywhere;letter-spacing:-.045em;font-variant-numeric:tabular-nums;font-size:clamp(1.5rem,5vw,3rem);font-weight:650;line-height:1.1}.b3-nav{border-block-end:1px solid var(--b3-color-border);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.75rem min(.75rem,3%);display:flex}.b3-nav[data-b3-orientation=vertical]{border-block-end:0;flex-direction:column;align-items:stretch}.b3-nav-link{overflow-wrap:anywhere;border-radius:var(--b3-radius-small);min-block-size:2.75rem;min-inline-size:0;max-inline-size:100%;color:var(--b3-color-muted);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.625rem min(.875rem,4%);text-decoration:none;display:flex}.b3-nav-link[aria-current=page]{background:color-mix(in srgb, var(--b3-color-accent) 10%, var(--b3-color-surface));color:var(--b3-color-accent);font-weight:650}.b3-nav-link:hover{background:var(--b3-color-surface);color:var(--b3-color-text)}.b3-breadcrumbs{color:var(--b3-color-muted);flex-wrap:wrap;align-items:center;gap:.5rem;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.b3-breadcrumbs li+li:before{content:"/";color:var(--b3-color-border);margin-inline-end:.5rem}.b3-tablist{border-block-end:1px solid var(--b3-color-border);gap:.25rem;display:flex;overflow-x:auto}.b3-tab{appearance:none;color:var(--b3-color-muted);font:inherit;white-space:normal;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;border-block-end:2px solid #0000;flex-shrink:0;min-block-size:2.75rem;max-inline-size:100%;padding:.75rem min(1rem,4vi)}.b3-tab[aria-selected=true]{color:var(--b3-color-accent);border-block-end-color:currentColor;font-weight:650}.b3-tab:disabled{opacity:.5;cursor:not-allowed}.b3-tabpanel{padding-block:var(--b3-space-4)}.b3-segmented{border-radius:var(--b3-radius);background:color-mix(in srgb, var(--b3-color-text) 7%, var(--b3-color-canvas));border:0;flex-wrap:wrap;gap:.25rem;min-inline-size:0;margin:0;padding:.25rem;display:flex}.b3-segmented>label{border-radius:calc(var(--b3-radius) - .25rem);min-block-size:2.75rem;max-inline-size:100%;color:var(--b3-color-muted);text-align:center;cursor:pointer;flex:1 0 auto;justify-content:center;align-items:center;gap:.375rem;padding-inline:.875rem;font-weight:600;display:inline-flex;position:relative}.b3-segmented>label>input{opacity:0;block-size:100%;inline-size:100%;cursor:inherit;margin:0;position:absolute;inset:0}.b3-segmented>label:has(input:checked){background:var(--b3-color-surface);color:var(--b3-color-text);box-shadow:0 1px 2px #0000001f, 0 0 0 1px var(--b3-color-border)}.b3-segmented>label:has(input:focus-visible){box-shadow:inset 0 0 0 2px}@media (forced-colors:active){.b3-segmented>label{border:2px solid canvas}.b3-segmented>label:has(input:checked){border-color:canvastext}.b3-segmented>label:has(input:focus-visible){outline-offset:1px;outline:2px solid highlight}}.b3-segmented>label:has(input:disabled){opacity:.5;cursor:not-allowed}.b3-accordion{border-block-end:1px solid var(--b3-color-border)}.b3-accordion>summary{cursor:pointer;padding:1rem .25rem;font-weight:650}.b3-accordion>:not(summary){padding:0 .25rem 1rem}.b3-dropdown{display:inline-block;position:relative}.b3-dropdown>summary{list-style:none}.b3-dropdown>summary::-webkit-details-marker{display:none}.b3-dropdown-panel{z-index:20;border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);background:var(--b3-color-surface);max-block-size:70svh;inline-size:max-content;min-inline-size:min(12rem,85vw);max-inline-size:min(22rem,85vw);color:var(--b3-color-text);box-shadow:var(--b3-shadow-raised);padding:.5rem;position:absolute;inset-block-start:calc(100% + .5rem);inset-inline-start:0;overflow-y:auto}.b3-dialog{overscroll-behavior:contain;border:1px solid var(--b3-color-border);border-radius:var(--b3-radius-large);background:var(--b3-color-surface);max-block-size:calc(100svh - 2rem);inline-size:min(32rem,100% - 2rem);color:var(--b3-color-text);box-shadow:var(--b3-shadow-raised);padding:min(1.5rem,5vi);overflow:auto}.b3-dialog::backdrop{background:#101b17a6}.b3-dialog[data-b3-placement=end]{border-radius:0;block-size:100svh;max-block-size:100svh;inline-size:min(28rem,100%);max-inline-size:100%;margin:0;margin-inline-start:auto}@media (prefers-reduced-motion:no-preference){.b3-dialog[open]{animation:.28s cubic-bezier(.16,1,.3,1) b3-dialog-enter}.b3-dialog[open][data-b3-placement=end]{animation-name:b3-drawer-enter}.b3-dialog::backdrop,.b3-sheet::backdrop{transition:opacity .16s ease-out}.b3-dialog[data-b3-closing]::backdrop,.b3-sheet[data-b3-closing]::backdrop{opacity:0}@keyframes b3-dialog-enter{0%{opacity:0;transform:translateY(8px)scale(.96)}}@keyframes b3-drawer-enter{0%{opacity:0;translate:var(--b3-drawer-offset,1rem)}}.b3-dialog[dir=rtl][data-b3-placement=end],[dir=rtl] .b3-dialog[data-b3-placement=end]{--b3-drawer-offset:-1rem}}.b3-dialog>form{gap:var(--b3-space);flex-direction:column;margin:0;display:flex}.b3-dialog>form>header:has(>button:last-child){grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:.75rem;display:grid}.b3-dialog>form>header:has(>button:last-child)>:not(:last-child){grid-column:1;min-inline-size:0}.b3-dialog>form>header>button:last-child:not(:first-child){grid-area:1/2}.b3-dialog>form>footer{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.b3-dialog>form>footer>[data-b3-emphasis=quiet]:first-child:not(:last-child){margin-inline-end:auto}.b3-tree,.b3-tree ul{overflow-wrap:anywhere;border-inline-start:1px solid var(--b3-color-border);padding-inline-start:min(1rem,5%);list-style:none}.b3-tree summary{cursor:pointer;padding-block:.5rem}.b3-prose{overflow-wrap:anywhere;max-inline-size:65ch;line-height:1.75}.b3-prose :is(p,ul,ol,blockquote,pre){margin-block:1rem}.b3-prose :is(h1,h2,h3,h4,h5,h6){margin-block:1.75rem .75rem;line-height:1.25}.b3-prose :is(h5,h6){font-size:1em}.b3-prose>:first-child{margin-block-start:0}.b3-prose img{block-size:auto}.b3-prose blockquote{border-inline-start:3px solid var(--b3-color-accent);color:var(--b3-color-muted);margin-inline:0;padding-inline-start:1rem}.b3-prose pre{background:var(--b3-color-surface);border:1px solid var(--b3-color-border);border-radius:var(--b3-radius-small);padding:1rem;overflow-x:auto}.b3-visually-hidden{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.b3-skip-link{z-index:1000;border-radius:var(--b3-radius-small);background:var(--b3-color-accent);max-inline-size:calc(100% - 1.5rem);color:var(--b3-color-on-accent);padding:.75rem 1rem;font-weight:650;position:fixed;inset-block-start:max(.75rem, env(safe-area-inset-top,0px));inset-inline-start:.75rem}.b3-skip-link:not(:focus){clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;padding:0;overflow:hidden}.b3-hero{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:clamp(2rem,6vw,6rem);padding-block:clamp(3rem,8vw,7rem);display:grid}.b3-hero[data-b3-align=center]{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center}.b3-hero-copy{gap:1.5rem;max-inline-size:40rem;display:grid}.b3-feature{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,5vw,5rem);padding-block:clamp(2rem,6vw,5rem);display:grid}.b3-feature[data-b3-reverse=true]>:first-child{order:2}.b3-feature-icon{border-radius:var(--b3-radius);background:var(--b3-color-accent);block-size:3rem;inline-size:3rem;color:var(--b3-color-on-accent);place-items:center;display:inline-grid}.b3-pricing{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius-large);background:var(--b3-color-surface);color:var(--b3-color-text);flex-direction:column;gap:1.25rem;padding:clamp(1.25rem,3vw,2rem);display:flex}.b3-pricing[data-b3-featured=true]{border:2px solid var(--b3-color-accent);box-shadow:var(--b3-shadow)}.b3-pricing>.b3-button:last-child{margin-block-start:auto}.b3-price{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:.375rem;display:flex}.b3-price>strong{letter-spacing:-.05em;font-size:3.25rem;line-height:1.1}.b3-checklist{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.b3-checklist>li{align-items:start;gap:.625rem;display:flex}.b3-checklist>li:before{content:"✓";color:var(--b3-color-accent);font-weight:700}.b3-quote{border-inline-start:3px solid var(--b3-color-accent);margin:0;padding:1.5rem}.b3-quote blockquote{margin:0 0 1rem;font-size:1.25rem;line-height:1.5}.b3-art{isolation:isolate;border-radius:var(--b3-radius-large);background:var(--b3-color-surface);position:relative;overflow:hidden}.b3-art:before{content:"";z-index:-1;pointer-events:none;position:absolute;inset:0}.b3-art[data-b3-art=dots]:before{background-image:radial-gradient(var(--b3-color-border) 1px,transparent 1px);background-size:16px 16px}.b3-art[data-b3-art=glow]:before{background:radial-gradient(ellipse at 20% 20%,color-mix(in srgb,var(--b3-color-accent) 20%,transparent),transparent 65%)}.b3-art[data-b3-art=wash]:before{background:linear-gradient(135deg,color-mix(in srgb,var(--b3-color-accent) 14%,transparent),transparent 70%)}@media (width<=48rem){.b3-hero,.b3-feature{grid-template-columns:minmax(0,1fr)}.b3-feature[data-b3-reverse=true]>:first-child{order:initial}}.b3-reading{grid-template-columns:minmax(0,1fr) minmax(12rem,16rem);grid-template-areas:"content outline";align-items:start;gap:clamp(2rem,5vw,5rem);display:grid}.b3-reading>:not(.b3-toc){grid-area:content;min-inline-size:0}.b3-toc{max-block-size:calc(100svh - var(--b3-outline-top,1rem) - 1rem);border-inline-start:1px solid var(--b3-color-border);grid-area:outline;padding-inline-start:min(1rem,5%);font-size:.875rem;position:sticky;inset-block-start:var(--b3-outline-top,1rem);overflow-y:auto}.b3-toc ol{gap:.25rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.b3-toc ol ol{margin:.25rem 0;padding-inline-start:min(1rem,5%)}.b3-toc-link{border-radius:var(--b3-radius-small);color:var(--b3-color-muted);overflow-wrap:anywhere;padding:.625rem min(.75rem,5%);text-decoration:none;display:block}.b3-toc-link:hover{color:var(--b3-color-text);background:var(--b3-color-surface)}.b3-toc-link[aria-current=location]{color:var(--b3-color-accent);background:color-mix(in srgb, var(--b3-color-accent) 10%, var(--b3-color-surface));font-weight:650}@media (width<=48rem){.b3-reading{grid-template-columns:minmax(0,1fr);grid-template-areas:"outline""content";gap:2rem}.b3-toc{max-block-size:none;position:static}}.b3-command{inline-size:min(38rem,100% - 2rem);padding:0}.b3-command[open]:has(>.b3-scroll){grid-template-rows:auto minmax(0,1fr);display:grid}.b3-command>.b3-scroll>.b3-command-list{max-block-size:none;overflow:visible}.b3-command-search{border-block-end:1px solid var(--b3-color-border);flex-wrap:wrap;justify-content:end;align-items:center;gap:.75rem;padding:min(1rem,4vw);display:flex}.b3-command-search>input{flex:12ch;min-inline-size:0}.b3-command-list{overscroll-behavior:contain;max-block-size:50svh;padding:.5rem;overflow-y:auto}.b3-command-group+.b3-command-group{border-block-start:1px solid var(--b3-color-border);margin-block-start:.5rem;padding-block-start:.5rem}.b3-command-group>:first-child:not([role=option]){color:var(--b3-color-muted);padding:.5rem .75rem;font-size:.75rem;display:block}.b3-command-item{border-radius:var(--b3-radius-small);cursor:pointer;justify-content:space-between;align-items:center;gap:min(1rem,2vw);min-block-size:2.75rem;padding:min(.875rem,2svh) min(.75rem,3vw);display:flex}.b3-command .b3-command-item{border-radius:calc(var(--b3-radius-large) - .5rem - 1px)}.b3-command-item>:first-child{overflow-wrap:anywhere;min-inline-size:0}.b3-command-item[aria-selected=true]{background:var(--b3-color-accent);color:var(--b3-color-on-accent)}.b3-command-item[aria-selected=true] .b3-muted{color:inherit}.b3-command-item[aria-disabled=true]{opacity:.5;cursor:not-allowed}.b3-command-item:not([aria-disabled=true]):hover{outline:1px solid var(--b3-color-border);outline-offset:-1px}.b3-form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));align-items:start;gap:1.25rem;display:grid}.b3-form-grid[data-b3-layout=inline]{flex-wrap:wrap;align-items:end;display:flex}.b3-form-grid[data-b3-layout=inline]>.b3-field{flex:12rem;min-inline-size:0}.b3-form-grid[data-b3-layout=inline]>.b3-button{overflow-wrap:anywhere;flex:0 auto;max-inline-size:100%}.b3-fieldset{border:0;min-inline-size:0;margin:0;padding:0}.b3-fieldset>legend{padding:0 0 .75rem;font-weight:650}.b3-help{color:var(--b3-color-muted);font-size:.875rem}.b3-help[data-b3-tone=success]{color:var(--b3-color-success)}.b3-help[data-b3-tone=warning]{color:var(--b3-color-warning)}.b3-input[data-b3-size=small]{padding:.5rem .75rem}.b3-input[data-b3-size=large]{min-block-size:3.25rem;padding:.875rem 1rem}.b3-input[data-b3-emphasis=subtle]{background-color:var(--b3-color-canvas);border-color:#0000}.b3-input[data-b3-emphasis=outline]{background-color:#0000;border-width:2px}.b3-input[data-b3-tone=success]{border-color:var(--b3-color-success)}.b3-input[data-b3-tone=warning]{border-color:var(--b3-color-warning)}.b3-input[aria-invalid=true]{border-color:var(--b3-color-danger)}textarea.b3-input{resize:vertical}select.b3-input[multiple]{min-block-size:8rem}.b3-input[type=file]{padding:.375rem}.b3-input::file-selector-button{font:inherit;border-radius:calc(var(--b3-radius) - .375rem - 1px);background:var(--b3-color-accent);color:var(--b3-color-on-accent);cursor:pointer;border:0;margin-inline-end:.75rem;padding:.5rem .75rem}.b3-input[type=color]{inline-size:5rem;padding:.25rem}.b3-range{min-block-size:2.75rem;inline-size:100%;accent-color:var(--b3-color-accent);margin:0}.b3-choice-card{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);background:var(--b3-color-surface);color:var(--b3-color-text);cursor:pointer;align-items:start;gap:.75rem;padding:1rem;display:flex}.b3-choice-card>input{flex:none;block-size:1.125rem;inline-size:1.125rem;margin-block-start:.3rem}.b3-choice-card:has(input:checked){border-color:var(--b3-color-accent);background:color-mix(in srgb, var(--b3-color-accent) 7%, var(--b3-color-surface));box-shadow:inset 0 0 0 1px var(--b3-color-accent)}.b3-choice-card:has(input:focus-visible){outline:none;box-shadow:inset 0 0 0 2px}.b3-choice-card:has(input:disabled){opacity:.5;cursor:not-allowed}.b3-choice-card:has(input[aria-invalid=true]){border-color:var(--b3-color-danger)}.b3-range[aria-invalid=true]{accent-color:var(--b3-color-danger)}.b3-stepper{flex-wrap:wrap;gap:1rem 2rem;margin:0;padding:0;list-style:none;display:flex}.b3-step{color:var(--b3-color-muted);align-items:center;gap:.625rem;font-size:.875rem;display:flex}.b3-step-marker{border:1px solid var(--b3-color-border);font-variant-numeric:tabular-nums;border-radius:50%;flex:none;place-items:center;block-size:2rem;inline-size:2rem;display:grid}.b3-step[aria-current=step]{color:var(--b3-color-text);font-weight:650}.b3-step[aria-current=step] .b3-step-marker{background:var(--b3-color-accent);color:var(--b3-color-on-accent);border-color:var(--b3-color-accent)}.b3-step[data-b3-complete=true] .b3-step-marker{border-color:var(--b3-color-success);color:var(--b3-color-success)}.b3-conversation{gap:1.5rem;min-inline-size:0;margin:0;padding:0;list-style:none;display:grid}.b3-message{grid-template-columns:minmax(0,1fr);justify-self:start;gap:.375rem;min-inline-size:0;max-inline-size:min(85%,38rem);display:grid}.b3-message[data-b3-side=self]{justify-self:end}.b3-message-body{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);background:var(--b3-color-surface);color:var(--b3-color-text);white-space:pre-wrap;overflow-wrap:anywhere;padding:.75rem 1rem}.b3-message[data-b3-side=self]>.b3-message-body{background:var(--b3-color-accent);color:var(--b3-color-on-accent);border-color:#0000}.b3-message-meta{color:var(--b3-color-muted);flex-wrap:wrap;gap:.35rem .75rem;font-size:.8125rem;display:flex}.b3-message[data-b3-side=self]>.b3-message-meta{justify-content:end}.b3-conversation{align-content:start}.b3-message-body:has(>:is(div,p,ul,ol,table,pre,blockquote,b3-markdown-stream)){white-space:normal}.b3-composer{align-items:end;gap:var(--b3-space-2);padding:var(--b3-space-3);border-block-start:1px solid var(--b3-color-border);background:var(--b3-color-canvas);flex-wrap:wrap;display:flex}.b3-composer>.b3-input,.b3-composer>.b3-button{border-radius:var(--b3-radius);min-block-size:var(--b3-d-control,2.75rem)}.b3-composer>.b3-input{resize:none;min-inline-size:0;max-inline-size:100%;padding-block:calc((var(--b3-d-control,2.75rem) - 1.5em - 2px) / 2);flex:12ch;line-height:1.5}.b3-composer>.b3-button{block-size:var(--b3-d-control,2.75rem);min-inline-size:var(--b3-d-control,2.75rem);flex-shrink:0;margin-inline-start:auto}.b3-message-body :where(p,ul,ol,pre,table,blockquote,h1,h2,h3,h4,h5,h6,div,figure):first-child{margin-block-start:0}.b3-message-body :where(p,ul,ol,pre,table,blockquote,h1,h2,h3,h4,h5,h6,div,figure):last-child{margin-block-end:0}.b3-mobile-app{--b3-touch:44px;min-block-size:100svh;max-inline-size:var(--b3-app-width,70rem);margin-inline:auto;padding-block-end:calc(5.5rem + env(safe-area-inset-bottom,0px))}.b3-mobile-app[data-b3-platform=android]{--b3-touch:48px}.b3-mobile-app :where(button,.b3-button,select,input:not([type=checkbox],[type=radio])){min-block-size:var(--b3-touch)}.b3-app-bar{padding:max(.75rem, env(safe-area-inset-top,0px)) 1.25rem .75rem;align-items:center;gap:.75rem;display:flex}.b3-app-bar>:last-child:not(:first-child){margin-inline-start:auto}.b3-bottom-nav{z-index:10;max-inline-size:var(--b3-app-width,70rem);padding:.5rem clamp(.5rem, 2vw, 1rem) max(.5rem, env(safe-area-inset-bottom,0px));background:var(--b3-color-surface);color:var(--b3-color-text);border-block-start:1px solid var(--b3-color-border);flex-wrap:wrap;justify-content:space-around;gap:.5rem;margin-inline:auto;display:flex;position:fixed;inset-block-end:0;inset-inline:0}.b3-bottom-link{appearance:none;cursor:pointer;overflow-wrap:normal;text-align:center;min-block-size:var(--b3-touch,44px);min-inline-size:0;color:var(--b3-color-muted);background:0 0;border:0;border-radius:1rem;flex-direction:column;flex:5ch;justify-content:center;align-items:center;gap:.15rem;padding:.25rem clamp(.125rem,1vw,.5rem);font-size:.75rem;text-decoration:none;display:flex}.b3-bottom-link:disabled{opacity:.5;cursor:not-allowed}.b3-bottom-link:has(svg){justify-content:flex-start}.b3-bottom-link[aria-current=page]{color:var(--b3-color-accent);font-weight:700}[data-b3-platform=android] .b3-bottom-link[aria-current=page]{background:var(--b3-color-canvas)}.b3-mobile-list{border:1px solid var(--b3-color-border);background:var(--b3-color-surface);border-radius:1rem;margin:0;padding:0;list-style:none;overflow:hidden}.b3-mobile-list>li+li{border-block-start:1px solid var(--b3-color-border)}.b3-mobile-row{min-block-size:var(--b3-touch,44px);color:var(--b3-color-text);align-items:center;gap:1rem;padding:.875rem 1rem;text-decoration:none;display:flex}.b3-mobile-row>:last-child:not(:first-child){margin-inline-start:auto}.b3-sheet{inline-size:min(100%, var(--b3-overlay-width,32rem));max-inline-size:none;max-block-size:min(85dvh, calc(100dvh - env(safe-area-inset-top,0px) - 1rem));overscroll-behavior:contain;border:1px solid var(--b3-color-border);padding:1.5rem min(1.5rem, 5vi) max(1.5rem, env(safe-area-inset-bottom,0px));background:var(--b3-color-surface);color:var(--b3-color-text);border-radius:1.5rem 1.5rem 0 0;margin:0 auto;inset:auto 0 0;overflow-y:auto}.b3-sheet::backdrop{background:#0007}.b3-sheet [data-b3-initial-focus]:focus{box-shadow:none;outline:none}.b3-sheet-handle{min-block-size:44px;inline-size:5rem;color:var(--b3-color-muted);touch-action:none;cursor:grab;background:0 0;border:0;border-radius:1rem;flex:none;align-self:center;place-items:center;margin-block:-1rem -.5rem;padding:0;display:grid}.b3-sheet-handle:before{content:"";background:currentColor;border-radius:1rem;block-size:.25rem;inline-size:2.25rem}.b3-sheet[data-b3-dragging]{animation:none}.b3-sheet[data-b3-dragging] .b3-sheet-handle{cursor:grabbing}[data-b3-platform=android] .b3-mobile-list{border-radius:1.5rem}@media (prefers-reduced-motion:no-preference){.b3-sheet[open]{animation:.32s cubic-bezier(.16,1,.3,1) b3-sheet-enter}@keyframes b3-sheet-enter{0%{opacity:0;transform:translateY(3rem)}to{opacity:1;transform:translateY(0)}}}.b3-root:has(dialog:modal){overflow:hidden}.b3-bottom-link[aria-current=page]{background:color-mix(in srgb, var(--b3-color-accent) 12%, transparent)}.b3-bottom-link :where(svg:not([width])){flex:none;block-size:1.375rem;inline-size:1.375rem}.b3-bottom-link>:where(span,strong):not(.b3-count){white-space:nowrap;text-overflow:ellipsis;max-inline-size:100%;overflow:hidden}:has(>.b3-bottom-link:nth-of-type(5))>.b3-bottom-link{padding-inline:.125rem;font-size:.6875rem}.b3-app-frame{inline-size:100%;block-size:var(--b3-frame-height,100dvh);min-block-size:0;max-inline-size:var(--b3-app-width,70rem);padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);grid-template-rows:auto minmax(0,1fr) auto;margin-inline:auto;display:grid;overflow:clip}.b3-app-frame>header{grid-row:1;min-inline-size:0}.b3-app-frame>main{overscroll-behavior:contain;grid-area:2/1;min-block-size:0;min-inline-size:0;overflow:auto}.b3-app-frame>:is(nav,footer){grid-row:3;min-inline-size:0;position:relative}.b3-app-frame>.b3-toast-region{overscroll-behavior:contain;grid-area:2/1;place-self:end;min-block-size:0;max-block-size:calc(100% - 2rem);margin:1rem;position:relative;inset:auto;overflow-y:auto}.b3-app-frame>.b3-app-bar{padding-block-start:.75rem}.b3-app-frame:has(>.b3-bottom-nav,>footer .b3-bottom-nav){padding-block-end:0}.b3-app-frame .b3-bottom-nav{inline-size:100%;max-inline-size:none;padding-block-end:max(.5rem, env(safe-area-inset-bottom,0px));position:static}:where(.b3-root[data-b3-density]) .b3-button{min-block-size:var(--b3-d-control,2.75rem);padding:var(--b3-d-pad-block,.625rem) var(--b3-d-pad-inline,1rem);font-size:var(--b3-d-label,inherit)}:where(.b3-root[data-b3-density]) .b3-button[data-b3-size=small]{min-block-size:var(--b3-d-control-small,auto);padding:calc(var(--b3-d-pad-block,.5rem) - .125rem) calc(var(--b3-d-pad-inline,.75rem) - .25rem)}:where(.b3-root[data-b3-density]) .b3-input{min-block-size:var(--b3-d-control,2.75rem);padding:calc((var(--b3-d-control,2.75rem) - 1.5em - 2px) / 2) .75rem;line-height:1.5}:where(.b3-root[data-b3-density]) .b3-nav-link{min-block-size:var(--b3-d-control,2.75rem);padding:var(--b3-d-pad-block,.625rem) min(var(--b3-d-pad-inline,.875rem), 4%);font-size:var(--b3-d-label,inherit)}:where(.b3-root[data-b3-density]) .b3-heading{font-size:var(--b3-d-heading,1.375rem)}:where(.b3-root[data-b3-density]) .b3-avatar{block-size:var(--b3-d-avatar,2.5rem);inline-size:var(--b3-d-avatar,2.5rem)}:where(.b3-root[data-b3-density]) .b3-conversation{gap:var(--b3-d-gap,1.5rem)}:where(.b3-root[data-b3-density]) .b3-message-body{padding:var(--b3-d-message-pad,.75rem 1rem)}:where(.b3-root[data-b3-density]) .b3-message-meta{font-size:var(--b3-d-meta,.8125rem)}.b3-button[data-b3-emphasis=ghost]{color:var(--b3-color-muted);background:0 0;border-color:#0000}.b3-button[data-b3-emphasis=ghost]:not(:disabled):hover{color:var(--b3-color-text)}.b3-button[data-b3-emphasis=ghost][aria-pressed=true]{color:var(--b3-color-accent)}.b3-button[data-b3-icon]{min-inline-size:var(--b3-d-control,2.75rem);padding-inline:0}:where(.b3-root[data-b3-density]) .b3-button[data-b3-icon][data-b3-size=small]{min-inline-size:var(--b3-d-control-small,2.25rem)}.b3-button:disabled{opacity:1;background:color-mix(in srgb, var(--b3-color-muted) 14%, var(--b3-color-surface));color:var(--b3-color-muted);border-color:#0000}.b3-button[data-b3-emphasis=ghost]:disabled{background:0 0}.b3-truncate{white-space:nowrap;text-overflow:ellipsis;min-inline-size:0;overflow:hidden}.b3-strong{font-size:inherit;font-weight:650}.b3-caption{color:var(--b3-color-muted);font-size:.8125rem;line-height:1.4}.b3-heading[data-b3-size=small]{font-size:1.0625rem;line-height:1.3}:is(a,button).b3-caption{color:var(--b3-color-accent);cursor:pointer;text-underline-offset:.15em;background:0 0;border:0;padding:0}:is(a,button).b3-caption:is(:hover,:focus-visible){text-decoration:underline}:where(.b3-root[data-b3-density]) .b3-caption{font-size:var(--b3-d-meta,.8125rem)}.b3-badge{gap:.25rem}:where(.b3-root[data-b3-density]) .b3-surface{padding:var(--b3-d-surface-pad,clamp(1rem, 3vw, 2rem))}.b3-input-group,.b3-input-group>.b3-input-affix,.b3-input-group>.b3-input{background:var(--b3-color-surface)}.b3-root[data-b3-theme=dark] .b3-message[data-b3-side=self]>.b3-message-body{background:color-mix(in srgb, var(--b3-color-accent) 22%, var(--b3-color-surface));color:var(--b3-color-text)}.b3-empty{justify-items:center;gap:var(--b3-space-2);padding:var(--b3-space-12) var(--b3-space-4);text-align:center;color:var(--b3-color-muted);display:grid}.b3-empty>svg{color:var(--b3-color-muted)}}@property --b3-reel-fade{syntax:"<length>";inherits:false;initial-value:2.5rem}
1
+ @layer bare.reset{:where(.b3-root),:where(.b3-root *){box-sizing:border-box}:where(.b3-root){font-family:var(--b3-font-body);background:var(--b3-color-canvas);color:var(--b3-color-text);color-scheme:light;margin:0;font-size:1rem;line-height:1.5}:where(.b3-root>body){margin:0}:where(b3-tabs,b3-dropdown,b3-dialog,b3-sheet,b3-command){display:contents}:where(b3-reel,b3-toast-region,b3-toc,b3-board,b3-date-picker,b3-image-viewer){display:block}:where(.b3-root) :where(button,input,select,textarea){font:inherit}:where(.b3-root) :where(button:not(:disabled)){color:inherit}:where(.b3-root) :where(h1,h2,h3,h4,h5,h6,p){margin:0}:where(.b3-root) :where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:none;box-shadow:inset 0 0 0 2px}@media (forced-colors:active){:where(.b3-root) :where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline-offset:-2px;outline:1px solid highlight}}:where(.b3-root) :where(img,svg:not([width])){max-inline-size:100%}@media (prefers-reduced-motion:reduce){:where(.b3-root *),:where(.b3-root *):before,:where(.b3-root *):after{transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-b3-motion=reduce] *,[data-b3-motion=reduce] :before,[data-b3-motion=reduce] :after,[data-b3-motion=reduce] ::backdrop{scroll-behavior:auto!important;transition:none!important;animation:none!important}:where(.b3-root [hidden]):not([hidden=until-found]){display:none!important}:where(.b3-root) :where(input[type=checkbox],input[type=radio],input[type=range]){accent-color:var(--b3-color-accent)}}@layer bare.tokens{.b3-root:where(:not(.b3-root .b3-root)),.b3-root[data-b3-theme=light]{--b3-color-canvas:#f6f5f0;--b3-color-surface:#fff;--b3-color-text:#202923;--b3-color-muted:#59655d;--b3-color-border:#d5dbd3;--b3-color-accent:#245c42;--b3-color-on-accent:#fff;--b3-color-danger:#a62c35;--b3-color-focus:#276bdd;--b3-font-body:ui-sans-serif, system-ui, sans-serif;--b3-font-display:var(--b3-font-body);--b3-radius:.75rem;--b3-space:1rem;--b3-content:68rem}.b3-root[data-b3-theme=dark]{color-scheme:dark;--b3-color-canvas:#141c19;--b3-color-surface:#202c26;--b3-color-text:#edf3ec;--b3-color-muted:#a8b9ad;--b3-color-border:#415348;--b3-color-accent:#aadbb8;--b3-color-on-accent:#132b1b;--b3-color-danger:#ffadb1;--b3-color-focus:#9ac4ff}.b3-root:where(:not(.b3-root .b3-root)),.b3-root[data-b3-theme=light]{--b3-space-1:.25rem;--b3-space-2:.5rem;--b3-space-3:.75rem;--b3-space-4:1rem;--b3-space-6:1.5rem;--b3-space-8:2rem;--b3-space-12:3rem;--b3-radius-small:.375rem;--b3-radius-large:1.25rem;--b3-shadow:0 8px 32px #14231b14;--b3-shadow-raised:0 16px 56px #14231b24;--b3-color-success:#256443;--b3-color-warning:#805100;--b3-color-info:#275f99;--b3-duration:.16s}.b3-root[data-b3-theme=dark]{--b3-shadow:0 8px 32px #0004;--b3-shadow-raised:0 16px 56px #0007;--b3-color-success:#99d9ab;--b3-color-warning:#f2c76c;--b3-color-info:#a2cfff}.b3-root[data-b3-density=compact]{--b3-d-control:2.25rem;--b3-d-control-small:1.875rem;--b3-d-pad-block:.4375rem;--b3-d-pad-inline:.875rem;--b3-d-label:.875rem;--b3-d-heading:1.0625rem;--b3-d-avatar:2.25rem;--b3-d-message-pad:.625rem .875rem;--b3-d-meta:.75rem;--b3-d-gap:1rem;--b3-d-surface-pad:1rem}@media (pointer:fine) and (width>=48rem){.b3-root[data-b3-density=auto]{--b3-d-control:2.25rem;--b3-d-control-small:1.875rem;--b3-d-pad-block:.4375rem;--b3-d-pad-inline:.875rem;--b3-d-label:.875rem;--b3-d-heading:1.0625rem;--b3-d-avatar:2.25rem;--b3-d-message-pad:.625rem .875rem;--b3-d-meta:.75rem;--b3-d-gap:1rem;--b3-d-surface-pad:1rem}}}@layer bare.layout{.b3-shell{inline-size:min(100%, var(--b3-content));margin-inline:auto;padding:clamp(1rem,4vw,3rem)}.b3-stack{gap:var(--b3-space);flex-direction:column;min-inline-size:0;display:flex}.b3-stack:where(dialog:not([open])){display:none}.b3-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;flex:auto;min-block-size:0;min-inline-size:0;overflow:auto}dialog.b3-stack>.b3-scroll{min-block-size:min(6rem,30dvh)}.b3-stack:has(>.b3-scroll)>:not(.b3-scroll){flex-shrink:0}.b3-cluster{align-items:center;gap:var(--b3-space);flex-wrap:wrap;min-inline-size:0;display:flex}.b3-cluster>*,.b3-split>*{min-inline-size:0}.b3-inline{vertical-align:middle;align-items:center;gap:.5em;min-inline-size:0;max-inline-size:100%;display:inline-flex}.b3-inline>*{min-inline-size:0}.b3-inline:has(>.b3-badge){flex-wrap:wrap}.b3-inline>.b3-badge{flex-shrink:0}.b3-inline:has(>.b3-badge)>:not(.b3-badge,.b3-icon,svg){flex:1 1 min-content}.b3-grid{grid-template-columns:repeat(auto-fit, minmax(min(100%, var(--b3-grid-min,17rem)), 1fr));gap:var(--b3-space);display:grid}.b3-split{justify-content:space-between;align-items:center;gap:var(--b3-space);flex-wrap:wrap;display:flex}.b3-page{flex-direction:column;min-block-size:100svh;display:flex}.b3-page-body{flex:1;min-inline-size:0}.b3-app-layout{flex-wrap:wrap;min-block-size:100svh;display:flex;container:b3-app/inline-size}.b3-app-layout>.b3-sidebar{flex:16rem}.b3-app-layout>:not(.b3-sidebar){flex:999 32rem;min-inline-size:0}.b3-sidebar{padding:var(--b3-space-6);border-inline-end:1px solid var(--b3-color-border);background:var(--b3-color-surface);min-inline-size:0}.b3-center{padding:var(--b3-space-6);place-items:center;display:grid}.b3-cover{min-block-size:min(42rem,85svh);padding-block:var(--b3-space-12);flex-direction:column;justify-content:center;display:flex}.b3-reel{gap:var(--b3-space);scroll-snap-type:x proximity;padding-block-end:var(--b3-space-2);display:flex;overflow-x:auto}.b3-reel>*{scroll-snap-align:start;flex:0 0 min(85%,20rem)}@container b3-app (width<48rem){.b3-app-layout>.b3-sidebar{border-inline-end:0;border-block-end:1px solid var(--b3-color-border)}}.b3-reel:has(>.b3-badge){scrollbar-width:none;align-items:center;gap:.5rem;padding-block:.625rem}.b3-reel:has(>.b3-badge)::-webkit-scrollbar{display:none}.b3-reel>.b3-badge{flex:none}.b3-stack>.b3-reel{flex-shrink:0}@supports (animation-timeline:scroll(self inline)){.b3-reel:has(>.b3-badge){mask-image:linear-gradient(to right, #000 calc(100% - var(--b3-reel-fade)), #0000);animation:linear both b3-reel-fade scroll(self inline)}.b3-reel:has(>.b3-badge):dir(rtl){mask-image:linear-gradient(to left, #000 calc(100% - var(--b3-reel-fade)), #0000)}@keyframes b3-reel-fade{90%{--b3-reel-fade:2.5rem}to{--b3-reel-fade:0rem}}}}@layer bare.components{.b3-title{font-family:var(--b3-font-display);letter-spacing:-.04em;overflow-wrap:anywhere;font-size:clamp(2rem,7vw,4rem);line-height:1.05}.b3-heading{font-family:var(--b3-font-display);letter-spacing:-.02em;overflow-wrap:anywhere;font-size:1.375rem;font-weight:650;line-height:1.25}.b3-muted{color:var(--b3-color-muted)}.b3-label{letter-spacing:.06em;text-transform:uppercase;font-size:.8125rem;font-weight:650}.b3-surface{background:var(--b3-color-surface);color:var(--b3-color-text);border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);padding:clamp(1rem,3vw,2rem)}.b3-button{border-radius:var(--b3-radius);background:var(--b3-color-accent);min-block-size:2.75rem;color:var(--b3-color-on-accent);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1rem;font-weight:650;text-decoration:none;display:inline-flex}.b3-button :where(svg){flex-shrink:0;display:block}.b3-button>:where([aria-hidden=true]):has(>svg){flex-shrink:0}.b3-button[data-b3-emphasis=quiet]{color:var(--b3-color-text);border-color:var(--b3-color-border);background:0 0}.b3-button:disabled{opacity:.5;cursor:not-allowed}.b3-field{align-content:start;gap:.375rem;min-inline-size:0;display:grid}.b3-input{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);background:var(--b3-color-surface);min-block-size:2.75rem;inline-size:100%;min-inline-size:0;color:var(--b3-color-text);padding:.625rem .75rem}.b3-error{color:var(--b3-color-danger);font-size:.875rem}select.b3-input:not([multiple]):not([size]),select.b3-input[size="1"]:not([multiple]){appearance:none;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:right calc(1rem + 5px) center,right 1rem center;background-repeat:no-repeat;background-size:5px 5px;padding-inline-end:2.5rem}select.b3-input:not([multiple]):not([size]):dir(rtl),select.b3-input[size="1"]:not([multiple]):dir(rtl){background-position:1rem,calc(1rem + 5px)}@media (forced-colors:active){select.b3-input:not([multiple]):not([size]),select.b3-input[size="1"]:not([multiple]){appearance:auto;background-image:none}}:where(ul,ol):has(>.b3-row){margin:0;padding-inline-start:0}.b3-row{border-block-end:1px solid var(--b3-color-border);align-items:center;gap:.75rem;padding-block:1rem;display:flex}.b3-row:where(.b3-stack){align-items:stretch;gap:var(--b3-space)}:is(a,button,[role=button]).b3-row{padding-inline:var(--b3-space-4);color:inherit;text-align:start;cursor:pointer;transition:background-color var(--b3-duration);text-decoration:none}button.b3-row{appearance:none;border:0;border-block-end:1px solid var(--b3-color-border);background:0 0;inline-size:100%}@media (hover:hover){:is(a,button,[role=button]).b3-row:hover{background:color-mix(in srgb, var(--b3-color-text) 4%, transparent)}}:is(a,button,[role=button]).b3-row:focus-visible{background:color-mix(in srgb, var(--b3-color-text) 4%, transparent)}:is(a,button,[role=button]).b3-row:active{background:color-mix(in srgb, var(--b3-color-text) 8%, transparent)}.b3-clamp{-webkit-line-clamp:var(--b3-clamp,2);line-clamp:var(--b3-clamp,2);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.b3-count{box-sizing:border-box;background:var(--b3-color-danger);block-size:1.25rem;min-inline-size:1.25rem;color:var(--b3-color-canvas);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:100vmax;flex:none;place-items:center;padding-inline:.3125rem;font-size:.6875rem;font-weight:700;line-height:1;display:inline-grid}.b3-count[data-b3-tone=accent]{background:var(--b3-color-accent);color:var(--b3-color-on-accent)}.b3-nav-link>.b3-count{margin-inline-start:auto}.b3-bottom-link{position:relative}.b3-bottom-link:has(>.b3-count){min-inline-size:max(var(--b3-touch,44px), 2.25rem)}.b3-bottom-link>.b3-count{box-shadow:0 0 0 2px var(--b3-color-surface);position:absolute;inset-block-start:.125rem;inset-inline-end:max(.125rem,50% - 2rem)}:is(a,button,[role=button]).b3-row:is([aria-current]:not([aria-current=false]),[aria-selected=true]){background:color-mix(in srgb, var(--b3-color-accent) 12%, transparent)}@media (forced-colors:active){:is(a,button,[role=button]).b3-row{border-inline-start:3px solid canvas}:is(a,button,[role=button]).b3-row:is([aria-current]:not([aria-current=false]),[aria-selected=true]){border-inline-start-color:highlight}}.b3-badge{overflow-wrap:anywhere;border:1px solid var(--b3-color-border);border-radius:100vmax;align-items:center;inline-size:fit-content;max-inline-size:100%;padding:.125rem .5rem;font-size:.75rem;font-weight:650;display:inline-flex}.b3-progress{block-size:.5rem;inline-size:100%;accent-color:var(--b3-color-accent)}.b3-button{transition:box-shadow var(--b3-duration), border-color var(--b3-duration)}@media (hover:hover){.b3-button:not(:disabled):hover{box-shadow:inset 0 0 0 100vmax #00000012}}.b3-button:not(:disabled):active{box-shadow:inset 0 0 0 100vmax #00000024}.b3-button[data-b3-emphasis=ghost]:not(:disabled):active{color:var(--b3-color-text)}.b3-button[data-b3-emphasis=outline]{color:var(--b3-color-accent);background:0 0;border-color:currentColor}.b3-button[data-b3-emphasis=danger]{background:var(--b3-color-danger);color:var(--b3-color-canvas)}.b3-button[data-b3-size=small]{padding:.5rem .75rem;font-size:.875rem}.b3-button[data-b3-size=large]{min-block-size:3.25rem;padding:.875rem 1.5rem}.b3-button[aria-busy=true]{cursor:progress}.b3-icon{vertical-align:-.2em;flex:none;block-size:1.25em;inline-size:1.25em;display:inline-block}[data-b3-confirm][data-b3-armed]{outline:2px solid var(--b3-color-danger)!important;outline-offset:2px!important}.b3-button[data-b3-armed]{background:var(--b3-color-danger);color:var(--b3-color-canvas);border-color:var(--b3-color-danger)}.b3-input:disabled{opacity:.6;cursor:not-allowed}.b3-input[readonly]{background:var(--b3-color-canvas)}.b3-input::placeholder{color:var(--b3-color-muted);opacity:.8}.b3-input-group{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);background:var(--b3-color-canvas);flex-wrap:wrap;align-items:stretch;min-inline-size:0;display:flex;overflow:clip}.b3-input-group>.b3-input{border:0;border-radius:0;flex:12ch}.b3-input-group>.b3-button{overflow-wrap:anywhere;flex-wrap:wrap;min-inline-size:0;max-inline-size:100%;margin-inline-start:auto;padding-inline:.75rem}.b3-input-group:focus-within{outline:none;box-shadow:inset 0 0 0 2px}.b3-input-affix{overflow-wrap:anywhere;min-inline-size:0;max-inline-size:100%;color:var(--b3-color-muted);background:var(--b3-color-canvas);align-items:center;padding-inline:.75rem;display:flex}.b3-choice{cursor:pointer;flex-wrap:wrap;align-items:start;gap:.75rem;padding-block:.5rem;display:flex}.b3-choice>:not(input){overflow-wrap:anywhere;flex:12ch;min-inline-size:0}.b3-choice input{--b3-choice-control:1.125rem;inline-size:var(--b3-choice-control);block-size:var(--b3-choice-control);flex:none;margin:0;margin-block-start:max(0px, calc((1lh - var(--b3-choice-control)) / 2))}.b3-choice>.b3-switch{--b3-choice-control:1.625rem}.b3-switch{appearance:none;background:var(--b3-color-muted);border:2px solid var(--b3-color-muted);cursor:pointer;border-radius:2rem;position:relative;block-size:1.625rem!important;inline-size:2.75rem!important}.b3-switch:before{content:"";background:var(--b3-color-surface);border-radius:50%;block-size:1.125rem;inline-size:1.125rem;position:absolute;inset-block-start:.125rem;inset-inline-start:.125rem}.b3-switch:checked{background:var(--b3-color-accent);border-color:var(--b3-color-accent)}.b3-switch:checked:before{background:var(--b3-color-on-accent);inset-inline-start:calc(100% - 1.25rem)}.b3-switch:disabled{opacity:.5;cursor:not-allowed}@media (forced-colors:active){.b3-switch{forced-color-adjust:none;background:canvas;border-color:buttontext}.b3-switch:before{background:buttontext}.b3-switch:checked{background:highlight;border-color:highlight}.b3-switch:checked:before{background:highlighttext}.b3-switch:disabled{opacity:1;background:canvas;border-color:graytext}.b3-switch:disabled:before{background:graytext}}.b3-input[type=number]{appearance:textfield}.b3-input[type=number]::-webkit-inner-spin-button,.b3-input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.b3-input::-webkit-datetime-edit,.b3-input::-webkit-datetime-edit-fields-wrapper{padding-block:0}.b3-input:is([type=date],[type=time],[type=datetime-local],[type=month],[type=week]){appearance:none;max-inline-size:100%;display:block}.b3-input::-webkit-date-and-time-value{text-align:start;min-block-size:1lh}.b3-card-header,.b3-card-footer{justify-content:space-between;align-items:center;gap:var(--b3-space);flex-wrap:wrap;display:flex}.b3-card-header{margin-block-end:var(--b3-space-4)}.b3-card-footer{border-block-start:1px solid var(--b3-color-border);margin-block-start:var(--b3-space-4);padding-block-start:var(--b3-space-4)}.b3-surface[data-b3-elevation=raised]{box-shadow:var(--b3-shadow)}.b3-divider{border:0;border-block-start:1px solid var(--b3-color-border);inline-size:100%;margin-inline:0;margin-block:var(--b3-space)}.b3-stack>.b3-divider{margin-block:0}.b3-alert,.b3-toast{overflow-wrap:anywhere;min-inline-size:0}.b3-alert>*,.b3-toast>*{min-inline-size:0}.b3-alert pre{max-inline-size:100%;overflow-x:auto}.b3-alert{--b3-status-color:var(--b3-color-info);border:1px solid var(--b3-status-color);border-radius:var(--b3-radius-small);color:var(--b3-color-text);background:color-mix(in srgb, var(--b3-status-color) 8%, var(--b3-color-surface));border-inline-start-width:4px;align-items:start;gap:.75rem;padding:1rem;display:flex}.b3-alert[data-b3-tone=success],.b3-badge[data-b3-tone=success]{--b3-status-color:var(--b3-color-success)}.b3-alert[data-b3-tone=warning],.b3-badge[data-b3-tone=warning]{--b3-status-color:var(--b3-color-warning)}.b3-alert[data-b3-tone=danger],.b3-badge[data-b3-tone=danger]{--b3-status-color:var(--b3-color-danger)}.b3-badge[data-b3-tone]{color:var(--b3-status-color,var(--b3-color-info));background:color-mix(in srgb, currentColor 7%, transparent);border-color:currentColor}.b3-toast-region{z-index:100;inline-size:min(24rem,100% - 2rem);max-block-size:calc(100dvh - 2rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overscroll-behavior:contain;pointer-events:none;gap:.75rem;display:grid;position:fixed;inset-block-end:calc(1rem + env(safe-area-inset-bottom,0px));inset-inline-end:1rem;overflow-y:auto}.b3-toast{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);background:var(--b3-color-surface);color:var(--b3-color-text);box-shadow:var(--b3-shadow-raised);pointer-events:auto;flex-wrap:wrap;align-items:start;gap:1rem;padding:1rem;display:flex}.b3-toast>:not(button,.b3-button){flex:12rem}.b3-toast>:is(button,.b3-button){flex:none;max-inline-size:100%}.b3-spinner{vertical-align:-.125em;border:2px solid;border-inline-end-color:#0000;border-radius:50%;flex:none;block-size:1.125em;inline-size:1.125em;animation:.8s linear infinite b3-spin;display:inline-block}@keyframes b3-spin{to{transform:rotate(360deg)}}.b3-skeleton{background:var(--b3-color-border);border-radius:var(--b3-radius-small);min-block-size:1rem;animation:1.8s ease-in-out infinite b3-pulse}@keyframes b3-pulse{50%{opacity:.45}}:is(button,a).b3-badge{min-block-size:auto;color:var(--b3-color-text);cursor:pointer;background:0 0;gap:.25rem;text-decoration:none;position:relative}:is(button,a).b3-badge:after{content:"";position:absolute;inset:-10px 0}:is(button,a).b3-badge[data-b3-tone]{color:var(--b3-status-color,var(--b3-color-info))}:is(button,a).b3-badge:is([aria-pressed=true],[aria-current]:not([aria-current=false])){color:var(--b3-color-on-accent);background:var(--b3-color-accent);border-color:var(--b3-color-accent)}.b3-avatar{background:var(--b3-color-accent);block-size:2.5rem;inline-size:2.5rem;color:var(--b3-color-on-accent);border-radius:50%;flex:none;place-items:center;font-size:.875rem;font-weight:650;display:inline-grid;overflow:hidden}.b3-avatar>img{object-fit:cover;block-size:100%;inline-size:100%}.b3-avatar[data-b3-unread]{position:relative;overflow:visible}.b3-avatar[data-b3-unread]>img{border-radius:inherit}.b3-avatar[data-b3-unread]:after{content:"";background:var(--b3-color-accent);block-size:.75rem;inline-size:.75rem;box-shadow:0 0 0 2px var(--b3-color-surface);border-radius:50%;position:absolute;inset-block-start:-.0625rem;inset-inline-end:-.0625rem}.b3-avatar-stack{padding-inline-start:.5rem;display:flex}.b3-avatar-stack>.b3-avatar{border:2px solid var(--b3-color-surface);margin-inline-start:-.5rem}.b3-kbd{border:1px solid var(--b3-color-border);background:var(--b3-color-surface);color:var(--b3-color-muted);border-block-end-width:2px;border-radius:.25rem;padding:.15rem .35rem;font:.75rem ui-monospace,monospace}.b3-table-wrap{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);position:relative;overflow-x:auto}.b3-table{border-collapse:collapse;text-align:start;font-variant-numeric:tabular-nums;inline-size:100%}.b3-table th{color:var(--b3-color-muted);background:var(--b3-color-canvas);font-size:.75rem;font-weight:650}.b3-table :is(th,td){border-block-end:1px solid var(--b3-color-border);text-align:start;vertical-align:middle;padding:.875rem 1rem}.b3-table tbody tr:last-child td{border-block-end:0}.b3-table[data-b3-density=compact] :is(th,td){padding:.5rem .75rem}.b3-table tbody tr[aria-selected=true]{background:color-mix(in srgb, var(--b3-color-accent) 10%, var(--b3-color-surface))}.b3-definition{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:.75rem 1.5rem;margin:0;display:grid;container:b3-definition/inline-size}.b3-definition dt{overflow-wrap:anywhere;min-inline-size:0;color:var(--b3-color-muted)}.b3-definition dd{overflow-wrap:anywhere;margin:0}@container b3-definition (width<=26rem){.b3-definition>:is(dt,dd){grid-column:1/-1}.b3-definition>dt:not(:first-child){margin-block-start:.75rem}}.b3-stat{grid-template-columns:minmax(0,1fr);gap:.5rem;display:grid}.b3-stat-value{overflow-wrap:anywhere;letter-spacing:-.045em;font-variant-numeric:tabular-nums;font-size:clamp(1.5rem,5vw,3rem);font-weight:650;line-height:1.1}.b3-nav{border-block-end:1px solid var(--b3-color-border);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.75rem min(.75rem,3%);display:flex}.b3-nav[data-b3-orientation=vertical]{border-block-end:0;flex-direction:column;align-items:stretch}.b3-nav-link{overflow-wrap:anywhere;border-radius:var(--b3-radius-small);min-block-size:2.75rem;min-inline-size:0;max-inline-size:100%;color:var(--b3-color-muted);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.625rem min(.875rem,4%);text-decoration:none;display:flex}.b3-nav-link[aria-current=page]{background:color-mix(in srgb, var(--b3-color-accent) 10%, var(--b3-color-surface));color:var(--b3-color-accent);font-weight:650}.b3-nav-link:hover{background:var(--b3-color-surface);color:var(--b3-color-text)}.b3-breadcrumbs{color:var(--b3-color-muted);flex-wrap:wrap;align-items:center;gap:.5rem;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.b3-breadcrumbs li+li:before{content:"/";color:var(--b3-color-border);margin-inline-end:.5rem}.b3-tablist{border-block-end:1px solid var(--b3-color-border);gap:.25rem;display:flex;overflow-x:auto}.b3-tab{appearance:none;color:var(--b3-color-muted);font:inherit;white-space:normal;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;border-block-end:2px solid #0000;flex-shrink:0;min-block-size:2.75rem;max-inline-size:100%;padding:.75rem min(1rem,4vi)}.b3-tab[aria-selected=true]{color:var(--b3-color-accent);border-block-end-color:currentColor;font-weight:650}.b3-tab:disabled{opacity:.5;cursor:not-allowed}.b3-tabpanel{padding-block:var(--b3-space-4)}.b3-segmented{border-radius:var(--b3-radius);background:color-mix(in srgb, var(--b3-color-text) 7%, var(--b3-color-canvas));border:0;flex-wrap:wrap;gap:.25rem;min-inline-size:0;margin:0;padding:.25rem;display:flex}.b3-segmented>label{border-radius:calc(var(--b3-radius) - .25rem);min-block-size:2.75rem;max-inline-size:100%;color:var(--b3-color-muted);text-align:center;cursor:pointer;flex:1 0 auto;justify-content:center;align-items:center;gap:.375rem;padding-inline:.875rem;font-weight:600;display:inline-flex;position:relative}.b3-segmented>label>input{opacity:0;block-size:100%;inline-size:100%;cursor:inherit;margin:0;position:absolute;inset:0}.b3-segmented>label:has(input:checked){background:var(--b3-color-surface);color:var(--b3-color-text);box-shadow:0 1px 2px #0000001f, 0 0 0 1px var(--b3-color-border)}.b3-segmented>label:has(input:focus-visible){box-shadow:inset 0 0 0 2px}@media (forced-colors:active){.b3-segmented>label{border:2px solid canvas}.b3-segmented>label:has(input:checked){border-color:canvastext}.b3-segmented>label:has(input:focus-visible){outline-offset:1px;outline:2px solid highlight}}.b3-segmented>label:has(input:disabled){opacity:.5;cursor:not-allowed}.b3-accordion{border-block-end:1px solid var(--b3-color-border)}.b3-accordion>summary{cursor:pointer;padding:1rem .25rem;font-weight:650}.b3-accordion>:not(summary){padding:0 .25rem 1rem}.b3-dropdown{display:inline-block;position:relative}.b3-dropdown>summary{list-style:none}.b3-dropdown>summary::-webkit-details-marker{display:none}.b3-dropdown-panel{z-index:20;border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);background:var(--b3-color-surface);max-block-size:70svh;inline-size:max-content;min-inline-size:min(12rem,85vw);max-inline-size:min(22rem,85vw);color:var(--b3-color-text);box-shadow:var(--b3-shadow-raised);padding:.5rem;position:absolute;inset-block-start:calc(100% + .5rem);inset-inline-start:0;overflow-y:auto}.b3-dialog{overscroll-behavior:contain;border:1px solid var(--b3-color-border);border-radius:var(--b3-radius-large);background:var(--b3-color-surface);max-block-size:calc(100svh - 2rem);inline-size:min(32rem,100% - 2rem);color:var(--b3-color-text);box-shadow:var(--b3-shadow-raised);padding:min(1.5rem,5vi);overflow:auto}.b3-dialog::backdrop{background:#101b17a6}.b3-dialog[data-b3-placement=end]{border-radius:0;block-size:100svh;max-block-size:100svh;inline-size:min(28rem,100%);max-inline-size:100%;margin:0;margin-inline-start:auto}@media (prefers-reduced-motion:no-preference){.b3-dialog[open]{animation:.28s cubic-bezier(.16,1,.3,1) b3-dialog-enter}.b3-dialog[open][data-b3-placement=end]{animation-name:b3-drawer-enter}.b3-dialog::backdrop,.b3-sheet::backdrop{transition:opacity .16s ease-out}.b3-dialog[data-b3-closing]::backdrop,.b3-sheet[data-b3-closing]::backdrop{opacity:0}@keyframes b3-dialog-enter{0%{opacity:0;transform:translateY(8px)scale(.96)}}@keyframes b3-drawer-enter{0%{opacity:0;translate:var(--b3-drawer-offset,1rem)}}.b3-dialog[dir=rtl][data-b3-placement=end],[dir=rtl] .b3-dialog[data-b3-placement=end]{--b3-drawer-offset:-1rem}}.b3-dialog>form{gap:var(--b3-space);flex-direction:column;margin:0;display:flex}.b3-dialog>form>header:has(>button:last-child){grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:.75rem;display:grid}.b3-dialog>form>header:has(>button:last-child)>:not(:last-child){grid-column:1;min-inline-size:0}.b3-dialog>form>header>button:last-child:not(:first-child){grid-area:1/2}.b3-dialog>form>footer{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.b3-dialog>form>footer>[data-b3-emphasis=quiet]:first-child:not(:last-child){margin-inline-end:auto}.b3-tree,.b3-tree ul{overflow-wrap:anywhere;border-inline-start:1px solid var(--b3-color-border);padding-inline-start:min(1rem,5%);list-style:none}.b3-tree summary{cursor:pointer;padding-block:.5rem}.b3-prose{overflow-wrap:anywhere;max-inline-size:65ch;line-height:1.75}.b3-prose :is(p,ul,ol,blockquote,pre){margin-block:1rem}.b3-prose :is(h1,h2,h3,h4,h5,h6){margin-block:1.75rem .75rem;line-height:1.25}.b3-prose :is(h5,h6){font-size:1em}.b3-prose>:first-child{margin-block-start:0}.b3-prose :is(img,video,iframe){max-inline-size:100%;display:block}.b3-prose :is(img,video){block-size:auto}.b3-prose iframe{border:0}.b3-prose blockquote{border-inline-start:3px solid var(--b3-color-accent);color:var(--b3-color-muted);margin-inline:0;padding-inline-start:1rem}.b3-prose pre{background:var(--b3-color-surface);border:1px solid var(--b3-color-border);border-radius:var(--b3-radius-small);padding:1rem;overflow-x:auto}.b3-visually-hidden{clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.b3-skip-link{z-index:1000;border-radius:var(--b3-radius-small);background:var(--b3-color-accent);max-inline-size:calc(100% - 1.5rem);color:var(--b3-color-on-accent);padding:.75rem 1rem;font-weight:650;position:fixed;inset-block-start:max(.75rem, env(safe-area-inset-top,0px));inset-inline-start:.75rem}.b3-skip-link:not(:focus){clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;padding:0;overflow:hidden}.b3-hero{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:clamp(2rem,6vw,6rem);padding-block:clamp(3rem,8vw,7rem);display:grid}.b3-hero[data-b3-align=center]{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center}.b3-hero-copy{gap:1.5rem;max-inline-size:40rem;display:grid}.b3-feature{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,5vw,5rem);padding-block:clamp(2rem,6vw,5rem);display:grid}.b3-feature[data-b3-reverse=true]>:first-child{order:2}.b3-feature-icon{border-radius:var(--b3-radius);background:var(--b3-color-accent);block-size:3rem;inline-size:3rem;color:var(--b3-color-on-accent);place-items:center;display:inline-grid}.b3-pricing{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius-large);background:var(--b3-color-surface);color:var(--b3-color-text);flex-direction:column;gap:1.25rem;padding:clamp(1.25rem,3vw,2rem);display:flex}.b3-pricing[data-b3-featured=true]{border:2px solid var(--b3-color-accent);box-shadow:var(--b3-shadow)}.b3-pricing>.b3-button:last-child{margin-block-start:auto}.b3-price{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:.375rem;display:flex}.b3-price>strong{letter-spacing:-.05em;font-size:3.25rem;line-height:1.1}.b3-checklist{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.b3-checklist>li{align-items:start;gap:.625rem;display:flex}.b3-checklist>li:before{content:"✓";color:var(--b3-color-accent);font-weight:700}.b3-quote{border-inline-start:3px solid var(--b3-color-accent);margin:0;padding:1.5rem}.b3-quote blockquote{margin:0 0 1rem;font-size:1.25rem;line-height:1.5}.b3-art{isolation:isolate;border-radius:var(--b3-radius-large);background:var(--b3-color-surface);position:relative;overflow:hidden}.b3-art:before{content:"";z-index:-1;pointer-events:none;position:absolute;inset:0}.b3-art[data-b3-art=dots]:before{background-image:radial-gradient(var(--b3-color-border) 1px,transparent 1px);background-size:16px 16px}.b3-art[data-b3-art=glow]:before{background:radial-gradient(ellipse at 20% 20%,color-mix(in srgb,var(--b3-color-accent) 20%,transparent),transparent 65%)}.b3-art[data-b3-art=wash]:before{background:linear-gradient(135deg,color-mix(in srgb,var(--b3-color-accent) 14%,transparent),transparent 70%)}@media (width<=48rem){.b3-hero,.b3-feature{grid-template-columns:minmax(0,1fr)}.b3-feature[data-b3-reverse=true]>:first-child{order:initial}}.b3-reading{grid-template-columns:minmax(0,1fr) minmax(12rem,16rem);grid-template-areas:"content outline";align-items:start;gap:clamp(2rem,5vw,5rem);display:grid}.b3-reading>:not(.b3-toc){grid-area:content;min-inline-size:0}.b3-toc{max-block-size:calc(100svh - var(--b3-outline-top,1rem) - 1rem);border-inline-start:1px solid var(--b3-color-border);grid-area:outline;padding-inline-start:min(1rem,5%);font-size:.875rem;position:sticky;inset-block-start:var(--b3-outline-top,1rem);overflow-y:auto}.b3-toc ol{gap:.25rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.b3-toc ol ol{margin:.25rem 0;padding-inline-start:min(1rem,5%)}.b3-toc-link{border-radius:var(--b3-radius-small);color:var(--b3-color-muted);overflow-wrap:anywhere;padding:.625rem min(.75rem,5%);text-decoration:none;display:block}.b3-toc-link:hover{color:var(--b3-color-text);background:var(--b3-color-surface)}.b3-toc-link[aria-current=location]{color:var(--b3-color-accent);background:color-mix(in srgb, var(--b3-color-accent) 10%, var(--b3-color-surface));font-weight:650}@media (width<=48rem){.b3-reading{grid-template-columns:minmax(0,1fr);grid-template-areas:"outline""content";gap:2rem}.b3-toc{max-block-size:none;position:static}}.b3-command{inline-size:min(38rem,100% - 2rem);padding:0}.b3-command[open]:has(>.b3-scroll){grid-template-rows:auto minmax(0,1fr);display:grid}.b3-command>.b3-scroll>.b3-command-list{max-block-size:none;overflow:visible}.b3-command-search{border-block-end:1px solid var(--b3-color-border);flex-wrap:wrap;justify-content:end;align-items:center;gap:.75rem;padding:min(1rem,4vw);display:flex}.b3-command-search>input{flex:12ch;min-inline-size:0}.b3-command-list{overscroll-behavior:contain;max-block-size:50svh;padding:.5rem;overflow-y:auto}.b3-command-group+.b3-command-group{border-block-start:1px solid var(--b3-color-border);margin-block-start:.5rem;padding-block-start:.5rem}.b3-command-group>:first-child:not([role=option]){color:var(--b3-color-muted);padding:.5rem .75rem;font-size:.75rem;display:block}.b3-command-item{border-radius:var(--b3-radius-small);cursor:pointer;justify-content:space-between;align-items:center;gap:min(1rem,2vw);min-block-size:2.75rem;padding:min(.875rem,2svh) min(.75rem,3vw);display:flex}.b3-command .b3-command-item{border-radius:max(0px, calc(var(--b3-radius-large) - .5rem - 1px))}.b3-command-item>:first-child{overflow-wrap:anywhere;min-inline-size:0}.b3-command-item[aria-selected=true]{background:var(--b3-color-accent);color:var(--b3-color-on-accent)}.b3-command-item[aria-selected=true] .b3-muted{color:inherit}.b3-command-item[aria-disabled=true]{opacity:.5;cursor:not-allowed}.b3-command-item:not([aria-disabled=true]):hover{outline:1px solid var(--b3-color-border);outline-offset:-1px}.b3-form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));align-items:start;gap:1.25rem;display:grid}.b3-form-grid[data-b3-layout=inline]{flex-wrap:wrap;align-items:end;display:flex}.b3-form-grid[data-b3-layout=inline]>.b3-field{flex:12rem;min-inline-size:0}.b3-form-grid[data-b3-layout=inline]>.b3-button{overflow-wrap:anywhere;flex:0 auto;max-inline-size:100%}.b3-fieldset{border:0;min-inline-size:0;margin:0;padding:0}.b3-fieldset>legend{padding:0 0 .75rem;font-weight:650}.b3-help{color:var(--b3-color-muted);font-size:.875rem}.b3-help[data-b3-tone=success]{color:var(--b3-color-success)}.b3-help[data-b3-tone=warning]{color:var(--b3-color-warning)}.b3-input[data-b3-size=small]{padding:.5rem .75rem}.b3-input[data-b3-size=large]{min-block-size:3.25rem;padding:.875rem 1rem}.b3-input[data-b3-emphasis=subtle]{background-color:var(--b3-color-canvas);border-color:#0000}.b3-input[data-b3-emphasis=outline]{background-color:#0000;border-width:2px}.b3-input[data-b3-tone=success]{border-color:var(--b3-color-success)}.b3-input[data-b3-tone=warning]{border-color:var(--b3-color-warning)}.b3-input[aria-invalid=true]{border-color:var(--b3-color-danger)}textarea.b3-input{resize:vertical}select.b3-input[multiple]{min-block-size:8rem}.b3-input[type=file]{padding:.375rem}.b3-input::file-selector-button{font:inherit;border-radius:max(0px, calc(var(--b3-radius) - .375rem - 1px));background:var(--b3-color-accent);color:var(--b3-color-on-accent);cursor:pointer;border:0;margin-inline-end:.75rem;padding:.5rem .75rem}.b3-input[data-b3-emphasis=outline]::file-selector-button{border-radius:max(0px, calc(var(--b3-radius) - .375rem - 2px))}.b3-input[type=color]{inline-size:5rem;padding:.25rem}.b3-range{min-block-size:2.75rem;inline-size:100%;accent-color:var(--b3-color-accent);margin:0}.b3-choice-card{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);background:var(--b3-color-surface);color:var(--b3-color-text);cursor:pointer;align-items:start;gap:.75rem;padding:1rem;display:flex}.b3-choice-card>input{flex:none;block-size:1.125rem;inline-size:1.125rem;margin-block-start:.3rem}.b3-choice-card:has(input:checked){border-color:var(--b3-color-accent);background:color-mix(in srgb, var(--b3-color-accent) 7%, var(--b3-color-surface));box-shadow:inset 0 0 0 1px var(--b3-color-accent)}.b3-choice-card:has(input:focus-visible){outline:none;box-shadow:inset 0 0 0 2px}.b3-choice-card:has(input:disabled){opacity:.5;cursor:not-allowed}.b3-choice-card:has(input[aria-invalid=true]){border-color:var(--b3-color-danger)}.b3-range[aria-invalid=true]{accent-color:var(--b3-color-danger)}.b3-stepper{flex-wrap:wrap;gap:1rem 2rem;margin:0;padding:0;list-style:none;display:flex}.b3-step{color:var(--b3-color-muted);align-items:center;gap:.625rem;font-size:.875rem;display:flex}.b3-step-marker{border:1px solid var(--b3-color-border);font-variant-numeric:tabular-nums;border-radius:50%;flex:none;place-items:center;block-size:2rem;inline-size:2rem;display:grid}.b3-step[aria-current=step]{color:var(--b3-color-text);font-weight:650}.b3-step[aria-current=step] .b3-step-marker{background:var(--b3-color-accent);color:var(--b3-color-on-accent);border-color:var(--b3-color-accent)}.b3-step[data-b3-complete=true] .b3-step-marker{border-color:var(--b3-color-success);color:var(--b3-color-success)}.b3-conversation{gap:1.5rem;min-inline-size:0;margin:0;padding:0;list-style:none;display:grid}.b3-message{grid-template-columns:minmax(0,1fr);justify-self:start;gap:.375rem;min-inline-size:0;max-inline-size:min(85%,38rem);display:grid}.b3-message[data-b3-side=self]{justify-self:end}.b3-message-body{border:1px solid var(--b3-color-border);border-radius:var(--b3-radius);background:var(--b3-color-surface);color:var(--b3-color-text);white-space:pre-wrap;overflow-wrap:anywhere;padding:.75rem 1rem}.b3-message[data-b3-side=self]>.b3-message-body{background:var(--b3-color-accent);color:var(--b3-color-on-accent);border-color:#0000}.b3-message-meta{color:var(--b3-color-muted);flex-wrap:wrap;gap:.35rem .75rem;font-size:.8125rem;display:flex}.b3-message[data-b3-side=self]>.b3-message-meta{justify-content:end}.b3-conversation{align-content:start}.b3-message-body:has(>:is(div,p,ul,ol,table,pre,blockquote,b3-markdown-stream)){white-space:normal}.b3-composer{align-items:end;gap:var(--b3-space-2);padding:var(--b3-space-3);border-block-start:1px solid var(--b3-color-border);background:var(--b3-color-canvas);flex-wrap:wrap;display:flex}.b3-composer>.b3-input,.b3-composer>.b3-button{border-radius:var(--b3-radius);min-block-size:var(--b3-d-control,2.75rem)}.b3-composer>.b3-input{resize:none;min-inline-size:0;max-inline-size:100%;padding-block:calc((var(--b3-d-control,2.75rem) - 1.5em - 2px) / 2);flex:12ch;line-height:1.5}.b3-composer>.b3-button{block-size:var(--b3-d-control,2.75rem);min-inline-size:var(--b3-d-control,2.75rem);flex-shrink:0;margin-inline-start:auto}.b3-message-body :where(p,ul,ol,pre,table,blockquote,h1,h2,h3,h4,h5,h6,div,figure):first-child{margin-block-start:0}.b3-message-body :where(p,ul,ol,pre,table,blockquote,h1,h2,h3,h4,h5,h6,div,figure):last-child{margin-block-end:0}.b3-mobile-app{--b3-touch:44px;min-block-size:100svh;max-inline-size:var(--b3-app-width,70rem);margin-inline:auto;padding-block-end:calc(5.5rem + env(safe-area-inset-bottom,0px))}.b3-mobile-app[data-b3-platform=android]{--b3-touch:48px}.b3-mobile-app :where(button,.b3-button,select,input:not([type=checkbox],[type=radio])){min-block-size:var(--b3-touch)}.b3-app-bar{padding:max(.75rem, env(safe-area-inset-top,0px)) 1.25rem .75rem;align-items:center;gap:.75rem;display:flex}.b3-app-bar>:last-child:not(:first-child){margin-inline-start:auto}.b3-bottom-nav{z-index:10;max-inline-size:var(--b3-app-width,70rem);padding:.5rem clamp(.5rem, 2vw, 1rem) max(.5rem, env(safe-area-inset-bottom,0px));background:var(--b3-color-surface);color:var(--b3-color-text);border-block-start:1px solid var(--b3-color-border);flex-wrap:wrap;justify-content:space-around;gap:.125rem;margin-inline:auto;display:flex;position:fixed;inset-block-end:0;inset-inline:0}.b3-bottom-link{appearance:none;cursor:pointer;overflow-wrap:anywhere;text-align:center;flex:1 1 max-content;min-block-size:var(--b3-touch,44px);min-inline-size:var(--b3-touch,44px);max-inline-size:100%;color:var(--b3-color-muted);background:0 0;border:0;border-radius:1rem;flex-direction:column;justify-content:center;align-items:center;gap:.15rem;padding:.25rem clamp(.125rem,1vw,.5rem);font-size:.75rem;text-decoration:none;display:flex}.b3-bottom-link:disabled{opacity:.5;cursor:not-allowed}.b3-bottom-link:has(svg){justify-content:flex-start}.b3-bottom-link[aria-current=page]{color:var(--b3-color-accent);font-weight:700}[data-b3-platform=android] .b3-bottom-link[aria-current=page]{background:var(--b3-color-canvas)}.b3-mobile-list{border:1px solid var(--b3-color-border);background:var(--b3-color-surface);border-radius:1rem;margin:0;padding:0;list-style:none;overflow:hidden}.b3-mobile-list>li+li{border-block-start:1px solid var(--b3-color-border)}.b3-mobile-row{min-block-size:var(--b3-touch,44px);color:var(--b3-color-text);align-items:center;gap:1rem;padding:.875rem 1rem;text-decoration:none;display:flex}.b3-mobile-row>:last-child:not(:first-child){margin-inline-start:auto}.b3-sheet{inline-size:min(100%, var(--b3-overlay-width,32rem));max-inline-size:none;max-block-size:min(85dvh, calc(100dvh - env(safe-area-inset-top,0px) - 1rem));overscroll-behavior:contain;border:1px solid var(--b3-color-border);padding:1.5rem min(1.5rem, 5vi) max(1.5rem, env(safe-area-inset-bottom,0px));background:var(--b3-color-surface);color:var(--b3-color-text);border-radius:1.5rem 1.5rem 0 0;margin:0 auto;inset:auto 0 0;overflow-y:auto}.b3-sheet::backdrop{background:#0007}.b3-sheet [data-b3-initial-focus]:focus{box-shadow:none;outline:none}.b3-sheet-handle{min-block-size:44px;inline-size:5rem;color:var(--b3-color-muted);touch-action:none;cursor:grab;background:0 0;border:0;border-radius:1rem;flex:none;align-self:center;place-items:center;margin-block:-1rem -.5rem;padding:0;display:grid}.b3-sheet-handle:before{content:"";background:currentColor;border-radius:1rem;block-size:.25rem;inline-size:2.25rem}.b3-sheet[data-b3-dragging]{animation:none}.b3-sheet[data-b3-dragging] .b3-sheet-handle{cursor:grabbing}[data-b3-platform=android] .b3-mobile-list{border-radius:1.5rem}@media (prefers-reduced-motion:no-preference){.b3-sheet[open]{animation:.32s cubic-bezier(.16,1,.3,1) b3-sheet-enter}@keyframes b3-sheet-enter{0%{opacity:0;transform:translateY(3rem)}to{opacity:1;transform:translateY(0)}}}.b3-root:has(dialog:modal){overflow:hidden}.b3-bottom-link[aria-current=page]{background:color-mix(in srgb, var(--b3-color-accent) 12%, transparent)}.b3-bottom-link :where(svg:not([width])){flex:none;block-size:1.375rem;inline-size:1.375rem}.b3-bottom-link>:where(span,strong):not(.b3-count){white-space:normal;overflow-wrap:anywhere;max-inline-size:100%;overflow:visible}:has(>.b3-bottom-link:nth-of-type(5))>.b3-bottom-link{padding-inline:.125rem;font-size:.6875rem}.b3-app-frame{inline-size:100%;block-size:var(--b3-frame-height,100dvh);min-block-size:0;max-inline-size:var(--b3-app-width,70rem);padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);grid-template-rows:auto minmax(0,1fr) auto;margin-inline:auto;display:grid;overflow:clip}.b3-app-frame>header{grid-row:1;min-inline-size:0}.b3-app-frame>main{overscroll-behavior:contain;grid-area:2/1;min-block-size:0;min-inline-size:0;overflow:auto}.b3-app-frame>:is(nav,footer){grid-row:3;min-inline-size:0;position:relative}.b3-app-frame>.b3-toast-region{overscroll-behavior:contain;grid-area:2/1;place-self:end;min-block-size:0;max-block-size:calc(100% - 2rem);margin:1rem;position:relative;inset:auto;overflow-y:auto}.b3-app-frame>.b3-app-bar{padding-block-start:.75rem}.b3-app-frame:has(>.b3-bottom-nav,>footer .b3-bottom-nav){padding-block-end:0}.b3-app-frame .b3-bottom-nav{inline-size:100%;max-inline-size:none;padding-block-end:max(.5rem, env(safe-area-inset-bottom,0px));position:static}:where(.b3-root[data-b3-density]) .b3-button{min-block-size:var(--b3-d-control,2.75rem);padding:var(--b3-d-pad-block,.625rem) var(--b3-d-pad-inline,1rem);font-size:var(--b3-d-label,inherit)}:where(.b3-root[data-b3-density]) .b3-button[data-b3-size=small]{min-block-size:var(--b3-d-control-small,auto);padding:calc(var(--b3-d-pad-block,.5rem) - .125rem) calc(var(--b3-d-pad-inline,.75rem) - .25rem)}:where(.b3-root[data-b3-density]) .b3-input{min-block-size:var(--b3-d-control,2.75rem);padding:calc((var(--b3-d-control,2.75rem) - 1.5em - 2px) / 2) .75rem;line-height:1.5}:where(.b3-root[data-b3-density]) .b3-nav-link{min-block-size:var(--b3-d-control,2.75rem);padding:var(--b3-d-pad-block,.625rem) min(var(--b3-d-pad-inline,.875rem), 4%);font-size:var(--b3-d-label,inherit)}:where(.b3-root[data-b3-density]) .b3-heading{font-size:var(--b3-d-heading,1.375rem)}:where(.b3-root[data-b3-density]) .b3-avatar{block-size:var(--b3-d-avatar,2.5rem);inline-size:var(--b3-d-avatar,2.5rem)}:where(.b3-root[data-b3-density]) .b3-conversation{gap:var(--b3-d-gap,1.5rem)}:where(.b3-root[data-b3-density]) .b3-message-body{padding:var(--b3-d-message-pad,.75rem 1rem)}:where(.b3-root[data-b3-density]) .b3-message-meta{font-size:var(--b3-d-meta,.8125rem)}.b3-button[data-b3-emphasis=ghost]{color:var(--b3-color-muted);background:0 0;border-color:#0000}.b3-button[data-b3-emphasis=ghost]:not(:disabled):hover{color:var(--b3-color-text)}.b3-button[data-b3-emphasis=ghost][aria-pressed=true]{color:var(--b3-color-accent)}.b3-button[data-b3-icon]{min-inline-size:var(--b3-d-control,2.75rem);padding-inline:0}:where(.b3-root[data-b3-density]) .b3-button[data-b3-icon][data-b3-size=small]{min-inline-size:var(--b3-d-control-small,2.25rem)}.b3-button:disabled{opacity:1;background:color-mix(in srgb, var(--b3-color-muted) 14%, var(--b3-color-surface));color:var(--b3-color-muted);border-color:#0000}.b3-button[data-b3-emphasis=ghost]:disabled{background:0 0}.b3-truncate{white-space:nowrap;text-overflow:ellipsis;min-inline-size:0;overflow:hidden}.b3-strong{font-size:inherit;font-weight:650}.b3-caption{color:var(--b3-color-muted);font-size:.8125rem;line-height:1.4}.b3-heading[data-b3-size=small]{font-size:1.0625rem;line-height:1.3}:is(a,button).b3-caption{color:var(--b3-color-accent);cursor:pointer;text-underline-offset:.15em;background:0 0;border:0;padding:0}:is(a,button).b3-caption:is(:hover,:focus-visible){text-decoration:underline}:where(.b3-root[data-b3-density]) .b3-caption{font-size:var(--b3-d-meta,.8125rem)}.b3-badge{gap:.25rem}:where(.b3-root[data-b3-density]) .b3-surface{padding:var(--b3-d-surface-pad,clamp(1rem, 3vw, 2rem))}.b3-input-group,.b3-input-group>.b3-input-affix,.b3-input-group>.b3-input{background:var(--b3-color-surface)}.b3-root[data-b3-theme=dark] .b3-message[data-b3-side=self]>.b3-message-body{background:color-mix(in srgb, var(--b3-color-accent) 22%, var(--b3-color-surface));color:var(--b3-color-text)}.b3-empty{justify-items:center;gap:var(--b3-space-2);padding:var(--b3-space-12) var(--b3-space-4);text-align:center;color:var(--b3-color-muted);display:grid}.b3-empty>svg{color:var(--b3-color-muted)}}@property --b3-reel-fade{syntax:"<length>";inherits:false;initial-value:2.5rem}
@@ -1 +1 @@
1
- var Z=typeof HTMLElement==="function"?HTMLElement:class{};function M(t,s){if(typeof customElements>"u"||customElements.get?.(t))return;try{customElements.define(t,s)}catch(p){console.warn(`bare-v3: ${t} was not registered`,p)}}class v extends Z{#t=null;#n=null;#e=null;target(){return this}connectedCallback(){let t=this.ownerDocument;if(t.readyState==="loading"){t.addEventListener("DOMContentLoaded",()=>{if(this.isConnected)this.#r()},{once:!0});return}this.#r()}disconnectedCallback(){this.#o(),this.#e?.disconnect(),this.#e=null}#r(){if(this.#t)return;let t=this.target();if(t!==this&&!this.#e)this.#e=new MutationObserver(()=>{if(this.target()!==this.#n)this.#o(),this.#r()}),this.#e.observe(this,{childList:!0});if(!t)return;this.#t=new AbortController,this.#n=t,this.mount(t,this.#t.signal)}#o(){this.#t?.abort(),this.#t=null,this.#n=null}}function S(t,s,p={},i=[]){let l=()=>{for(let f of i)if(!t.classList.contains(f))t.classList.add(f);for(let[f,m]of Object.entries(p))if(!t.hasAttribute(f))t.setAttribute(f,m)};l();let o=new MutationObserver(l);o.observe(t,{attributes:!0,attributeFilter:["class",...Object.keys(p)]}),s.addEventListener("abort",()=>o.disconnect(),{once:!0})}function B(t,s){let p=t.ownerDocument,i=(r)=>r.closest(t.localName)===t,l=(r)=>[...r.querySelectorAll('[role="tab"]')].filter((d)=>d.closest('[role="tablist"]')===r),o=new WeakMap,f=(r,d,u)=>{if(r.getAttribute(d)!==u)r.setAttribute(d,u)};function m(r,d=!1){let u=r.closest('[role="tablist"]');if(!u||r.disabled)return;o.set(u,r);for(let h of l(u)){let e=h===r;f(h,"aria-selected",String(e)),f(h,"tabindex",e?"0":"-1");let n=h.getAttribute("aria-controls"),b=n?p.getElementById(n):null;if(b&&b.hidden===e)b.hidden=!e}if(d)r.focus({preventScroll:!0}),r.scrollIntoView({block:"nearest",inline:"nearest",behavior:"instant"})}function c(){for(let r of t.querySelectorAll('[role="tablist"]')){if(!i(r))continue;let d=l(r).filter((n)=>!n.disabled),u=o.get(r),e=d.filter((n)=>n.getAttribute("aria-selected")==="true").find((n)=>n!==u)??(u&&d.includes(u)?u:d[0]);if(e)m(e)}}c();let a=new p.defaultView.MutationObserver(c);a.observe(t,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["aria-selected","tabindex","hidden"]}),s.addEventListener("abort",()=>a.disconnect(),{once:!0}),t.addEventListener("click",(r)=>{let d=r.target.closest?.('[role="tab"]'),u=d?.closest('[role="tablist"]');if(d&&u&&i(u)&&!d.disabled)m(d)},{signal:s}),t.addEventListener("keydown",(r)=>{let d=r.target.closest?.('[role="tab"]'),u=d?.closest('[role="tablist"]');if(!d||!u||!i(u))return;let h=l(u).filter((w)=>!w.disabled),e=h.indexOf(d),n=u.getAttribute("aria-orientation")==="vertical",b=p.defaultView.getComputedStyle(u).direction==="rtl",E=n?"ArrowDown":b?"ArrowLeft":"ArrowRight",y=n?"ArrowUp":b?"ArrowRight":"ArrowLeft",g;if(r.key===E)g=h[(e+1)%h.length];if(r.key===y)g=h[(e-1+h.length)%h.length];if(r.key==="Home")g=h[0];if(r.key==="End")g=h.at(-1);if(g)r.preventDefault(),m(g,!0)},{signal:s})}function R(t,s){let p=t.ownerDocument,i=p.defaultView,l=()=>i.getComputedStyle(t).direction==="rtl",o=()=>[...t.children].filter((n)=>n.getClientRects().length>0),f=(n)=>{let b=t.getBoundingClientRect(),E=n.getBoundingClientRect();return l()?b.right-E.right:E.left-b.left},m=()=>{let n=-1,b=1/0;return o().forEach((E,y)=>{let g=Math.abs(f(E));if(g<b-1)b=g,n=y}),n},c=(n)=>Math.max(0,Math.min(o().length-1,Math.trunc(n)||0)),a=()=>t.id?[...p.querySelectorAll("[data-b3-reel-to]")].filter((n)=>n.getAttribute("aria-controls")===t.id):[],r=(n=!0)=>{let b=m(),E=t.dataset.b3ReelIndex;if(b<0)delete t.dataset.b3ReelIndex;else if(E!==String(b))t.dataset.b3ReelIndex=String(b);for(let y of a()){let g=y.dataset.b3ReelTo;if(String(b)===g){if(y.getAttribute("aria-current")!=="true")y.setAttribute("aria-current","true")}else if(Number.isInteger(Number(g)))y.removeAttribute("aria-current")}if(n&&E!==void 0&&E!==String(b))t.dispatchEvent(new CustomEvent("b3-reel-change",{bubbles:!0,detail:{index:b,count:o().length}}))},d=(n,b="smooth")=>{let E=o()[c(n)];if(!E)return;let y=f(E);t.scrollBy({left:l()?-y:y,behavior:b})},u=new i.ResizeObserver(()=>r(!1));u.observe(t);let h=new i.MutationObserver(()=>r(!1));h.observe(t,{attributes:!0,attributeFilter:["data-b3-reel-index"]}),s.addEventListener("abort",()=>{u.disconnect(),h.disconnect()},{once:!0});let e=0;return t.addEventListener("scroll",()=>{i.cancelAnimationFrame(e),e=i.requestAnimationFrame(()=>r())},{signal:s}),p.addEventListener("click",(n)=>{let b=n.target.closest?.("[data-b3-reel-to]");if(!b||!t.id||b.getAttribute("aria-controls")!==t.id)return;let E=b.dataset.b3ReelTo,y=m();d(E==="next"?y+1:E==="previous"?y-1:Number(E))},{signal:s}),t.addEventListener("keydown",(n)=>{if(n.target!==t)return;let b=m(),E=l()?"ArrowLeft":"ArrowRight",y=l()?"ArrowRight":"ArrowLeft",g;if(n.key===E)g=b+1;if(n.key===y)g=b-1;if(n.key==="Home")g=0;if(n.key==="End")g=o().length-1;if(g===void 0)return;n.preventDefault(),d(g)},{signal:s}),r(!1),{get index(){return m()},get count(){return o().length},to:d}}var tt=["transform","inset-block-start","inset-block-end","max-block-size"];function O(t,s){let p=t.ownerDocument,i=p.defaultView,l=null,o=()=>t.querySelector(".b3-dropdown-panel");function f(c){if(!l)return;for(let[a,r,d]of l)if(r)c.style.setProperty(a,r,d);else c.style.removeProperty(a)}s.addEventListener("abort",()=>{let c=o();if(c)f(c);l=null},{once:!0});function m(){let c=o();if(!c)return;if(f(c),!t.open){l=null;return}l??=tt.map((b)=>[b,c.style.getPropertyValue(b),c.style.getPropertyPriority(b)]);let a=c.getBoundingClientRect(),r=a.left<8?8-a.left:a.right>i.innerWidth-8?i.innerWidth-8-a.right:0;c.style.transform=`translateX(${r}px)`;let d=t.getBoundingClientRect();if(d.bottom<=0||d.top>=i.innerHeight){t.open=!1;return}let u=Math.max(0,a.top-d.bottom),h=Math.max(0,i.innerHeight-d.bottom-u-8),e=Math.max(0,d.top-u-8),n=a.height>h&&e>h;if(c.style.maxBlockSize=`${Math.min(a.height,n?e:h)}px`,n)c.style.insetBlockStart="auto",c.style.insetBlockEnd="calc(100% + .5rem)"}t.addEventListener("toggle",m,{signal:s}),i.addEventListener("resize",()=>{if(t.open)m()},{signal:s}),i.addEventListener("scroll",(c)=>{if(!t.open||c.target?.nodeType&&o()?.contains(c.target))return;m()},{signal:s,capture:!0,passive:!0}),t.addEventListener("keydown",(c)=>{if(c.key!=="Escape"||c.target.closest?.("details[open]")!==t)return;t.open=!1,t.querySelector("summary")?.focus()},{signal:s}),p.addEventListener("click",(c)=>{if(t.open&&!t.contains(c.target))t.open=!1},{signal:s})}var x=new WeakMap;var et={enter:{keyframes:[{opacity:0,transform:"translateY(12px) scale(.985)"},{opacity:1,transform:"none"}],duration:320},exit:{keyframes:[{opacity:1,transform:"none"},{opacity:0,transform:"translateY(-6px) scale(.98)"}],duration:180,easing:"cubic-bezier(.4,0,1,1)"},update:{keyframes:[{opacity:0.35},{opacity:1}],duration:180},confirm:{keyframes:[{transform:"scale(.9)"},{transform:"scale(1.08)",offset:0.5},{transform:"scale(.985)",offset:0.8},{transform:"scale(1)"}],duration:380},reveal:{keyframes:[{opacity:0,clipPath:"inset(0 0 100%)",transform:"translateY(8px)"},{opacity:1,clipPath:"inset(0)",transform:"none"}],duration:440}},A=(t)=>!!(t.ownerDocument?.defaultView?.matchMedia("(prefers-reduced-motion: reduce)").matches||t.closest('[data-b3-motion="reduce"]'));function D(t,s,p){if(x.get(t)?.cancel(),!t.isConnected||!t.animate||A(t))return null;let i=t.animate(s,{easing:"cubic-bezier(.16,1,.3,1)",fill:"backwards",...p});x.set(t,i);let l=t.ownerDocument.defaultView.matchMedia("(prefers-reduced-motion: reduce)"),o=()=>{if(l.matches)i.cancel()};l.addEventListener("change",o);let f=()=>{if(l.removeEventListener("change",o),x.get(t)===i)x.delete(t)};return i.addEventListener("finish",f,{once:!0}),i.addEventListener("cancel",f,{once:!0}),i}function C(t,s="update",p={}){let i=et[s];if(!i)throw TypeError(`Unknown motion intent: ${s}`);return D(t,i.keyframes,{duration:i.duration,easing:i.easing||"cubic-bezier(.16,1,.3,1)",delay:Math.min(200,Math.max(0,p.delay||0))})}function nt(t,s="enter"){return Array.from(t,(p,i)=>C(p,s,{delay:Math.min(i*45,180)})).filter((p)=>!!p)}function rt(t,s){let p=()=>{let o=new Map;for(let f of t.querySelectorAll("[data-b3-layout]")){let m=f.dataset.b3Layout;if(!m||o.has(m))throw Error("Layout motion requires unique, non-empty data-b3-layout keys");o.set(m,{element:f,rect:f.getBoundingClientRect()})}return o},i=p();for(let{element:o}of i.values())x.get(o)?.cancel();s();let l=[];for(let[o,{element:f,rect:m}]of p()){let c=i.get(o);if(!c||c.element!==f){let n=C(f,"enter");if(n)l.push(n);continue}let a=c.rect;if(!m.width||!m.height||!a.width||!a.height)continue;let r=a.x-m.x,d=a.y-m.y,u=a.width/m.width,h=a.height/m.height;if(Math.abs(r)+Math.abs(d)+Math.abs(u-1)+Math.abs(h-1)<0.01)continue;let e=D(f,[{transformOrigin:"top left",transform:`translate(${r}px,${d}px) scale(${u},${h})`},{transformOrigin:"top left",transform:"none"}],{duration:420});if(e)l.push(e)}return l}function I(t,{x:s=0,y:p=0}={}){if(!Number.isFinite(s)||!Number.isFinite(p))throw TypeError("Settle displacement must be finite");let i=Array.from({length:41},(l,o)=>{let f=o/40,m=o===40?0:Math.exp(-7*f)*(Math.cos(11*f)+0.6*Math.sin(11*f));return{offset:f,transform:`translate(${s*m}px,${p*m}px)`}});return D(t,i,{duration:460,easing:"linear"})}function q(t,{signal:s,backdrop:p}){let i=t.ownerDocument,l=i.defaultView,o={signal:s},f=null,m=null,c=null,a=!1,r=(e)=>{let n=t.getBoundingClientRect();return e.clientX<n.left||e.clientX>n.right||e.clientY<n.top||e.clientY>n.bottom},d=()=>{m=null,delete t.dataset.b3Closing},u=()=>{if(!t.open||m)return!1;if(!t.dispatchEvent(new Event("cancel",{cancelable:!0})))return!1;if(A(t)||!t.animate)return t.close(),!0;let e=l.getComputedStyle(t),n=t.matches(".b3-sheet")?"translateY(100%)":t.dataset.b3Placement==="end"?`translateX(${e.direction==="rtl"?"-":""}100%)`:"scale(.985)",b=t.animate([{transform:e.transform,opacity:1},{transform:n,opacity:0}],{duration:160,easing:"cubic-bezier(.4, 0, 1, 1)"});return m=b,t.dataset.b3Closing="",b.finished.then(()=>{if(t.open)t.close()},()=>{}).finally(()=>{if(m===b)d()}),!0},h=(e=null)=>{if(f=e,!t.open)t.showModal()};return t.addEventListener("cancel",(e)=>{if(!e.cancelable||e.defaultPrevented||!e.isTrusted||e.target!==t)return;e.preventDefault(),e.stopImmediatePropagation(),u()},{...o,capture:!0}),s.addEventListener("abort",()=>{m?.cancel(),d()},{once:!0}),t.addEventListener("pointerdown",(e)=>{a=!1,c=e.isPrimary&&e.button===0&&e.target===t&&p()&&t.matches(":modal")&&r(e)?e.pointerId:null},o),t.addEventListener("pointerup",(e)=>{let n=c;if(c=null,n!==null&&n===e.pointerId&&e.target===t&&r(e))a=!0},o),t.addEventListener("pointercancel",()=>{c=null,a=!1},o),t.addEventListener("click",(e)=>{let n=a;if(a=!1,!n||e.target!==t||!r(e))return;e.preventDefault(),e.stopImmediatePropagation(),u()},{...o,capture:!0}),t.addEventListener("close",(e)=>{if(e.target!==t)return;m?.cancel(),d();let n=f;if(f=null,n?.isConnected&&!n.disabled)n.focus()},{...o,capture:!0}),t.addEventListener("click",(e)=>{let n=e.target.closest?.("[data-b3-close]");if(n&&!n.disabled&&n.closest("dialog")===t)u()},o),i.addEventListener("click",(e)=>{let n=e.target.closest?.("[data-b3-open]");if(n&&!n.disabled&&t.id&&n.dataset.b3Open===t.id)h(n)},o),{dismiss:u,show:h}}var ot=["tabindex","autofocus","data-b3-initial-focus"];function P(t,s){let p=t.ownerDocument,i=null,l=()=>{if(!i)return;let{title:f,original:m}=i;for(let[c,a]of Object.entries(m)){let r=c==="tabindex"?"-1":"";if(f.getAttribute(c)!==r)continue;if(a===null)f.removeAttribute(c);else f.setAttribute(c,a)}i=null},o=()=>{if([...t.querySelectorAll("[autofocus]")].find((a)=>a!==i?.title))return l();let m=t.getAttribute("aria-labelledby")?.trim().split(/\s+/)[0],c=m?p.getElementById(m):null;if(!c||!t.contains(c)||i?.title===c)return;l(),i={title:c,original:Object.fromEntries(ot.map((a)=>[a,c.getAttribute(a)]))},c.setAttribute("tabindex","-1"),c.setAttribute("autofocus",""),c.setAttribute("data-b3-initial-focus","")};o(),t.addEventListener("beforetoggle",(f)=>{if(f.newState==="open")o()},{signal:s}),s.addEventListener("abort",l,{once:!0})}function N(t,s,p){let i={signal:p},l=null,o=null,f=null,m=(a,r=!0)=>{let{handle:d,pointerId:u,distance:h}=a;if(l=null,delete t.dataset.b3Dragging,t.style.removeProperty("transform"),d.hasPointerCapture(u))d.releasePointerCapture(u);if(r&&h&&t.open&&!A(t)){let e=I(t,{y:h});if(!e)return;f=e,e.finished.catch(()=>{}).finally(()=>{if(f===e)f=null})}};t.addEventListener("pointerdown",(a)=>{o=null;let r=a.target.closest?.(".b3-sheet-handle");if(!r||r.closest("dialog")!==t||!t.matches(":modal"))return;if(l||!a.isPrimary||a.button!==0||t.hasAttribute("data-b3-closing"))return;f?.cancel();for(let d of t.getAnimations())d.cancel();l={handle:r,pointerId:a.pointerId,y:a.clientY,distance:0,moved:!1},t.dataset.b3Dragging="",r.setPointerCapture(a.pointerId)},i),t.addEventListener("pointermove",(a)=>{if(!l||a.pointerId!==l.pointerId)return;l.distance=Math.max(0,a.clientY-l.y),l.moved||=Math.abs(a.clientY-l.y)>6,t.style.transform=`translateY(${l.distance}px)`},i),t.addEventListener("pointerup",(a)=>{if(!l||a.pointerId!==l.pointerId)return;let r=l;if(r.moved)o={pointerId:r.pointerId,handle:r.handle};let d=Math.min(120,t.offsetHeight*0.25);if(r.moved&&r.distance>=d){let u=s();m(r,!u)}else m(r)},i);let c=(a)=>{if(l&&a.pointerId===l.pointerId)m(l)};t.addEventListener("pointercancel",c,i),t.addEventListener("lostpointercapture",c,i),t.addEventListener("click",(a)=>{let r=o;if(o=null,r&&a.detail!==0&&(a.pointerId===r.pointerId||r.handle.contains(a.target)))a.preventDefault(),a.stopImmediatePropagation()},{...i,capture:!0}),t.addEventListener("close",()=>{if(l)m(l,!1);f?.cancel()},{...i,capture:!0}),p.addEventListener("abort",()=>{if(l)m(l,!1);f?.cancel(),f=null},{once:!0})}function F(t,s){let p={signal:s},i=()=>{let e=t.querySelector('input[role="combobox"]'),n=t.querySelector('[role="listbox"]');if(!e||!n?.id||e.getAttribute("aria-controls")!==n.id)return null;return{input:e,list:n,empty:t.querySelector("[data-b3-command-empty]"),status:t.querySelector("[data-b3-command-status]")}},l=null,o=[],f=(e)=>[...e.querySelectorAll('[role="option"]')];function m(e,n=!0){let b=i();if(!b)return;l=e||null;for(let E of f(b.list))E.setAttribute("aria-selected",String(E===l));if(l){if(b.input.setAttribute("aria-activedescendant",l.id),n)l.scrollIntoView({block:"nearest"})}else b.input.removeAttribute("aria-activedescendant")}function c(){let e=i();if(!e)return;let{input:n,list:b,empty:E,status:y}=e,g=n.value.trim().toLocaleLowerCase().split(/\s+/).filter(Boolean),w=f(b);for(let L of w){let k=`${L.textContent} ${L.dataset.b3Keywords||""}`.toLocaleLowerCase();L.hidden=!g.every((Q)=>k.includes(Q))}for(let L of b.querySelectorAll('[role="group"]'))L.hidden=![...L.querySelectorAll('[role="option"]')].some((k)=>!k.hidden);let T=w.filter((L)=>!L.hidden);if(o=T.filter((L)=>L.id&&L.getAttribute("aria-disabled")!=="true"),b.hidden=!T.length,n.setAttribute("aria-expanded",String(t.open&&!!T.length)),E)E.hidden=!!T.length;if(y)y.textContent=`${o.length} ${o.length===1?"action":"actions"} available.`;m(o[0],t.open&&!!b.parentElement?.classList.contains("b3-scroll"))}let a=()=>{if(!o.every((e)=>e.isConnected)||l&&!l.isConnected)c();return i()};function r(e){let n=a();if(!n||!e||!o.includes(e)||e.hidden||e.getAttribute("aria-disabled")==="true"||!n.list.contains(e))return;if(t.dispatchEvent(new CustomEvent("b3:command",{bubbles:!0,cancelable:!0,detail:{value:e.dataset.b3Value,item:e}})))t.close()}let d=(e)=>e.target===i()?.input;t.addEventListener("input",(e)=>{if(d(e))c()},p),t.addEventListener("keydown",(e)=>{if(!d(e)||e.isComposing||e.altKey||e.ctrlKey||e.metaKey)return;if(e.key==="ArrowDown"||e.key==="ArrowUp"){if(e.preventDefault(),a(),!o.length)return;let n=o.indexOf(l),b=e.key==="ArrowDown"?Math.min(n+1,o.length-1):Math.max(n-1,0);m(o[b])}else if(e.key==="Enter")e.preventDefault(),a(),r(l)},p);let u=(e)=>{let n=e.target.closest?.('[role="option"]');return n&&i()?.list.contains(n)?n:null};t.addEventListener("pointerdown",(e)=>{if(u(e))e.preventDefault()},p),t.addEventListener("click",(e)=>{let n=u(e);if(n)r(n)},p);let h=new MutationObserver(()=>{let e=i();if(t.open){if(e)e.input.value="";c()}else if(e)e.input.setAttribute("aria-expanded","false"),e.input.removeAttribute("aria-activedescendant")});h.observe(t,{attributes:!0,attributeFilter:["open"]}),s.addEventListener("abort",()=>h.disconnect(),{once:!0}),c()}function V(t,s){let p=t.ownerDocument;t.addEventListener("click",(i)=>{let l=i.target.closest?.("[data-b3-dismiss]"),o=l?.closest(".b3-toast");if(!l||!o||l.disabled||!t.contains(o))return;let f=o.contains(p.activeElement),m=[...t.querySelectorAll(".b3-toast")],c=m.indexOf(o),a=o.dataset.b3ReturnFocus||t.dataset.b3ReturnFocus,r=a?p.getElementById(a):null;if(o.remove(),!f)return;let d=[...m.slice(c+1),...m.slice(0,c).reverse()].flatMap((u)=>[...u.querySelectorAll("[data-b3-dismiss]")]);if(r)d.push(r);if(t.hasAttribute("tabindex"))d.push(t);for(let u of d){if(!u.isConnected||u.matches(":disabled")||u.closest("[inert]")||!u.getClientRects().length)continue;if(u.focus(),p.activeElement===u)break}},{signal:s})}function Y(t,s){let p=t.ownerDocument,i=p.defaultView,l=()=>[...t.querySelectorAll('a[href^="#"]')].flatMap((a)=>{let r;try{r=decodeURIComponent(a.getAttribute("href").slice(1))}catch{return[]}let d=p.getElementById(r);return d?[{link:a,heading:d}]:[]}),o=0;function f(){o=0;let a=l(),r=a.filter(({heading:u})=>u.getClientRects().length),d=r[0];for(let u of r){let h=parseFloat(i.getComputedStyle(u.heading).scrollMarginBlockStart)||0;if(u.heading.getBoundingClientRect().top<=h+1)d=u}if(i.scrollY>0&&i.scrollY+i.innerHeight>=p.documentElement.scrollHeight-2)d=r.at(-1);for(let u of a)if(u!==d)u.link.removeAttribute("aria-current");else if(u.link.getAttribute("aria-current")!=="location")u.link.setAttribute("aria-current","location")}let m=()=>{if(!o)o=i.requestAnimationFrame(f)};i.addEventListener("scroll",m,{signal:s,passive:!0}),i.addEventListener("resize",m,{signal:s}),i.addEventListener("hashchange",m,{signal:s});let c=new i.MutationObserver(m);c.observe(t,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["aria-current","href"]}),s.addEventListener("abort",()=>{i.cancelAnimationFrame(o),c.disconnect()},{once:!0}),f()}function it(t,s){let p=t.ownerDocument||t,i=p.defaultView,l={signal:s},o=null,f=null,m=0,c=null,a=0,r=null,d=new i.MutationObserver((e)=>{if(!o.isConnected||e.some(({target:n})=>f.contains(n)&&!r.contains(n)))u()});function u(){if(!o)return;i.clearTimeout(a),d.disconnect();let e=o.dataset.b3Confirm;if(c&&e&&o.textContent===e)o.replaceChildren(...c);o.removeAttribute("data-b3-armed"),o=f=c=null,r.textContent=""}function h(e){if(!r?.isConnected)r=p.createElement("span"),r.className="b3-visually-hidden",r.setAttribute("role","status"),p.body.append(r);let n=r;o=e,m=i.performance.now(),f=e.parentElement.closest("li, tr, article, [data-id], .b3-row, .b3-card")||e.parentElement;let b=e.dataset.b3Confirm;if(b)c=[...e.childNodes],e.replaceChildren(b);e.setAttribute("data-b3-armed",""),d.observe(t,{childList:!0,subtree:!0}),d.observe(f,{childList:!0,subtree:!0,attributes:!0,characterData:!0}),a=i.setTimeout(u,4000),i.requestAnimationFrame(()=>{if(o===e)n.textContent=b||"Press again to confirm"})}t.addEventListener("click",(e)=>{let n=e.target.closest?.("[data-b3-confirm]");if(o&&n!==o)u();if(!n||n.disabled||!t.contains(n))return;if(n===o&&i.performance.now()-m>=350)return u();if(e.preventDefault(),e.stopImmediatePropagation(),n!==o)h(n)},{...l,capture:!0}),t.addEventListener("focusout",({target:e})=>{if(e===o)i.queueMicrotask(()=>e===o&&u())},l),t.addEventListener("keydown",(e)=>{let n=e;if(n.key==="Escape")u();else if(n.repeat&&(n.key==="Enter"||n.key===" ")&&n.target.closest?.("[data-b3-confirm]"))n.preventDefault()},{...l,capture:!0}),s?.addEventListener("abort",()=>{u(),r?.remove()},{once:!0})}var W=Symbol.for("bare-v3.confirm");function z(){if(typeof document>"u"||!document.defaultView?.MutationObserver)return;let t=document;if(t[W])return;t[W]=!0,it(document)}class K extends v{mount(t,s){B(t,s)}}class j extends v{#t=null;get index(){return this.#t?.index??-1}set index(t){this.#t?.to(t)}get count(){return this.#t?.count??0}to(t,s){this.#t?.to(t,s)}mount(t,s){S(t,s,{tabindex:"0"},["b3-reel"]),this.#t=R(t,s),s.addEventListener("abort",()=>{this.#t=null},{once:!0})}}class U extends v{target(){return this.querySelector(":scope > details")}mount(t,s){O(t,s)}}class H extends v{#t=null;target(){return this.querySelector(":scope > dialog")}mount(t,s){this.#t=q(t,{signal:s,backdrop:()=>this.getAttribute("backdrop")==="dismiss"}),s.addEventListener("abort",()=>{this.#t=null},{once:!0})}show(t){if(this.#t)this.#t.show(t??null);else if(!this.target()?.open)this.target()?.showModal()}close(){if(this.#t)return this.#t.dismiss();return this.target()?.close(),!0}}class X extends H{mount(t,s){super.mount(t,s),P(t,s),N(t,()=>this.close(),s)}}class G extends H{mount(t,s){super.mount(t,s),F(t,s)}}class _ extends v{mount(t,s){S(t,s,{},["b3-toast-region"]),V(t,s)}}class J extends v{mount(t,s){S(t,s,{role:"navigation"},["b3-toc"]),Y(t,s)}}M("b3-tabs",K);M("b3-reel",j);M("b3-dropdown",U);M("b3-dialog",H);M("b3-sheet",X);M("b3-command",G);M("b3-toast-region",_);M("b3-toc",J);z();export{G as B3Command,H as B3Dialog,U as B3Dropdown,j as B3Reel,X as B3Sheet,K as B3Tabs,_ as B3ToastRegion,J as B3Toc,rt as layout,C as motion,nt as sequence,I as settle};
1
+ var nt=typeof HTMLElement==="function"?HTMLElement:class{};function v(t,l){if(typeof customElements>"u"||customElements.get?.(t))return;try{customElements.define(t,l)}catch(p){console.warn(`bare-v3: ${t} was not registered`,p)}}class w extends nt{#t=null;#n=null;#e=null;target(){return this}connectedCallback(){let t=this.ownerDocument;if(t.readyState==="loading"){t.addEventListener("DOMContentLoaded",()=>{if(this.isConnected)this.#r()},{once:!0});return}this.#r()}disconnectedCallback(){this.#o(),this.#e?.disconnect(),this.#e=null}#r(){if(this.#t)return;let t=this.target();if(t!==this&&!this.#e)this.#e=new MutationObserver(()=>{if(this.target()!==this.#n)this.#o(),this.#r()}),this.#e.observe(this,{childList:!0});if(!t)return;this.#t=new AbortController,this.#n=t,this.mount(t,this.#t.signal)}#o(){this.#t?.abort(),this.#t=null,this.#n=null}}function k(t,l,p={},s=[]){let u=()=>{for(let f of s)if(!t.classList.contains(f))t.classList.add(f);for(let[f,m]of Object.entries(p))if(!t.hasAttribute(f))t.setAttribute(f,m)};u();let i=new MutationObserver(u);i.observe(t,{attributes:!0,attributeFilter:["class",...Object.keys(p)]}),l.addEventListener("abort",()=>i.disconnect(),{once:!0})}function P(t,l){let p=t.ownerDocument,s=(r)=>r.closest(t.localName)===t,u=(r)=>[...r.querySelectorAll('[role="tab"]')].filter((d)=>d.closest('[role="tablist"]')===r),i=new WeakMap,f=(r,d,c)=>{if(r.getAttribute(d)!==c)r.setAttribute(d,c)};function m(r,d=!1){let c=r.closest('[role="tablist"]');if(!c||r.disabled)return;i.set(c,r);for(let h of u(c)){let e=h===r;f(h,"aria-selected",String(e)),f(h,"tabindex",e?"0":"-1");let n=h.getAttribute("aria-controls"),b=n?p.getElementById(n):null;if(b&&b.hidden===e)b.hidden=!e}if(d)r.focus({preventScroll:!0}),r.scrollIntoView({block:"nearest",inline:"nearest",behavior:"instant"})}function a(){for(let r of t.querySelectorAll('[role="tablist"]')){if(!s(r))continue;let d=u(r).filter((n)=>!n.disabled),c=i.get(r),e=d.filter((n)=>n.getAttribute("aria-selected")==="true").find((n)=>n!==c)??(c&&d.includes(c)?c:d[0]);if(e)m(e)}}a();let o=new p.defaultView.MutationObserver(a);o.observe(t,{subtree:!0,childList:!0,attributes:!0,attributeFilter:["aria-selected","tabindex","hidden"]}),l.addEventListener("abort",()=>o.disconnect(),{once:!0}),t.addEventListener("click",(r)=>{let d=r.target.closest?.('[role="tab"]'),c=d?.closest('[role="tablist"]');if(d&&c&&s(c)&&!d.disabled)m(d)},{signal:l}),t.addEventListener("keydown",(r)=>{let d=r.target.closest?.('[role="tab"]'),c=d?.closest('[role="tablist"]');if(!d||!c||!s(c))return;let h=u(c).filter((A)=>!A.disabled),e=h.indexOf(d),n=c.getAttribute("aria-orientation")==="vertical",b=p.defaultView.getComputedStyle(c).direction==="rtl",E=n?"ArrowDown":b?"ArrowLeft":"ArrowRight",g=n?"ArrowUp":b?"ArrowRight":"ArrowLeft",y;if(r.key===E)y=h[(e+1)%h.length];if(r.key===g)y=h[(e-1+h.length)%h.length];if(r.key==="Home")y=h[0];if(r.key==="End")y=h.at(-1);if(y)r.preventDefault(),m(y,!0)},{signal:l})}function N(t,l){let p=t.ownerDocument,s=p.defaultView,u=()=>s.getComputedStyle(t).direction==="rtl",i=()=>[...t.children].filter((n)=>n.getClientRects().length>0),f=(n)=>{let b=t.getBoundingClientRect(),E=n.getBoundingClientRect();return u()?b.right-E.right:E.left-b.left},m=()=>{let n=-1,b=1/0;return i().forEach((E,g)=>{let y=Math.abs(f(E));if(y<b-1)b=y,n=g}),n},a=(n)=>Math.max(0,Math.min(i().length-1,Math.trunc(n)||0)),o=()=>t.id?[...p.querySelectorAll("[data-b3-reel-to]")].filter((n)=>n.getAttribute("aria-controls")===t.id):[],r=(n=!0)=>{let b=m(),E=t.dataset.b3ReelIndex;if(b<0)delete t.dataset.b3ReelIndex;else if(E!==String(b))t.dataset.b3ReelIndex=String(b);for(let g of o()){let y=g.dataset.b3ReelTo;if(String(b)===y){if(g.getAttribute("aria-current")!=="true")g.setAttribute("aria-current","true")}else if(Number.isInteger(Number(y)))g.removeAttribute("aria-current")}if(n&&E!==void 0&&E!==String(b))t.dispatchEvent(new CustomEvent("b3-reel-change",{bubbles:!0,detail:{index:b,count:i().length}}))},d=(n,b="smooth")=>{let E=i()[a(n)];if(!E)return;let g=f(E);t.scrollBy({left:u()?-g:g,behavior:b})},c=new s.ResizeObserver(()=>r(!1));c.observe(t);let h=new s.MutationObserver(()=>r(!1));h.observe(t,{attributes:!0,attributeFilter:["data-b3-reel-index"]}),l.addEventListener("abort",()=>{c.disconnect(),h.disconnect()},{once:!0});let e=0;return t.addEventListener("scroll",()=>{s.cancelAnimationFrame(e),e=s.requestAnimationFrame(()=>r())},{signal:l}),p.addEventListener("click",(n)=>{let b=n.target.closest?.("[data-b3-reel-to]");if(!b||!t.id||b.getAttribute("aria-controls")!==t.id)return;let E=b.dataset.b3ReelTo,g=m();d(E==="next"?g+1:E==="previous"?g-1:Number(E))},{signal:l}),t.addEventListener("keydown",(n)=>{if(n.target!==t)return;let b=m(),E=u()?"ArrowLeft":"ArrowRight",g=u()?"ArrowRight":"ArrowLeft",y;if(n.key===E)y=b+1;if(n.key===g)y=b-1;if(n.key==="Home")y=0;if(n.key==="End")y=i().length-1;if(y===void 0)return;n.preventDefault(),d(y)},{signal:l}),r(!1),{get index(){return m()},get count(){return i().length},to:d}}var rt=["transform","inset-block-start","inset-block-end","max-block-size","max-inline-size","min-inline-size"];function F(t,l){let p=t.ownerDocument,s=p.defaultView,u=null,i=()=>t.querySelector(".b3-dropdown-panel");function f(a){if(!u)return;for(let[o,r,d]of u)if(r)a.style.setProperty(o,r,d);else a.style.removeProperty(o)}l.addEventListener("abort",()=>{let a=i();if(a)f(a);u=null},{once:!0});function m(){let a=i();if(!a)return;if(f(a),!t.open){u=null;return}u??=rt.map((L)=>[L,a.style.getPropertyValue(L),a.style.getPropertyPriority(L)]);let o={left:0,right:s.innerWidth,top:0,bottom:s.innerHeight};for(let L=t.parentElement;L;L=L.parentElement){let M=s.getComputedStyle(L),x=L.getBoundingClientRect(),S=L.offsetWidth?x.width/L.offsetWidth:1,R=L.offsetHeight?x.height/L.offsetHeight:1,O=x.left+L.clientLeft*S,q=x.top+L.clientTop*R;if(/^(auto|scroll|hidden|clip)$/.test(M.overflowX))o.left=Math.max(o.left,O),o.right=Math.min(o.right,O+L.clientWidth*S);if(/^(auto|scroll|hidden|clip)$/.test(M.overflowY))o.top=Math.max(o.top,q),o.bottom=Math.min(o.bottom,q+L.clientHeight*R)}let r=t.getBoundingClientRect();if(r.bottom<=o.top||r.top>=o.bottom||r.right<=o.left||r.left>=o.right){t.open=!1;return}let d=Math.max(0,o.right-o.left-16),c=a.getBoundingClientRect(),h=a.offsetWidth?c.width/a.offsetWidth:1,e=a.offsetHeight?c.height/a.offsetHeight:1;if(!(h>0&&e>0))return;if(c.width>d)a.style.minInlineSize="0",a.style.maxInlineSize=`${d/h}px`;let n=a.getBoundingClientRect(),b=n.left<o.left+8?o.left+8-n.left:n.right>o.right-8?o.right-8-n.right:0;a.style.transform=`translateX(${b/h}px)`;let E=Math.max(0,n.top-r.bottom),g=Math.max(0,o.bottom-r.bottom-E-8),y=Math.max(0,r.top-o.top-E-8),A=n.height>g&&y>g;if(a.style.maxBlockSize=`${Math.min(n.height,A?y:g)/e}px`,A)a.style.insetBlockStart="auto",a.style.insetBlockEnd="calc(100% + .5rem)"}t.addEventListener("toggle",m,{signal:l}),s.addEventListener("resize",()=>{if(t.open)m()},{signal:l}),s.addEventListener("scroll",(a)=>{if(!t.open||a.target?.nodeType&&i()?.contains(a.target))return;m()},{signal:l,capture:!0,passive:!0}),t.addEventListener("keydown",(a)=>{if(a.key!=="Escape"||a.target.closest?.("details[open]")!==t)return;t.open=!1,t.querySelector("summary")?.focus()},{signal:l}),p.addEventListener("click",(a)=>{if(t.open&&!t.contains(a.target))t.open=!1},{signal:l})}var T=new WeakMap;var ot={enter:{keyframes:[{opacity:0,transform:"translateY(12px) scale(.985)"},{opacity:1,transform:"none"}],duration:320},exit:{keyframes:[{opacity:1,transform:"none"},{opacity:0,transform:"translateY(-6px) scale(.98)"}],duration:180,easing:"cubic-bezier(.4,0,1,1)"},update:{keyframes:[{opacity:0.35},{opacity:1}],duration:180},confirm:{keyframes:[{transform:"scale(.9)"},{transform:"scale(1.08)",offset:0.5},{transform:"scale(.985)",offset:0.8},{transform:"scale(1)"}],duration:380},reveal:{keyframes:[{opacity:0,clipPath:"inset(0 0 100%)",transform:"translateY(8px)"},{opacity:1,clipPath:"inset(0)",transform:"none"}],duration:440}},H=(t)=>!!(t.ownerDocument?.defaultView?.matchMedia("(prefers-reduced-motion: reduce)").matches||t.closest('[data-b3-motion="reduce"]'));function D(t,l,p){if(T.get(t)?.cancel(),!t.isConnected||!t.animate||H(t))return null;let s=t.animate(l,{easing:"cubic-bezier(.16,1,.3,1)",fill:"backwards",...p});T.set(t,s);let u=t.ownerDocument.defaultView.matchMedia("(prefers-reduced-motion: reduce)"),i=()=>{if(u.matches)s.cancel()};u.addEventListener("change",i);let f=()=>{if(u.removeEventListener("change",i),T.get(t)===s)T.delete(t)};return s.addEventListener("finish",f,{once:!0}),s.addEventListener("cancel",f,{once:!0}),s}function I(t,l="update",p={}){let s=ot[l];if(!s)throw TypeError(`Unknown motion intent: ${l}`);return D(t,s.keyframes,{duration:s.duration,easing:s.easing||"cubic-bezier(.16,1,.3,1)",delay:Math.min(200,Math.max(0,p.delay||0))})}function it(t,l="enter"){return Array.from(t,(p,s)=>I(p,l,{delay:Math.min(s*45,180)})).filter((p)=>!!p)}function st(t,l){let p=()=>{let i=new Map;for(let f of t.querySelectorAll("[data-b3-layout]")){let m=f.dataset.b3Layout;if(!m||i.has(m))throw Error("Layout motion requires unique, non-empty data-b3-layout keys");i.set(m,{element:f,rect:f.getBoundingClientRect()})}return i},s=p();for(let{element:i}of s.values())T.get(i)?.cancel();l();let u=[];for(let[i,{element:f,rect:m}]of p()){let a=s.get(i);if(!a||a.element!==f){let n=I(f,"enter");if(n)u.push(n);continue}let o=a.rect;if(!m.width||!m.height||!o.width||!o.height)continue;let r=o.x-m.x,d=o.y-m.y,c=o.width/m.width,h=o.height/m.height;if(Math.abs(r)+Math.abs(d)+Math.abs(c-1)+Math.abs(h-1)<0.01)continue;let e=D(f,[{transformOrigin:"top left",transform:`translate(${r}px,${d}px) scale(${c},${h})`},{transformOrigin:"top left",transform:"none"}],{duration:420});if(e)u.push(e)}return u}function B(t,{x:l=0,y:p=0}={}){if(!Number.isFinite(l)||!Number.isFinite(p))throw TypeError("Settle displacement must be finite");let s=Array.from({length:41},(u,i)=>{let f=i/40,m=i===40?0:Math.exp(-7*f)*(Math.cos(11*f)+0.6*Math.sin(11*f));return{offset:f,transform:`translate(${l*m}px,${p*m}px)`}});return D(t,s,{duration:460,easing:"linear"})}function V(t,{signal:l,backdrop:p}){let s=t.ownerDocument,u=s.defaultView,i={signal:l},f=null,m=null,a=null,o=!1,r=(e)=>{let n=t.getBoundingClientRect();return e.clientX<n.left||e.clientX>n.right||e.clientY<n.top||e.clientY>n.bottom},d=()=>{m=null,delete t.dataset.b3Closing},c=()=>{if(!t.open||m)return!1;if(!t.dispatchEvent(new Event("cancel",{cancelable:!0})))return!1;if(H(t)||!t.animate)return t.close(),!0;let e=u.getComputedStyle(t),n=t.matches(".b3-sheet")?"translateY(100%)":t.dataset.b3Placement==="end"?`translateX(${e.direction==="rtl"?"-":""}100%)`:"scale(.985)",b=t.animate([{transform:e.transform,opacity:1},{transform:n,opacity:0}],{duration:160,easing:"cubic-bezier(.4, 0, 1, 1)"});return m=b,t.dataset.b3Closing="",b.finished.then(()=>{if(t.open)t.close()},()=>{}).finally(()=>{if(m===b)d()}),!0},h=(e=null)=>{if(f=e,!t.open)t.showModal()};return t.addEventListener("cancel",(e)=>{if(!e.cancelable||e.defaultPrevented||!e.isTrusted||e.target!==t)return;e.preventDefault(),e.stopImmediatePropagation(),c()},{...i,capture:!0}),l.addEventListener("abort",()=>{m?.cancel(),d()},{once:!0}),t.addEventListener("pointerdown",(e)=>{o=!1,a=e.isPrimary&&e.button===0&&e.target===t&&p()&&t.matches(":modal")&&r(e)?e.pointerId:null},i),t.addEventListener("pointerup",(e)=>{let n=a;if(a=null,n!==null&&n===e.pointerId&&e.target===t&&r(e))o=!0},i),t.addEventListener("pointercancel",()=>{a=null,o=!1},i),t.addEventListener("click",(e)=>{let n=o;if(o=!1,!n||e.target!==t||!r(e))return;e.preventDefault(),e.stopImmediatePropagation(),c()},{...i,capture:!0}),t.addEventListener("close",(e)=>{if(e.target!==t)return;m?.cancel(),d();let n=f;if(f=null,n?.isConnected&&!n.disabled)n.focus()},{...i,capture:!0}),t.addEventListener("click",(e)=>{let n=e.target.closest?.("[data-b3-close]");if(n&&!n.disabled&&n.closest("dialog")===t)c()},i),s.addEventListener("click",(e)=>{let n=e.target.closest?.("[data-b3-open]");if(n&&!n.disabled&&t.id&&n.dataset.b3Open===t.id)h(n)},i),{dismiss:c,show:h}}var at=["tabindex","autofocus","data-b3-initial-focus"];function Y(t,l){let p=t.ownerDocument,s=null,u=()=>{if(!s)return;let{title:f,original:m}=s;for(let[a,o]of Object.entries(m)){let r=a==="tabindex"?"-1":"";if(f.getAttribute(a)!==r)continue;if(o===null)f.removeAttribute(a);else f.setAttribute(a,o)}s=null},i=()=>{if([...t.querySelectorAll("[autofocus]")].find((o)=>o!==s?.title))return u();let m=t.getAttribute("aria-labelledby")?.trim().split(/\s+/)[0],a=m?p.getElementById(m):null;if(!a||!t.contains(a)||s?.title===a)return;u(),s={title:a,original:Object.fromEntries(at.map((o)=>[o,a.getAttribute(o)]))},a.setAttribute("tabindex","-1"),a.setAttribute("autofocus",""),a.setAttribute("data-b3-initial-focus","")};i(),t.addEventListener("beforetoggle",(f)=>{if(f.newState==="open")i()},{signal:l}),l.addEventListener("abort",u,{once:!0})}function W(t,l,p){let s={signal:p},u=null,i=null,f=null,m=(o,r=!0)=>{let{handle:d,pointerId:c,distance:h}=o;if(u=null,delete t.dataset.b3Dragging,t.style.removeProperty("transform"),d.hasPointerCapture(c))d.releasePointerCapture(c);if(r&&h&&t.open&&!H(t)){let e=B(t,{y:h});if(!e)return;f=e,e.finished.catch(()=>{}).finally(()=>{if(f===e)f=null})}};t.addEventListener("pointerdown",(o)=>{i=null;let r=o.target.closest?.(".b3-sheet-handle");if(!r||r.closest("dialog")!==t||!t.matches(":modal"))return;if(u||!o.isPrimary||o.button!==0||t.hasAttribute("data-b3-closing"))return;f?.cancel();for(let d of t.getAnimations())d.cancel();u={handle:r,pointerId:o.pointerId,y:o.clientY,distance:0,moved:!1},t.dataset.b3Dragging="",r.setPointerCapture(o.pointerId)},s),t.addEventListener("pointermove",(o)=>{if(!u||o.pointerId!==u.pointerId)return;u.distance=Math.max(0,o.clientY-u.y),u.moved||=Math.abs(o.clientY-u.y)>6,t.style.transform=`translateY(${u.distance}px)`},s),t.addEventListener("pointerup",(o)=>{if(!u||o.pointerId!==u.pointerId)return;let r=u;if(r.moved)i={pointerId:r.pointerId,handle:r.handle};let d=Math.min(120,t.offsetHeight*0.25);if(r.moved&&r.distance>=d){let c=l();m(r,!c)}else m(r)},s);let a=(o)=>{if(u&&o.pointerId===u.pointerId)m(u)};t.addEventListener("pointercancel",a,s),t.addEventListener("lostpointercapture",a,s),t.addEventListener("click",(o)=>{let r=i;if(i=null,r&&o.detail!==0&&(o.pointerId===r.pointerId||r.handle.contains(o.target)))o.preventDefault(),o.stopImmediatePropagation()},{...s,capture:!0}),t.addEventListener("close",()=>{if(u)m(u,!1);f?.cancel()},{...s,capture:!0}),p.addEventListener("abort",()=>{if(u)m(u,!1);f?.cancel(),f=null},{once:!0})}function z(t,l){let p={signal:l},s=()=>{let e=t.querySelector('input[role="combobox"]'),n=t.querySelector('[role="listbox"]');if(!e||!n?.id||e.getAttribute("aria-controls")!==n.id)return null;return{input:e,list:n,empty:t.querySelector("[data-b3-command-empty]"),status:t.querySelector("[data-b3-command-status]")}},u=null,i=[],f=(e)=>[...e.querySelectorAll('[role="option"]')];function m(e,n=!0){let b=s();if(!b)return;u=e||null;for(let E of f(b.list))E.setAttribute("aria-selected",String(E===u));if(u){if(b.input.setAttribute("aria-activedescendant",u.id),n)u.scrollIntoView({block:"nearest"})}else b.input.removeAttribute("aria-activedescendant")}function a(){let e=s();if(!e)return;let{input:n,list:b,empty:E,status:g}=e,y=n.value.trim().toLocaleLowerCase().split(/\s+/).filter(Boolean),A=f(b);for(let M of A){let x=`${M.textContent} ${M.dataset.b3Keywords||""}`.toLocaleLowerCase();M.hidden=!y.every((S)=>x.includes(S))}for(let M of b.querySelectorAll('[role="group"]'))M.hidden=![...M.querySelectorAll('[role="option"]')].some((x)=>!x.hidden);let L=A.filter((M)=>!M.hidden);if(i=L.filter((M)=>M.id&&M.getAttribute("aria-disabled")!=="true"),b.hidden=!L.length,n.setAttribute("aria-expanded",String(t.open&&!!L.length)),E)E.hidden=!!L.length;if(g)g.textContent=`${i.length} ${i.length===1?"action":"actions"} available.`;m(i[0],t.open&&!!b.parentElement?.classList.contains("b3-scroll"))}let o=()=>{if(!i.every((e)=>e.isConnected)||u&&!u.isConnected)a();return s()};function r(e){let n=o();if(!n||!e||!i.includes(e)||e.hidden||e.getAttribute("aria-disabled")==="true"||!n.list.contains(e))return;if(t.dispatchEvent(new CustomEvent("b3:command",{bubbles:!0,cancelable:!0,detail:{value:e.dataset.b3Value,item:e}})))t.close()}let d=(e)=>e.target===s()?.input;t.addEventListener("input",(e)=>{if(d(e))a()},p),t.addEventListener("keydown",(e)=>{if(!d(e)||e.isComposing||e.altKey||e.ctrlKey||e.metaKey)return;if(e.key==="ArrowDown"||e.key==="ArrowUp"){if(e.preventDefault(),o(),!i.length)return;let n=i.indexOf(u),b=e.key==="ArrowDown"?Math.min(n+1,i.length-1):Math.max(n-1,0);m(i[b])}else if(e.key==="Enter")e.preventDefault(),o(),r(u)},p);let c=(e)=>{let n=e.target.closest?.('[role="option"]');return n&&s()?.list.contains(n)?n:null};t.addEventListener("pointerdown",(e)=>{if(c(e))e.preventDefault()},p),t.addEventListener("click",(e)=>{let n=c(e);if(n)r(n)},p);let h=new MutationObserver(()=>{let e=s();if(t.open){if(e)e.input.value="";a()}else if(e)e.input.setAttribute("aria-expanded","false"),e.input.removeAttribute("aria-activedescendant")});h.observe(t,{attributes:!0,attributeFilter:["open"]}),l.addEventListener("abort",()=>h.disconnect(),{once:!0}),a()}function K(t,l){let p=t.ownerDocument;t.addEventListener("click",(s)=>{let u=s.target.closest?.("[data-b3-dismiss]"),i=u?.closest(".b3-toast");if(!u||!i||u.disabled||!t.contains(i))return;let f=i.contains(p.activeElement),m=[...t.querySelectorAll(".b3-toast")],a=m.indexOf(i),o=i.dataset.b3ReturnFocus||t.dataset.b3ReturnFocus,r=o?p.getElementById(o):null;if(i.remove(),!f)return;let d=[...m.slice(a+1),...m.slice(0,a).reverse()].flatMap((c)=>[...c.querySelectorAll("[data-b3-dismiss]")]);if(r)d.push(r);if(t.hasAttribute("tabindex"))d.push(t);for(let c of d){if(!c.isConnected||c.matches(":disabled")||c.closest("[inert]")||!c.getClientRects().length)continue;if(c.focus(),p.activeElement===c)break}},{signal:l})}function X(t,l){let p=t.ownerDocument,s=p.defaultView,u=()=>[...t.querySelectorAll('a[href^="#"]')].flatMap((r)=>{let d;try{d=decodeURIComponent(r.getAttribute("href").slice(1))}catch{return[]}let c=p.getElementById(d);if(!c)r.removeAttribute("aria-current");return c?[{link:r,heading:c}]:[]});function i(r){for(let d=r.parentElement;d&&d!==p.body;d=d.parentElement)if(d.scrollHeight>d.clientHeight+1&&/(auto|scroll)/.test(s.getComputedStyle(d).overflowY))return d;return null}let f=0;function m(){f=0;let r=u(),d=r.filter(({heading:g})=>g.getClientRects().length).sort((g,y)=>g.heading.getBoundingClientRect().top-y.heading.getBoundingClientRect().top),c=d.length?i(d[0].heading):null,h=c?c.getBoundingClientRect().top+c.clientTop:0,e=d[0];for(let g of d){let y=parseFloat(s.getComputedStyle(g.heading).scrollMarginBlockStart)||0;if(g.heading.getBoundingClientRect().top<=h+y+1)e=g}let n=c?c.scrollTop:s.scrollY,b=c?c.clientHeight:s.innerHeight,E=c?c.scrollHeight:p.documentElement.scrollHeight;if(n>0&&n+b>=E-2)e=d.at(-1);for(let g of r)if(g!==e)g.link.removeAttribute("aria-current");else if(g.link.getAttribute("aria-current")!=="location")g.link.setAttribute("aria-current","location")}let a=()=>{if(!f)f=s.requestAnimationFrame(m)};s.addEventListener("scroll",a,{signal:l,capture:!0,passive:!0}),s.addEventListener("resize",a,{signal:l}),s.addEventListener("hashchange",a,{signal:l});let o=new s.MutationObserver(a);o.observe(t,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["aria-current","href"]}),o.observe(p.body,{childList:!0,subtree:!0}),l.addEventListener("abort",()=>{s.cancelAnimationFrame(f),o.disconnect()},{once:!0}),m()}function lt(t,l){let p=t.ownerDocument||t,s=p.defaultView,u={signal:l},i=null,f=null,m=0,a=null,o=0,r=null,d=new s.MutationObserver((e)=>{if(!i.isConnected||e.some(({target:n})=>f.contains(n)&&!r.contains(n)))c()});function c(){if(!i)return;s.clearTimeout(o),d.disconnect();let e=i.dataset.b3Confirm;if(a&&e&&i.textContent===e)i.replaceChildren(...a);i.removeAttribute("data-b3-armed"),i=f=a=null,r.textContent=""}function h(e){if(!r?.isConnected)r=p.createElement("span"),r.className="b3-visually-hidden",r.setAttribute("role","status"),p.body.append(r);let n=r;i=e,m=s.performance.now(),f=e.parentElement.closest("li, tr, article, [data-id], .b3-row, .b3-card")||e.parentElement;let b=e.dataset.b3Confirm;if(b)a=[...e.childNodes],e.replaceChildren(b);e.setAttribute("data-b3-armed",""),d.observe(t,{childList:!0,subtree:!0}),d.observe(f,{childList:!0,subtree:!0,attributes:!0,characterData:!0}),o=s.setTimeout(c,4000),s.requestAnimationFrame(()=>{if(i===e)n.textContent=b||"Press again to confirm"})}t.addEventListener("click",(e)=>{let n=e.target.closest?.("[data-b3-confirm]");if(i&&n!==i)c();if(!n||n.disabled||!t.contains(n))return;if(n===i&&s.performance.now()-m>=350)return c();if(e.preventDefault(),e.stopImmediatePropagation(),n!==i)h(n)},{...u,capture:!0}),t.addEventListener("focusout",({target:e})=>{if(e===i)s.queueMicrotask(()=>e===i&&c())},u),t.addEventListener("keydown",(e)=>{let n=e;if(n.key==="Escape")c();else if(n.repeat&&(n.key==="Enter"||n.key===" ")&&n.target.closest?.("[data-b3-confirm]"))n.preventDefault()},{...u,capture:!0}),l?.addEventListener("abort",()=>{c(),r?.remove()},{once:!0})}var j=Symbol.for("bare-v3.confirm");function U(){if(typeof document>"u"||!document.defaultView?.MutationObserver)return;let t=document;if(t[j])return;t[j]=!0,lt(document)}class G extends w{mount(t,l){P(t,l)}}class _ extends w{#t=null;get index(){return this.#t?.index??-1}set index(t){this.#t?.to(t)}get count(){return this.#t?.count??0}to(t,l){this.#t?.to(t,l)}mount(t,l){k(t,l,{tabindex:"0"},["b3-reel"]),this.#t=N(t,l),l.addEventListener("abort",()=>{this.#t=null},{once:!0})}}class J extends w{target(){return this.querySelector(":scope > details")}mount(t,l){F(t,l)}}class C extends w{#t=null;target(){return this.querySelector(":scope > dialog")}mount(t,l){this.#t=V(t,{signal:l,backdrop:()=>this.getAttribute("backdrop")==="dismiss"}),l.addEventListener("abort",()=>{this.#t=null},{once:!0})}show(t){if(this.#t)this.#t.show(t??null);else if(!this.target()?.open)this.target()?.showModal()}close(){if(this.#t)return this.#t.dismiss();return this.target()?.close(),!0}}class Q extends C{mount(t,l){super.mount(t,l),Y(t,l),W(t,()=>this.close(),l)}}class Z extends C{mount(t,l){super.mount(t,l),z(t,l)}}class tt extends w{mount(t,l){k(t,l,{},["b3-toast-region"]),K(t,l)}}class et extends w{mount(t,l){k(t,l,{role:"navigation"},["b3-toc"]),X(t,l)}}v("b3-tabs",G);v("b3-reel",_);v("b3-dropdown",J);v("b3-dialog",C);v("b3-sheet",Q);v("b3-command",Z);v("b3-toast-region",tt);v("b3-toc",et);U();export{Z as B3Command,C as B3Dialog,J as B3Dropdown,_ as B3Reel,Q as B3Sheet,G as B3Tabs,tt as B3ToastRegion,et as B3Toc,st as layout,I as motion,it as sequence,B as settle};