@ouro.bot/cli 0.1.0-alpha.935 → 0.1.0-alpha.937

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.
Files changed (43) hide show
  1. package/changelog.json +21 -0
  2. package/deploy/unraid/sanctuary.ouro/bundle-meta.json +1 -1
  3. package/deploy/unraid/sanctuary.xml +1 -1
  4. package/dist/heart/daemon/cli-defaults.js +5 -0
  5. package/dist/heart/daemon/cli-exec.js +9 -0
  6. package/dist/heart/daemon/cli-help.js +2 -2
  7. package/dist/heart/daemon/cli-parse.js +2 -1
  8. package/dist/heart/daemon/daemon.js +14 -0
  9. package/dist/heart/daemon/ouro-entry.js +4 -1
  10. package/dist/heart/daemon/runtime-logging.js +1 -1
  11. package/dist/heart/daemon/sense-manager.js +53 -0
  12. package/dist/heart/mailbox/mailbox-http-hooks.js +1 -0
  13. package/dist/heart/mailbox/mailbox-http-routes.js +8 -0
  14. package/dist/heart/mailbox/mailbox-read.js +3 -1
  15. package/dist/heart/mailbox/mailbox-supervision.js +131 -0
  16. package/dist/heart/shepherd/custody-types.js +2 -0
  17. package/dist/heart/shepherd/mandates.js +352 -0
  18. package/dist/heart/shepherd/operation-commands.js +19 -0
  19. package/dist/heart/shepherd/operations.js +135 -0
  20. package/dist/heart/shepherd/supervision.js +114 -0
  21. package/dist/heart/shepherd/types.js +2 -0
  22. package/dist/mailbox-ui/assets/index-Dbska1tZ.js +1 -0
  23. package/dist/mailbox-ui/assets/index-DsiKaPyH.css +1 -0
  24. package/dist/mailbox-ui/index.html +2 -2
  25. package/dist/nerves/coverage/file-completeness.js +4 -0
  26. package/dist/senses/shepherd/checkin-store.js +209 -41
  27. package/dist/senses/shepherd/cmux.js +69 -23
  28. package/dist/senses/shepherd/guidance.js +5 -2
  29. package/dist/senses/shepherd/herdr.js +84 -2
  30. package/dist/senses/shepherd/judge-evaluation-command.js +180 -0
  31. package/dist/senses/shepherd/judge-evaluation-entry.js +13 -0
  32. package/dist/senses/shepherd/judge-evaluation.js +150 -0
  33. package/dist/senses/shepherd/judge.js +12 -5
  34. package/dist/senses/shepherd/observation-publisher.js +320 -0
  35. package/dist/senses/shepherd/operations-defaults.js +86 -0
  36. package/dist/senses/shepherd/operations.js +159 -0
  37. package/dist/senses/shepherd/recovery.js +543 -0
  38. package/dist/senses/shepherd/sense.js +14 -9
  39. package/dist/senses/shepherd/shepherd-judge-corpus-v1.json +167 -0
  40. package/npm-shrinkwrap.json +2 -2
  41. package/package.json +2 -1
  42. package/dist/mailbox-ui/assets/index-Cyv4mw3Y.js +0 -1
  43. package/dist/mailbox-ui/assets/index-Du_9G9WO.css +0 -1
@@ -0,0 +1 @@
1
+ @import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,600;1,400;1,600&family=Outfit:wght@300;400;500;600&family=JetBrains+Mono:wght@400;500&display=swap";/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:"JetBrains Mono", "SFMono-Regular", monospace;--color-red-200:oklch(88.5% .062 18.334);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-orange-200:oklch(90.1% .076 70.697);--color-orange-300:oklch(83.7% .128 66.29);--color-orange-400:oklch(75% .183 55.934);--color-orange-500:oklch(70.5% .213 47.604);--color-orange-600:oklch(64.6% .222 41.116);--color-orange-700:oklch(55.3% .195 38.402);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-950:oklch(27.9% .077 45.635);--color-yellow-300:oklch(90.5% .182 98.111);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-950:oklch(28.6% .066 53.813);--color-lime-300:oklch(89.7% .196 126.665);--color-lime-400:oklch(84.1% .238 128.85);--color-lime-600:oklch(64.8% .2 131.684);--color-lime-700:oklch(53.2% .157 131.589);--color-lime-950:oklch(27.4% .072 132.109);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-teal-300:oklch(85.5% .138 181.071);--color-teal-500:oklch(70.4% .14 182.503);--color-teal-600:oklch(60% .118 184.704);--color-teal-700:oklch(51.1% .096 186.391);--color-cyan-300:oklch(86.5% .127 207.078);--color-cyan-400:oklch(78.9% .154 211.53);--color-cyan-500:oklch(71.5% .143 215.221);--color-cyan-700:oklch(52% .105 223.128);--color-cyan-950:oklch(30.2% .056 229.695);--color-sky-300:oklch(82.8% .111 230.318);--color-sky-500:oklch(68.5% .169 237.323);--color-sky-600:oklch(58.8% .158 241.966);--color-sky-700:oklch(50% .134 242.749);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-indigo-200:oklch(87% .065 274.039);--color-indigo-300:oklch(78.5% .115 274.713);--color-indigo-400:oklch(67.3% .182 276.935);--color-indigo-500:oklch(58.5% .233 277.117);--color-indigo-600:oklch(51.1% .262 276.966);--color-indigo-700:oklch(45.7% .24 277.023);--color-violet-200:oklch(89.4% .057 293.283);--color-violet-300:oklch(81.1% .111 293.571);--color-violet-400:oklch(70.2% .183 293.541);--color-violet-500:oklch(60.6% .25 292.717);--color-violet-600:oklch(54.1% .281 293.009);--color-violet-700:oklch(49.1% .27 292.581);--color-purple-200:oklch(90.2% .063 306.703);--color-purple-300:oklch(82.7% .119 306.383);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-700:oklch(49.6% .265 301.924);--color-fuchsia-200:oklch(90.3% .076 319.62);--color-fuchsia-300:oklch(83.3% .145 321.434);--color-fuchsia-400:oklch(74% .238 322.16);--color-fuchsia-500:oklch(66.7% .295 322.15);--color-fuchsia-600:oklch(59.1% .293 322.896);--color-fuchsia-700:oklch(51.8% .253 323.949);--color-pink-200:oklch(89.9% .061 343.231);--color-pink-300:oklch(82.3% .12 346.018);--color-pink-400:oklch(71.8% .202 349.761);--color-pink-500:oklch(65.6% .241 354.308);--color-pink-600:oklch(59.2% .249 .584);--color-pink-700:oklch(52.5% .223 3.958);--color-rose-200:oklch(89.2% .058 10.001);--color-rose-300:oklch(81% .117 11.638);--color-rose-400:oklch(71.2% .194 13.428);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-600:oklch(58.6% .253 17.585);--color-rose-700:oklch(51.4% .222 16.935);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--container-2xl:42rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--font-weight-medium:500;--font-weight-semibold:600;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-ouro-void:#07110d;--color-ouro-deep:#0c1a12;--color-ouro-moss:#183325;--color-ouro-scale:#2f8f4e;--color-ouro-glow:#74e08f;--color-ouro-bone:#eef2ea;--color-ouro-mist:#a5b8a8;--color-ouro-shadow:#708373;--color-ouro-fang:#d35f47;--color-ouro-gold:#d6b56f;--font-display:"Cormorant Garamond", "Iowan Old Style", "Palatino Linotype", serif;--font-body:"Outfit", "Avenir Next", "Segoe UI Variable Text", sans-serif}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-2{inset-inline:calc(var(--spacing) * 2)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.inset-y-2{inset-block:calc(var(--spacing) * 2)}.start{inset-inline-start:var(--spacing)}.top-1\/2{top:50%}.-bottom-2\.5{bottom:calc(var(--spacing) * -2.5)}.-left-4{left:calc(var(--spacing) * -4)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.isolate{isolation:isolate}.col-start-1{grid-column-start:1}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-auto{margin-inline:auto}.my-2{margin-block:calc(var(--spacing) * 2)}.my-4{margin-block:calc(var(--spacing) * 4)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.-mb-3{margin-bottom:calc(var(--spacing) * -3)}.mb-0\.5{margin-bottom:calc(var(--spacing) * .5)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.-ml-4{margin-left:calc(var(--spacing) * -4)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.size-\[max\(100\%\,2\.75rem\)\]{width:max(100%,2.75rem);height:max(100%,2.75rem)}.size-full{width:100%;height:100%}.h-0\.5{height:calc(var(--spacing) * .5)}.h-1{height:calc(var(--spacing) * 1)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-9{height:calc(var(--spacing) * 9)}.h-full{height:100%}.h-screen{height:100vh}.max-h-20{max-height:calc(var(--spacing) * 20)}.max-h-24{max-height:calc(var(--spacing) * 24)}.max-h-32{max-height:calc(var(--spacing) * 32)}.max-h-60{max-height:calc(var(--spacing) * 60)}.max-h-96{max-height:calc(var(--spacing) * 96)}.max-h-\[60vh\]{max-height:60vh}.max-h-\[66vh\]{max-height:66vh}.max-h-\[70vh\]{max-height:70vh}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-\[54vh\]{min-height:54vh}.min-h-\[58vh\]{min-height:58vh}.min-h-\[66vh\]{min-height:66vh}.min-h-svh{min-height:100svh}.w-0\.5{width:calc(var(--spacing) * .5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-64{width:calc(var(--spacing) * 64)}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-32{max-width:calc(var(--spacing) * 32)}.max-w-80{max-width:calc(var(--spacing) * 80)}.max-w-\[85\%\]{max-width:85%}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.animate-pulse{animation:var(--animate-pulse)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-1\.5{column-gap:calc(var(--spacing) * 1.5)}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-1{row-gap:calc(var(--spacing) * 1)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-ouro-moss\/10>:not(:last-child)){border-color:#1833251a}@supports (color:color-mix(in lab,red,red)){:where(.divide-ouro-moss\/10>:not(:last-child)){border-color:color-mix(in oklab,var(--color-ouro-moss) 10%,transparent)}}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-\(--avatar-radius\){border-radius:var(--avatar-radius)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[20\%\]{border-radius:20%}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-md{border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.rounded-br-md{border-bottom-right-radius:var(--radius-md)}.rounded-br-sm{border-bottom-right-radius:var(--radius-sm)}.rounded-bl-md{border-bottom-left-radius:var(--radius-md)}.rounded-bl-sm{border-bottom-left-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-\[\#1f3a2c\]{border-color:#1f3a2c}.border-\[\#22c55e\]{border-color:#22c55e}.border-\[\#60a5fa\]{border-color:#60a5fa}.border-\[\#cbd8c8\]{border-color:#cbd8c8}.border-\[\#d8d1ff\]{border-color:#d8d1ff}.border-\[\#d8e2d4\]{border-color:#d8e2d4}.border-\[\#f0d0bd\]{border-color:#f0d0bd}.border-black\/10{border-color:#0000001a}@supports (color:color-mix(in lab,red,red)){.border-black\/10{border-color:color-mix(in oklab,var(--color-black) 10%,transparent)}}.border-current\/10{border-color:currentColor}@supports (color:color-mix(in lab,red,red)){.border-current\/10{border-color:color-mix(in oklab,currentcolor 10%,transparent)}}.border-ouro-glow{border-color:var(--color-ouro-glow)}.border-ouro-moss\/10{border-color:#1833251a}@supports (color:color-mix(in lab,red,red)){.border-ouro-moss\/10{border-color:color-mix(in oklab,var(--color-ouro-moss) 10%,transparent)}}.border-ouro-moss\/15{border-color:#18332526}@supports (color:color-mix(in lab,red,red)){.border-ouro-moss\/15{border-color:color-mix(in oklab,var(--color-ouro-moss) 15%,transparent)}}.border-ouro-moss\/20{border-color:#18332533}@supports (color:color-mix(in lab,red,red)){.border-ouro-moss\/20{border-color:color-mix(in oklab,var(--color-ouro-moss) 20%,transparent)}}.border-ouro-moss\/25{border-color:#18332540}@supports (color:color-mix(in lab,red,red)){.border-ouro-moss\/25{border-color:color-mix(in oklab,var(--color-ouro-moss) 25%,transparent)}}.border-ouro-moss\/30{border-color:#1833254d}@supports (color:color-mix(in lab,red,red)){.border-ouro-moss\/30{border-color:color-mix(in oklab,var(--color-ouro-moss) 30%,transparent)}}.border-ouro-moss\/40{border-color:#18332566}@supports (color:color-mix(in lab,red,red)){.border-ouro-moss\/40{border-color:color-mix(in oklab,var(--color-ouro-moss) 40%,transparent)}}.border-transparent{border-color:#0000}.border-zinc-200{border-color:var(--color-zinc-200)}.border-zinc-950\/5{border-color:#09090b0d}@supports (color:color-mix(in lab,red,red)){.border-zinc-950\/5{border-color:color-mix(in oklab,var(--color-zinc-950) 5%,transparent)}}.border-zinc-950\/10{border-color:#09090b1a}@supports (color:color-mix(in lab,red,red)){.border-zinc-950\/10{border-color:color-mix(in oklab,var(--color-zinc-950) 10%,transparent)}}.bg-\(--btn-border\){background-color:var(--btn-border)}.bg-\[\#0a84ff\]{background-color:#0a84ff}.bg-\[\#0f1a15\]{background-color:#0f1a15}.bg-\[\#2f8f4e\]{background-color:#2f8f4e}.bg-\[\#4f3bb3\]{background-color:#4f3bb3}.bg-\[\#050807\]{background-color:#050807}.bg-\[\#101815\]{background-color:#101815}.bg-\[\#dff7ea\]{background-color:#dff7ea}.bg-\[\#e4ecdf\]{background-color:#e4ecdf}.bg-\[\#e7ecff\]{background-color:#e7ecff}.bg-\[\#e9e9eb\]{background-color:#e9e9eb}.bg-\[\#e9f3ef\]{background-color:#e9f3ef}.bg-\[\#eaf4ee\]{background-color:#eaf4ee}.bg-\[\#ede9fe\]{background-color:#ede9fe}.bg-\[\#f2f6ef\]{background-color:#f2f6ef}.bg-\[\#f5f5f7\]{background-color:#f5f5f7}.bg-\[\#f7f5ff\]{background-color:#f7f5ff}.bg-\[\#fbfbfd\]{background-color:#fbfbfd}.bg-\[\#fbfdf8\]{background-color:#fbfdf8}.bg-\[\#ffe8e2\]{background-color:#ffe8e2}.bg-\[\#fff4e4\]{background-color:#fff4e4}.bg-\[\#fff7d6\]{background-color:#fff7d6}.bg-amber-400\/20{background-color:#fcbb0033}@supports (color:color-mix(in lab,red,red)){.bg-amber-400\/20{background-color:color-mix(in oklab,var(--color-amber-400) 20%,transparent)}}.bg-black\/5{background-color:#0000000d}@supports (color:color-mix(in lab,red,red)){.bg-black\/5{background-color:color-mix(in oklab,var(--color-black) 5%,transparent)}}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab,red,red)){.bg-black\/10{background-color:color-mix(in oklab,var(--color-black) 10%,transparent)}}.bg-black\/30{background-color:#0000004d}@supports (color:color-mix(in lab,red,red)){.bg-black\/30{background-color:color-mix(in oklab,var(--color-black) 30%,transparent)}}.bg-blue-500\/15{background-color:#3080ff26}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/15{background-color:color-mix(in oklab,var(--color-blue-500) 15%,transparent)}}.bg-cyan-400\/20{background-color:#00d2ef33}@supports (color:color-mix(in lab,red,red)){.bg-cyan-400\/20{background-color:color-mix(in oklab,var(--color-cyan-400) 20%,transparent)}}.bg-emerald-500\/15{background-color:#00bb7f26}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/15{background-color:color-mix(in oklab,var(--color-emerald-500) 15%,transparent)}}.bg-fuchsia-400\/15{background-color:#ec6cff26}@supports (color:color-mix(in lab,red,red)){.bg-fuchsia-400\/15{background-color:color-mix(in oklab,var(--color-fuchsia-400) 15%,transparent)}}.bg-green-500\/15{background-color:#00c75826}@supports (color:color-mix(in lab,red,red)){.bg-green-500\/15{background-color:color-mix(in oklab,var(--color-green-500) 15%,transparent)}}.bg-indigo-500\/15{background-color:#625fff26}@supports (color:color-mix(in lab,red,red)){.bg-indigo-500\/15{background-color:color-mix(in oklab,var(--color-indigo-500) 15%,transparent)}}.bg-lime-400\/20{background-color:#9de50033}@supports (color:color-mix(in lab,red,red)){.bg-lime-400\/20{background-color:color-mix(in oklab,var(--color-lime-400) 20%,transparent)}}.bg-orange-500\/15{background-color:#fe6e0026}@supports (color:color-mix(in lab,red,red)){.bg-orange-500\/15{background-color:color-mix(in oklab,var(--color-orange-500) 15%,transparent)}}.bg-ouro-deep{background-color:var(--color-ouro-deep)}.bg-ouro-fang{background-color:var(--color-ouro-fang)}.bg-ouro-fang\/5{background-color:#d35f470d}@supports (color:color-mix(in lab,red,red)){.bg-ouro-fang\/5{background-color:color-mix(in oklab,var(--color-ouro-fang) 5%,transparent)}}.bg-ouro-fang\/8{background-color:#d35f4714}@supports (color:color-mix(in lab,red,red)){.bg-ouro-fang\/8{background-color:color-mix(in oklab,var(--color-ouro-fang) 8%,transparent)}}.bg-ouro-fang\/10{background-color:#d35f471a}@supports (color:color-mix(in lab,red,red)){.bg-ouro-fang\/10{background-color:color-mix(in oklab,var(--color-ouro-fang) 10%,transparent)}}.bg-ouro-glow{background-color:var(--color-ouro-glow)}.bg-ouro-glow\/5{background-color:#74e08f0d}@supports (color:color-mix(in lab,red,red)){.bg-ouro-glow\/5{background-color:color-mix(in oklab,var(--color-ouro-glow) 5%,transparent)}}.bg-ouro-glow\/6{background-color:#74e08f0f}@supports (color:color-mix(in lab,red,red)){.bg-ouro-glow\/6{background-color:color-mix(in oklab,var(--color-ouro-glow) 6%,transparent)}}.bg-ouro-glow\/8{background-color:#74e08f14}@supports (color:color-mix(in lab,red,red)){.bg-ouro-glow\/8{background-color:color-mix(in oklab,var(--color-ouro-glow) 8%,transparent)}}.bg-ouro-gold{background-color:var(--color-ouro-gold)}.bg-ouro-gold\/5{background-color:#d6b56f0d}@supports (color:color-mix(in lab,red,red)){.bg-ouro-gold\/5{background-color:color-mix(in oklab,var(--color-ouro-gold) 5%,transparent)}}.bg-ouro-gold\/8{background-color:#d6b56f14}@supports (color:color-mix(in lab,red,red)){.bg-ouro-gold\/8{background-color:color-mix(in oklab,var(--color-ouro-gold) 8%,transparent)}}.bg-ouro-gold\/10{background-color:#d6b56f1a}@supports (color:color-mix(in lab,red,red)){.bg-ouro-gold\/10{background-color:color-mix(in oklab,var(--color-ouro-gold) 10%,transparent)}}.bg-ouro-moss\/8{background-color:#18332514}@supports (color:color-mix(in lab,red,red)){.bg-ouro-moss\/8{background-color:color-mix(in oklab,var(--color-ouro-moss) 8%,transparent)}}.bg-ouro-moss\/10{background-color:#1833251a}@supports (color:color-mix(in lab,red,red)){.bg-ouro-moss\/10{background-color:color-mix(in oklab,var(--color-ouro-moss) 10%,transparent)}}.bg-ouro-moss\/15{background-color:#18332526}@supports (color:color-mix(in lab,red,red)){.bg-ouro-moss\/15{background-color:color-mix(in oklab,var(--color-ouro-moss) 15%,transparent)}}.bg-ouro-moss\/20{background-color:#18332533}@supports (color:color-mix(in lab,red,red)){.bg-ouro-moss\/20{background-color:color-mix(in oklab,var(--color-ouro-moss) 20%,transparent)}}.bg-ouro-moss\/25{background-color:#18332540}@supports (color:color-mix(in lab,red,red)){.bg-ouro-moss\/25{background-color:color-mix(in oklab,var(--color-ouro-moss) 25%,transparent)}}.bg-ouro-scale\/10{background-color:#2f8f4e1a}@supports (color:color-mix(in lab,red,red)){.bg-ouro-scale\/10{background-color:color-mix(in oklab,var(--color-ouro-scale) 10%,transparent)}}.bg-ouro-scale\/12{background-color:#2f8f4e1f}@supports (color:color-mix(in lab,red,red)){.bg-ouro-scale\/12{background-color:color-mix(in oklab,var(--color-ouro-scale) 12%,transparent)}}.bg-ouro-scale\/15{background-color:#2f8f4e26}@supports (color:color-mix(in lab,red,red)){.bg-ouro-scale\/15{background-color:color-mix(in oklab,var(--color-ouro-scale) 15%,transparent)}}.bg-ouro-void{background-color:var(--color-ouro-void)}.bg-ouro-void\/30{background-color:#07110d4d}@supports (color:color-mix(in lab,red,red)){.bg-ouro-void\/30{background-color:color-mix(in oklab,var(--color-ouro-void) 30%,transparent)}}.bg-ouro-void\/40{background-color:#07110d66}@supports (color:color-mix(in lab,red,red)){.bg-ouro-void\/40{background-color:color-mix(in oklab,var(--color-ouro-void) 40%,transparent)}}.bg-ouro-void\/45{background-color:#07110d73}@supports (color:color-mix(in lab,red,red)){.bg-ouro-void\/45{background-color:color-mix(in oklab,var(--color-ouro-void) 45%,transparent)}}.bg-ouro-void\/50{background-color:#07110d80}@supports (color:color-mix(in lab,red,red)){.bg-ouro-void\/50{background-color:color-mix(in oklab,var(--color-ouro-void) 50%,transparent)}}.bg-ouro-void\/60{background-color:#07110d99}@supports (color:color-mix(in lab,red,red)){.bg-ouro-void\/60{background-color:color-mix(in oklab,var(--color-ouro-void) 60%,transparent)}}.bg-pink-400\/15{background-color:#fb64b626}@supports (color:color-mix(in lab,red,red)){.bg-pink-400\/15{background-color:color-mix(in oklab,var(--color-pink-400) 15%,transparent)}}.bg-purple-500\/15{background-color:#ac4bff26}@supports (color:color-mix(in lab,red,red)){.bg-purple-500\/15{background-color:color-mix(in oklab,var(--color-purple-500) 15%,transparent)}}.bg-red-500\/15{background-color:#fb2c3626}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/15{background-color:color-mix(in oklab,var(--color-red-500) 15%,transparent)}}.bg-rose-400\/15{background-color:#ff667f26}@supports (color:color-mix(in lab,red,red)){.bg-rose-400\/15{background-color:color-mix(in oklab,var(--color-rose-400) 15%,transparent)}}.bg-sky-500\/15{background-color:#00a5ef26}@supports (color:color-mix(in lab,red,red)){.bg-sky-500\/15{background-color:color-mix(in oklab,var(--color-sky-500) 15%,transparent)}}.bg-teal-500\/15{background-color:#00baa726}@supports (color:color-mix(in lab,red,red)){.bg-teal-500\/15{background-color:color-mix(in oklab,var(--color-teal-500) 15%,transparent)}}.bg-transparent{background-color:#0000}.bg-violet-500\/15{background-color:#8d54ff26}@supports (color:color-mix(in lab,red,red)){.bg-violet-500\/15{background-color:color-mix(in oklab,var(--color-violet-500) 15%,transparent)}}.bg-white{background-color:var(--color-white)}.bg-yellow-400\/20{background-color:#fac80033}@supports (color:color-mix(in lab,red,red)){.bg-yellow-400\/20{background-color:color-mix(in oklab,var(--color-yellow-400) 20%,transparent)}}.bg-zinc-600\/10{background-color:#52525c1a}@supports (color:color-mix(in lab,red,red)){.bg-zinc-600\/10{background-color:color-mix(in oklab,var(--color-zinc-600) 10%,transparent)}}.bg-zinc-950{background-color:var(--color-zinc-950)}.bg-zinc-950\/2\.5{background-color:#09090b06}@supports (color:color-mix(in lab,red,red)){.bg-zinc-950\/2\.5{background-color:color-mix(in oklab,var(--color-zinc-950) 2.5%,transparent)}}.bg-zinc-950\/10{background-color:#09090b1a}@supports (color:color-mix(in lab,red,red)){.bg-zinc-950\/10{background-color:color-mix(in oklab,var(--color-zinc-950) 10%,transparent)}}.fill-current{fill:currentColor}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-\[5\%\]{padding:5%}.px-0\.5{padding-inline:calc(var(--spacing) * .5)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-\[calc\(--spacing\(3\.5\)-1px\)\]{padding-inline:calc(calc(var(--spacing) * 3.5) - 1px)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-24{padding-block:calc(var(--spacing) * 24)}.py-\[calc\(--spacing\(2\.5\)-1px\)\]{padding-block:calc(calc(var(--spacing) * 2.5) - 1px)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-1\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-body{font-family:var(--font-body)}.font-display{font-family:var(--font-display)}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-2xl\/8{font-size:var(--text-2xl);line-height:calc(var(--spacing) * 8)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-base\/6{font-size:var(--text-base);line-height:calc(var(--spacing) * 6)}.text-base\/7{font-size:var(--text-base);line-height:calc(var(--spacing) * 7)}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-sm\/5{font-size:var(--text-sm);line-height:calc(var(--spacing) * 5)}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-xs\/6{font-size:var(--text-xs);line-height:calc(var(--spacing) * 6)}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[48px\]{font-size:48px}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-\[0\.15em\]{--tw-tracking:.15em;letter-spacing:.15em}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#1d1d1f\]{color:#1d1d1f}.text-\[\#1e5840\]{color:#1e5840}.text-\[\#1f2720\]{color:#1f2720}.text-\[\#2d3a30\]{color:#2d3a30}.text-\[\#3f4b42\]{color:#3f4b42}.text-\[\#5b5fc7\]{color:#5b5fc7}.text-\[\#6b7280\]{color:#6b7280}.text-\[\#6ee7b7\]{color:#6ee7b7}.text-\[\#6f5200\]{color:#6f5200}.text-\[\#8a2f1f\]{color:#8a2f1f}.text-\[\#8a4a18\]{color:#8a4a18}.text-\[\#22c55e\]{color:#22c55e}.text-\[\#60a5fa\]{color:#60a5fa}.text-\[\#86efac\]{color:#86efac}.text-\[\#263f95\]{color:#263f95}.text-\[\#17613a\]{color:#17613a}.text-\[\#26352a\]{color:#26352a}.text-\[\#59645c\]{color:#59645c}.text-\[\#172018\]{color:#172018}.text-\[\#242424\]{color:#242424}.text-\[\#536157\]{color:#536157}.text-\[\#667067\]{color:#667067}.text-\[\#687062\]{color:#687062}.text-\[\#bbf7d0\]{color:#bbf7d0}.text-\[\#d1fae5\]{color:#d1fae5}.text-\[\#dbeafe\]{color:#dbeafe}.text-\[\#facc15\]{color:#facc15}.text-amber-700{color:var(--color-amber-700)}.text-amber-950{color:var(--color-amber-950)}.text-blue-700{color:var(--color-blue-700)}.text-cyan-700{color:var(--color-cyan-700)}.text-cyan-950{color:var(--color-cyan-950)}.text-emerald-700{color:var(--color-emerald-700)}.text-fuchsia-700{color:var(--color-fuchsia-700)}.text-green-700{color:var(--color-green-700)}.text-indigo-700{color:var(--color-indigo-700)}.text-lime-700{color:var(--color-lime-700)}.text-lime-950{color:var(--color-lime-950)}.text-orange-700{color:var(--color-orange-700)}.text-ouro-bone{color:var(--color-ouro-bone)}.text-ouro-fang{color:var(--color-ouro-fang)}.text-ouro-glow{color:var(--color-ouro-glow)}.text-ouro-glow\/50{color:#74e08f80}@supports (color:color-mix(in lab,red,red)){.text-ouro-glow\/50{color:color-mix(in oklab,var(--color-ouro-glow) 50%,transparent)}}.text-ouro-glow\/60{color:#74e08f99}@supports (color:color-mix(in lab,red,red)){.text-ouro-glow\/60{color:color-mix(in oklab,var(--color-ouro-glow) 60%,transparent)}}.text-ouro-glow\/70{color:#74e08fb3}@supports (color:color-mix(in lab,red,red)){.text-ouro-glow\/70{color:color-mix(in oklab,var(--color-ouro-glow) 70%,transparent)}}.text-ouro-gold{color:var(--color-ouro-gold)}.text-ouro-gold\/50{color:#d6b56f80}@supports (color:color-mix(in lab,red,red)){.text-ouro-gold\/50{color:color-mix(in oklab,var(--color-ouro-gold) 50%,transparent)}}.text-ouro-gold\/70{color:#d6b56fb3}@supports (color:color-mix(in lab,red,red)){.text-ouro-gold\/70{color:color-mix(in oklab,var(--color-ouro-gold) 70%,transparent)}}.text-ouro-gold\/80{color:#d6b56fcc}@supports (color:color-mix(in lab,red,red)){.text-ouro-gold\/80{color:color-mix(in oklab,var(--color-ouro-gold) 80%,transparent)}}.text-ouro-mist{color:var(--color-ouro-mist)}.text-ouro-mist\/60{color:#a5b8a899}@supports (color:color-mix(in lab,red,red)){.text-ouro-mist\/60{color:color-mix(in oklab,var(--color-ouro-mist) 60%,transparent)}}.text-ouro-moss{color:var(--color-ouro-moss)}.text-ouro-shadow{color:var(--color-ouro-shadow)}.text-ouro-shadow\/30{color:#7083734d}@supports (color:color-mix(in lab,red,red)){.text-ouro-shadow\/30{color:color-mix(in oklab,var(--color-ouro-shadow) 30%,transparent)}}.text-ouro-shadow\/40{color:#70837366}@supports (color:color-mix(in lab,red,red)){.text-ouro-shadow\/40{color:color-mix(in oklab,var(--color-ouro-shadow) 40%,transparent)}}.text-ouro-shadow\/50{color:#70837380}@supports (color:color-mix(in lab,red,red)){.text-ouro-shadow\/50{color:color-mix(in oklab,var(--color-ouro-shadow) 50%,transparent)}}.text-ouro-shadow\/60{color:#70837399}@supports (color:color-mix(in lab,red,red)){.text-ouro-shadow\/60{color:color-mix(in oklab,var(--color-ouro-shadow) 60%,transparent)}}.text-ouro-shadow\/70{color:#708373b3}@supports (color:color-mix(in lab,red,red)){.text-ouro-shadow\/70{color:color-mix(in oklab,var(--color-ouro-shadow) 70%,transparent)}}.text-pink-700{color:var(--color-pink-700)}.text-purple-700{color:var(--color-purple-700)}.text-red-700{color:var(--color-red-700)}.text-rose-700{color:var(--color-rose-700)}.text-sky-700{color:var(--color-sky-700)}.text-teal-700{color:var(--color-teal-700)}.text-violet-700{color:var(--color-violet-700)}.text-white{color:var(--color-white)}.text-white\/70{color:#ffffffb3}@supports (color:color-mix(in lab,red,red)){.text-white\/70{color:color-mix(in oklab,var(--color-white) 70%,transparent)}}.text-yellow-700{color:var(--color-yellow-700)}.text-yellow-950{color:var(--color-yellow-950)}.text-zinc-500{color:var(--color-zinc-500)}.text-zinc-700{color:var(--color-zinc-700)}.text-zinc-950{color:var(--color-zinc-950)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.decoration-ouro-glow\/30{text-decoration-color:#74e08f4d}@supports (color:color-mix(in lab,red,red)){.decoration-ouro-glow\/30{-webkit-text-decoration-color:color-mix(in oklab,var(--color-ouro-glow) 30%,transparent);text-decoration-color:color-mix(in oklab,var(--color-ouro-glow) 30%,transparent)}}.decoration-zinc-950\/50{text-decoration-color:#09090b80}@supports (color:color-mix(in lab,red,red)){.decoration-zinc-950\/50{-webkit-text-decoration-color:color-mix(in oklab,var(--color-zinc-950) 50%,transparent);text-decoration-color:color-mix(in oklab,var(--color-zinc-950) 50%,transparent)}}.underline-offset-2{text-underline-offset:2px}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_16px_theme\(--color-ouro-glow\)\]{--tw-shadow:0 0 16px var(--tw-shadow-color,#74e08f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_20px_theme\(--color-ouro-glow\)\]{--tw-shadow:0 0 20px var(--tw-shadow-color,#74e08f);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-\[\#1f3a2c\]{--tw-ring-color:#1f3a2c}.ring-\[\#9fc7b5\]{--tw-ring-color:#9fc7b5}.ring-\[\#82caa1\]{--tw-ring-color:#82caa1}.ring-\[\#a7b5f5\]{--tw-ring-color:#a7b5f5}.ring-\[\#c4b5fd\]{--tw-ring-color:#c4b5fd}.ring-\[\#d8d1ff\]{--tw-ring-color:#d8d1ff}.ring-\[\#e5e5e5\]{--tw-ring-color:#e5e5e5}.ring-\[\#e7c85c\]{--tw-ring-color:#e7c85c}.ring-\[\#ef9a84\]{--tw-ring-color:#ef9a84}.ring-black\/10{--tw-ring-color:#0000001a}@supports (color:color-mix(in lab,red,red)){.ring-black\/10{--tw-ring-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.ring-current\/10{--tw-ring-color:currentcolor}@supports (color:color-mix(in lab,red,red)){.ring-current\/10{--tw-ring-color:color-mix(in oklab, currentcolor 10%, transparent)}}.ring-ouro-fang\/10{--tw-ring-color:#d35f471a}@supports (color:color-mix(in lab,red,red)){.ring-ouro-fang\/10{--tw-ring-color:color-mix(in oklab, var(--color-ouro-fang) 10%, transparent)}}.ring-ouro-fang\/15{--tw-ring-color:#d35f4726}@supports (color:color-mix(in lab,red,red)){.ring-ouro-fang\/15{--tw-ring-color:color-mix(in oklab, var(--color-ouro-fang) 15%, transparent)}}.ring-ouro-fang\/20{--tw-ring-color:#d35f4733}@supports (color:color-mix(in lab,red,red)){.ring-ouro-fang\/20{--tw-ring-color:color-mix(in oklab, var(--color-ouro-fang) 20%, transparent)}}.ring-ouro-glow\/8{--tw-ring-color:#74e08f14}@supports (color:color-mix(in lab,red,red)){.ring-ouro-glow\/8{--tw-ring-color:color-mix(in oklab, var(--color-ouro-glow) 8%, transparent)}}.ring-ouro-glow\/10{--tw-ring-color:#74e08f1a}@supports (color:color-mix(in lab,red,red)){.ring-ouro-glow\/10{--tw-ring-color:color-mix(in oklab, var(--color-ouro-glow) 10%, transparent)}}.ring-ouro-glow\/12{--tw-ring-color:#74e08f1f}@supports (color:color-mix(in lab,red,red)){.ring-ouro-glow\/12{--tw-ring-color:color-mix(in oklab, var(--color-ouro-glow) 12%, transparent)}}.ring-ouro-glow\/15{--tw-ring-color:#74e08f26}@supports (color:color-mix(in lab,red,red)){.ring-ouro-glow\/15{--tw-ring-color:color-mix(in oklab, var(--color-ouro-glow) 15%, transparent)}}.ring-ouro-glow\/20{--tw-ring-color:#74e08f33}@supports (color:color-mix(in lab,red,red)){.ring-ouro-glow\/20{--tw-ring-color:color-mix(in oklab, var(--color-ouro-glow) 20%, transparent)}}.ring-ouro-gold\/10{--tw-ring-color:#d6b56f1a}@supports (color:color-mix(in lab,red,red)){.ring-ouro-gold\/10{--tw-ring-color:color-mix(in oklab, var(--color-ouro-gold) 10%, transparent)}}.ring-ouro-gold\/15{--tw-ring-color:#d6b56f26}@supports (color:color-mix(in lab,red,red)){.ring-ouro-gold\/15{--tw-ring-color:color-mix(in oklab, var(--color-ouro-gold) 15%, transparent)}}.ring-ouro-gold\/20{--tw-ring-color:#d6b56f33}@supports (color:color-mix(in lab,red,red)){.ring-ouro-gold\/20{--tw-ring-color:color-mix(in oklab, var(--color-ouro-gold) 20%, transparent)}}.ring-ouro-moss\/10{--tw-ring-color:#1833251a}@supports (color:color-mix(in lab,red,red)){.ring-ouro-moss\/10{--tw-ring-color:color-mix(in oklab, var(--color-ouro-moss) 10%, transparent)}}.ring-ouro-moss\/12{--tw-ring-color:#1833251f}@supports (color:color-mix(in lab,red,red)){.ring-ouro-moss\/12{--tw-ring-color:color-mix(in oklab, var(--color-ouro-moss) 12%, transparent)}}.ring-ouro-moss\/15{--tw-ring-color:#18332526}@supports (color:color-mix(in lab,red,red)){.ring-ouro-moss\/15{--tw-ring-color:color-mix(in oklab, var(--color-ouro-moss) 15%, transparent)}}.ring-ouro-moss\/20{--tw-ring-color:#18332533}@supports (color:color-mix(in lab,red,red)){.ring-ouro-moss\/20{--tw-ring-color:color-mix(in oklab, var(--color-ouro-moss) 20%, transparent)}}.ring-ouro-moss\/25{--tw-ring-color:#18332540}@supports (color:color-mix(in lab,red,red)){.ring-ouro-moss\/25{--tw-ring-color:color-mix(in oklab, var(--color-ouro-moss) 25%, transparent)}}.ring-ouro-moss\/40{--tw-ring-color:#18332566}@supports (color:color-mix(in lab,red,red)){.ring-ouro-moss\/40{--tw-ring-color:color-mix(in oklab, var(--color-ouro-moss) 40%, transparent)}}.ring-ouro-scale\/15{--tw-ring-color:#2f8f4e26}@supports (color:color-mix(in lab,red,red)){.ring-ouro-scale\/15{--tw-ring-color:color-mix(in oklab, var(--color-ouro-scale) 15%, transparent)}}.ring-ouro-scale\/20{--tw-ring-color:#2f8f4e33}@supports (color:color-mix(in lab,red,red)){.ring-ouro-scale\/20{--tw-ring-color:color-mix(in oklab, var(--color-ouro-scale) 20%, transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.-outline-offset-1{outline-offset:-1px}.outline-black\/10{outline-color:#0000001a}@supports (color:color-mix(in lab,red,red)){.outline-black\/10{outline-color:color-mix(in oklab,var(--color-black) 10%,transparent)}}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.select-none{-webkit-user-select:none;user-select:none}.select-text{-webkit-user-select:text;user-select:text}.\[--avatar-radius\:20\%\]{--avatar-radius:20%}.\[--btn-bg\:var\(--color-amber-400\)\]{--btn-bg:var(--color-amber-400)}.\[--btn-bg\:var\(--color-blue-600\)\]{--btn-bg:var(--color-blue-600)}.\[--btn-bg\:var\(--color-cyan-300\)\]{--btn-bg:var(--color-cyan-300)}.\[--btn-bg\:var\(--color-emerald-600\)\]{--btn-bg:var(--color-emerald-600)}.\[--btn-bg\:var\(--color-fuchsia-500\)\]{--btn-bg:var(--color-fuchsia-500)}.\[--btn-bg\:var\(--color-green-600\)\]{--btn-bg:var(--color-green-600)}.\[--btn-bg\:var\(--color-indigo-500\)\]{--btn-bg:var(--color-indigo-500)}.\[--btn-bg\:var\(--color-lime-300\)\]{--btn-bg:var(--color-lime-300)}.\[--btn-bg\:var\(--color-orange-500\)\]{--btn-bg:var(--color-orange-500)}.\[--btn-bg\:var\(--color-pink-500\)\]{--btn-bg:var(--color-pink-500)}.\[--btn-bg\:var\(--color-purple-500\)\]{--btn-bg:var(--color-purple-500)}.\[--btn-bg\:var\(--color-red-600\)\]{--btn-bg:var(--color-red-600)}.\[--btn-bg\:var\(--color-rose-500\)\]{--btn-bg:var(--color-rose-500)}.\[--btn-bg\:var\(--color-sky-500\)\]{--btn-bg:var(--color-sky-500)}.\[--btn-bg\:var\(--color-teal-600\)\]{--btn-bg:var(--color-teal-600)}.\[--btn-bg\:var\(--color-violet-500\)\]{--btn-bg:var(--color-violet-500)}.\[--btn-bg\:var\(--color-yellow-300\)\]{--btn-bg:var(--color-yellow-300)}.\[--btn-bg\:var\(--color-zinc-600\)\]{--btn-bg:var(--color-zinc-600)}.\[--btn-bg\:var\(--color-zinc-900\)\]{--btn-bg:var(--color-zinc-900)}.\[--btn-bg\:white\]{--btn-bg:white}.\[--btn-border\:var\(--color-amber-500\)\]\/80{--btn-border:#f99c00cc}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-amber-500\)\]\/80{--btn-border:color-mix(in oklab, var(--color-amber-500) 80%, transparent)}}.\[--btn-border\:var\(--color-blue-700\)\]\/90{--btn-border:#1447e6e6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-blue-700\)\]\/90{--btn-border:color-mix(in oklab, var(--color-blue-700) 90%, transparent)}}.\[--btn-border\:var\(--color-cyan-400\)\]\/80{--btn-border:#00d2efcc}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-cyan-400\)\]\/80{--btn-border:color-mix(in oklab, var(--color-cyan-400) 80%, transparent)}}.\[--btn-border\:var\(--color-emerald-700\)\]\/90{--btn-border:#007956e6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-emerald-700\)\]\/90{--btn-border:color-mix(in oklab, var(--color-emerald-700) 90%, transparent)}}.\[--btn-border\:var\(--color-fuchsia-600\)\]\/90{--btn-border:#c600dbe6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-fuchsia-600\)\]\/90{--btn-border:color-mix(in oklab, var(--color-fuchsia-600) 90%, transparent)}}.\[--btn-border\:var\(--color-green-700\)\]\/90{--btn-border:#008138e6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-green-700\)\]\/90{--btn-border:color-mix(in oklab, var(--color-green-700) 90%, transparent)}}.\[--btn-border\:var\(--color-indigo-600\)\]\/90{--btn-border:#4f39f6e6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-indigo-600\)\]\/90{--btn-border:color-mix(in oklab, var(--color-indigo-600) 90%, transparent)}}.\[--btn-border\:var\(--color-lime-400\)\]\/80{--btn-border:#9de500cc}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-lime-400\)\]\/80{--btn-border:color-mix(in oklab, var(--color-lime-400) 80%, transparent)}}.\[--btn-border\:var\(--color-orange-600\)\]\/90{--btn-border:#f05100e6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-orange-600\)\]\/90{--btn-border:color-mix(in oklab, var(--color-orange-600) 90%, transparent)}}.\[--btn-border\:var\(--color-pink-600\)\]\/90{--btn-border:#e30076e6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-pink-600\)\]\/90{--btn-border:color-mix(in oklab, var(--color-pink-600) 90%, transparent)}}.\[--btn-border\:var\(--color-purple-600\)\]\/90{--btn-border:#9810fae6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-purple-600\)\]\/90{--btn-border:color-mix(in oklab, var(--color-purple-600) 90%, transparent)}}.\[--btn-border\:var\(--color-red-700\)\]\/90{--btn-border:#bf000fe6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-red-700\)\]\/90{--btn-border:color-mix(in oklab, var(--color-red-700) 90%, transparent)}}.\[--btn-border\:var\(--color-rose-600\)\]\/90{--btn-border:#e70044e6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-rose-600\)\]\/90{--btn-border:color-mix(in oklab, var(--color-rose-600) 90%, transparent)}}.\[--btn-border\:var\(--color-sky-600\)\]\/80{--btn-border:#0084cccc}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-sky-600\)\]\/80{--btn-border:color-mix(in oklab, var(--color-sky-600) 80%, transparent)}}.\[--btn-border\:var\(--color-teal-700\)\]\/90{--btn-border:#00776ee6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-teal-700\)\]\/90{--btn-border:color-mix(in oklab, var(--color-teal-700) 90%, transparent)}}.\[--btn-border\:var\(--color-violet-600\)\]\/90{--btn-border:#7f22fee6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-violet-600\)\]\/90{--btn-border:color-mix(in oklab, var(--color-violet-600) 90%, transparent)}}.\[--btn-border\:var\(--color-yellow-400\)\]\/80{--btn-border:#fac800cc}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-yellow-400\)\]\/80{--btn-border:color-mix(in oklab, var(--color-yellow-400) 80%, transparent)}}.\[--btn-border\:var\(--color-zinc-700\)\]\/90{--btn-border:#3f3f46e6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-zinc-700\)\]\/90{--btn-border:color-mix(in oklab, var(--color-zinc-700) 90%, transparent)}}.\[--btn-border\:var\(--color-zinc-950\)\]\/10{--btn-border:#09090b1a}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-zinc-950\)\]\/10{--btn-border:color-mix(in oklab, var(--color-zinc-950) 10%, transparent)}}.\[--btn-border\:var\(--color-zinc-950\)\]\/90{--btn-border:#09090be6}@supports (color:color-mix(in lab,red,red)){.\[--btn-border\:var\(--color-zinc-950\)\]\/90{--btn-border:color-mix(in oklab, var(--color-zinc-950) 90%, transparent)}}.\[--btn-hover-overlay\:var\(--color-white\)\]\/10{--btn-hover-overlay:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.\[--btn-hover-overlay\:var\(--color-white\)\]\/10{--btn-hover-overlay:color-mix(in oklab, var(--color-white) 10%, transparent)}}.\[--btn-hover-overlay\:var\(--color-white\)\]\/25{--btn-hover-overlay:#ffffff40}@supports (color:color-mix(in lab,red,red)){.\[--btn-hover-overlay\:var\(--color-white\)\]\/25{--btn-hover-overlay:color-mix(in oklab, var(--color-white) 25%, transparent)}}.\[--btn-hover-overlay\:var\(--color-zinc-950\)\]\/2\.5{--btn-hover-overlay:#09090b06}@supports (color:color-mix(in lab,red,red)){.\[--btn-hover-overlay\:var\(--color-zinc-950\)\]\/2\.5{--btn-hover-overlay:color-mix(in oklab, var(--color-zinc-950) 2.5%, transparent)}}.\[--btn-icon\:var\(--color-amber-600\)\]{--btn-icon:var(--color-amber-600)}.\[--btn-icon\:var\(--color-blue-400\)\]{--btn-icon:var(--color-blue-400)}.\[--btn-icon\:var\(--color-cyan-500\)\]{--btn-icon:var(--color-cyan-500)}.\[--btn-icon\:var\(--color-fuchsia-300\)\]{--btn-icon:var(--color-fuchsia-300)}.\[--btn-icon\:var\(--color-indigo-300\)\]{--btn-icon:var(--color-indigo-300)}.\[--btn-icon\:var\(--color-lime-600\)\]{--btn-icon:var(--color-lime-600)}.\[--btn-icon\:var\(--color-orange-300\)\]{--btn-icon:var(--color-orange-300)}.\[--btn-icon\:var\(--color-pink-300\)\]{--btn-icon:var(--color-pink-300)}.\[--btn-icon\:var\(--color-purple-300\)\]{--btn-icon:var(--color-purple-300)}.\[--btn-icon\:var\(--color-red-300\)\]{--btn-icon:var(--color-red-300)}.\[--btn-icon\:var\(--color-rose-300\)\]{--btn-icon:var(--color-rose-300)}.\[--btn-icon\:var\(--color-violet-300\)\]{--btn-icon:var(--color-violet-300)}.\[--btn-icon\:var\(--color-white\)\]\/60{--btn-icon:#fff9}@supports (color:color-mix(in lab,red,red)){.\[--btn-icon\:var\(--color-white\)\]\/60{--btn-icon:color-mix(in oklab, var(--color-white) 60%, transparent)}}.\[--btn-icon\:var\(--color-yellow-600\)\]{--btn-icon:var(--color-yellow-600)}.\[--btn-icon\:var\(--color-zinc-400\)\]{--btn-icon:var(--color-zinc-400)}.\[--btn-icon\:var\(--color-zinc-500\)\]{--btn-icon:var(--color-zinc-500)}:is(.\*\:col-start-1>*){grid-column-start:1}:is(.\*\:row-start-1>*){grid-row-start:1}:is(.\*\:rounded-\(--avatar-radius\)>*){border-radius:var(--avatar-radius)}:is(.\*\:rounded-full>*){border-radius:3.40282e38px}.group-data-hover\:bg-amber-400\/30:is(:where(.group)[data-hover] *){background-color:#fcbb004d}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-amber-400\/30:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-amber-400) 30%,transparent)}}.group-data-hover\:bg-blue-500\/25:is(:where(.group)[data-hover] *){background-color:#3080ff40}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-blue-500\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-blue-500) 25%,transparent)}}.group-data-hover\:bg-cyan-400\/30:is(:where(.group)[data-hover] *){background-color:#00d2ef4d}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-cyan-400\/30:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-cyan-400) 30%,transparent)}}.group-data-hover\:bg-emerald-500\/25:is(:where(.group)[data-hover] *){background-color:#00bb7f40}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-emerald-500\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-emerald-500) 25%,transparent)}}.group-data-hover\:bg-fuchsia-400\/25:is(:where(.group)[data-hover] *){background-color:#ec6cff40}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-fuchsia-400\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-fuchsia-400) 25%,transparent)}}.group-data-hover\:bg-green-500\/25:is(:where(.group)[data-hover] *){background-color:#00c75840}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-green-500\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-green-500) 25%,transparent)}}.group-data-hover\:bg-indigo-500\/25:is(:where(.group)[data-hover] *){background-color:#625fff40}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-indigo-500\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-indigo-500) 25%,transparent)}}.group-data-hover\:bg-lime-400\/30:is(:where(.group)[data-hover] *){background-color:#9de5004d}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-lime-400\/30:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-lime-400) 30%,transparent)}}.group-data-hover\:bg-orange-500\/25:is(:where(.group)[data-hover] *){background-color:#fe6e0040}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-orange-500\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-orange-500) 25%,transparent)}}.group-data-hover\:bg-pink-400\/25:is(:where(.group)[data-hover] *){background-color:#fb64b640}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-pink-400\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-pink-400) 25%,transparent)}}.group-data-hover\:bg-purple-500\/25:is(:where(.group)[data-hover] *){background-color:#ac4bff40}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-purple-500\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-purple-500) 25%,transparent)}}.group-data-hover\:bg-red-500\/25:is(:where(.group)[data-hover] *){background-color:#fb2c3640}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-red-500\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-red-500) 25%,transparent)}}.group-data-hover\:bg-rose-400\/25:is(:where(.group)[data-hover] *){background-color:#ff667f40}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-rose-400\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-rose-400) 25%,transparent)}}.group-data-hover\:bg-sky-500\/25:is(:where(.group)[data-hover] *){background-color:#00a5ef40}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-sky-500\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-sky-500) 25%,transparent)}}.group-data-hover\:bg-teal-500\/25:is(:where(.group)[data-hover] *){background-color:#00baa740}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-teal-500\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-teal-500) 25%,transparent)}}.group-data-hover\:bg-violet-500\/25:is(:where(.group)[data-hover] *){background-color:#8d54ff40}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-violet-500\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-violet-500) 25%,transparent)}}.group-data-hover\:bg-yellow-400\/30:is(:where(.group)[data-hover] *){background-color:#fac8004d}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-yellow-400\/30:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-yellow-400) 30%,transparent)}}.group-data-hover\:bg-zinc-600\/20:is(:where(.group)[data-hover] *){background-color:#52525c33}@supports (color:color-mix(in lab,red,red)){.group-data-hover\:bg-zinc-600\/20:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-zinc-600) 20%,transparent)}}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-0:before{content:var(--tw-content);inset:calc(var(--spacing) * 0)}.before\:-z-10:before{content:var(--tw-content);z-index:-10}.before\:rounded-\[calc\(var\(--radius-lg\)-1px\)\]:before{content:var(--tw-content);border-radius:calc(var(--radius-lg) - 1px)}.before\:bg-\(--btn-bg\):before{content:var(--tw-content);background-color:var(--btn-bg)}.before\:shadow-sm:before{content:var(--tw-content);--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-0:after{content:var(--tw-content);inset:calc(var(--spacing) * 0)}.after\:-z-10:after{content:var(--tw-content);z-index:-10}.after\:rounded-\[calc\(var\(--radius-lg\)-1px\)\]:after{content:var(--tw-content);border-radius:calc(var(--radius-lg) - 1px)}.after\:shadow-\[inset_0_1px_--theme\(--color-white\/15\%\)\]:after{content:var(--tw-content);--tw-shadow:inset 0 1px var(--tw-shadow-color,#ffffff26)}@supports (color:color-mix(in lab,red,red)){.after\:shadow-\[inset_0_1px_--theme\(--color-white\/15\%\)\]:after{--tw-shadow:inset 0 1px var(--tw-shadow-color,color-mix(in oklab, var(--color-white) 15%, transparent))}}.after\:shadow-\[inset_0_1px_--theme\(--color-white\/15\%\)\]:after{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.first\:border-none:first-child{--tw-border-style:none;border-style:none}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media(hover:hover){.hover\:border-\[\#9fb8a7\]:hover{border-color:#9fb8a7}.hover\:bg-\[\#eef4ec\]:hover{background-color:#eef4ec}.hover\:bg-\[\#fbfdf8\]\/65:hover{background-color:#fbfdf8a6}.hover\:bg-ouro-moss\/8:hover{background-color:#18332514}@supports (color:color-mix(in lab,red,red)){.hover\:bg-ouro-moss\/8:hover{background-color:color-mix(in oklab,var(--color-ouro-moss) 8%,transparent)}}.hover\:bg-ouro-moss\/10:hover{background-color:#1833251a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-ouro-moss\/10:hover{background-color:color-mix(in oklab,var(--color-ouro-moss) 10%,transparent)}}.hover\:text-ouro-bone:hover{color:var(--color-ouro-bone)}.hover\:text-ouro-fang:hover{color:var(--color-ouro-fang)}.hover\:text-ouro-glow:hover{color:var(--color-ouro-glow)}.hover\:text-ouro-mist:hover{color:var(--color-ouro-mist)}.hover\:decoration-ouro-glow:hover{-webkit-text-decoration-color:var(--color-ouro-glow);text-decoration-color:var(--color-ouro-glow)}.hover\:opacity-90:hover{opacity:.9}.hover\:ring-\[\#0a84ff\]\/30:hover{--tw-ring-color:oklab(62.4254% -.0515206 -.199017/.3)}.hover\:ring-\[\#5b5fc7\]\/40:hover{--tw-ring-color:oklab(53.6756% .021962 -.157026/.4)}.hover\:ring-\[\#22c55e\]\/40:hover{--tw-ring-color:oklab(72.2746% -.165574 .0972219/.4)}.hover\:ring-ouro-fang\/25:hover{--tw-ring-color:#d35f4740}@supports (color:color-mix(in lab,red,red)){.hover\:ring-ouro-fang\/25:hover{--tw-ring-color:color-mix(in oklab, var(--color-ouro-fang) 25%, transparent)}}.hover\:ring-ouro-glow\/15:hover{--tw-ring-color:#74e08f26}@supports (color:color-mix(in lab,red,red)){.hover\:ring-ouro-glow\/15:hover{--tw-ring-color:color-mix(in oklab, var(--color-ouro-glow) 15%, transparent)}}.hover\:ring-ouro-glow\/20:hover{--tw-ring-color:#74e08f33}@supports (color:color-mix(in lab,red,red)){.hover\:ring-ouro-glow\/20:hover{--tw-ring-color:color-mix(in oklab, var(--color-ouro-glow) 20%, transparent)}}.hover\:ring-ouro-glow\/25:hover{--tw-ring-color:#74e08f40}@supports (color:color-mix(in lab,red,red)){.hover\:ring-ouro-glow\/25:hover{--tw-ring-color:color-mix(in oklab, var(--color-ouro-glow) 25%, transparent)}}.hover\:ring-ouro-glow\/30:hover{--tw-ring-color:#74e08f4d}@supports (color:color-mix(in lab,red,red)){.hover\:ring-ouro-glow\/30:hover{--tw-ring-color:color-mix(in oklab, var(--color-ouro-glow) 30%, transparent)}}.hover\:ring-ouro-moss\/20:hover{--tw-ring-color:#18332533}@supports (color:color-mix(in lab,red,red)){.hover\:ring-ouro-moss\/20:hover{--tw-ring-color:color-mix(in oklab, var(--color-ouro-moss) 20%, transparent)}}}.focus\:not-data-focus\:outline-hidden:focus:not([data-focus]){--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.focus\:not-data-focus\:outline-hidden:focus:not([data-focus]){outline-offset:2px;outline:2px solid #0000}}.data-active\:bg-zinc-950\/2\.5[data-active]{background-color:#09090b06}@supports (color:color-mix(in lab,red,red)){.data-active\:bg-zinc-950\/2\.5[data-active]{background-color:color-mix(in oklab,var(--color-zinc-950) 2.5%,transparent)}}.data-active\:bg-zinc-950\/5[data-active]{background-color:#09090b0d}@supports (color:color-mix(in lab,red,red)){.data-active\:bg-zinc-950\/5[data-active]{background-color:color-mix(in oklab,var(--color-zinc-950) 5%,transparent)}}.data-active\:\[--btn-border\:var\(--color-zinc-950\)\]\/15[data-active]{--btn-border:#09090b26}@supports (color:color-mix(in lab,red,red)){.data-active\:\[--btn-border\:var\(--color-zinc-950\)\]\/15[data-active]{--btn-border:color-mix(in oklab, var(--color-zinc-950) 15%, transparent)}}.data-active\:\[--btn-icon\:var\(--color-blue-300\)\][data-active]{--btn-icon:var(--color-blue-300)}.data-active\:\[--btn-icon\:var\(--color-fuchsia-200\)\][data-active]{--btn-icon:var(--color-fuchsia-200)}.data-active\:\[--btn-icon\:var\(--color-indigo-200\)\][data-active]{--btn-icon:var(--color-indigo-200)}.data-active\:\[--btn-icon\:var\(--color-lime-700\)\][data-active]{--btn-icon:var(--color-lime-700)}.data-active\:\[--btn-icon\:var\(--color-orange-200\)\][data-active]{--btn-icon:var(--color-orange-200)}.data-active\:\[--btn-icon\:var\(--color-pink-200\)\][data-active]{--btn-icon:var(--color-pink-200)}.data-active\:\[--btn-icon\:var\(--color-purple-200\)\][data-active]{--btn-icon:var(--color-purple-200)}.data-active\:\[--btn-icon\:var\(--color-red-200\)\][data-active]{--btn-icon:var(--color-red-200)}.data-active\:\[--btn-icon\:var\(--color-rose-200\)\][data-active]{--btn-icon:var(--color-rose-200)}.data-active\:\[--btn-icon\:var\(--color-violet-200\)\][data-active]{--btn-icon:var(--color-violet-200)}.data-active\:\[--btn-icon\:var\(--color-white\)\]\/80[data-active]{--btn-icon:#fffc}@supports (color:color-mix(in lab,red,red)){.data-active\:\[--btn-icon\:var\(--color-white\)\]\/80[data-active]{--btn-icon:color-mix(in oklab, var(--color-white) 80%, transparent)}}.data-active\:\[--btn-icon\:var\(--color-yellow-700\)\][data-active]{--btn-icon:var(--color-yellow-700)}.data-active\:\[--btn-icon\:var\(--color-zinc-300\)\][data-active]{--btn-icon:var(--color-zinc-300)}.data-active\:\[--btn-icon\:var\(--color-zinc-500\)\][data-active]{--btn-icon:var(--color-zinc-500)}.data-active\:\[--btn-icon\:var\(--color-zinc-700\)\][data-active]{--btn-icon:var(--color-zinc-700)}.data-active\:after\:bg-\(--btn-hover-overlay\)[data-active]:after{content:var(--tw-content);background-color:var(--btn-hover-overlay)}.data-closed\:-translate-x-full[data-closed]{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-closed\:opacity-0[data-closed]{opacity:0}.data-disabled\:opacity-50[data-disabled]{opacity:.5}.data-disabled\:before\:shadow-none[data-disabled]:before,.data-disabled\:after\:shadow-none[data-disabled]:after{content:var(--tw-content);--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-enter\:duration-300[data-enter]{--tw-duration:.3s;transition-duration:.3s}.data-enter\:ease-out[data-enter]{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.data-focus\:outline-2[data-focus]{outline-style:var(--tw-outline-style);outline-width:2px}.data-focus\:outline-offset-2[data-focus]{outline-offset:2px}.data-focus\:outline-blue-500[data-focus]{outline-color:var(--color-blue-500)}.data-hover\:bg-zinc-950\/2\.5[data-hover]{background-color:#09090b06}@supports (color:color-mix(in lab,red,red)){.data-hover\:bg-zinc-950\/2\.5[data-hover]{background-color:color-mix(in oklab,var(--color-zinc-950) 2.5%,transparent)}}.data-hover\:bg-zinc-950\/5[data-hover]{background-color:#09090b0d}@supports (color:color-mix(in lab,red,red)){.data-hover\:bg-zinc-950\/5[data-hover]{background-color:color-mix(in oklab,var(--color-zinc-950) 5%,transparent)}}.data-hover\:decoration-zinc-950[data-hover]{-webkit-text-decoration-color:var(--color-zinc-950);text-decoration-color:var(--color-zinc-950)}.data-hover\:\[--btn-border\:var\(--color-zinc-950\)\]\/15[data-hover]{--btn-border:#09090b26}@supports (color:color-mix(in lab,red,red)){.data-hover\:\[--btn-border\:var\(--color-zinc-950\)\]\/15[data-hover]{--btn-border:color-mix(in oklab, var(--color-zinc-950) 15%, transparent)}}.data-hover\:\[--btn-icon\:var\(--color-blue-300\)\][data-hover]{--btn-icon:var(--color-blue-300)}.data-hover\:\[--btn-icon\:var\(--color-fuchsia-200\)\][data-hover]{--btn-icon:var(--color-fuchsia-200)}.data-hover\:\[--btn-icon\:var\(--color-indigo-200\)\][data-hover]{--btn-icon:var(--color-indigo-200)}.data-hover\:\[--btn-icon\:var\(--color-lime-700\)\][data-hover]{--btn-icon:var(--color-lime-700)}.data-hover\:\[--btn-icon\:var\(--color-orange-200\)\][data-hover]{--btn-icon:var(--color-orange-200)}.data-hover\:\[--btn-icon\:var\(--color-pink-200\)\][data-hover]{--btn-icon:var(--color-pink-200)}.data-hover\:\[--btn-icon\:var\(--color-purple-200\)\][data-hover]{--btn-icon:var(--color-purple-200)}.data-hover\:\[--btn-icon\:var\(--color-red-200\)\][data-hover]{--btn-icon:var(--color-red-200)}.data-hover\:\[--btn-icon\:var\(--color-rose-200\)\][data-hover]{--btn-icon:var(--color-rose-200)}.data-hover\:\[--btn-icon\:var\(--color-violet-200\)\][data-hover]{--btn-icon:var(--color-violet-200)}.data-hover\:\[--btn-icon\:var\(--color-white\)\]\/80[data-hover]{--btn-icon:#fffc}@supports (color:color-mix(in lab,red,red)){.data-hover\:\[--btn-icon\:var\(--color-white\)\]\/80[data-hover]{--btn-icon:color-mix(in oklab, var(--color-white) 80%, transparent)}}.data-hover\:\[--btn-icon\:var\(--color-yellow-700\)\][data-hover]{--btn-icon:var(--color-yellow-700)}.data-hover\:\[--btn-icon\:var\(--color-zinc-300\)\][data-hover]{--btn-icon:var(--color-zinc-300)}.data-hover\:\[--btn-icon\:var\(--color-zinc-500\)\][data-hover]{--btn-icon:var(--color-zinc-500)}.data-hover\:\[--btn-icon\:var\(--color-zinc-700\)\][data-hover]{--btn-icon:var(--color-zinc-700)}.data-hover\:after\:bg-\(--btn-hover-overlay\)[data-hover]:after{content:var(--tw-content);background-color:var(--btn-hover-overlay)}.data-leave\:duration-200[data-leave]{--tw-duration:.2s;transition-duration:.2s}.data-leave\:ease-in[data-leave]{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}:is(.\*\:data-\[slot\=avatar\]\:-m-0\.5>*)[data-slot=avatar]{margin:calc(var(--spacing) * -.5)}:is(.\*\:data-\[slot\=avatar\]\:size-7>*)[data-slot=avatar]{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}:is(.\*\:data-\[slot\=avatar\]\:\[--avatar-radius\:var\(--radius-md\)\]>*)[data-slot=avatar]{--avatar-radius:var(--radius-md)}:is(.\*\:data-\[slot\=icon\]\:-mx-0\.5>*)[data-slot=icon]{margin-inline:calc(var(--spacing) * -.5)}:is(.\*\:data-\[slot\=icon\]\:my-0\.5>*)[data-slot=icon]{margin-block:calc(var(--spacing) * .5)}:is(.\*\:data-\[slot\=icon\]\:size-5>*)[data-slot=icon]{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}:is(.\*\:data-\[slot\=icon\]\:size-6>*)[data-slot=icon]{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}:is(.\*\:data-\[slot\=icon\]\:shrink-0>*)[data-slot=icon]{flex-shrink:0}:is(.\*\:data-\[slot\=icon\]\:self-center>*)[data-slot=icon]{align-self:center}:is(.\*\:data-\[slot\=icon\]\:fill-zinc-500>*)[data-slot=icon]{fill:var(--color-zinc-500)}:is(.\*\:data-\[slot\=icon\]\:text-\(--btn-icon\)>*)[data-slot=icon]{color:var(--btn-icon)}:is(.\*\:last\:data-\[slot\=icon\]\:ml-auto>*):last-child[data-slot=icon]{margin-left:auto}:is(.\*\:last\:data-\[slot\=icon\]\:size-5>*):last-child[data-slot=icon]{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}:is(.\*\:not-nth-2\:last\:data-\[slot\=icon\]\:ml-auto>*):not(:nth-child(2)):last-child[data-slot=icon]{margin-left:auto}:is(.\*\:not-nth-2\:last\:data-\[slot\=icon\]\:size-5>*):not(:nth-child(2)):last-child[data-slot=icon]{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}:is(.data-active\:\*\:data-\[slot\=icon\]\:fill-zinc-950[data-active]>*)[data-slot=icon],:is(.data-current\:\*\:data-\[slot\=icon\]\:fill-zinc-950[data-current]>*)[data-slot=icon],:is(.data-hover\:\*\:data-\[slot\=icon\]\:fill-zinc-950[data-hover]>*)[data-slot=icon]{fill:var(--color-zinc-950)}@media not all and (min-width:64rem){.max-lg\:hidden{display:none}.max-lg\:flex-col{flex-direction:column}}@media(min-width:40rem){.sm\:max-w-\[75\%\]{max-width:75%}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-\[min\(50\%\,--spacing\(80\)\)_auto\]{grid-template-columns:min(50%,calc(var(--spacing) * 80)) auto}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:justify-between{justify-content:space-between}.sm\:border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.sm\:border-zinc-950\/5{border-color:#09090b0d}@supports (color:color-mix(in lab,red,red)){.sm\:border-zinc-950\/5{border-color:color-mix(in oklab,var(--color-zinc-950) 5%,transparent)}}.sm\:p-5{padding:calc(var(--spacing) * 5)}.sm\:px-\[calc\(--spacing\(3\)-1px\)\]{padding-inline:calc(calc(var(--spacing) * 3) - 1px)}.sm\:py-2{padding-block:calc(var(--spacing) * 2)}.sm\:py-3{padding-block:calc(var(--spacing) * 3)}.sm\:py-\[calc\(--spacing\(1\.5\)-1px\)\]{padding-block:calc(calc(var(--spacing) * 1.5) - 1px)}.sm\:text-right{text-align:right}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.sm\:text-sm\/5{font-size:var(--text-sm);line-height:calc(var(--spacing) * 5)}.sm\:text-sm\/6{font-size:var(--text-sm);line-height:calc(var(--spacing) * 6)}.sm\:text-xl\/8{font-size:var(--text-xl);line-height:calc(var(--spacing) * 8)}.sm\:text-xs\/5{font-size:var(--text-xs);line-height:calc(var(--spacing) * 5)}.sm\:text-\[0\.8125rem\]{font-size:.8125rem}:is(.sm\:\*\:data-\[slot\=avatar\]\:size-6>*)[data-slot=avatar]{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}:is(.sm\:\*\:data-\[slot\=icon\]\:my-1>*)[data-slot=icon]{margin-block:calc(var(--spacing) * 1)}:is(.sm\:\*\:data-\[slot\=icon\]\:size-4>*)[data-slot=icon]{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:is(.sm\:\*\:data-\[slot\=icon\]\:size-5>*)[data-slot=icon]{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}:is(.sm\:\*\:last\:data-\[slot\=icon\]\:size-4>*):last-child[data-slot=icon],:is(.sm\:\*\:not-nth-2\:last\:data-\[slot\=icon\]\:size-4>*):not(:nth-child(2)):last-child[data-slot=icon]{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.sm\:nth-2\:border-none:nth-child(2){--tw-border-style:none;border-style:none}}@media(min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-\[120px_110px_1fr\]{grid-template-columns:120px 110px 1fr}.md\:grid-cols-\[150px_1fr\]{grid-template-columns:150px 1fr}.md\:items-start{align-items:flex-start}}@media(min-width:64rem){.lg\:-mx-4{margin-inline:calc(var(--spacing) * -4)}.lg\:hidden{display:none}.lg\:min-w-0{min-width:calc(var(--spacing) * 0)}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[14\.5rem_minmax\(19rem\,25rem\)_minmax\(0\,1fr\)\]{grid-template-columns:14.5rem minmax(19rem,25rem) minmax(0,1fr)}.lg\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.lg\:border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.lg\:p-8{padding:calc(var(--spacing) * 8)}.lg\:pl-64{padding-left:calc(var(--spacing) * 64)}}@media(min-width:80rem){.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-color-scheme:dark){.dark\:border-ouro-moss\/30{border-color:#1833254d}@supports (color:color-mix(in lab,red,red)){.dark\:border-ouro-moss\/30{border-color:color-mix(in oklab,var(--color-ouro-moss) 30%,transparent)}}.dark\:border-white\/5{border-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.dark\:border-white\/5{border-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}.dark\:border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:border-white\/10{border-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.dark\:border-white\/15{border-color:#ffffff26}@supports (color:color-mix(in lab,red,red)){.dark\:border-white\/15{border-color:color-mix(in oklab,var(--color-white) 15%,transparent)}}.dark\:border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.dark\:border-white\/20{border-color:color-mix(in oklab,var(--color-white) 20%,transparent)}}.dark\:bg-\(--btn-bg\){background-color:var(--btn-bg)}.dark\:bg-amber-400\/10{background-color:#fcbb001a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-amber-400\/10{background-color:color-mix(in oklab,var(--color-amber-400) 10%,transparent)}}.dark\:bg-cyan-400\/10{background-color:#00d2ef1a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-cyan-400\/10{background-color:color-mix(in oklab,var(--color-cyan-400) 10%,transparent)}}.dark\:bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-emerald-500\/10{background-color:color-mix(in oklab,var(--color-emerald-500) 10%,transparent)}}.dark\:bg-fuchsia-400\/10{background-color:#ec6cff1a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-fuchsia-400\/10{background-color:color-mix(in oklab,var(--color-fuchsia-400) 10%,transparent)}}.dark\:bg-green-500\/10{background-color:#00c7581a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-green-500\/10{background-color:color-mix(in oklab,var(--color-green-500) 10%,transparent)}}.dark\:bg-lime-400\/10{background-color:#9de5001a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-lime-400\/10{background-color:color-mix(in oklab,var(--color-lime-400) 10%,transparent)}}.dark\:bg-orange-500\/10{background-color:#fe6e001a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-orange-500\/10{background-color:color-mix(in oklab,var(--color-orange-500) 10%,transparent)}}.dark\:bg-pink-400\/10{background-color:#fb64b61a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-pink-400\/10{background-color:color-mix(in oklab,var(--color-pink-400) 10%,transparent)}}.dark\:bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500) 10%,transparent)}}.dark\:bg-rose-400\/10{background-color:#ff667f1a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-rose-400\/10{background-color:color-mix(in oklab,var(--color-rose-400) 10%,transparent)}}.dark\:bg-sky-500\/10{background-color:#00a5ef1a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-sky-500\/10{background-color:color-mix(in oklab,var(--color-sky-500) 10%,transparent)}}.dark\:bg-teal-500\/10{background-color:#00baa71a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-teal-500\/10{background-color:color-mix(in oklab,var(--color-teal-500) 10%,transparent)}}.dark\:bg-white{background-color:var(--color-white)}.dark\:bg-white\/5{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.dark\:bg-white\/5{background-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}.dark\:bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-white\/10{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.dark\:bg-yellow-400\/10{background-color:#fac8001a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-yellow-400\/10{background-color:color-mix(in oklab,var(--color-yellow-400) 10%,transparent)}}.dark\:text-amber-400{color:var(--color-amber-400)}.dark\:text-blue-400{color:var(--color-blue-400)}.dark\:text-cyan-300{color:var(--color-cyan-300)}.dark\:text-emerald-400{color:var(--color-emerald-400)}.dark\:text-fuchsia-400{color:var(--color-fuchsia-400)}.dark\:text-green-400{color:var(--color-green-400)}.dark\:text-indigo-400{color:var(--color-indigo-400)}.dark\:text-lime-300{color:var(--color-lime-300)}.dark\:text-orange-400{color:var(--color-orange-400)}.dark\:text-pink-400{color:var(--color-pink-400)}.dark\:text-purple-400{color:var(--color-purple-400)}.dark\:text-red-400{color:var(--color-red-400)}.dark\:text-rose-400{color:var(--color-rose-400)}.dark\:text-sky-300{color:var(--color-sky-300)}.dark\:text-teal-300{color:var(--color-teal-300)}.dark\:text-violet-400{color:var(--color-violet-400)}.dark\:text-white{color:var(--color-white)}.dark\:text-yellow-300{color:var(--color-yellow-300)}.dark\:text-zinc-400{color:var(--color-zinc-400)}.dark\:text-zinc-950{color:var(--color-zinc-950)}.dark\:decoration-white\/50{text-decoration-color:#ffffff80}@supports (color:color-mix(in lab,red,red)){.dark\:decoration-white\/50{-webkit-text-decoration-color:color-mix(in oklab,var(--color-white) 50%,transparent);text-decoration-color:color-mix(in oklab,var(--color-white) 50%,transparent)}}.dark\:outline-white\/10{outline-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:outline-white\/10{outline-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.dark\:\[--btn-bg\:transparent\]{--btn-bg:transparent}.dark\:\[--btn-bg\:var\(--color-zinc-600\)\]{--btn-bg:var(--color-zinc-600)}.dark\:\[--btn-bg\:var\(--color-zinc-800\)\]{--btn-bg:var(--color-zinc-800)}.dark\:\[--btn-bg\:white\]{--btn-bg:white}.dark\:\[--btn-hover-overlay\:var\(--color-white\)\]\/5{--btn-hover-overlay:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.dark\:\[--btn-hover-overlay\:var\(--color-white\)\]\/5{--btn-hover-overlay:color-mix(in oklab, var(--color-white) 5%, transparent)}}.dark\:\[--btn-hover-overlay\:var\(--color-zinc-950\)\]\/5{--btn-hover-overlay:#09090b0d}@supports (color:color-mix(in lab,red,red)){.dark\:\[--btn-hover-overlay\:var\(--color-zinc-950\)\]\/5{--btn-hover-overlay:color-mix(in oklab, var(--color-zinc-950) 5%, transparent)}}.dark\:\[--btn-icon\:var\(--color-zinc-500\)\]{--btn-icon:var(--color-zinc-500)}.dark\:group-data-hover\:bg-amber-400\/15:is(:where(.group)[data-hover] *){background-color:#fcbb0026}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-amber-400\/15:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-amber-400) 15%,transparent)}}.dark\:group-data-hover\:bg-blue-500\/25:is(:where(.group)[data-hover] *){background-color:#3080ff40}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-blue-500\/25:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-blue-500) 25%,transparent)}}.dark\:group-data-hover\:bg-cyan-400\/15:is(:where(.group)[data-hover] *){background-color:#00d2ef26}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-cyan-400\/15:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-cyan-400) 15%,transparent)}}.dark\:group-data-hover\:bg-emerald-500\/20:is(:where(.group)[data-hover] *){background-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-emerald-500\/20:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-emerald-500) 20%,transparent)}}.dark\:group-data-hover\:bg-fuchsia-400\/20:is(:where(.group)[data-hover] *){background-color:#ec6cff33}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-fuchsia-400\/20:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-fuchsia-400) 20%,transparent)}}.dark\:group-data-hover\:bg-green-500\/20:is(:where(.group)[data-hover] *){background-color:#00c75833}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-green-500\/20:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-green-500) 20%,transparent)}}.dark\:group-data-hover\:bg-indigo-500\/20:is(:where(.group)[data-hover] *){background-color:#625fff33}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-indigo-500\/20:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-indigo-500) 20%,transparent)}}.dark\:group-data-hover\:bg-lime-400\/15:is(:where(.group)[data-hover] *){background-color:#9de50026}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-lime-400\/15:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-lime-400) 15%,transparent)}}.dark\:group-data-hover\:bg-orange-500\/20:is(:where(.group)[data-hover] *){background-color:#fe6e0033}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-orange-500\/20:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-orange-500) 20%,transparent)}}.dark\:group-data-hover\:bg-pink-400\/20:is(:where(.group)[data-hover] *){background-color:#fb64b633}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-pink-400\/20:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-pink-400) 20%,transparent)}}.dark\:group-data-hover\:bg-purple-500\/20:is(:where(.group)[data-hover] *){background-color:#ac4bff33}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-purple-500\/20:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-purple-500) 20%,transparent)}}.dark\:group-data-hover\:bg-red-500\/20:is(:where(.group)[data-hover] *){background-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-red-500\/20:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-red-500) 20%,transparent)}}.dark\:group-data-hover\:bg-rose-400\/20:is(:where(.group)[data-hover] *){background-color:#ff667f33}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-rose-400\/20:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-rose-400) 20%,transparent)}}.dark\:group-data-hover\:bg-sky-500\/20:is(:where(.group)[data-hover] *){background-color:#00a5ef33}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-sky-500\/20:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-sky-500) 20%,transparent)}}.dark\:group-data-hover\:bg-teal-500\/20:is(:where(.group)[data-hover] *){background-color:#00baa733}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-teal-500\/20:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-teal-500) 20%,transparent)}}.dark\:group-data-hover\:bg-violet-500\/20:is(:where(.group)[data-hover] *){background-color:#8d54ff33}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-violet-500\/20:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-violet-500) 20%,transparent)}}.dark\:group-data-hover\:bg-white\/10:is(:where(.group)[data-hover] *){background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-white\/10:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.dark\:group-data-hover\:bg-yellow-400\/15:is(:where(.group)[data-hover] *){background-color:#fac80026}@supports (color:color-mix(in lab,red,red)){.dark\:group-data-hover\:bg-yellow-400\/15:is(:where(.group)[data-hover] *){background-color:color-mix(in oklab,var(--color-yellow-400) 15%,transparent)}}.dark\:before\:hidden:before{content:var(--tw-content);display:none}.dark\:after\:-inset-px:after{content:var(--tw-content);top:-1px;right:-1px;bottom:-1px;left:-1px}.dark\:after\:rounded-lg:after{content:var(--tw-content);border-radius:var(--radius-lg)}.dark\:data-active\:bg-white\/5[data-active]{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.dark\:data-active\:bg-white\/5[data-active]{background-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}.dark\:data-active\:bg-white\/10[data-active]{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:data-active\:bg-white\/10[data-active]{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.dark\:data-active\:\[--btn-icon\:var\(--color-zinc-400\)\][data-active]{--btn-icon:var(--color-zinc-400)}.dark\:data-hover\:bg-white\/5[data-hover]{background-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.dark\:data-hover\:bg-white\/5[data-hover]{background-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}.dark\:data-hover\:bg-white\/10[data-hover]{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.dark\:data-hover\:bg-white\/10[data-hover]{background-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.dark\:data-hover\:decoration-white[data-hover]{-webkit-text-decoration-color:var(--color-white);text-decoration-color:var(--color-white)}.dark\:data-hover\:\[--btn-icon\:var\(--color-zinc-400\)\][data-hover]{--btn-icon:var(--color-zinc-400)}:is(.dark\:\*\:data-\[slot\=icon\]\:fill-zinc-400>*)[data-slot=icon]{fill:var(--color-zinc-400)}:is(.dark\:data-active\:\*\:data-\[slot\=icon\]\:fill-white[data-active]>*)[data-slot=icon],:is(.dark\:data-current\:\*\:data-\[slot\=icon\]\:fill-white[data-current]>*)[data-slot=icon],:is(.dark\:data-hover\:\*\:data-\[slot\=icon\]\:fill-white[data-hover]>*)[data-slot=icon]{fill:var(--color-white)}@media(min-width:40rem){.dark\:sm\:border-white\/5{border-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.dark\:sm\:border-white\/5{border-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}}}@media(min-width:40rem){@media(prefers-color-scheme:dark){.sm\:dark\:border-white\/5{border-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.sm\:dark\:border-white\/5{border-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}}}@media(forced-colors:active){.forced-colors\:outline{outline-style:var(--tw-outline-style);outline-width:1px}.forced-colors\:\[--btn-icon\:ButtonText\],.forced-colors\:data-hover\:\[--btn-icon\:ButtonText\][data-hover]{--btn-icon:ButtonText}}@media(pointer:fine){.pointer-fine\:hidden{display:none}}.\[\&\>\[data-slot\=section\]\+\[data-slot\=section\]\]\:mt-2\.5>[data-slot=section]+[data-slot=section]{margin-top:calc(var(--spacing) * 2.5)}.\[\&\>\[data-slot\=section\]\+\[data-slot\=section\]\]\:mt-4>[data-slot=section]+[data-slot=section]{margin-top:calc(var(--spacing) * 4)}.\[\&\>\[data-slot\=section\]\+\[data-slot\=section\]\]\:mt-8>[data-slot=section]+[data-slot=section]{margin-top:calc(var(--spacing) * 8)}}body{font-family:var(--font-body);background-color:var(--color-ouro-void);color:var(--color-ouro-bone);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(prefers-color-scheme:light){:root{--color-ouro-void:#f4f7f2;--color-ouro-deep:#fff;--color-ouro-moss:#c8d9cc;--color-ouro-scale:#2f8f4e;--color-ouro-glow:#1a7a3a;--color-ouro-bone:#102116;--color-ouro-mist:#3d5a47;--color-ouro-shadow:#708373;--color-ouro-fang:#c44a33;--color-ouro-gold:#9a7a2e}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#183325;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#2f8f4e}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes pulse{50%{opacity:.5}}
@@ -6,9 +6,9 @@
6
6
  <meta name="color-scheme" content="dark" />
7
7
  <title>Ouro Mailbox</title>
8
8
  <meta name="description" content="The daemon-hosted shared orientation surface for agents alive on this machine." />
9
- <script type="module" crossorigin src="/assets/index-Cyv4mw3Y.js"></script>
9
+ <script type="module" crossorigin src="/assets/index-Dbska1tZ.js"></script>
10
10
  <link rel="modulepreload" crossorigin href="/assets/vendor-CcN1XpQ9.js">
11
- <link rel="stylesheet" crossorigin href="/assets/index-Du_9G9WO.css">
11
+ <link rel="stylesheet" crossorigin href="/assets/index-DsiKaPyH.css">
12
12
  </head>
13
13
  <body>
14
14
  <div id="app"></div>
@@ -103,6 +103,10 @@ const DISPATCH_EXEMPT_PATTERNS = [
103
103
  // consumed by server readers and the UI. Mailbox read/render modules own
104
104
  // the observability for these projections.
105
105
  "heart/mailbox/mailbox-types",
106
+ // Pure Shepherd command/parser/projection seams; IO callers own observability.
107
+ "heart/shepherd/operation-commands.ts",
108
+ "heart/shepherd/operations.ts",
109
+ "heart/shepherd/supervision.ts",
106
110
  // Mail search relevance scorer: pure heuristic function (regex + counter
107
111
  // arithmetic). The caller (search-cache.ts searchMailSearchCache) owns
108
112
  // observability via senses.mail_search_cache_upserted and friends.
@@ -36,7 +36,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
36
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.refuseCustody = refuseCustody;
40
+ exports.validCustodyInputReceipt = validCustodyInputReceipt;
41
+ exports.copyCustodyInputReceipt = copyCustodyInputReceipt;
42
+ exports.parseCustodyDispatch = parseCustodyDispatch;
43
+ exports.validateCustodyDirectory = validateCustodyDirectory;
39
44
  exports.checkInStorePath = checkInStorePath;
45
+ exports.assertNoCustodyMaintenance = assertNoCustodyMaintenance;
46
+ exports.custodyCapacity = custodyCapacity;
47
+ exports.custodyRevision = custodyRevision;
48
+ exports.advanceCustodyRevision = advanceCustodyRevision;
49
+ exports.hasRetiredCustodyInstance = hasRetiredCustodyInstance;
50
+ exports.retiredCustodyKey = retiredCustodyKey;
51
+ exports.readRetiredCustodyRecord = readRetiredCustodyRecord;
52
+ exports.openCustodyDatabase = openCustodyDatabase;
40
53
  exports.openCheckInStore = openCheckInStore;
41
54
  const node_crypto_1 = require("node:crypto");
42
55
  const fs = __importStar(require("node:fs"));
@@ -45,17 +58,20 @@ const better_sqlite3_1 = __importDefault(require("better-sqlite3"));
45
58
  const runtime_1 = require("../../nerves/runtime");
46
59
  const returns_1 = require("./returns");
47
60
  const MAX_ROW = 4096;
61
+ const COMPLETION_HEADROOM = 2300;
48
62
  const MAX_DB = 64 * 1024 * 1024;
49
63
  const WARN_DB = 48 * 1024 * 1024;
64
+ const warnedDatabases = new WeakSet();
50
65
  const bytes = (value) => Buffer.byteLength(JSON.stringify(value));
51
66
  const text = (value) => typeof value === "string" && value.length > 0;
52
67
  const object = (value) => !!value && typeof value === "object" && !Array.isArray(value);
53
68
  const timestamp = (value) => text(value) && Number.isFinite(Date.parse(value));
54
- function refuse(reason) {
69
+ function refuseCustody(reason) {
55
70
  (0, runtime_1.emitNervesEvent)({ level: "warn", component: "senses", event: "senses.shepherd_checkin_store_refused",
56
71
  message: "check-in custody operation refused", meta: { reason } });
57
72
  throw new Error(`Shepherd check-in custody: ${reason}`);
58
73
  }
74
+ const refuse = refuseCustody;
59
75
  function bounded(value, limit, field) {
60
76
  if (!text(value) || bytes(value) > limit)
61
77
  refuse(`${field} byte limit or type`);
@@ -72,9 +88,24 @@ function dispatchId(input) {
72
88
  function validClaim(value) {
73
89
  return object(value) && validInput(value) && text(value.owner) && bytes(value.owner) <= 256 &&
74
90
  ["claimed", "sent", "not_sent", "unknown"].includes(String(value.state)) &&
75
- (value.reason === undefined || text(value.reason) && bytes(value.reason) <= 1024);
91
+ (value.reason === undefined || text(value.reason) && bytes(value.reason) <= 1024)
92
+ && (value.receipt === undefined || validCustodyInputReceipt(value.receipt)
93
+ && value.receipt.requestId === value.id && value.receipt.surfaceId === value.session && value.receipt.processInstance === value.instance
94
+ && receiptMatchesOutcome(value.state, value.receipt));
76
95
  }
77
- function parseDispatch(row) {
96
+ function validCustodyInputReceipt(value) {
97
+ return object(value) && ["requestId", "surfaceId", "workspaceId", "processInstance"].every(key => text(value[key]) && bytes(value[key]) <= 256)
98
+ && typeof value.pasteAdmitted === "boolean" && typeof value.submitAdmitted === "boolean"
99
+ && (!value.submitAdmitted || value.pasteAdmitted);
100
+ }
101
+ function copyCustodyInputReceipt(receipt) {
102
+ const { requestId, surfaceId, workspaceId, processInstance, pasteAdmitted, submitAdmitted } = receipt;
103
+ return { requestId, surfaceId, workspaceId, processInstance, pasteAdmitted, submitAdmitted };
104
+ }
105
+ function receiptMatchesOutcome(state, receipt) {
106
+ return state === "sent" ? receipt.pasteAdmitted && receipt.submitAdmitted : state !== "not_sent" || !receipt.pasteAdmitted && !receipt.submitAdmitted;
107
+ }
108
+ function parseCustodyDispatch(row) {
78
109
  if (Buffer.byteLength(row.data) > MAX_ROW)
79
110
  refuse("record byte limit");
80
111
  const value = JSON.parse(row.data);
@@ -83,71 +114,196 @@ function parseDispatch(row) {
83
114
  refuse("invalid dispatch schema");
84
115
  return value;
85
116
  }
86
- function privateDirectory(directory) {
87
- fs.mkdirSync(directory, { recursive: true, mode: 0o700 });
117
+ const parseDispatch = parseCustodyDispatch;
118
+ function validateCustodyDirectory(directory, create) {
119
+ const uid = process.getuid();
120
+ for (let candidate = directory; candidate !== path.dirname(candidate); candidate = path.dirname(candidate)) {
121
+ const stat = fs.lstatSync(candidate, { throwIfNoEntry: false });
122
+ if (stat?.isSymbolicLink())
123
+ refuse("private directory ancestor is a link");
124
+ if (stat && (!stat.isDirectory() || stat.uid !== 0 && stat.uid !== uid
125
+ || (stat.mode & 0o022) !== 0 && !(stat.uid === 0 && (stat.mode & 0o1000) !== 0)))
126
+ refuse("private directory ancestor ownership or mode");
127
+ }
128
+ if (create)
129
+ fs.mkdirSync(directory, { recursive: true, mode: 0o700 });
130
+ if (!fs.lstatSync(directory, { throwIfNoEntry: false }))
131
+ return false;
88
132
  const stat = fs.lstatSync(directory);
89
- if (!stat.isDirectory() || (stat.mode & 0o077) !== 0 || stat.uid !== process.getuid())
90
- refuse("private directory ownership or mode");
133
+ if (!stat.isDirectory() || (stat.mode & 0o7777) !== 0o700 || stat.uid !== uid)
134
+ refuse("private directory ownership or mode; require 0700");
135
+ return true;
91
136
  }
92
137
  function privateFile(file) {
93
138
  const stat = fs.lstatSync(file);
94
- if (!stat.isFile() || stat.nlink !== 1 || (stat.mode & 0o077) !== 0 || stat.uid !== process.getuid())
139
+ if (!stat.isFile() || stat.nlink !== 1 || (stat.mode & 0o7777) !== 0o600 || stat.uid !== process.getuid())
95
140
  refuse("private file ownership or mode");
96
141
  }
97
142
  function checkInStorePath(agentRoot) {
98
143
  return path.join((0, returns_1.shepherdStateDir)(agentRoot), "checkins", "custody.sqlite");
99
144
  }
100
- function openCheckInStore(file) {
145
+ function assertNoCustodyMaintenance(file) {
146
+ if (fs.lstatSync(`${file}.maintenance.json`, { throwIfNoEntry: false }))
147
+ refuse("interrupted or active maintenance; resume the exact owner maintenance request");
148
+ }
149
+ function custodyCapacity(database, writing = false) {
150
+ const size = Number(database.pragma("page_count", { simple: true })) * Number(database.pragma("page_size", { simple: true }));
151
+ if (size > MAX_DB || writing && size + 65536 > MAX_DB)
152
+ refuse("database capacity; no input authorized");
153
+ if (!warnedDatabases.has(database) && size >= WARN_DB) {
154
+ warnedDatabases.add(database);
155
+ (0, runtime_1.emitNervesEvent)({ level: "warn", component: "senses", event: "senses.shepherd_checkin_capacity_warning",
156
+ message: "check-in custody is approaching capacity", meta: { bytes: size, limit: MAX_DB } });
157
+ }
158
+ return { bytes: size, capacity: size + 65536 > MAX_DB ? "refused" : size >= WARN_DB ? "warning" : "normal" };
159
+ }
160
+ function custodyRevision(database) {
161
+ const row = database.prepare("SELECT revision FROM custody_meta WHERE singleton=1").get();
162
+ if (!row || typeof row.revision !== "number" || !Number.isSafeInteger(row.revision) || row.revision < 0)
163
+ refuse("invalid custody revision schema");
164
+ return row.revision;
165
+ }
166
+ function advanceCustodyRevision(database) {
167
+ const revision = custodyRevision(database) + 1;
168
+ if (!Number.isSafeInteger(revision))
169
+ refuse("custody revision capacity");
170
+ database.prepare("UPDATE custody_meta SET revision=? WHERE singleton=1").run(revision);
171
+ return revision;
172
+ }
173
+ function hasRetiredCustodyInstance(database, input) {
174
+ const row = database.prepare(`SELECT key,host,session,instance,data FROM retired_instances WHERE host=? AND session=?
175
+ AND (instance IS NULL OR ? IS NULL OR instance=?) LIMIT 1`).get(input.host, input.session, input.instance, input.instance);
176
+ if (!row)
177
+ return false;
178
+ validateRetiredRow(row);
179
+ return true;
180
+ }
181
+ function retiredCustodyKey(input) {
182
+ return (0, node_crypto_1.createHash)("sha256").update(JSON.stringify([input.host, input.session, input.instance])).digest("hex");
183
+ }
184
+ function readRetiredCustodyRecord(database, input) {
185
+ const row = database.prepare("SELECT key,host,session,instance,data FROM retired_instances WHERE key=?").get(retiredCustodyKey(input));
186
+ return row ? validateRetiredRow(row) : null;
187
+ }
188
+ function validateRetiredRow(row) {
189
+ if (Buffer.byteLength(row.data) > MAX_ROW)
190
+ refuse("retired instance index capacity");
191
+ const data = JSON.parse(row.data);
192
+ const expectedKey = retiredCustodyKey(row);
193
+ if (!object(data) || !object(data.proof) || row.key !== expectedKey || data.proof.kind !== "host_process_inventory"
194
+ || data.proof.host !== row.host || data.proof.session !== row.session || data.proof.instance !== row.instance
195
+ || data.proof.gone !== true || !timestamp(data.proof.checkedAt) || typeof data.proof.wholeSessionRetired !== "boolean"
196
+ || row.instance === null && !data.proof.wholeSessionRetired)
197
+ refuse("invalid retired instance schema");
198
+ if (data.archive !== undefined && (!object(data.archive) || typeof data.archive.path !== "string" || !path.isAbsolute(data.archive.path)
199
+ || typeof data.archive.digest !== "string" || !/^[a-f0-9]{64}$/.test(data.archive.digest)))
200
+ refuse("invalid retired archive reference schema");
201
+ return data;
202
+ }
203
+ function openCustodyDatabase(file, mode) {
204
+ const readonly = mode === "read" || mode === "maintenance-read";
101
205
  if (!path.isAbsolute(file) || path.normalize(file) !== file)
102
206
  refuse("database path");
103
- privateDirectory(path.dirname(file));
104
- try {
105
- const fd = fs.openSync(file, fs.constants.O_WRONLY | fs.constants.O_CREAT | fs.constants.O_EXCL | fs.constants.O_NOFOLLOW, 0o600);
106
- fs.closeSync(fd);
107
- }
108
- catch (error) {
109
- if (error.code !== "EEXIST")
110
- throw error;
207
+ if (mode !== "maintenance" && mode !== "maintenance-read")
208
+ assertNoCustodyMaintenance(file);
209
+ if (!validateCustodyDirectory(path.dirname(file), !readonly))
210
+ return null;
211
+ if (readonly) {
212
+ if (!fs.lstatSync(file, { throwIfNoEntry: false }))
213
+ return null;
111
214
  }
112
- privateFile(file);
113
- const database = new better_sqlite3_1.default(file, { fileMustExist: true });
114
- let warned = false;
115
- function capacity(writing = false) {
116
- const size = Number(database.pragma("page_count", { simple: true })) * Number(database.pragma("page_size", { simple: true }));
117
- if (size > MAX_DB || writing && size + 65536 > MAX_DB)
118
- refuse("database capacity; no input authorized");
119
- if (!warned && size >= WARN_DB) {
120
- warned = true;
121
- (0, runtime_1.emitNervesEvent)({ level: "warn", component: "senses", event: "senses.shepherd_checkin_capacity_warning",
122
- message: "check-in custody is approaching capacity", meta: { bytes: size, limit: MAX_DB } });
215
+ else {
216
+ try {
217
+ const fd = fs.openSync(file, fs.constants.O_WRONLY | fs.constants.O_CREAT | fs.constants.O_EXCL | fs.constants.O_NOFOLLOW, 0o600);
218
+ fs.closeSync(fd);
219
+ }
220
+ catch (error) {
221
+ if (error.code !== "EEXIST")
222
+ throw error;
123
223
  }
124
224
  }
225
+ privateFile(file);
226
+ for (const suffix of ["-journal", "-wal", "-shm"])
227
+ if (fs.lstatSync(`${file}${suffix}`, { throwIfNoEntry: false }))
228
+ privateFile(`${file}${suffix}`);
229
+ const database = new better_sqlite3_1.default(file, { fileMustExist: true, readonly });
125
230
  try {
126
231
  const version = database.pragma("user_version", { simple: true });
127
- if (version !== 0 && version !== 1)
232
+ if (![0, 1, 2].includes(Number(version)) || version === 0 && readonly)
128
233
  refuse("unsupported database schema");
129
- capacity();
130
- database.pragma("journal_mode = DELETE");
234
+ custodyCapacity(database);
131
235
  database.pragma("busy_timeout = 1000");
236
+ if (version !== 0) {
237
+ database.prepare("SELECT id,host,session,instance,data FROM dispatches LIMIT 0").all();
238
+ database.prepare("SELECT signature,data FROM notices LIMIT 0").all();
239
+ }
240
+ if (readonly) {
241
+ if (version === 2)
242
+ validateCustodyV2(database);
243
+ return database;
244
+ }
245
+ database.pragma("journal_mode = DELETE");
246
+ database.pragma("synchronous = FULL");
132
247
  database.pragma(`max_page_count = ${Math.floor(MAX_DB / Number(database.pragma("page_size", { simple: true })))}`);
133
- database.exec(`CREATE TABLE IF NOT EXISTS dispatches (
134
- id TEXT PRIMARY KEY NOT NULL, host TEXT NOT NULL, session TEXT NOT NULL, instance TEXT, data TEXT NOT NULL
135
- );
136
- CREATE INDEX IF NOT EXISTS dispatch_barriers ON dispatches(host,session,instance);
137
- CREATE TABLE IF NOT EXISTS notices (signature TEXT PRIMARY KEY NOT NULL, data TEXT NOT NULL);`);
138
- database.pragma("user_version = 1");
248
+ if (version !== 2)
249
+ database.transaction(() => {
250
+ if (database.pragma("user_version", { simple: true }) === 2)
251
+ return;
252
+ database.exec(`CREATE TABLE IF NOT EXISTS dispatches (
253
+ id TEXT PRIMARY KEY NOT NULL, host TEXT NOT NULL, session TEXT NOT NULL, instance TEXT, data TEXT NOT NULL
254
+ );
255
+ CREATE INDEX IF NOT EXISTS dispatch_barriers ON dispatches(host,session,instance);
256
+ CREATE TABLE IF NOT EXISTS notices (signature TEXT PRIMARY KEY NOT NULL, data TEXT NOT NULL);
257
+ CREATE TABLE custody_meta (singleton INTEGER PRIMARY KEY CHECK(singleton=1), revision INTEGER NOT NULL);
258
+ INSERT INTO custody_meta VALUES(1,0);
259
+ CREATE TABLE custody_requests (actor_id TEXT NOT NULL,request_id TEXT NOT NULL,hash TEXT NOT NULL,receipt TEXT NOT NULL,PRIMARY KEY(actor_id,request_id));
260
+ CREATE TABLE reconciliations (id TEXT PRIMARY KEY,dispatch_id TEXT NOT NULL,data TEXT NOT NULL);
261
+ CREATE INDEX reconciliation_dispatch ON reconciliations(dispatch_id);
262
+ CREATE TABLE retired_instances (key TEXT PRIMARY KEY,host TEXT NOT NULL,session TEXT NOT NULL,instance TEXT,data TEXT NOT NULL);
263
+ CREATE INDEX retired_scope ON retired_instances(host,session,instance);
264
+ CREATE TABLE custody_migrations (version INTEGER PRIMARY KEY,data TEXT NOT NULL);`);
265
+ for (const row of database.prepare("SELECT id,host,session,instance,data FROM dispatches").iterate())
266
+ parseDispatch(row);
267
+ const counts = database.prepare("SELECT COUNT(*) AS count FROM dispatches").get();
268
+ database.prepare("INSERT INTO custody_migrations VALUES(2,?)").run(JSON.stringify({ fromVersion: version, at: new Date().toISOString(), preservedDispatches: counts.count }));
269
+ database.pragma("user_version = 2");
270
+ }).immediate();
271
+ validateCustodyV2(database);
272
+ for (const row of database.prepare("SELECT id,host,session,instance,data FROM dispatches").iterate())
273
+ parseDispatch(row);
139
274
  }
140
275
  catch (error) {
141
276
  database.close();
142
277
  throw error;
143
278
  }
144
- const transact = (work) => database.transaction(() => { capacity(true); return work(); }).immediate();
279
+ return database;
280
+ }
281
+ function validateCustodyV2(database) {
282
+ custodyRevision(database);
283
+ for (const query of [
284
+ "SELECT actor_id,request_id,hash,receipt FROM custody_requests LIMIT 0",
285
+ "SELECT id,dispatch_id,data FROM reconciliations LIMIT 0",
286
+ "SELECT key,host,session,instance,data FROM retired_instances LIMIT 0",
287
+ "SELECT version,data FROM custody_migrations LIMIT 0",
288
+ ])
289
+ database.prepare(query).all();
290
+ for (const row of database.prepare("SELECT key,host,session,instance,data FROM retired_instances").iterate())
291
+ validateRetiredRow(row);
292
+ }
293
+ function openCheckInStore(file) {
294
+ const database = openCustodyDatabase(file, "write");
295
+ const transact = (work) => database.transaction(() => {
296
+ assertNoCustodyMaintenance(file);
297
+ custodyCapacity(database, true);
298
+ return work();
299
+ }).immediate();
145
300
  function write(record) {
146
301
  const data = JSON.stringify(record);
147
302
  if (Buffer.byteLength(data) > MAX_ROW)
148
303
  refuse("record byte limit");
149
304
  database.prepare(`INSERT INTO dispatches(id,host,session,instance,data) VALUES(?,?,?,?,?)
150
305
  ON CONFLICT(id) DO UPDATE SET data=excluded.data`).run(record.id, record.host, record.session, record.instance, data);
306
+ advanceCustodyRevision(database);
151
307
  }
152
308
  function notice(signature) {
153
309
  bounded(signature, MAX_ROW - 128, "signature");
@@ -169,9 +325,11 @@ function openCheckInStore(file) {
169
325
  refuse("invalid dispatch input schema");
170
326
  bounded(owner, 256, "owner");
171
327
  const record = { ...input, id: dispatchId(input), owner, state: "claimed" };
172
- if (bytes(record) + 1050 > MAX_ROW)
328
+ if (bytes(record) + COMPLETION_HEADROOM > MAX_ROW)
173
329
  refuse("reserved record byte limit");
174
330
  return transact(() => {
331
+ if (hasRetiredCustodyInstance(database, input))
332
+ return null;
175
333
  const rows = database.prepare(`SELECT id,host,session,instance,data FROM dispatches
176
334
  WHERE id=? OR (host=? AND session=? AND (instance IS NULL OR ? IS NULL OR instance=?))`)
177
335
  .all(record.id, input.host, input.session, input.instance, input.instance);
@@ -190,6 +348,10 @@ function openCheckInStore(file) {
190
348
  refuse("invalid completion state");
191
349
  if (result.reason !== undefined)
192
350
  bounded(result.reason, 1024, "reason");
351
+ if (result.receipt !== undefined && !validCustodyInputReceipt(result.receipt))
352
+ refuse("invalid host receipt schema");
353
+ if (result.receipt && !receiptMatchesOutcome(result.state, result.receipt))
354
+ refuse("host receipt contradicts completion outcome");
193
355
  transact(() => {
194
356
  const row = database.prepare("SELECT id,host,session,instance,data FROM dispatches WHERE id=?").get(id);
195
357
  if (!row)
@@ -197,7 +359,11 @@ function openCheckInStore(file) {
197
359
  const prior = parseDispatch(row);
198
360
  if (prior.owner !== owner || prior.state !== "claimed")
199
361
  refuse("dispatch owner or phase mismatch");
200
- write({ ...prior, state: result.state, ...(result.reason === undefined ? {} : { reason: result.reason }) });
362
+ if (result.receipt && (result.receipt.requestId !== id || result.receipt.surfaceId !== prior.session
363
+ || result.receipt.processInstance !== prior.instance))
364
+ refuse("host receipt identity mismatch");
365
+ write({ ...prior, state: result.state, ...(result.reason === undefined ? {} : { reason: result.reason }),
366
+ ...(result.receipt === undefined ? {} : { receipt: copyCustodyInputReceipt(result.receipt) }) });
201
367
  });
202
368
  },
203
369
  shouldNotify(signature) { return notice(signature) === null; },
@@ -209,8 +375,10 @@ function openCheckInStore(file) {
209
375
  if (Buffer.byteLength(data) > MAX_ROW)
210
376
  refuse("notice byte limit");
211
377
  transact(() => {
212
- if (!notice(signature))
378
+ if (!notice(signature)) {
213
379
  database.prepare("INSERT INTO notices(signature,data) VALUES(?,?)").run(signature, data);
380
+ advanceCustodyRevision(database);
381
+ }
214
382
  });
215
383
  },
216
384
  close() { database.close(); },