pi-mega-compact 0.20.67 → 0.20.68

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 (66) hide show
  1. package/extensions/dashboard-client/dist/assets/{AdminTab-t4kzAKba.js → AdminTab-BDBJcHaT.js} +2 -2
  2. package/extensions/dashboard-client/dist/assets/{AdminTab-t4kzAKba.js.map → AdminTab-BDBJcHaT.js.map} +1 -1
  3. package/extensions/dashboard-client/dist/assets/{AreaChart-B_2FnM5A.js → AreaChart-D5CqGlI8.js} +2 -2
  4. package/extensions/dashboard-client/dist/assets/{AreaChart-B_2FnM5A.js.map → AreaChart-D5CqGlI8.js.map} +1 -1
  5. package/extensions/dashboard-client/dist/assets/{BarChart-D0-fTEoK.js → BarChart-Bp002FD6.js} +2 -2
  6. package/extensions/dashboard-client/dist/assets/{BarChart-D0-fTEoK.js.map → BarChart-Bp002FD6.js.map} +1 -1
  7. package/extensions/dashboard-client/dist/assets/{CacheTab-CUQPLCcM.js → CacheTab-BJpcgk_2.js} +2 -2
  8. package/extensions/dashboard-client/dist/assets/{CacheTab-CUQPLCcM.js.map → CacheTab-BJpcgk_2.js.map} +1 -1
  9. package/extensions/dashboard-client/dist/assets/{ConfigTab-xtAz7do-.js → ConfigTab-CMdZwFZH.js} +2 -2
  10. package/extensions/dashboard-client/dist/assets/{ConfigTab-xtAz7do-.js.map → ConfigTab-CMdZwFZH.js.map} +1 -1
  11. package/extensions/dashboard-client/dist/assets/{EventsTab-DLie9_So.js → EventsTab-D8HGAwun.js} +2 -2
  12. package/extensions/dashboard-client/dist/assets/{EventsTab-DLie9_So.js.map → EventsTab-D8HGAwun.js.map} +1 -1
  13. package/extensions/dashboard-client/dist/assets/{HealthTab-DC-K1UGr.js → HealthTab-BtFFlqsZ.js} +2 -2
  14. package/extensions/dashboard-client/dist/assets/{HealthTab-DC-K1UGr.js.map → HealthTab-BtFFlqsZ.js.map} +1 -1
  15. package/extensions/dashboard-client/dist/assets/{MaintenanceTab-BRiZnnzk.js → MaintenanceTab-ybRlN62l.js} +2 -2
  16. package/extensions/dashboard-client/dist/assets/{MaintenanceTab-BRiZnnzk.js.map → MaintenanceTab-ybRlN62l.js.map} +1 -1
  17. package/extensions/dashboard-client/dist/assets/{MemoryMapTab-DUHG7tll.js → MemoryMapTab-NONxTa4i.js} +2 -2
  18. package/extensions/dashboard-client/dist/assets/{MemoryMapTab-DUHG7tll.js.map → MemoryMapTab-NONxTa4i.js.map} +1 -1
  19. package/extensions/dashboard-client/dist/assets/{MetricsCards-Bm19vWjr.js → MetricsCards-D0ogjl9C.js} +2 -2
  20. package/extensions/dashboard-client/dist/assets/{MetricsCards-Bm19vWjr.js.map → MetricsCards-D0ogjl9C.js.map} +1 -1
  21. package/extensions/dashboard-client/dist/assets/MetricsTab-C1wb0gVt.js +2 -0
  22. package/extensions/dashboard-client/dist/assets/{MetricsTab-Bp-FbUfh.js.map → MetricsTab-C1wb0gVt.js.map} +1 -1
  23. package/extensions/dashboard-client/dist/assets/{OverviewTab-C7kYy6VF.js → OverviewTab-DVahWYm4.js} +3 -3
  24. package/extensions/dashboard-client/dist/assets/OverviewTab-DVahWYm4.js.map +1 -0
  25. package/extensions/dashboard-client/dist/assets/{ReposTab-6kRj8MNh.js → ReposTab-CRbD4BfK.js} +2 -2
  26. package/extensions/dashboard-client/dist/assets/{ReposTab-6kRj8MNh.js.map → ReposTab-CRbD4BfK.js.map} +1 -1
  27. package/extensions/dashboard-client/dist/assets/{SessionsTab-duEyKw7t.js → SessionsTab-CXeQMOf8.js} +2 -2
  28. package/extensions/dashboard-client/dist/assets/{SessionsTab-duEyKw7t.js.map → SessionsTab-CXeQMOf8.js.map} +1 -1
  29. package/extensions/dashboard-client/dist/assets/{SetupTab-Dooq2vR4.js → SetupTab-D5nDEbeL.js} +2 -2
  30. package/extensions/dashboard-client/dist/assets/{SetupTab-Dooq2vR4.js.map → SetupTab-D5nDEbeL.js.map} +1 -1
  31. package/extensions/dashboard-client/dist/assets/{TimeSavedCard-CBIPgwK6.js → TimeSavedCard-BMOIDHmB.js} +2 -2
  32. package/extensions/dashboard-client/dist/assets/{TimeSavedCard-CBIPgwK6.js.map → TimeSavedCard-BMOIDHmB.js.map} +1 -1
  33. package/extensions/dashboard-client/dist/assets/{TurnMemoryView-BBnlvBRc.js → TurnMemoryView-l6BVSGcF.js} +2 -2
  34. package/extensions/dashboard-client/dist/assets/{TurnMemoryView-BBnlvBRc.js.map → TurnMemoryView-l6BVSGcF.js.map} +1 -1
  35. package/extensions/dashboard-client/dist/assets/TurnsTab--kkyyXBC.js +2 -0
  36. package/extensions/dashboard-client/dist/assets/{TurnsTab-DuJmr4S6.js.map → TurnsTab--kkyyXBC.js.map} +1 -1
  37. package/extensions/dashboard-client/dist/assets/{VcStatusBadge-fU5-lO5O.js → VcStatusBadge-BRDLYSrJ.js} +2 -2
  38. package/extensions/dashboard-client/dist/assets/{VcStatusBadge-fU5-lO5O.js.map → VcStatusBadge-BRDLYSrJ.js.map} +1 -1
  39. package/extensions/dashboard-client/dist/assets/{VectorCortexTab-D5ef9CPz.js → VectorCortexTab-DQuP7kK7.js} +2 -2
  40. package/extensions/dashboard-client/dist/assets/{VectorCortexTab-D5ef9CPz.js.map → VectorCortexTab-DQuP7kK7.js.map} +1 -1
  41. package/extensions/dashboard-client/dist/assets/{WikiTab-D5f8LD_4.js → WikiTab-Dp4oeCdD.js} +2 -2
  42. package/extensions/dashboard-client/dist/assets/{WikiTab-D5f8LD_4.js.map → WikiTab-Dp4oeCdD.js.map} +1 -1
  43. package/extensions/dashboard-client/dist/assets/{button-DzfeNezP.js → button-CdiKRDzE.js} +2 -2
  44. package/extensions/dashboard-client/dist/assets/{button-DzfeNezP.js.map → button-CdiKRDzE.js.map} +1 -1
  45. package/extensions/dashboard-client/dist/assets/{card-OZB1m8yv.js → card-CYJrF971.js} +2 -2
  46. package/extensions/dashboard-client/dist/assets/{card-OZB1m8yv.js.map → card-CYJrF971.js.map} +1 -1
  47. package/extensions/dashboard-client/dist/assets/{client-extra-DmQSTHzm.js → client-extra-C2v9apaY.js} +2 -2
  48. package/extensions/dashboard-client/dist/assets/{client-extra-DmQSTHzm.js.map → client-extra-C2v9apaY.js.map} +1 -1
  49. package/extensions/dashboard-client/dist/assets/{generateCategoricalChart-o4NdniRd.js → generateCategoricalChart-l5Ud-77n.js} +2 -2
  50. package/extensions/dashboard-client/dist/assets/{generateCategoricalChart-o4NdniRd.js.map → generateCategoricalChart-l5Ud-77n.js.map} +1 -1
  51. package/extensions/dashboard-client/dist/assets/{index-BBhaR8pI.js → index-B_kzahbc.js} +3 -3
  52. package/extensions/dashboard-client/dist/assets/{index-BBhaR8pI.js.map → index-B_kzahbc.js.map} +1 -1
  53. package/extensions/dashboard-client/dist/assets/{index-CfnincWA.css → index-D7CJBr8R.css} +1 -1
  54. package/extensions/dashboard-client/dist/assets/{switch-WUfyEw15.js → switch-DNWt87O5.js} +2 -2
  55. package/extensions/dashboard-client/dist/assets/{switch-WUfyEw15.js.map → switch-DNWt87O5.js.map} +1 -1
  56. package/extensions/dashboard-client/dist/assets/{toggle-CoNdXeaQ.js → toggle-DtGss60d.js} +2 -2
  57. package/extensions/dashboard-client/dist/assets/{toggle-CoNdXeaQ.js.map → toggle-DtGss60d.js.map} +1 -1
  58. package/extensions/dashboard-client/dist/assets/{useSSE-5AzRO3h7.js → useSSE-C_Fh-YIQ.js} +2 -2
  59. package/extensions/dashboard-client/dist/assets/{useSSE-5AzRO3h7.js.map → useSSE-C_Fh-YIQ.js.map} +1 -1
  60. package/extensions/dashboard-client/dist/index.html +2 -2
  61. package/extensions/dashboard-client/src/components/SessionContextGauges.tsx +2 -4
  62. package/extensions/dashboard-client/src/styles/session-gauges.css +15 -11
  63. package/package.json +1 -1
  64. package/extensions/dashboard-client/dist/assets/MetricsTab-Bp-FbUfh.js +0 -2
  65. package/extensions/dashboard-client/dist/assets/OverviewTab-C7kYy6VF.js.map +0 -1
  66. package/extensions/dashboard-client/dist/assets/TurnsTab-DuJmr4S6.js +0 -2
@@ -1 +1 @@
1
- *,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,ui-monospace,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--bg: 222 47% 5%;--bg-card: 222 32% 8%;--bg-elevated: 222 28% 12%;--border: 217 33% 17%;--foreground: 210 40% 98%;--muted: 215 20% 65%;--primary: 217 91% 60%;--primary-glow: 217 91% 60%;--success: 142 71% 45%;--warning: 38 92% 50%;--danger: 0 84% 60%;--accent: 280 100% 70%;--radius: .75rem}*{border-color:hsl(var(--border))}html{background-color:hsl(var(--bg));color:hsl(var(--foreground));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:hsl(var(--bg));font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:hsl(var(--foreground));margin:0}h1,h2,h3,h4,h5,h6{font-family:JetBrains Mono,ui-monospace,monospace}:where(button,[role=tab],a):focus-visible{outline:2px solid hsl(var(--primary) / .6);outline-offset:2px}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:1.5rem;padding-left:1.5rem}@media (min-width: 100%){.container{max-width:100%}}.glass-panel{position:relative;border-radius:var(--radius);border-width:1px;border-color:hsl(var(--border));background-color:hsl(var(--bg-card) / .7);--tw-backdrop-blur: blur(12px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);box-shadow:inset 0 1px hsl(var(--border) / .5),var(--tw-shadow, 0 8px 30px -12px hsl(var(--bg) / .6))}.electric-hover{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.electric-hover:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-color:hsl(var(--primary) / .7);box-shadow:0 0 20px -4px hsl(var(--primary-glow) / .45)}.electric-hover:focus-visible{outline:2px solid hsl(var(--primary) / .6);outline-offset:2px}.glow-primary{box-shadow:0 0 20px -4px hsl(var(--primary-glow) / .5)}.text-neon{color:hsl(var(--primary))}.gradient-text{background:linear-gradient(120deg,hsl(var(--primary)),hsl(var(--accent)));-webkit-background-clip:text;background-clip:text;color:transparent}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-3{left:.75rem;right:.75rem}.bottom-16{bottom:4rem}.bottom-3{bottom:.75rem}.left-2{left:.5rem}.right-2{right:.5rem}.top-0{top:0}.top-2{top:.5rem}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-2{height:.5rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-full{height:100%}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-56{max-height:14rem}.max-h-64{max-height:16rem}.max-h-72{max-height:18rem}.max-h-96{max-height:24rem}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-1\/3{width:33.333333%}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-40{width:10rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-9{width:2.25rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[8rem\]{min-width:8rem}.max-w-3xl{max-width:48rem}.max-w-\[180px\]{max-width:180px}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-0\.5{row-gap:.125rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-border>:not([hidden])~:not([hidden]){border-color:hsl(var(--border))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-accent\/40{border-color:hsl(var(--accent) / .4)}.border-amber-500\/30{border-color:#f59e0b4d}.border-border{border-color:hsl(var(--border))}.border-border\/30{border-color:hsl(var(--border) / .3)}.border-border\/40{border-color:hsl(var(--border) / .4)}.border-border\/50{border-color:hsl(var(--border) / .5)}.border-border\/60{border-color:hsl(var(--border) / .6)}.border-danger\/40{border-color:hsl(var(--danger) / .4)}.border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-primary\/40{border-color:hsl(var(--primary) / .4)}.border-primary\/50{border-color:hsl(var(--primary) / .5)}.border-red-500\/50{border-color:#ef444480}.border-success\/40{border-color:hsl(var(--success) / .4)}.border-transparent{border-color:transparent}.border-warning\/40{border-color:hsl(var(--warning) / .4)}.bg-accent\/15{background-color:hsl(var(--accent) / .15)}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-amber-500\/5{background-color:#f59e0b0d}.bg-background{background-color:hsl(var(--bg))}.bg-bg-card{background-color:hsl(var(--bg-card))}.bg-bg-elevated{background-color:hsl(var(--bg-elevated))}.bg-bg-elevated\/20{background-color:hsl(var(--bg-elevated) / .2)}.bg-bg-elevated\/30{background-color:hsl(var(--bg-elevated) / .3)}.bg-bg-elevated\/40{background-color:hsl(var(--bg-elevated) / .4)}.bg-bg-elevated\/50{background-color:hsl(var(--bg-elevated) / .5)}.bg-bg-elevated\/60{background-color:hsl(var(--bg-elevated) / .6)}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-current{background-color:currentColor}.bg-danger{background-color:hsl(var(--danger))}.bg-danger\/15{background-color:hsl(var(--danger) / .15)}.bg-foreground,.bg-muted-foreground{background-color:hsl(var(--foreground))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary) / .1)}.bg-primary\/15{background-color:hsl(var(--primary) / .15)}.bg-success{background-color:hsl(var(--success))}.bg-success\/15{background-color:hsl(var(--success) / .15)}.bg-transparent{background-color:transparent}.bg-warning\/10{background-color:hsl(var(--warning) / .1)}.bg-warning\/15{background-color:hsl(var(--warning) / .15)}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pl-5{padding-left:1.25rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-2{padding-top:.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.font-heading,.font-mono{font-family:JetBrains Mono,ui-monospace,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal: ordinal;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.text-accent{color:hsl(var(--accent))}.text-amber-400{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.text-danger{color:hsl(var(--danger))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/90{color:hsl(var(--foreground) / .9)}.text-muted{color:hsl(var(--muted))}.text-muted-foreground{color:hsl(var(--foreground))}.text-muted-foreground\/50{color:hsl(var(--foreground) / .5)}.text-muted-foreground\/60{color:hsl(var(--foreground) / .6)}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{--tw-text-opacity: 1;color:hsl(222 47% 5% / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-success{color:hsl(var(--success))}.text-warning{color:hsl(var(--warning))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.accent-primary{accent-color:hsl(var(--primary))}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-panel{--tw-shadow: 0 8px 30px -12px hsl(var(--bg) / .6);--tw-shadow-colored: 0 8px 30px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.focus\:text-neon:focus{color:hsl(var(--primary))}.data-\[state\=active\]\:text-neon[data-state=active]{color:hsl(var(--primary))}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--foreground))}.last\:border-0:last-child{border-width:0px}.hover\:bg-bg-elevated:hover{background-color:hsl(var(--bg-elevated))}.hover\:bg-bg-elevated\/40:hover{background-color:hsl(var(--bg-elevated) / .4)}.hover\:bg-foreground\/5:hover{background-color:hsl(var(--foreground) / .05)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-red-500\/10:hover{background-color:#ef44441a}.hover\:text-foreground:hover,.hover\:text-muted-foreground:hover{color:hsl(var(--foreground))}.hover\:text-red-300:hover{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.hover\:ring-1:hover{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.hover\:ring-primary\/60:hover{--tw-ring-color: hsl(var(--primary) / .6)}.focus\:border-primary:focus{border-color:hsl(var(--primary))}.focus\:bg-primary\/15:focus{background-color:hsl(var(--primary) / .15)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-primary\/60:focus{--tw-ring-color: hsl(var(--primary) / .6)}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-primary\/60:focus-visible{--tw-ring-color: hsl(var(--primary) / .6)}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x: 1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0\.5[data-state=unchecked]{--tw-translate-x: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=active\]\:bg-primary\/15[data-state=active]{background-color:hsl(var(--primary) / .15)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=unchecked\]\:bg-bg-elevated[data-state=unchecked]{background-color:hsl(var(--bg-elevated))}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}@media (min-width: 640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 768px){.md\:col-span-2{grid-column:span 2 / span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:pb-4{padding-bottom:1rem}}@media (min-width: 1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:px-6{padding-left:1.5rem;padding-right:1.5rem}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}:root{--bg: #0d1117;--panel: #161b22;--border: #30363d;--text: #e6edf3;--muted: #8b949e;--accent: #58a6ff;--ok: #3fb950;--warn: #d29922;--err: #f85149;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(13px,.9vw,16px)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}.dashboard-app{width:100%;max-width:100vw;margin:0 auto;padding:clamp(8px,2vw,24px)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:clamp(8px,1.5vw,16px)}.dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.dashboard-header h1{font-size:clamp(16px,1.4vw,22px);font-weight:600;margin:0}.dashboard-header .tier,.dashboard-header .version-pill{display:inline-block;margin-left:8px;padding:2px 8px;font-size:clamp(10px,.8vw,12px);border-radius:10px;background:var(--panel);border:1px solid var(--border);color:var(--muted)}.dashboard-header .tier{color:var(--accent)}.view-toggle-btn{background:var(--panel);border:1px solid var(--border);color:var(--muted);padding:4px 12px;font-size:clamp(11px,.8vw,13px);border-radius:8px;cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s}.view-toggle-btn:hover{color:var(--text);border-color:var(--accent)}.view-toggle-btn[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.view-toggle-wrap{position:fixed;top:12px;right:16px;z-index:50}.consolidated-nav{display:flex;gap:4px;overflow-x:auto;flex-wrap:nowrap;border-bottom:1px solid var(--border);margin-bottom:clamp(8px,1vw,16px);padding-bottom:2px}.consolidated-nav button{background:none;border:none;color:var(--muted);padding:8px 14px;cursor:pointer;font-size:clamp(12px,.85vw,14px);white-space:nowrap;border-bottom:2px solid transparent}.consolidated-nav button.active{color:var(--text);border-bottom-color:var(--accent)}.consolidated-nav button:hover{color:var(--text)}.tab-bar{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:clamp(8px,1vw,16px);overflow-x:auto;flex-wrap:nowrap}.tab-bar button{background:none;border:none;color:var(--muted);padding:8px 14px;cursor:pointer;font-size:clamp(12px,.85vw,14px);border-bottom:2px solid transparent;white-space:nowrap}.tab-bar button.active{color:var(--text);border-bottom-color:var(--accent)}.tab-bar button:hover{color:var(--text)}.tab-bar .advanced-toggle{background:none;border:none;color:var(--muted);padding:8px 14px;cursor:pointer;font-size:clamp(12px,.85vw,14px);border-bottom:2px solid transparent;white-space:nowrap;margin-left:6px}.tab-bar .advanced-toggle:hover{color:var(--text)}.tab-bar .advanced-toggle[aria-expanded=true]{color:var(--text);border-bottom-color:var(--border)}.tab-bar .advanced-tabs{display:flex;gap:4px;flex-basis:100%;border-top:1px dashed var(--border);padding-top:6px;margin-top:-1px}.dashboard-content{min-height:400px}.loading-spinner{display:flex;align-items:center;justify-content:center;padding:48px;color:var(--muted)}.error-fallback{padding:24px;border:1px solid var(--err);border-radius:8px;background:#f8514914}.error-fallback button{margin-top:12px;padding:6px 14px;background:var(--panel);border:1px solid var(--border);color:var(--text);border-radius:6px;cursor:pointer}.tab-stub{padding:32px;color:var(--muted);border:1px dashed var(--border);border-radius:8px;text-align:center}.repos{width:100%;border-collapse:collapse;font-size:clamp(12px,.8vw,14px)}.repos th,.repos td{padding:6px 10px;border-bottom:1px solid var(--border-soft, var(--border));text-align:left}.repos th{background:var(--bg);position:sticky;top:0}.table-wrap{overflow-x:auto}@media (max-width: 640px){.card-grid{grid-template-columns:1fr}.tab-bar button{padding:6px 10px;font-size:12px}}@media (min-width: 641px) and (max-width: 1024px){.card-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1025px){.card-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}}@media (min-width: 1601px){.card-grid{grid-template-columns:repeat(4,1fr)}}.overview-tab{display:flex;flex-direction:column;gap:12px}.overview-header{display:flex;align-items:center;gap:12px}.tier-pill{padding:2px 10px;font-size:12px;border-radius:10px;background:var(--panel);border:1px solid var(--border);color:var(--accent)}.updated{color:var(--muted);font-size:12px}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.card{padding:14px 16px;background:var(--panel);border:1px solid var(--border);border-radius:8px}.card h3{margin:0 0 10px;font-size:13px;color:var(--muted);font-weight:600}.gauge-bar{height:10px;background:var(--bg);border-radius:5px;overflow:hidden;border:1px solid var(--border)}.gauge-fill{height:100%;transition:width .4s ease}.gauge-green .gauge-fill{background:var(--ok)}.gauge-yellow .gauge-fill{background:var(--warn)}.gauge-red .gauge-fill{background:var(--err)}.gauge-label{margin:8px 0 0;font-size:12px;color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat{display:flex;flex-direction:column;gap:2px}.stat-label{font-size:11px;color:var(--muted);text-transform:uppercase}.stat-value{font-size:16px;font-weight:600}.stat-highlight .stat-value{color:var(--ok)}.bullet-row{display:flex;gap:14px;margin-bottom:8px}.bullet{display:flex;align-items:center;gap:6px;font-size:13px}.bullet-dot{width:8px;height:8px;border-radius:50%;background:var(--muted)}.bullet-on .bullet-dot{background:var(--ok);box-shadow:0 0 6px var(--ok)}.bullet-off .bullet-dot{background:var(--border)}.bullet-on .bullet-label{color:var(--text)}.bullet-off .bullet-label{color:var(--muted)}.trigger-detail{margin:4px 0;font-size:12px;color:var(--muted)}.state-badge{display:inline-block;padding:2px 10px;font-size:12px;border-radius:10px;background:var(--bg);border:1px solid var(--border)}.state-idle,.state-none{color:var(--muted)}.state-compacting{color:var(--warn);border-color:var(--warn)}.persisted-tag{margin-left:8px;font-size:11px;color:var(--ok)}.events-tab{display:flex;flex-direction:column;gap:10px}.events-header{display:flex;align-items:center;gap:14px}.sse-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.sse-dot{width:8px;height:8px;border-radius:50%;background:var(--muted)}.sse-connected .sse-dot{background:var(--ok);box-shadow:0 0 6px var(--ok)}.sse-connecting .sse-dot{background:var(--warn)}.sse-disconnected .sse-dot,.sse-error .sse-dot{background:var(--err)}.event-count{color:var(--muted);font-size:12px}.event-filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px}.filter-chip{padding:3px 10px;font-size:11px;border:1px solid var(--border);background:var(--bg);color:var(--muted);border-radius:12px;cursor:pointer}.filter-chip.active{color:var(--text);border-color:var(--accent);background:var(--panel)}.event-list{list-style:none;margin:0;padding:0;max-height:60vh;overflow-y:auto}.event-row{display:grid;grid-template-columns:70px 150px 1fr;gap:8px;padding:6px 10px;border-bottom:1px solid var(--border);font-size:12px;cursor:pointer}.event-row:hover{background:var(--panel)}.ev-time{color:var(--muted)}.ev-type{font-size:11px;padding:1px 6px;border-radius:8px;background:var(--bg);border:1px solid var(--border);color:var(--muted);text-align:center}.ev-compact .ev-type{color:var(--accent);border-color:var(--accent)}.ev-trigger .ev-type{color:var(--warn);border-color:var(--warn)}.ev-tier .ev-type{color:var(--muted)}.ev-checkpoint .ev-type{color:var(--ok);border-color:var(--ok)}.ev-recall .ev-type{color:#d2a8ff;border-color:#d2a8ff}.ev-config .ev-type{color:var(--text)}.ev-crew .ev-type{color:#79c0ff;border-color:#79c0ff}.ev-game .ev-type{color:var(--warn)}.ev-summary{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ev-detail{grid-column:1 / -1;margin:6px 0 0;padding:8px;background:var(--bg);border-radius:4px;font-size:11px;color:var(--muted);white-space:pre-wrap}.event-empty{padding:24px;color:var(--muted);text-align:center}@media (max-width: 768px){.card-grid{grid-template-columns:1fr}.event-row{grid-template-columns:60px 110px 1fr;font-size:11px}}.summary-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:16px}.tile{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:var(--panel);border:1px solid var(--border);border-radius:8px}.tile-label{font-size:11px;color:var(--muted);text-transform:uppercase}.tile-value{font-size:20px;font-weight:600}.tile-highlight .tile-value{color:var(--ok)}.repo-table-wrap{overflow-x:auto}.repo-search{width:100%;padding:8px 10px;margin-bottom:10px;background:var(--panel);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:13px}.repo-table{width:100%;border-collapse:collapse;font-size:13px}.repo-table th{text-align:left;padding:6px 10px;border-bottom:1px solid var(--border)}.repo-table td{padding:8px 10px;border-bottom:1px solid var(--border)}.repo-table tr{cursor:pointer}.repo-table tbody tr:hover{background:var(--panel)}.sort-header{background:none;border:none;color:var(--muted);font-size:12px;font-weight:600;cursor:pointer;padding:0}.sort-header.active-asc,.sort-header.active-desc{color:var(--text)}.sort-arrow{color:var(--accent)}.repo-name{font-weight:600}.repo-model{color:var(--muted)}.modal-backdrop{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:20px 24px;max-width:560px;width:90%;max-height:80vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:18px}.modal-close{background:none;border:none;color:var(--muted);font-size:22px;cursor:pointer;padding:0 4px}.modal-close:hover{color:var(--text)}.modal-path{font-size:11px;color:var(--muted);margin:4px 0 12px;word-break:break-all}.modal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.modal-stat{display:flex;flex-direction:column;gap:2px}.modal-label{font-size:11px;color:var(--muted);text-transform:uppercase}.modal-value{font-size:16px;font-weight:600}.modal-highlight .modal-value{color:var(--ok)}.modal-card h3{font-size:13px;color:var(--muted);margin:16px 0 6px}.modal-dl{display:grid;grid-template-columns:130px 1fr;gap:4px 12px;margin:0}.modal-dl dt{color:var(--muted);font-size:12px}.modal-dl dd{margin:0;font-size:13px}.model-badge{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:8px;padding:12px 14px;background:var(--panel);border:1px solid var(--border);border-radius:8px;margin-bottom:12px}.model-field{display:flex;flex-direction:column;gap:2px}.model-field-label{font-size:11px;color:var(--muted);text-transform:uppercase}.model-field-value{font-size:14px;font-weight:600}.perf-chart{display:flex;flex-direction:column;gap:12px}.perf-header{display:flex;justify-content:space-between;align-items:center}.perf-header h3{margin:0;font-size:13px;color:var(--muted)}.perf-window{font-size:11px;color:var(--muted)}.perf-grid,.perf-resources{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.perf-resources{padding-top:10px;border-top:1px solid var(--border)}.perf-metric{display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:var(--panel);border:1px solid var(--border);border-radius:6px}.perf-label{font-size:11px;color:var(--muted)}.perf-value{font-size:15px;font-weight:600}.perf-bar-track{height:6px;background:var(--bg);border-radius:3px;overflow:hidden}.perf-bar-fill{height:100%;transition:width .4s ease}.perf-blue .perf-bar-fill{background:var(--accent)}.perf-purple .perf-bar-fill{background:#d2a8ff}.perf-green .perf-bar-fill{background:var(--ok)}.perf-yellow .perf-bar-fill{background:var(--warn)}.perf-diag{display:flex;flex-wrap:wrap;gap:14px;padding-top:10px;border-top:1px solid var(--border)}@media (max-width: 768px){.modal-grid,.model-badge{grid-template-columns:1fr 1fr}}.section-header{font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:20px 0 10px;font-weight:600}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.active-repos-table,.savings-table{width:100%;border-collapse:collapse;font-size:13px}.active-repos-table th,.savings-table th{text-align:left;padding:6px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.active-repos-table th.num,.savings-table th.num{text-align:right}.active-repos-table td,.savings-table td{padding:6px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.active-repos-table td.num,.savings-table td.num{text-align:right;font-family:monospace}.active-repos-table tbody tr:hover,.savings-table tbody tr:hover{background:var(--panel)}.savings-table .repo-model{font-weight:600}.repo-empty{text-align:center;color:var(--muted);padding:24px}.active-repos-section{margin-bottom:8px}.savings-by-model{margin-bottom:16px}@media (max-width: 640px){.active-repos-table{min-width:900px}.savings-table{min-width:1200px}}@media (min-width: 641px) and (max-width: 1024px){.savings-table{min-width:1000px}}.overview-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.ov-stat-row{display:flex;justify-content:space-between;align-items:baseline;padding:4px 0;border-bottom:1px solid var(--border);font-size:clamp(13px,1vw,17px)}.ov-stat-label{color:var(--muted);font-size:12px;cursor:help}.ov-stat-value{font-weight:600;color:var(--text);font-family:monospace}.ov-stat-value-green{color:var(--ok)}.ov-stat-value-yellow{color:var(--warn)}.ov-stat-value-red{color:var(--err)}.ov-value-ok{color:var(--ok)!important}.ov-compression-meter{margin-top:10px}.meter-track{height:clamp(6px,.6vw,10px);background:var(--bg);border-radius:5px;overflow:hidden;border:1px solid var(--border)}.meter-fill{height:100%;transition:width .4s ease;border-radius:4px}.meter-green{background:var(--ok)}.meter-yellow{background:var(--warn)}.meter-red{background:var(--err)}.meter-sub{display:block;margin-top:4px;font-size:11px;color:var(--muted)}.bullet-na .bullet-dot{background:var(--warn);box-shadow:0 0 6px var(--warn)}.bullet-na .bullet-label{color:var(--warn)}.trigger-state-text{margin:6px 0 0;font-size:12px;color:var(--muted)}.data-safety-card .safe-note{margin:10px 0 0;padding:8px;font-size:11px;color:var(--muted);background:#3fb9500f;border-radius:6px;border:1px solid rgba(63,185,80,.2)}.model-cost-card .ov-cost-usd{font-size:clamp(16px,1.4vw,22px);font-weight:700;color:#a371f7;margin-bottom:2px}.model-cost-card .ov-cost-sub{font-size:12px;color:var(--muted);margin-bottom:8px}.crew-card .ov-stat-value{font-family:inherit}.legend-card{grid-column:1 / -1}.legend-card details{cursor:pointer}.legend-card summary{font-size:13px;color:var(--muted);font-weight:600;margin-bottom:4px}.legend-list{margin:8px 0;padding-left:20px;font-size:12px;color:var(--muted);line-height:1.6}.legend-list li{margin-bottom:4px}.legend-list b{color:var(--text)}.legend-note{font-size:11px;color:var(--dim);font-style:italic}.cache-tab{display:flex;flex-direction:column;gap:12px}@media (max-width: 640px){.overview-card-grid{grid-template-columns:1fr}}@media (min-width: 1025px){.overview-card-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1601px){.overview-card-grid{grid-template-columns:repeat(4,1fr);font-size:clamp(13px,.9vw,16px)}}.config-tab{display:flex;flex-direction:column;gap:16px}.config-settings,.config-display{padding:14px 16px;background:var(--panel);border:1px solid var(--border);border-radius:8px}.config-settings h3,.config-display h3{margin:0 0 12px;font-size:clamp(12px,1vw,14px);color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.settings-row{margin-bottom:10px}.settings-row:last-child{margin-bottom:0}.settings-row label{display:flex;align-items:center;gap:8px;font-size:clamp(13px,.9vw,15px);color:var(--text);cursor:pointer}.settings-row select{padding:4px 8px;font-size:clamp(12px,.85vw,14px);background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;cursor:pointer}.settings-row select:disabled{opacity:.5;cursor:not-allowed}.settings-row input[type=checkbox]{width:16px;height:16px;cursor:pointer}.config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:10px}.config-item{display:flex;flex-direction:column;gap:3px;padding:8px 10px;background:var(--bg);border:1px solid var(--border);border-radius:6px}.config-label{font-size:clamp(11px,.75vw,13px);color:var(--muted);text-transform:uppercase;letter-spacing:.4px}.config-value{font-size:clamp(13px,1vw,16px);font-weight:600;color:var(--text)}.event-category-filter{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.category-chip{padding:3px 10px;font-size:clamp(11px,.75vw,13px);border:1px solid var(--border);background:var(--bg);color:var(--muted);border-radius:12px;cursor:pointer;text-transform:capitalize;transition:color .15s,border-color .15s,background .15s}.category-chip:hover{color:var(--text)}.category-chip.active{color:var(--text);border-color:var(--accent);background:var(--panel)}@media (max-width: 640px){.config-grid{grid-template-columns:1fr}.settings-row label{flex-direction:column;align-items:flex-start;gap:4px}.settings-row select{width:100%}}:root{--mega: #f0883e;--mega-gold: #ffd700;--game-blue: #1f6feb;--game-purple: #a371f7}.game-tab{display:flex;flex-direction:column;gap:12px}.game-mode-on{--accent: var(--mega)}.mega-cache-banner{display:block;background:linear-gradient(135deg,var(--mega),var(--mega-gold));color:#1a1006;font-weight:700;padding:10px 14px;border-radius:8px;margin:12px 0;font-size:clamp(13px,1vw,16px);animation:mega-banner-shimmer 3s ease-in-out infinite}@keyframes mega-banner-shimmer{0%,to{filter:brightness(1)}50%{filter:brightness(1.15)}}.mega-cache-toast{display:none;position:fixed;top:16px;left:50%;transform:translate(-50%);background:var(--mega);color:#1a1006;font-weight:700;padding:10px 18px;border-radius:8px;z-index:1000;box-shadow:0 4px 20px #0008;max-width:92vw}.mega-cache-toast.show{display:block;animation:mega-flash .6s ease-in-out 2}@keyframes mega-flash{0%{background:transparent}25%{background:var(--mega-gold)}to{background:transparent}}.achievement-tile{display:none;background:linear-gradient(135deg,var(--mega),var(--mega-gold));color:#1a1006;font-weight:700;padding:12px 16px;border-radius:8px;margin:12px 0;box-shadow:0 0 16px #f0883e88;font-size:clamp(13px,1vw,16px)}.achievement-tile.unlocked{display:block}.achievement-tile .ach-detail{display:block;font-weight:500;font-size:12px;margin-top:4px}.game-leaderboards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.lb-card{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:14px}.lb-card h3{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:0 0 10px;font-weight:600;display:flex;align-items:center;gap:4px}.lb-card table{width:100%;border-collapse:collapse;font-size:13px}.lb-card td{padding:4px 8px;border-bottom:1px solid var(--border)}.lb-card td.num{text-align:right;font-family:monospace;color:var(--text);font-weight:600}.lb-card .lb-meta{color:var(--muted);font-size:11px;margin-left:6px}.lb-empty{color:var(--muted);font-size:12px;padding:8px 0}.lvl-badge{display:inline-block;background:var(--game-blue);color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;margin-left:8px}.repos-badge-line{margin-top:8px}.repos-badge{display:inline-block;background:var(--game-blue);color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px}.game-empty{color:var(--muted);font-style:italic;padding:12px 0}.ach-section{position:relative}.ach-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;margin:8px 0 16px}.ach-tile{padding:10px 12px;border-radius:8px;border:1px solid var(--border);font-size:12px;background:var(--panel)}.ach-tile.unlocked{background:linear-gradient(135deg,var(--mega),var(--mega-gold));color:#1a1006;font-weight:700;box-shadow:0 0 12px #f0883e66}.ach-tile.locked{opacity:.55}.ach-tile.just-unlocked{animation:ach-unlock-pulse .6s ease-out}.ach-tile .ach-detail{display:block;font-weight:500;font-size:11px;margin-top:3px}@keyframes ach-unlock-pulse{0%{transform:scale(.9);opacity:.4}60%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}.ach-toast{display:none;position:fixed;top:16px;left:50%;transform:translate(-50%);background:var(--game-blue);color:#fff;font-weight:700;padding:10px 18px;border-radius:8px;z-index:1000;box-shadow:0 4px 20px #0008;max-width:92vw}.ach-toast.show{display:block}.achievements-tab{display:flex;flex-direction:column;gap:12px}.achievements-tab h2{font-size:clamp(16px,1.4vw,22px);margin:0}@media (max-width: 640px){.game-leaderboards{grid-template-columns:1fr}}@media (min-width: 1601px){.game-leaderboards{gap:20px}}.sessions-tab{display:flex;flex-direction:column;gap:14px}.sessions-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0}.sessions-toolbar h2{margin:0;font-size:14px;font-weight:600;color:var(--text)}.sessions-window-select{display:inline-flex;gap:2px;padding:2px;background:var(--panel);border:1px solid var(--border);border-radius:6px}.sessions-window-btn{padding:4px 10px;background:transparent;border:none;border-radius:4px;color:var(--muted);font-size:12px;cursor:pointer;transition:background .15s,color .15s}.sessions-window-btn:hover{color:var(--text)}.sessions-window-btn.active{background:var(--accent);color:#0d1117;font-weight:600}.sessions-summary-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.sessions-chart{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:12px}.sessions-chart-empty,.sessions-empty{display:flex;align-items:center;justify-content:center;min-height:160px;color:var(--muted);font-size:14px;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:32px;text-align:center}.sessions-table-scroll{overflow-x:auto;background:var(--panel);border:1px solid var(--border);border-radius:8px}.sessions-table{width:100%;border-collapse:collapse;font-size:13px}.sessions-table th,.sessions-table td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.sessions-table th{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);background:#ffffff05;position:sticky;top:0}.sessions-table td.num{text-align:right;font-variant-numeric:tabular-nums}.sessions-table tr:last-child td{border-bottom:none}.sessions-table tr:hover td{background:#58a6ff0f}.sessions-empty-row td{color:var(--muted);font-style:italic;text-align:center}.sessions-pct-pill{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.sessions-pct-ok{background:#3fb95026;color:var(--ok)}.sessions-pct-warn{background:#d2992226;color:var(--warn)}.sessions-pct-err{background:#f8514926;color:var(--err)}.sessions-sparkline{display:inline-block;vertical-align:middle}.sessions-sparkline-empty{color:var(--muted);font-size:11px}.sessions-meta{font-size:11px;color:var(--muted)}.sessions-footer{font-size:11px;color:var(--muted);margin-top:6px}@media (max-width: 640px){.sessions-summary-tiles{grid-template-columns:1fr}.sessions-table th,.sessions-table td{font-size:12px;padding:6px 8px}}.repo-stack-card{display:flex;flex-direction:column;gap:10px}.repo-stack-card h3{margin:0;font-size:14px;font-weight:600;color:var(--text)}.repo-stack-bar{display:flex;width:100%;height:22px;border-radius:6px;overflow:hidden;border:1px solid var(--border);background:var(--bg)}.repo-stack-segment{height:100%;min-width:2px;transition:opacity .15s,filter .15s}.repo-stack-segment:hover{opacity:.85;filter:brightness(1.15)}.repo-stack-total{font-size:13px;color:var(--text);font-variant-numeric:tabular-nums}.repo-stack-total .pct{color:var(--muted)}.repo-stack-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:6px}.repo-stack-legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.repo-stack-legend-swatch{flex-shrink:0;width:12px;height:12px;border-radius:3px;border:1px solid var(--border)}.repo-stack-legend-name{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 640px){.repo-stack-legend{grid-template-columns:1fr}}.session-gauges-card{grid-column:1 / -1}.session-gauges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.session-gauges-scroll{overflow-x:auto}.session-gauge{display:flex;flex-direction:column;gap:8px;padding:14px 16px;background:var(--bg);border:1px solid var(--border);border-radius:8px}.session-gauge-self{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg))}.session-gauge-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.session-gauge-label{font-size:14px;font-weight:600;line-height:1.25;color:var(--text);min-width:0}.session-gauge-self .session-gauge-label{color:var(--accent)}.session-gauge-pct{font-size:20px;font-weight:700;line-height:1.1;color:var(--muted);white-space:nowrap;flex-shrink:0}.session-gauges-grid .gauge-bar{height:12px}.session-gauge-sub{margin:0;font-size:14px;font-weight:500;color:var(--text)}.session-gauge-meta{margin:0;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 640px){.session-gauges-grid{grid-template-columns:1fr}}.maintenance-tab{display:flex;flex-direction:column;gap:12px}.card-header{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:10px;display:flex;align-items:center;gap:8px}.card-body{font-size:13px}.stat-section{margin-bottom:12px}.stat-section:last-child{margin-bottom:0}.stat-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px}.stat-row{display:flex;justify-content:space-between;align-items:baseline;padding:3px 0;border-bottom:1px solid var(--border);font-size:13px}.num{text-align:right;font-family:monospace;font-weight:600}.compact-table{width:100%;border-collapse:collapse;font-size:13px}.compact-table th{text-align:left;padding:4px 6px;border-bottom:1px solid var(--border);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--muted)}.compact-table th.num{text-align:right}.compact-table td{padding:3px 6px;border-bottom:1px solid var(--border)}.compact-table td.num{text-align:right;font-family:monospace;font-weight:600}.compact-table tbody tr:last-child td{border-bottom:none}.text-muted{color:var(--muted)}.text-error{color:var(--err)}.text-ok{color:var(--ok)}.text-warn{color:var(--warn)}.text-mono{font-family:monospace;font-size:12px}.badge{display:inline-block;padding:1px 8px;font-size:10px;font-weight:700;border-radius:8px;text-transform:uppercase;letter-spacing:.3px}.badge-ok{background:color-mix(in srgb,var(--ok) 20%,transparent);color:var(--ok);border:1px solid var(--ok)}.badge-bad{background:color-mix(in srgb,var(--err) 20%,transparent);color:var(--err);border:1px solid var(--err)}.badge-warn{background:color-mix(in srgb,var(--warn) 20%,transparent);color:var(--warn);border:1px solid var(--warn)}.action-grid{display:grid;grid-template-columns:1fr;gap:8px}.action-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:6px}.action-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.action-label{font-size:13px;font-weight:600;color:var(--text);display:flex;align-items:center;gap:6px}.action-desc{font-size:11px;color:var(--muted)}.action-result{font-size:11px;margin-top:2px}.action-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.btn{padding:5px 14px;font-size:12px;font-weight:600;border:none;border-radius:6px;cursor:pointer;white-space:nowrap;transition:opacity .15s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#0d1117}.btn-danger{background:var(--err);color:#fff}.days-input{width:60px;padding:4px 6px;font-size:12px;background:var(--panel);border:1px solid var(--border);border-radius:4px;color:var(--text);text-align:center}.days-input:disabled{opacity:.5}@media (max-width: 640px){.action-item{flex-direction:column;align-items:stretch;gap:8px}.action-controls{justify-content:flex-end}}.ov-stripe-health-summary{display:flex;gap:12px;align-items:center;margin-bottom:12px;font-size:clamp(11px,.85vw,14px);flex-wrap:wrap}.ov-stripe-health-badge{display:inline-block;padding:2px 10px;border-radius:10px;background:var(--panel);border:1px solid var(--border);font-weight:600;text-transform:capitalize}.ov-text-green{color:var(--ok)}.ov-text-yellow{color:var(--warn)}.ov-text-orange{color:#d4761e}.ov-text-red{color:var(--err)}.ov-text-gray,.ov-stripe-health-score,.ov-stripe-churn,.ov-stripe-total{color:var(--muted)}.ov-stripe-bars{display:flex;flex-direction:column;gap:6px}.ov-stripe-row{display:grid;grid-template-columns:80px 1fr 40px 48px;align-items:center;gap:8px;font-size:clamp(11px,.8vw,13px)}.ov-stripe-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.ov-bar-track{height:18px;background:var(--bg);border-radius:4px;overflow:hidden;position:relative}.ov-bar-fill{height:100%;border-radius:4px;transition:width .5s ease;min-width:2px}.ov-bar-green{background:var(--ok)}.ov-bar-blue{background:var(--accent)}.ov-bar-teal{background:#3d9cb0}.ov-bar-yellow{background:var(--warn)}.ov-bar-gray{background:var(--muted)}.ov-bar-red{background:var(--err)}.ov-bar-orange{background:#d4761e}.ov-bar-latest{box-shadow:0 0 6px #ffffff80}.ov-stripe-count{text-align:right;color:var(--text);font-variant-numeric:tabular-nums}.ov-stripe-stability{color:var(--muted);font-size:clamp(10px,.75vw,12px)}.ov-stripe-footer{margin-top:10px;font-size:clamp(10px,.75vw,12px);color:var(--muted);display:flex;gap:8px}.ov-perf-summary{display:flex;gap:14px;align-items:center;margin-bottom:10px;font-size:clamp(11px,.85vw,14px);flex-wrap:wrap}.ov-perf-stat strong{font-variant-numeric:tabular-nums}.ov-sparkline{display:flex;align-items:flex-end;gap:3px;height:60px;padding:4px 2px;margin-bottom:6px}.ov-sparkline-bar{flex:1;min-width:4px;border-radius:2px 2px 0 0;transition:height .4s ease}.ov-empty-state{font-size:clamp(11px,.8vw,13px);color:var(--muted);padding:16px 0;text-align:center}.ov-card-footer{font-size:clamp(10px,.75vw,12px);color:var(--muted);margin-top:4px}.ov-card{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:clamp(8px,1.5vw,16px)}.ov-card-title{margin:0 0 10px;font-size:clamp(13px,.9vw,15px);font-weight:600}
1
+ *,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,ui-monospace,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--bg: 222 47% 5%;--bg-card: 222 32% 8%;--bg-elevated: 222 28% 12%;--border: 217 33% 17%;--foreground: 210 40% 98%;--muted: 215 20% 65%;--primary: 217 91% 60%;--primary-glow: 217 91% 60%;--success: 142 71% 45%;--warning: 38 92% 50%;--danger: 0 84% 60%;--accent: 280 100% 70%;--radius: .75rem}*{border-color:hsl(var(--border))}html{background-color:hsl(var(--bg));color:hsl(var(--foreground));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:hsl(var(--bg));font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:hsl(var(--foreground));margin:0}h1,h2,h3,h4,h5,h6{font-family:JetBrains Mono,ui-monospace,monospace}:where(button,[role=tab],a):focus-visible{outline:2px solid hsl(var(--primary) / .6);outline-offset:2px}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:1.5rem;padding-left:1.5rem}@media (min-width: 100%){.container{max-width:100%}}.glass-panel{position:relative;border-radius:var(--radius);border-width:1px;border-color:hsl(var(--border));background-color:hsl(var(--bg-card) / .7);--tw-backdrop-blur: blur(12px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);box-shadow:inset 0 1px hsl(var(--border) / .5),var(--tw-shadow, 0 8px 30px -12px hsl(var(--bg) / .6))}.electric-hover{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.electric-hover:hover{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));border-color:hsl(var(--primary) / .7);box-shadow:0 0 20px -4px hsl(var(--primary-glow) / .45)}.electric-hover:focus-visible{outline:2px solid hsl(var(--primary) / .6);outline-offset:2px}.glow-primary{box-shadow:0 0 20px -4px hsl(var(--primary-glow) / .5)}.text-neon{color:hsl(var(--primary))}.gradient-text{background:linear-gradient(120deg,hsl(var(--primary)),hsl(var(--accent)));-webkit-background-clip:text;background-clip:text;color:transparent}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-3{left:.75rem;right:.75rem}.bottom-16{bottom:4rem}.bottom-3{bottom:.75rem}.left-2{left:.5rem}.right-2{right:.5rem}.top-0{top:0}.top-2{top:.5rem}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-2{height:.5rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-full{height:100%}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-56{max-height:14rem}.max-h-64{max-height:16rem}.max-h-72{max-height:18rem}.max-h-96{max-height:24rem}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-1\/3{width:33.333333%}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-40{width:10rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-9{width:2.25rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[8rem\]{min-width:8rem}.max-w-3xl{max-width:48rem}.max-w-\[180px\]{max-width:180px}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-0\.5{row-gap:.125rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-border>:not([hidden])~:not([hidden]){border-color:hsl(var(--border))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:.75rem}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-accent\/40{border-color:hsl(var(--accent) / .4)}.border-amber-500\/30{border-color:#f59e0b4d}.border-border{border-color:hsl(var(--border))}.border-border\/30{border-color:hsl(var(--border) / .3)}.border-border\/40{border-color:hsl(var(--border) / .4)}.border-border\/50{border-color:hsl(var(--border) / .5)}.border-border\/60{border-color:hsl(var(--border) / .6)}.border-danger\/40{border-color:hsl(var(--danger) / .4)}.border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-primary\/40{border-color:hsl(var(--primary) / .4)}.border-primary\/50{border-color:hsl(var(--primary) / .5)}.border-red-500\/50{border-color:#ef444480}.border-success\/40{border-color:hsl(var(--success) / .4)}.border-transparent{border-color:transparent}.border-warning\/40{border-color:hsl(var(--warning) / .4)}.bg-accent\/15{background-color:hsl(var(--accent) / .15)}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-amber-500\/5{background-color:#f59e0b0d}.bg-background{background-color:hsl(var(--bg))}.bg-bg-card{background-color:hsl(var(--bg-card))}.bg-bg-elevated{background-color:hsl(var(--bg-elevated))}.bg-bg-elevated\/20{background-color:hsl(var(--bg-elevated) / .2)}.bg-bg-elevated\/30{background-color:hsl(var(--bg-elevated) / .3)}.bg-bg-elevated\/40{background-color:hsl(var(--bg-elevated) / .4)}.bg-bg-elevated\/50{background-color:hsl(var(--bg-elevated) / .5)}.bg-bg-elevated\/60{background-color:hsl(var(--bg-elevated) / .6)}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-current{background-color:currentColor}.bg-danger{background-color:hsl(var(--danger))}.bg-danger\/15{background-color:hsl(var(--danger) / .15)}.bg-foreground,.bg-muted-foreground{background-color:hsl(var(--foreground))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/10{background-color:hsl(var(--primary) / .1)}.bg-primary\/15{background-color:hsl(var(--primary) / .15)}.bg-success{background-color:hsl(var(--success))}.bg-success\/15{background-color:hsl(var(--success) / .15)}.bg-transparent{background-color:transparent}.bg-warning\/10{background-color:hsl(var(--warning) / .1)}.bg-warning\/15{background-color:hsl(var(--warning) / .15)}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pl-5{padding-left:1.25rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-2{padding-top:.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.font-heading,.font-mono{font-family:JetBrains Mono,ui-monospace,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal: ordinal;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.text-accent{color:hsl(var(--accent))}.text-amber-400{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.text-danger{color:hsl(var(--danger))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/90{color:hsl(var(--foreground) / .9)}.text-muted{color:hsl(var(--muted))}.text-muted-foreground{color:hsl(var(--foreground))}.text-muted-foreground\/50{color:hsl(var(--foreground) / .5)}.text-muted-foreground\/60{color:hsl(var(--foreground) / .6)}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{--tw-text-opacity: 1;color:hsl(222 47% 5% / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-success{color:hsl(var(--success))}.text-warning{color:hsl(var(--warning))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.accent-primary{accent-color:hsl(var(--primary))}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-panel{--tw-shadow: 0 8px 30px -12px hsl(var(--bg) / .6);--tw-shadow-colored: 0 8px 30px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.focus\:text-neon:focus{color:hsl(var(--primary))}.data-\[state\=active\]\:text-neon[data-state=active]{color:hsl(var(--primary))}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--foreground))}.last\:border-0:last-child{border-width:0px}.hover\:bg-bg-elevated:hover{background-color:hsl(var(--bg-elevated))}.hover\:bg-bg-elevated\/40:hover{background-color:hsl(var(--bg-elevated) / .4)}.hover\:bg-foreground\/5:hover{background-color:hsl(var(--foreground) / .05)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-red-500\/10:hover{background-color:#ef44441a}.hover\:text-foreground:hover,.hover\:text-muted-foreground:hover{color:hsl(var(--foreground))}.hover\:text-red-300:hover{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.hover\:ring-1:hover{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.hover\:ring-primary\/60:hover{--tw-ring-color: hsl(var(--primary) / .6)}.focus\:border-primary:focus{border-color:hsl(var(--primary))}.focus\:bg-primary\/15:focus{background-color:hsl(var(--primary) / .15)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-primary\/60:focus{--tw-ring-color: hsl(var(--primary) / .6)}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-primary\/60:focus-visible{--tw-ring-color: hsl(var(--primary) / .6)}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x: 1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0\.5[data-state=unchecked]{--tw-translate-x: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=active\]\:bg-primary\/15[data-state=active]{background-color:hsl(var(--primary) / .15)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=unchecked\]\:bg-bg-elevated[data-state=unchecked]{background-color:hsl(var(--bg-elevated))}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}@media (min-width: 640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width: 768px){.md\:col-span-2{grid-column:span 2 / span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:pb-4{padding-bottom:1rem}}@media (min-width: 1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:px-6{padding-left:1.5rem;padding-right:1.5rem}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}:root{--bg: #0d1117;--panel: #161b22;--border: #30363d;--text: #e6edf3;--muted: #8b949e;--accent: #58a6ff;--ok: #3fb950;--warn: #d29922;--err: #f85149;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(13px,.9vw,16px)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}.dashboard-app{width:100%;max-width:100vw;margin:0 auto;padding:clamp(8px,2vw,24px)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:clamp(8px,1.5vw,16px)}.dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.dashboard-header h1{font-size:clamp(16px,1.4vw,22px);font-weight:600;margin:0}.dashboard-header .tier,.dashboard-header .version-pill{display:inline-block;margin-left:8px;padding:2px 8px;font-size:clamp(10px,.8vw,12px);border-radius:10px;background:var(--panel);border:1px solid var(--border);color:var(--muted)}.dashboard-header .tier{color:var(--accent)}.view-toggle-btn{background:var(--panel);border:1px solid var(--border);color:var(--muted);padding:4px 12px;font-size:clamp(11px,.8vw,13px);border-radius:8px;cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s}.view-toggle-btn:hover{color:var(--text);border-color:var(--accent)}.view-toggle-btn[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}.view-toggle-wrap{position:fixed;top:12px;right:16px;z-index:50}.consolidated-nav{display:flex;gap:4px;overflow-x:auto;flex-wrap:nowrap;border-bottom:1px solid var(--border);margin-bottom:clamp(8px,1vw,16px);padding-bottom:2px}.consolidated-nav button{background:none;border:none;color:var(--muted);padding:8px 14px;cursor:pointer;font-size:clamp(12px,.85vw,14px);white-space:nowrap;border-bottom:2px solid transparent}.consolidated-nav button.active{color:var(--text);border-bottom-color:var(--accent)}.consolidated-nav button:hover{color:var(--text)}.tab-bar{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:clamp(8px,1vw,16px);overflow-x:auto;flex-wrap:nowrap}.tab-bar button{background:none;border:none;color:var(--muted);padding:8px 14px;cursor:pointer;font-size:clamp(12px,.85vw,14px);border-bottom:2px solid transparent;white-space:nowrap}.tab-bar button.active{color:var(--text);border-bottom-color:var(--accent)}.tab-bar button:hover{color:var(--text)}.tab-bar .advanced-toggle{background:none;border:none;color:var(--muted);padding:8px 14px;cursor:pointer;font-size:clamp(12px,.85vw,14px);border-bottom:2px solid transparent;white-space:nowrap;margin-left:6px}.tab-bar .advanced-toggle:hover{color:var(--text)}.tab-bar .advanced-toggle[aria-expanded=true]{color:var(--text);border-bottom-color:var(--border)}.tab-bar .advanced-tabs{display:flex;gap:4px;flex-basis:100%;border-top:1px dashed var(--border);padding-top:6px;margin-top:-1px}.dashboard-content{min-height:400px}.loading-spinner{display:flex;align-items:center;justify-content:center;padding:48px;color:var(--muted)}.error-fallback{padding:24px;border:1px solid var(--err);border-radius:8px;background:#f8514914}.error-fallback button{margin-top:12px;padding:6px 14px;background:var(--panel);border:1px solid var(--border);color:var(--text);border-radius:6px;cursor:pointer}.tab-stub{padding:32px;color:var(--muted);border:1px dashed var(--border);border-radius:8px;text-align:center}.repos{width:100%;border-collapse:collapse;font-size:clamp(12px,.8vw,14px)}.repos th,.repos td{padding:6px 10px;border-bottom:1px solid var(--border-soft, var(--border));text-align:left}.repos th{background:var(--bg);position:sticky;top:0}.table-wrap{overflow-x:auto}@media (max-width: 640px){.card-grid{grid-template-columns:1fr}.tab-bar button{padding:6px 10px;font-size:12px}}@media (min-width: 641px) and (max-width: 1024px){.card-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1025px){.card-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}}@media (min-width: 1601px){.card-grid{grid-template-columns:repeat(4,1fr)}}.overview-tab{display:flex;flex-direction:column;gap:12px}.overview-header{display:flex;align-items:center;gap:12px}.tier-pill{padding:2px 10px;font-size:12px;border-radius:10px;background:var(--panel);border:1px solid var(--border);color:var(--accent)}.updated{color:var(--muted);font-size:12px}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.card{padding:14px 16px;background:var(--panel);border:1px solid var(--border);border-radius:8px}.card h3{margin:0 0 10px;font-size:13px;color:var(--muted);font-weight:600}.gauge-bar{height:10px;background:var(--bg);border-radius:5px;overflow:hidden;border:1px solid var(--border)}.gauge-fill{height:100%;transition:width .4s ease}.gauge-green .gauge-fill{background:var(--ok)}.gauge-yellow .gauge-fill{background:var(--warn)}.gauge-red .gauge-fill{background:var(--err)}.gauge-label{margin:8px 0 0;font-size:12px;color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat{display:flex;flex-direction:column;gap:2px}.stat-label{font-size:11px;color:var(--muted);text-transform:uppercase}.stat-value{font-size:16px;font-weight:600}.stat-highlight .stat-value{color:var(--ok)}.bullet-row{display:flex;gap:14px;margin-bottom:8px}.bullet{display:flex;align-items:center;gap:6px;font-size:13px}.bullet-dot{width:8px;height:8px;border-radius:50%;background:var(--muted)}.bullet-on .bullet-dot{background:var(--ok);box-shadow:0 0 6px var(--ok)}.bullet-off .bullet-dot{background:var(--border)}.bullet-on .bullet-label{color:var(--text)}.bullet-off .bullet-label{color:var(--muted)}.trigger-detail{margin:4px 0;font-size:12px;color:var(--muted)}.state-badge{display:inline-block;padding:2px 10px;font-size:12px;border-radius:10px;background:var(--bg);border:1px solid var(--border)}.state-idle,.state-none{color:var(--muted)}.state-compacting{color:var(--warn);border-color:var(--warn)}.persisted-tag{margin-left:8px;font-size:11px;color:var(--ok)}.events-tab{display:flex;flex-direction:column;gap:10px}.events-header{display:flex;align-items:center;gap:14px}.sse-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.sse-dot{width:8px;height:8px;border-radius:50%;background:var(--muted)}.sse-connected .sse-dot{background:var(--ok);box-shadow:0 0 6px var(--ok)}.sse-connecting .sse-dot{background:var(--warn)}.sse-disconnected .sse-dot,.sse-error .sse-dot{background:var(--err)}.event-count{color:var(--muted);font-size:12px}.event-filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px}.filter-chip{padding:3px 10px;font-size:11px;border:1px solid var(--border);background:var(--bg);color:var(--muted);border-radius:12px;cursor:pointer}.filter-chip.active{color:var(--text);border-color:var(--accent);background:var(--panel)}.event-list{list-style:none;margin:0;padding:0;max-height:60vh;overflow-y:auto}.event-row{display:grid;grid-template-columns:70px 150px 1fr;gap:8px;padding:6px 10px;border-bottom:1px solid var(--border);font-size:12px;cursor:pointer}.event-row:hover{background:var(--panel)}.ev-time{color:var(--muted)}.ev-type{font-size:11px;padding:1px 6px;border-radius:8px;background:var(--bg);border:1px solid var(--border);color:var(--muted);text-align:center}.ev-compact .ev-type{color:var(--accent);border-color:var(--accent)}.ev-trigger .ev-type{color:var(--warn);border-color:var(--warn)}.ev-tier .ev-type{color:var(--muted)}.ev-checkpoint .ev-type{color:var(--ok);border-color:var(--ok)}.ev-recall .ev-type{color:#d2a8ff;border-color:#d2a8ff}.ev-config .ev-type{color:var(--text)}.ev-crew .ev-type{color:#79c0ff;border-color:#79c0ff}.ev-game .ev-type{color:var(--warn)}.ev-summary{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ev-detail{grid-column:1 / -1;margin:6px 0 0;padding:8px;background:var(--bg);border-radius:4px;font-size:11px;color:var(--muted);white-space:pre-wrap}.event-empty{padding:24px;color:var(--muted);text-align:center}@media (max-width: 768px){.card-grid{grid-template-columns:1fr}.event-row{grid-template-columns:60px 110px 1fr;font-size:11px}}.summary-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:16px}.tile{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:var(--panel);border:1px solid var(--border);border-radius:8px}.tile-label{font-size:11px;color:var(--muted);text-transform:uppercase}.tile-value{font-size:20px;font-weight:600}.tile-highlight .tile-value{color:var(--ok)}.repo-table-wrap{overflow-x:auto}.repo-search{width:100%;padding:8px 10px;margin-bottom:10px;background:var(--panel);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:13px}.repo-table{width:100%;border-collapse:collapse;font-size:13px}.repo-table th{text-align:left;padding:6px 10px;border-bottom:1px solid var(--border)}.repo-table td{padding:8px 10px;border-bottom:1px solid var(--border)}.repo-table tr{cursor:pointer}.repo-table tbody tr:hover{background:var(--panel)}.sort-header{background:none;border:none;color:var(--muted);font-size:12px;font-weight:600;cursor:pointer;padding:0}.sort-header.active-asc,.sort-header.active-desc{color:var(--text)}.sort-arrow{color:var(--accent)}.repo-name{font-weight:600}.repo-model{color:var(--muted)}.modal-backdrop{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:20px 24px;max-width:560px;width:90%;max-height:80vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:18px}.modal-close{background:none;border:none;color:var(--muted);font-size:22px;cursor:pointer;padding:0 4px}.modal-close:hover{color:var(--text)}.modal-path{font-size:11px;color:var(--muted);margin:4px 0 12px;word-break:break-all}.modal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.modal-stat{display:flex;flex-direction:column;gap:2px}.modal-label{font-size:11px;color:var(--muted);text-transform:uppercase}.modal-value{font-size:16px;font-weight:600}.modal-highlight .modal-value{color:var(--ok)}.modal-card h3{font-size:13px;color:var(--muted);margin:16px 0 6px}.modal-dl{display:grid;grid-template-columns:130px 1fr;gap:4px 12px;margin:0}.modal-dl dt{color:var(--muted);font-size:12px}.modal-dl dd{margin:0;font-size:13px}.model-badge{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:8px;padding:12px 14px;background:var(--panel);border:1px solid var(--border);border-radius:8px;margin-bottom:12px}.model-field{display:flex;flex-direction:column;gap:2px}.model-field-label{font-size:11px;color:var(--muted);text-transform:uppercase}.model-field-value{font-size:14px;font-weight:600}.perf-chart{display:flex;flex-direction:column;gap:12px}.perf-header{display:flex;justify-content:space-between;align-items:center}.perf-header h3{margin:0;font-size:13px;color:var(--muted)}.perf-window{font-size:11px;color:var(--muted)}.perf-grid,.perf-resources{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.perf-resources{padding-top:10px;border-top:1px solid var(--border)}.perf-metric{display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:var(--panel);border:1px solid var(--border);border-radius:6px}.perf-label{font-size:11px;color:var(--muted)}.perf-value{font-size:15px;font-weight:600}.perf-bar-track{height:6px;background:var(--bg);border-radius:3px;overflow:hidden}.perf-bar-fill{height:100%;transition:width .4s ease}.perf-blue .perf-bar-fill{background:var(--accent)}.perf-purple .perf-bar-fill{background:#d2a8ff}.perf-green .perf-bar-fill{background:var(--ok)}.perf-yellow .perf-bar-fill{background:var(--warn)}.perf-diag{display:flex;flex-wrap:wrap;gap:14px;padding-top:10px;border-top:1px solid var(--border)}@media (max-width: 768px){.modal-grid,.model-badge{grid-template-columns:1fr 1fr}}.section-header{font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:20px 0 10px;font-weight:600}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.active-repos-table,.savings-table{width:100%;border-collapse:collapse;font-size:13px}.active-repos-table th,.savings-table th{text-align:left;padding:6px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.active-repos-table th.num,.savings-table th.num{text-align:right}.active-repos-table td,.savings-table td{padding:6px 10px;border-bottom:1px solid var(--border);white-space:nowrap}.active-repos-table td.num,.savings-table td.num{text-align:right;font-family:monospace}.active-repos-table tbody tr:hover,.savings-table tbody tr:hover{background:var(--panel)}.savings-table .repo-model{font-weight:600}.repo-empty{text-align:center;color:var(--muted);padding:24px}.active-repos-section{margin-bottom:8px}.savings-by-model{margin-bottom:16px}@media (max-width: 640px){.active-repos-table{min-width:900px}.savings-table{min-width:1200px}}@media (min-width: 641px) and (max-width: 1024px){.savings-table{min-width:1000px}}.overview-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.ov-stat-row{display:flex;justify-content:space-between;align-items:baseline;padding:4px 0;border-bottom:1px solid var(--border);font-size:clamp(13px,1vw,17px)}.ov-stat-label{color:var(--muted);font-size:12px;cursor:help}.ov-stat-value{font-weight:600;color:var(--text);font-family:monospace}.ov-stat-value-green{color:var(--ok)}.ov-stat-value-yellow{color:var(--warn)}.ov-stat-value-red{color:var(--err)}.ov-value-ok{color:var(--ok)!important}.ov-compression-meter{margin-top:10px}.meter-track{height:clamp(6px,.6vw,10px);background:var(--bg);border-radius:5px;overflow:hidden;border:1px solid var(--border)}.meter-fill{height:100%;transition:width .4s ease;border-radius:4px}.meter-green{background:var(--ok)}.meter-yellow{background:var(--warn)}.meter-red{background:var(--err)}.meter-sub{display:block;margin-top:4px;font-size:11px;color:var(--muted)}.bullet-na .bullet-dot{background:var(--warn);box-shadow:0 0 6px var(--warn)}.bullet-na .bullet-label{color:var(--warn)}.trigger-state-text{margin:6px 0 0;font-size:12px;color:var(--muted)}.data-safety-card .safe-note{margin:10px 0 0;padding:8px;font-size:11px;color:var(--muted);background:#3fb9500f;border-radius:6px;border:1px solid rgba(63,185,80,.2)}.model-cost-card .ov-cost-usd{font-size:clamp(16px,1.4vw,22px);font-weight:700;color:#a371f7;margin-bottom:2px}.model-cost-card .ov-cost-sub{font-size:12px;color:var(--muted);margin-bottom:8px}.crew-card .ov-stat-value{font-family:inherit}.legend-card{grid-column:1 / -1}.legend-card details{cursor:pointer}.legend-card summary{font-size:13px;color:var(--muted);font-weight:600;margin-bottom:4px}.legend-list{margin:8px 0;padding-left:20px;font-size:12px;color:var(--muted);line-height:1.6}.legend-list li{margin-bottom:4px}.legend-list b{color:var(--text)}.legend-note{font-size:11px;color:var(--dim);font-style:italic}.cache-tab{display:flex;flex-direction:column;gap:12px}@media (max-width: 640px){.overview-card-grid{grid-template-columns:1fr}}@media (min-width: 1025px){.overview-card-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1601px){.overview-card-grid{grid-template-columns:repeat(4,1fr);font-size:clamp(13px,.9vw,16px)}}.config-tab{display:flex;flex-direction:column;gap:16px}.config-settings,.config-display{padding:14px 16px;background:var(--panel);border:1px solid var(--border);border-radius:8px}.config-settings h3,.config-display h3{margin:0 0 12px;font-size:clamp(12px,1vw,14px);color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.settings-row{margin-bottom:10px}.settings-row:last-child{margin-bottom:0}.settings-row label{display:flex;align-items:center;gap:8px;font-size:clamp(13px,.9vw,15px);color:var(--text);cursor:pointer}.settings-row select{padding:4px 8px;font-size:clamp(12px,.85vw,14px);background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;cursor:pointer}.settings-row select:disabled{opacity:.5;cursor:not-allowed}.settings-row input[type=checkbox]{width:16px;height:16px;cursor:pointer}.config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:10px}.config-item{display:flex;flex-direction:column;gap:3px;padding:8px 10px;background:var(--bg);border:1px solid var(--border);border-radius:6px}.config-label{font-size:clamp(11px,.75vw,13px);color:var(--muted);text-transform:uppercase;letter-spacing:.4px}.config-value{font-size:clamp(13px,1vw,16px);font-weight:600;color:var(--text)}.event-category-filter{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.category-chip{padding:3px 10px;font-size:clamp(11px,.75vw,13px);border:1px solid var(--border);background:var(--bg);color:var(--muted);border-radius:12px;cursor:pointer;text-transform:capitalize;transition:color .15s,border-color .15s,background .15s}.category-chip:hover{color:var(--text)}.category-chip.active{color:var(--text);border-color:var(--accent);background:var(--panel)}@media (max-width: 640px){.config-grid{grid-template-columns:1fr}.settings-row label{flex-direction:column;align-items:flex-start;gap:4px}.settings-row select{width:100%}}:root{--mega: #f0883e;--mega-gold: #ffd700;--game-blue: #1f6feb;--game-purple: #a371f7}.game-tab{display:flex;flex-direction:column;gap:12px}.game-mode-on{--accent: var(--mega)}.mega-cache-banner{display:block;background:linear-gradient(135deg,var(--mega),var(--mega-gold));color:#1a1006;font-weight:700;padding:10px 14px;border-radius:8px;margin:12px 0;font-size:clamp(13px,1vw,16px);animation:mega-banner-shimmer 3s ease-in-out infinite}@keyframes mega-banner-shimmer{0%,to{filter:brightness(1)}50%{filter:brightness(1.15)}}.mega-cache-toast{display:none;position:fixed;top:16px;left:50%;transform:translate(-50%);background:var(--mega);color:#1a1006;font-weight:700;padding:10px 18px;border-radius:8px;z-index:1000;box-shadow:0 4px 20px #0008;max-width:92vw}.mega-cache-toast.show{display:block;animation:mega-flash .6s ease-in-out 2}@keyframes mega-flash{0%{background:transparent}25%{background:var(--mega-gold)}to{background:transparent}}.achievement-tile{display:none;background:linear-gradient(135deg,var(--mega),var(--mega-gold));color:#1a1006;font-weight:700;padding:12px 16px;border-radius:8px;margin:12px 0;box-shadow:0 0 16px #f0883e88;font-size:clamp(13px,1vw,16px)}.achievement-tile.unlocked{display:block}.achievement-tile .ach-detail{display:block;font-weight:500;font-size:12px;margin-top:4px}.game-leaderboards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.lb-card{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:14px}.lb-card h3{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:0 0 10px;font-weight:600;display:flex;align-items:center;gap:4px}.lb-card table{width:100%;border-collapse:collapse;font-size:13px}.lb-card td{padding:4px 8px;border-bottom:1px solid var(--border)}.lb-card td.num{text-align:right;font-family:monospace;color:var(--text);font-weight:600}.lb-card .lb-meta{color:var(--muted);font-size:11px;margin-left:6px}.lb-empty{color:var(--muted);font-size:12px;padding:8px 0}.lvl-badge{display:inline-block;background:var(--game-blue);color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;margin-left:8px}.repos-badge-line{margin-top:8px}.repos-badge{display:inline-block;background:var(--game-blue);color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px}.game-empty{color:var(--muted);font-style:italic;padding:12px 0}.ach-section{position:relative}.ach-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;margin:8px 0 16px}.ach-tile{padding:10px 12px;border-radius:8px;border:1px solid var(--border);font-size:12px;background:var(--panel)}.ach-tile.unlocked{background:linear-gradient(135deg,var(--mega),var(--mega-gold));color:#1a1006;font-weight:700;box-shadow:0 0 12px #f0883e66}.ach-tile.locked{opacity:.55}.ach-tile.just-unlocked{animation:ach-unlock-pulse .6s ease-out}.ach-tile .ach-detail{display:block;font-weight:500;font-size:11px;margin-top:3px}@keyframes ach-unlock-pulse{0%{transform:scale(.9);opacity:.4}60%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}.ach-toast{display:none;position:fixed;top:16px;left:50%;transform:translate(-50%);background:var(--game-blue);color:#fff;font-weight:700;padding:10px 18px;border-radius:8px;z-index:1000;box-shadow:0 4px 20px #0008;max-width:92vw}.ach-toast.show{display:block}.achievements-tab{display:flex;flex-direction:column;gap:12px}.achievements-tab h2{font-size:clamp(16px,1.4vw,22px);margin:0}@media (max-width: 640px){.game-leaderboards{grid-template-columns:1fr}}@media (min-width: 1601px){.game-leaderboards{gap:20px}}.sessions-tab{display:flex;flex-direction:column;gap:14px}.sessions-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0}.sessions-toolbar h2{margin:0;font-size:14px;font-weight:600;color:var(--text)}.sessions-window-select{display:inline-flex;gap:2px;padding:2px;background:var(--panel);border:1px solid var(--border);border-radius:6px}.sessions-window-btn{padding:4px 10px;background:transparent;border:none;border-radius:4px;color:var(--muted);font-size:12px;cursor:pointer;transition:background .15s,color .15s}.sessions-window-btn:hover{color:var(--text)}.sessions-window-btn.active{background:var(--accent);color:#0d1117;font-weight:600}.sessions-summary-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.sessions-chart{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:12px}.sessions-chart-empty,.sessions-empty{display:flex;align-items:center;justify-content:center;min-height:160px;color:var(--muted);font-size:14px;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:32px;text-align:center}.sessions-table-scroll{overflow-x:auto;background:var(--panel);border:1px solid var(--border);border-radius:8px}.sessions-table{width:100%;border-collapse:collapse;font-size:13px}.sessions-table th,.sessions-table td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.sessions-table th{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);background:#ffffff05;position:sticky;top:0}.sessions-table td.num{text-align:right;font-variant-numeric:tabular-nums}.sessions-table tr:last-child td{border-bottom:none}.sessions-table tr:hover td{background:#58a6ff0f}.sessions-empty-row td{color:var(--muted);font-style:italic;text-align:center}.sessions-pct-pill{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.sessions-pct-ok{background:#3fb95026;color:var(--ok)}.sessions-pct-warn{background:#d2992226;color:var(--warn)}.sessions-pct-err{background:#f8514926;color:var(--err)}.sessions-sparkline{display:inline-block;vertical-align:middle}.sessions-sparkline-empty{color:var(--muted);font-size:11px}.sessions-meta{font-size:11px;color:var(--muted)}.sessions-footer{font-size:11px;color:var(--muted);margin-top:6px}@media (max-width: 640px){.sessions-summary-tiles{grid-template-columns:1fr}.sessions-table th,.sessions-table td{font-size:12px;padding:6px 8px}}.repo-stack-card{display:flex;flex-direction:column;gap:10px}.repo-stack-card h3{margin:0;font-size:14px;font-weight:600;color:var(--text)}.repo-stack-bar{display:flex;width:100%;height:22px;border-radius:6px;overflow:hidden;border:1px solid var(--border);background:var(--bg)}.repo-stack-segment{height:100%;min-width:2px;transition:opacity .15s,filter .15s}.repo-stack-segment:hover{opacity:.85;filter:brightness(1.15)}.repo-stack-total{font-size:13px;color:var(--text);font-variant-numeric:tabular-nums}.repo-stack-total .pct{color:var(--muted)}.repo-stack-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:6px}.repo-stack-legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.repo-stack-legend-swatch{flex-shrink:0;width:12px;height:12px;border-radius:3px;border:1px solid var(--border)}.repo-stack-legend-name{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 640px){.repo-stack-legend{grid-template-columns:1fr}}.session-gauges-card{grid-column:1 / -1}.session-gauges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:16px}.session-gauges-scroll{overflow-x:auto}.session-gauge{display:flex;flex-direction:column;gap:8px;padding:14px 16px;background:var(--bg);border:1px solid var(--border);border-radius:8px;min-width:0}.session-gauge-self{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg))}.session-gauge-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;min-width:0}.session-gauge-label{font-size:clamp(11px,1.1vw,14px);font-weight:600;line-height:1.25;color:var(--text);min-width:0;overflow-wrap:break-word;word-break:break-word}.session-gauge-self .session-gauge-label{color:var(--accent)}.session-gauge-pct{font-size:clamp(16px,1.4vw,20px);font-weight:700;line-height:1.1;color:var(--muted);white-space:nowrap;flex-shrink:0}.session-gauges-grid .gauge-bar{height:12px}.session-gauge-sub{margin:0;font-size:clamp(12px,1vw,14px);font-weight:500;color:var(--text)}.session-gauge-meta{margin:0;font-size:clamp(10px,.85vw,12px);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 640px){.session-gauges-grid{grid-template-columns:1fr}}.maintenance-tab{display:flex;flex-direction:column;gap:12px}.card-header{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:10px;display:flex;align-items:center;gap:8px}.card-body{font-size:13px}.stat-section{margin-bottom:12px}.stat-section:last-child{margin-bottom:0}.stat-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px}.stat-row{display:flex;justify-content:space-between;align-items:baseline;padding:3px 0;border-bottom:1px solid var(--border);font-size:13px}.num{text-align:right;font-family:monospace;font-weight:600}.compact-table{width:100%;border-collapse:collapse;font-size:13px}.compact-table th{text-align:left;padding:4px 6px;border-bottom:1px solid var(--border);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--muted)}.compact-table th.num{text-align:right}.compact-table td{padding:3px 6px;border-bottom:1px solid var(--border)}.compact-table td.num{text-align:right;font-family:monospace;font-weight:600}.compact-table tbody tr:last-child td{border-bottom:none}.text-muted{color:var(--muted)}.text-error{color:var(--err)}.text-ok{color:var(--ok)}.text-warn{color:var(--warn)}.text-mono{font-family:monospace;font-size:12px}.badge{display:inline-block;padding:1px 8px;font-size:10px;font-weight:700;border-radius:8px;text-transform:uppercase;letter-spacing:.3px}.badge-ok{background:color-mix(in srgb,var(--ok) 20%,transparent);color:var(--ok);border:1px solid var(--ok)}.badge-bad{background:color-mix(in srgb,var(--err) 20%,transparent);color:var(--err);border:1px solid var(--err)}.badge-warn{background:color-mix(in srgb,var(--warn) 20%,transparent);color:var(--warn);border:1px solid var(--warn)}.action-grid{display:grid;grid-template-columns:1fr;gap:8px}.action-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:6px}.action-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.action-label{font-size:13px;font-weight:600;color:var(--text);display:flex;align-items:center;gap:6px}.action-desc{font-size:11px;color:var(--muted)}.action-result{font-size:11px;margin-top:2px}.action-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.btn{padding:5px 14px;font-size:12px;font-weight:600;border:none;border-radius:6px;cursor:pointer;white-space:nowrap;transition:opacity .15s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#0d1117}.btn-danger{background:var(--err);color:#fff}.days-input{width:60px;padding:4px 6px;font-size:12px;background:var(--panel);border:1px solid var(--border);border-radius:4px;color:var(--text);text-align:center}.days-input:disabled{opacity:.5}@media (max-width: 640px){.action-item{flex-direction:column;align-items:stretch;gap:8px}.action-controls{justify-content:flex-end}}.ov-stripe-health-summary{display:flex;gap:12px;align-items:center;margin-bottom:12px;font-size:clamp(11px,.85vw,14px);flex-wrap:wrap}.ov-stripe-health-badge{display:inline-block;padding:2px 10px;border-radius:10px;background:var(--panel);border:1px solid var(--border);font-weight:600;text-transform:capitalize}.ov-text-green{color:var(--ok)}.ov-text-yellow{color:var(--warn)}.ov-text-orange{color:#d4761e}.ov-text-red{color:var(--err)}.ov-text-gray,.ov-stripe-health-score,.ov-stripe-churn,.ov-stripe-total{color:var(--muted)}.ov-stripe-bars{display:flex;flex-direction:column;gap:6px}.ov-stripe-row{display:grid;grid-template-columns:80px 1fr 40px 48px;align-items:center;gap:8px;font-size:clamp(11px,.8vw,13px)}.ov-stripe-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.ov-bar-track{height:18px;background:var(--bg);border-radius:4px;overflow:hidden;position:relative}.ov-bar-fill{height:100%;border-radius:4px;transition:width .5s ease;min-width:2px}.ov-bar-green{background:var(--ok)}.ov-bar-blue{background:var(--accent)}.ov-bar-teal{background:#3d9cb0}.ov-bar-yellow{background:var(--warn)}.ov-bar-gray{background:var(--muted)}.ov-bar-red{background:var(--err)}.ov-bar-orange{background:#d4761e}.ov-bar-latest{box-shadow:0 0 6px #ffffff80}.ov-stripe-count{text-align:right;color:var(--text);font-variant-numeric:tabular-nums}.ov-stripe-stability{color:var(--muted);font-size:clamp(10px,.75vw,12px)}.ov-stripe-footer{margin-top:10px;font-size:clamp(10px,.75vw,12px);color:var(--muted);display:flex;gap:8px}.ov-perf-summary{display:flex;gap:14px;align-items:center;margin-bottom:10px;font-size:clamp(11px,.85vw,14px);flex-wrap:wrap}.ov-perf-stat strong{font-variant-numeric:tabular-nums}.ov-sparkline{display:flex;align-items:flex-end;gap:3px;height:60px;padding:4px 2px;margin-bottom:6px}.ov-sparkline-bar{flex:1;min-width:4px;border-radius:2px 2px 0 0;transition:height .4s ease}.ov-empty-state{font-size:clamp(11px,.8vw,13px);color:var(--muted);padding:16px 0;text-align:center}.ov-card-footer{font-size:clamp(10px,.75vw,12px);color:var(--muted);margin-top:4px}.ov-card{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:clamp(8px,1.5vw,16px)}.ov-card-title{margin:0 0 10px;font-size:clamp(13px,.9vw,15px);font-weight:600}
@@ -1,2 +1,2 @@
1
- import{r as c,j as v,a3 as O,a as we,t as q}from"./index-BBhaR8pI.js";var Ee=Object.defineProperty,R=(e,t)=>Ee(e,"name",{value:t,configurable:!0}),Z=!!(typeof window<"u"&&window.document&&window.document.createElement);function B(e,t,{checkForDefaultPrevented:n=!0}={}){return R(function(r){if(e?.(r),n===!1||!r||!r.defaultPrevented)return t?.(r)},"handleEvent")}R(B,"composeEventHandlers");function Ce(e){if(!Z)throw new Error("Cannot access window outside of the DOM");return e?.ownerDocument?.defaultView??window}R(Ce,"getOwnerWindow");function N(e){if(!Z)throw new Error("Cannot access document outside of the DOM");return e?.ownerDocument??document}R(N,"getOwnerDocument");function J(e,t=!1){const{activeElement:n}=N(e);if(!n?.nodeName)return null;if(K(n)&&n.contentDocument)return J(n.contentDocument.body,t);if(t){const o=n.getAttribute("aria-activedescendant");if(o){const r=N(n).getElementById(o);if(r)return r}}return n}R(J,"getActiveElement");function K(e){return e.tagName==="IFRAME"}R(K,"isFrame");var _e=Object.defineProperty,M=(e,t)=>_e(e,"name",{value:t,configurable:!0});function A(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}M(A,"setRef");function Q(...e){return t=>{let n=!1;const o=e.map(r=>{const s=A(r,t);return!n&&typeof s=="function"&&(n=!0),s});if(n)return()=>{for(let r=0;r<o.length;r++){const s=o[r];typeof s=="function"?s():A(e[r],null)}}}}M(Q,"composeRefs");function T(...e){return c.useCallback(Q(...e),e)}M(T,"useComposedRefs");var ye=Object.defineProperty,w=(e,t)=>ye(e,"name",{value:t,configurable:!0});function xe(e,t){const n=c.createContext(t);n.displayName=e+"Context";const o=w(s=>{const{children:i,...u}=s,a=c.useMemo(()=>u,Object.values(u));return v.jsx(n.Provider,{value:a,children:i})},"Provider");o.displayName=e+"Provider";function r(s,i={}){const{optional:u=!1}=i,a=c.useContext(n);if(a)return a;if(t!==void 0)return t;if(!u)throw new Error(`\`${s}\` must be used within \`${e}\``)}return w(r,"useContext"),[o,r]}w(xe,"createContext");function ee(e,t=[]){let n=[];function o(s,i){const u=c.createContext(i);u.displayName=s+"Context";const a=n.length;n=[...n,i];const f=w(l=>{const{scope:m,children:d,...h}=l,S=m?.[e]?.[a]||u,b=c.useMemo(()=>h,Object.values(h));return v.jsx(S.Provider,{value:b,children:d})},"Provider");f.displayName=s+"Provider";function p(l,m,d={}){const{optional:h=!1}=d,S=m?.[e]?.[a]||u,b=c.useContext(S);if(b)return b;if(i!==void 0)return i;if(!h)throw new Error(`\`${l}\` must be used within \`${s}\``)}return w(p,"useContext"),[f,p]}w(o,"createContext");const r=w(()=>{const s=n.map(i=>c.createContext(i));return w(function(u){const a=u?.[e]||s;return c.useMemo(()=>({[`__scope${e}`]:{...u,[e]:a}}),[u,a])},"useScope")},"createScope");return r.scopeName=e,[o,te(r,...t)]}w(ee,"createContextScope");function te(...e){const t=e[0];if(e.length===1)return t;const n=w(()=>{const o=e.map(r=>({useScope:r(),scopeName:r.scopeName}));return w(function(s){const i=o.reduce((u,{useScope:a,scopeName:f})=>{const l=a(s)[`__scope${f}`];return{...u,...l}},{});return c.useMemo(()=>({[`__scope${t.scopeName}`]:i}),[i])},"useComposedScopes")},"createScope");return n.scopeName=t.scopeName,n}w(te,"composeContextScopes");var z=globalThis?.document?c.useLayoutEffect:()=>{},Pe=Object.defineProperty,Re=(e,t)=>Pe(e,"name",{value:t,configurable:!0}),Y=O[" useEffectEvent ".trim().toString()],G=O[" useInsertionEffect ".trim().toString()];function ne(e){if(typeof Y=="function")return Y(e);const t=c.useRef(()=>{throw new Error("Cannot call an event handler while rendering.")});return typeof G=="function"?G(()=>{t.current=e}):z(()=>{t.current=e}),c.useMemo(()=>(...n)=>t.current?.(...n),[])}Re(ne,"useEffectEvent");var ke=Object.defineProperty,k=(e,t)=>ke(e,"name",{value:t,configurable:!0}),Ie=O[" useInsertionEffect ".trim().toString()]||z;function re({prop:e,defaultProp:t,onChange:n=k(()=>{},"onChange"),caller:o}){const[r,s,i]=oe({defaultProp:t,onChange:n}),u=e!==void 0,a=u?e:r,f=c.useCallback(p=>{if(u){const l=ce(p)?p(e):p;l!==e&&i.current?.(l)}else s(p)},[u,e,s,i]);return[a,f]}k(re,"useControllableState");function oe({defaultProp:e,onChange:t}){const[n,o]=c.useState(e),r=c.useRef(n),s=c.useRef(t);return Ie(()=>{s.current=t},[t]),c.useEffect(()=>{r.current!==n&&(s.current?.(n),r.current=n)},[n,r]),[n,o,s]}k(oe,"useUncontrolledState");function ce(e){return typeof e=="function"}k(ce,"isFunction");var X=Symbol("RADIX:SYNC_STATE");function $e(e,t,n,o){const{prop:r,defaultProp:s,onChange:i,caller:u}=t,a=r!==void 0,f=ne(i),p=[{...n,state:s}];o&&p.push(o);const[l,m]=c.useReducer((b,C)=>{if(C.type===X)return{...b,state:C.state};const _=e(b,C);return a&&!Object.is(_.state,b.state)&&f(_.state),_},...p),d=l.state,h=c.useRef(d);c.useEffect(()=>{h.current!==d&&(h.current=d,a||f(d))},[d,h,a]);const S=c.useMemo(()=>r!==void 0?{...l,state:r}:l,[l,r]);return c.useEffect(()=>{a&&!Object.is(r,l.state)&&m({type:X,state:r})},[r,l.state,a]),[S,m]}k($e,"useControllableStateReducer");var je=Object.defineProperty,Oe=(e,t)=>je(e,"name",{value:t,configurable:!0});function se(e){const[t,n]=c.useState(void 0);return z(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const o=new ResizeObserver(r=>{if(!Array.isArray(r)||!r.length)return;const s=r[0];let i,u;if("borderBoxSize"in s){const a=s.borderBoxSize,f=Array.isArray(a)?a[0]:a;i=f.inlineSize,u=f.blockSize}else i=e.offsetWidth,u=e.offsetHeight;n({width:i,height:u})});return o.observe(e,{box:"border-box"}),()=>o.unobserve(e)}else n(void 0)},[e]),t}Oe(se,"useSize");var Te=Object.defineProperty,E=(e,t)=>Te(e,"name",{value:t,configurable:!0});function ie(e){const t=c.forwardRef((n,o)=>{let{children:r,...s}=n,i=null,u=!1;const a=[];D(r)&&typeof j=="function"&&(r=j(r._payload)),c.Children.forEach(r,m=>{if(fe(m)){u=!0;const d=m;let h="child"in d.props?d.props.child:d.props.children;D(h)&&typeof j=="function"&&(h=j(h._payload)),i=Ae(d,h),a.push(i?.props?.children)}else a.push(m)}),i?i=c.cloneElement(i,void 0,a):!u&&c.Children.count(r)===1&&c.isValidElement(r)&&(i=r);const f=i?le(i):void 0,p=T(o,f);if(!i){if(r||r===0)throw new Error(u?Me(e):Be(e));return r}const l=ue(s,i.props??{});return i.type!==c.Fragment&&(l.ref=o?p:f),c.cloneElement(i,l)});return t.displayName=`${e}.Slot`,t}E(ie,"createSlot");var ae=Symbol.for("radix.slottable");function Ne(e){const t=E(n=>"child"in n?n.children(n.child):n.children,"Slottable");return t.displayName=`${e}.Slottable`,t.__radixId=ae,t}E(Ne,"createSlottable");var Ae=E((e,t)=>{if("child"in e.props){const n=e.props.child;return c.isValidElement(n)?c.cloneElement(n,void 0,e.props.children(n.props.children)):null}return c.isValidElement(t)?t:null},"getSlottableElementFromSlottable");function ue(e,t){const n={...t};for(const o in t){const r=e[o],s=t[o];/^on[A-Z]/.test(o)?r&&s?n[o]=(...u)=>{const a=s(...u);return r(...u),a}:r&&(n[o]=r):o==="style"?n[o]={...r,...s}:o==="className"&&(n[o]=[r,s].filter(Boolean).join(" "))}return{...e,...n}}E(ue,"mergeProps");function le(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}E(le,"getElementRef");function fe(e){return c.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===ae}E(fe,"isSlottable");var De=Symbol.for("react.lazy");function D(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===De&&"_payload"in e&&de(e._payload)}E(D,"isLazyComponent");function de(e){return typeof e=="object"&&e!==null&&"then"in e}E(de,"isPromiseLike");var Be=E(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),Me=E(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),j=O[" use ".trim().toString()],ze=Object.defineProperty,Fe=(e,t)=>ze(e,"name",{value:t,configurable:!0}),Le=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],F=Le.reduce((e,t)=>{const n=ie(`Primitive.${t}`),o=c.forwardRef((r,s)=>{const{asChild:i,...u}=r,a=i?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),v.jsx(a,{...u,ref:s})});return o.displayName=`Primitive.${t}`,{...e,[t]:o}},{});function He(e,t){e&&we.flushSync(()=>e.dispatchEvent(t))}Fe(He,"dispatchDiscreteCustomEvent");var Ue=Object.defineProperty,x=(e,t)=>Ue(e,"name",{value:t,configurable:!0}),L="Switch",[We,tt]=ee(L),[Ve,H]=We(L);function pe(e){const{__scopeSwitch:t,checked:n,children:o,defaultChecked:r,disabled:s,form:i,name:u,onCheckedChange:a,required:f,value:p="on",internal_do_not_use_render:l}=e,[m,d]=re({prop:n,defaultProp:r??!1,onChange:a,caller:L}),[h,S]=c.useState(null),[b,C]=c.useState(null),_=c.useRef(!1),[g,y]=c.useReducer(P=>P+1,0),I=h?!!i||!!h.closest("form"):!0,$={checked:m,setChecked:d,disabled:s,control:h,setControl:S,name:u,form:i,value:p,hasConsumerStoppedPropagationRef:_,userInteractionCount:g,onUserInteraction:y,required:f,defaultChecked:r,isFormControl:I,bubbleInput:b,setBubbleInput:C};return v.jsx(Ve,{scope:t,...$,children:me(l)?l($):o})}x(pe,"SwitchProvider");var qe="SwitchTrigger",Ye=c.forwardRef(x(function({__scopeSwitch:t,onClick:n,...o},r){const{control:s,form:i,value:u,disabled:a,checked:f,required:p,setControl:l,setChecked:m,hasConsumerStoppedPropagationRef:d,onUserInteraction:h,isFormControl:S,bubbleInput:b}=H(qe,t),C=T(r,l),_=c.useRef(f);return c.useEffect(()=>{const g=i?s?.ownerDocument.getElementById(i):s?.form;if(g instanceof HTMLFormElement){const y=x(()=>m(_.current),"reset");return g.addEventListener("reset",y),()=>g.removeEventListener("reset",y)}},[s,i,m]),v.jsx(F.button,{type:"button",role:"switch","aria-checked":f,"aria-required":p,"data-state":U(f),"data-disabled":a?"":void 0,disabled:a,value:u,...o,ref:C,onClick:B(n,g=>{h(),m(y=>!y),b&&S&&(d.current=g.isPropagationStopped(),d.current||g.stopPropagation())})})},"SwitchTrigger")),he=c.forwardRef(x(function(t,n){const{__scopeSwitch:o,name:r,checked:s,defaultChecked:i,required:u,disabled:a,value:f,onCheckedChange:p,form:l,...m}=t;return v.jsx(pe,{__scopeSwitch:o,checked:s,defaultChecked:i,disabled:a,required:u,onCheckedChange:p,name:r,form:l,value:f,internal_do_not_use_render:({isFormControl:d})=>v.jsxs(v.Fragment,{children:[v.jsx(Ye,{...m,ref:n,__scopeSwitch:o}),d&&v.jsx(Je,{__scopeSwitch:o})]})})},"Switch")),Ge="SwitchThumb",Xe=c.forwardRef(x(function(t,n){const{__scopeSwitch:o,...r}=t,s=H(Ge,o);return v.jsx(F.span,{"data-state":U(s.checked),"data-disabled":s.disabled?"":void 0,...r,ref:n})},"SwitchThumb")),Ze="SwitchBubbleInput",Je=c.forwardRef(x(function({__scopeSwitch:t,onClick:n,...o},r){const{control:s,hasConsumerStoppedPropagationRef:i,userInteractionCount:u,checked:a,defaultChecked:f,required:p,disabled:l,name:m,value:d,form:h,bubbleInput:S,setBubbleInput:b}=H(Ze,t),C=T(r,b),_=se(s),g=c.useRef(!1),y=c.useRef(a),I=c.useRef(u);c.useEffect(()=>{const P=S;if(!P)return;const be=window.HTMLInputElement.prototype,W=Object.getOwnPropertyDescriptor(be,"checked").set,V=u!==I.current;I.current=u;const ve=y.current!==a;y.current=a;const Se=!(V&&i.current);if(ve&&W){g.current=!V;const ge=new Event("click",{bubbles:Se});W.call(P,a),P.dispatchEvent(ge),g.current=!1}},[S,a,i,u]);const $=c.useRef(a);return v.jsx(F.input,{type:"checkbox","aria-hidden":!0,defaultChecked:f??$.current,required:p,disabled:l,name:m,value:d,form:h,...o,tabIndex:-1,ref:C,onClick:B(n,P=>{g.current&&P.stopPropagation()}),style:{...o.style,..._,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})},"SwitchBubbleInput"));function me(e){return typeof e=="function"}x(me,"isFunction");function U(e){return e?"checked":"unchecked"}x(U,"getState");const Ke=c.forwardRef(({className:e,...t},n)=>v.jsx(he,{ref:n,className:q("peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border border-border transition-colors data-[state=checked]:bg-primary data-[state=unchecked]:bg-bg-elevated focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/60 disabled:cursor-not-allowed disabled:opacity-50",e),...t,children:v.jsx(Xe,{className:q("pointer-events-none block h-4 w-4 rounded-full bg-foreground shadow-lg transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0.5")})}));Ke.displayName=he.displayName;export{Ke as S};
2
- //# sourceMappingURL=switch-WUfyEw15.js.map
1
+ import{r as c,j as v,a3 as O,a as we,t as q}from"./index-B_kzahbc.js";var Ee=Object.defineProperty,R=(e,t)=>Ee(e,"name",{value:t,configurable:!0}),Z=!!(typeof window<"u"&&window.document&&window.document.createElement);function B(e,t,{checkForDefaultPrevented:n=!0}={}){return R(function(r){if(e?.(r),n===!1||!r||!r.defaultPrevented)return t?.(r)},"handleEvent")}R(B,"composeEventHandlers");function Ce(e){if(!Z)throw new Error("Cannot access window outside of the DOM");return e?.ownerDocument?.defaultView??window}R(Ce,"getOwnerWindow");function N(e){if(!Z)throw new Error("Cannot access document outside of the DOM");return e?.ownerDocument??document}R(N,"getOwnerDocument");function J(e,t=!1){const{activeElement:n}=N(e);if(!n?.nodeName)return null;if(K(n)&&n.contentDocument)return J(n.contentDocument.body,t);if(t){const o=n.getAttribute("aria-activedescendant");if(o){const r=N(n).getElementById(o);if(r)return r}}return n}R(J,"getActiveElement");function K(e){return e.tagName==="IFRAME"}R(K,"isFrame");var _e=Object.defineProperty,M=(e,t)=>_e(e,"name",{value:t,configurable:!0});function A(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}M(A,"setRef");function Q(...e){return t=>{let n=!1;const o=e.map(r=>{const s=A(r,t);return!n&&typeof s=="function"&&(n=!0),s});if(n)return()=>{for(let r=0;r<o.length;r++){const s=o[r];typeof s=="function"?s():A(e[r],null)}}}}M(Q,"composeRefs");function T(...e){return c.useCallback(Q(...e),e)}M(T,"useComposedRefs");var ye=Object.defineProperty,w=(e,t)=>ye(e,"name",{value:t,configurable:!0});function xe(e,t){const n=c.createContext(t);n.displayName=e+"Context";const o=w(s=>{const{children:i,...u}=s,a=c.useMemo(()=>u,Object.values(u));return v.jsx(n.Provider,{value:a,children:i})},"Provider");o.displayName=e+"Provider";function r(s,i={}){const{optional:u=!1}=i,a=c.useContext(n);if(a)return a;if(t!==void 0)return t;if(!u)throw new Error(`\`${s}\` must be used within \`${e}\``)}return w(r,"useContext"),[o,r]}w(xe,"createContext");function ee(e,t=[]){let n=[];function o(s,i){const u=c.createContext(i);u.displayName=s+"Context";const a=n.length;n=[...n,i];const f=w(l=>{const{scope:m,children:d,...h}=l,S=m?.[e]?.[a]||u,b=c.useMemo(()=>h,Object.values(h));return v.jsx(S.Provider,{value:b,children:d})},"Provider");f.displayName=s+"Provider";function p(l,m,d={}){const{optional:h=!1}=d,S=m?.[e]?.[a]||u,b=c.useContext(S);if(b)return b;if(i!==void 0)return i;if(!h)throw new Error(`\`${l}\` must be used within \`${s}\``)}return w(p,"useContext"),[f,p]}w(o,"createContext");const r=w(()=>{const s=n.map(i=>c.createContext(i));return w(function(u){const a=u?.[e]||s;return c.useMemo(()=>({[`__scope${e}`]:{...u,[e]:a}}),[u,a])},"useScope")},"createScope");return r.scopeName=e,[o,te(r,...t)]}w(ee,"createContextScope");function te(...e){const t=e[0];if(e.length===1)return t;const n=w(()=>{const o=e.map(r=>({useScope:r(),scopeName:r.scopeName}));return w(function(s){const i=o.reduce((u,{useScope:a,scopeName:f})=>{const l=a(s)[`__scope${f}`];return{...u,...l}},{});return c.useMemo(()=>({[`__scope${t.scopeName}`]:i}),[i])},"useComposedScopes")},"createScope");return n.scopeName=t.scopeName,n}w(te,"composeContextScopes");var z=globalThis?.document?c.useLayoutEffect:()=>{},Pe=Object.defineProperty,Re=(e,t)=>Pe(e,"name",{value:t,configurable:!0}),Y=O[" useEffectEvent ".trim().toString()],G=O[" useInsertionEffect ".trim().toString()];function ne(e){if(typeof Y=="function")return Y(e);const t=c.useRef(()=>{throw new Error("Cannot call an event handler while rendering.")});return typeof G=="function"?G(()=>{t.current=e}):z(()=>{t.current=e}),c.useMemo(()=>(...n)=>t.current?.(...n),[])}Re(ne,"useEffectEvent");var ke=Object.defineProperty,k=(e,t)=>ke(e,"name",{value:t,configurable:!0}),Ie=O[" useInsertionEffect ".trim().toString()]||z;function re({prop:e,defaultProp:t,onChange:n=k(()=>{},"onChange"),caller:o}){const[r,s,i]=oe({defaultProp:t,onChange:n}),u=e!==void 0,a=u?e:r,f=c.useCallback(p=>{if(u){const l=ce(p)?p(e):p;l!==e&&i.current?.(l)}else s(p)},[u,e,s,i]);return[a,f]}k(re,"useControllableState");function oe({defaultProp:e,onChange:t}){const[n,o]=c.useState(e),r=c.useRef(n),s=c.useRef(t);return Ie(()=>{s.current=t},[t]),c.useEffect(()=>{r.current!==n&&(s.current?.(n),r.current=n)},[n,r]),[n,o,s]}k(oe,"useUncontrolledState");function ce(e){return typeof e=="function"}k(ce,"isFunction");var X=Symbol("RADIX:SYNC_STATE");function $e(e,t,n,o){const{prop:r,defaultProp:s,onChange:i,caller:u}=t,a=r!==void 0,f=ne(i),p=[{...n,state:s}];o&&p.push(o);const[l,m]=c.useReducer((b,C)=>{if(C.type===X)return{...b,state:C.state};const _=e(b,C);return a&&!Object.is(_.state,b.state)&&f(_.state),_},...p),d=l.state,h=c.useRef(d);c.useEffect(()=>{h.current!==d&&(h.current=d,a||f(d))},[d,h,a]);const S=c.useMemo(()=>r!==void 0?{...l,state:r}:l,[l,r]);return c.useEffect(()=>{a&&!Object.is(r,l.state)&&m({type:X,state:r})},[r,l.state,a]),[S,m]}k($e,"useControllableStateReducer");var je=Object.defineProperty,Oe=(e,t)=>je(e,"name",{value:t,configurable:!0});function se(e){const[t,n]=c.useState(void 0);return z(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const o=new ResizeObserver(r=>{if(!Array.isArray(r)||!r.length)return;const s=r[0];let i,u;if("borderBoxSize"in s){const a=s.borderBoxSize,f=Array.isArray(a)?a[0]:a;i=f.inlineSize,u=f.blockSize}else i=e.offsetWidth,u=e.offsetHeight;n({width:i,height:u})});return o.observe(e,{box:"border-box"}),()=>o.unobserve(e)}else n(void 0)},[e]),t}Oe(se,"useSize");var Te=Object.defineProperty,E=(e,t)=>Te(e,"name",{value:t,configurable:!0});function ie(e){const t=c.forwardRef((n,o)=>{let{children:r,...s}=n,i=null,u=!1;const a=[];D(r)&&typeof j=="function"&&(r=j(r._payload)),c.Children.forEach(r,m=>{if(fe(m)){u=!0;const d=m;let h="child"in d.props?d.props.child:d.props.children;D(h)&&typeof j=="function"&&(h=j(h._payload)),i=Ae(d,h),a.push(i?.props?.children)}else a.push(m)}),i?i=c.cloneElement(i,void 0,a):!u&&c.Children.count(r)===1&&c.isValidElement(r)&&(i=r);const f=i?le(i):void 0,p=T(o,f);if(!i){if(r||r===0)throw new Error(u?Me(e):Be(e));return r}const l=ue(s,i.props??{});return i.type!==c.Fragment&&(l.ref=o?p:f),c.cloneElement(i,l)});return t.displayName=`${e}.Slot`,t}E(ie,"createSlot");var ae=Symbol.for("radix.slottable");function Ne(e){const t=E(n=>"child"in n?n.children(n.child):n.children,"Slottable");return t.displayName=`${e}.Slottable`,t.__radixId=ae,t}E(Ne,"createSlottable");var Ae=E((e,t)=>{if("child"in e.props){const n=e.props.child;return c.isValidElement(n)?c.cloneElement(n,void 0,e.props.children(n.props.children)):null}return c.isValidElement(t)?t:null},"getSlottableElementFromSlottable");function ue(e,t){const n={...t};for(const o in t){const r=e[o],s=t[o];/^on[A-Z]/.test(o)?r&&s?n[o]=(...u)=>{const a=s(...u);return r(...u),a}:r&&(n[o]=r):o==="style"?n[o]={...r,...s}:o==="className"&&(n[o]=[r,s].filter(Boolean).join(" "))}return{...e,...n}}E(ue,"mergeProps");function le(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}E(le,"getElementRef");function fe(e){return c.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===ae}E(fe,"isSlottable");var De=Symbol.for("react.lazy");function D(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===De&&"_payload"in e&&de(e._payload)}E(D,"isLazyComponent");function de(e){return typeof e=="object"&&e!==null&&"then"in e}E(de,"isPromiseLike");var Be=E(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),Me=E(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),j=O[" use ".trim().toString()],ze=Object.defineProperty,Fe=(e,t)=>ze(e,"name",{value:t,configurable:!0}),Le=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],F=Le.reduce((e,t)=>{const n=ie(`Primitive.${t}`),o=c.forwardRef((r,s)=>{const{asChild:i,...u}=r,a=i?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),v.jsx(a,{...u,ref:s})});return o.displayName=`Primitive.${t}`,{...e,[t]:o}},{});function He(e,t){e&&we.flushSync(()=>e.dispatchEvent(t))}Fe(He,"dispatchDiscreteCustomEvent");var Ue=Object.defineProperty,x=(e,t)=>Ue(e,"name",{value:t,configurable:!0}),L="Switch",[We,tt]=ee(L),[Ve,H]=We(L);function pe(e){const{__scopeSwitch:t,checked:n,children:o,defaultChecked:r,disabled:s,form:i,name:u,onCheckedChange:a,required:f,value:p="on",internal_do_not_use_render:l}=e,[m,d]=re({prop:n,defaultProp:r??!1,onChange:a,caller:L}),[h,S]=c.useState(null),[b,C]=c.useState(null),_=c.useRef(!1),[g,y]=c.useReducer(P=>P+1,0),I=h?!!i||!!h.closest("form"):!0,$={checked:m,setChecked:d,disabled:s,control:h,setControl:S,name:u,form:i,value:p,hasConsumerStoppedPropagationRef:_,userInteractionCount:g,onUserInteraction:y,required:f,defaultChecked:r,isFormControl:I,bubbleInput:b,setBubbleInput:C};return v.jsx(Ve,{scope:t,...$,children:me(l)?l($):o})}x(pe,"SwitchProvider");var qe="SwitchTrigger",Ye=c.forwardRef(x(function({__scopeSwitch:t,onClick:n,...o},r){const{control:s,form:i,value:u,disabled:a,checked:f,required:p,setControl:l,setChecked:m,hasConsumerStoppedPropagationRef:d,onUserInteraction:h,isFormControl:S,bubbleInput:b}=H(qe,t),C=T(r,l),_=c.useRef(f);return c.useEffect(()=>{const g=i?s?.ownerDocument.getElementById(i):s?.form;if(g instanceof HTMLFormElement){const y=x(()=>m(_.current),"reset");return g.addEventListener("reset",y),()=>g.removeEventListener("reset",y)}},[s,i,m]),v.jsx(F.button,{type:"button",role:"switch","aria-checked":f,"aria-required":p,"data-state":U(f),"data-disabled":a?"":void 0,disabled:a,value:u,...o,ref:C,onClick:B(n,g=>{h(),m(y=>!y),b&&S&&(d.current=g.isPropagationStopped(),d.current||g.stopPropagation())})})},"SwitchTrigger")),he=c.forwardRef(x(function(t,n){const{__scopeSwitch:o,name:r,checked:s,defaultChecked:i,required:u,disabled:a,value:f,onCheckedChange:p,form:l,...m}=t;return v.jsx(pe,{__scopeSwitch:o,checked:s,defaultChecked:i,disabled:a,required:u,onCheckedChange:p,name:r,form:l,value:f,internal_do_not_use_render:({isFormControl:d})=>v.jsxs(v.Fragment,{children:[v.jsx(Ye,{...m,ref:n,__scopeSwitch:o}),d&&v.jsx(Je,{__scopeSwitch:o})]})})},"Switch")),Ge="SwitchThumb",Xe=c.forwardRef(x(function(t,n){const{__scopeSwitch:o,...r}=t,s=H(Ge,o);return v.jsx(F.span,{"data-state":U(s.checked),"data-disabled":s.disabled?"":void 0,...r,ref:n})},"SwitchThumb")),Ze="SwitchBubbleInput",Je=c.forwardRef(x(function({__scopeSwitch:t,onClick:n,...o},r){const{control:s,hasConsumerStoppedPropagationRef:i,userInteractionCount:u,checked:a,defaultChecked:f,required:p,disabled:l,name:m,value:d,form:h,bubbleInput:S,setBubbleInput:b}=H(Ze,t),C=T(r,b),_=se(s),g=c.useRef(!1),y=c.useRef(a),I=c.useRef(u);c.useEffect(()=>{const P=S;if(!P)return;const be=window.HTMLInputElement.prototype,W=Object.getOwnPropertyDescriptor(be,"checked").set,V=u!==I.current;I.current=u;const ve=y.current!==a;y.current=a;const Se=!(V&&i.current);if(ve&&W){g.current=!V;const ge=new Event("click",{bubbles:Se});W.call(P,a),P.dispatchEvent(ge),g.current=!1}},[S,a,i,u]);const $=c.useRef(a);return v.jsx(F.input,{type:"checkbox","aria-hidden":!0,defaultChecked:f??$.current,required:p,disabled:l,name:m,value:d,form:h,...o,tabIndex:-1,ref:C,onClick:B(n,P=>{g.current&&P.stopPropagation()}),style:{...o.style,..._,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})},"SwitchBubbleInput"));function me(e){return typeof e=="function"}x(me,"isFunction");function U(e){return e?"checked":"unchecked"}x(U,"getState");const Ke=c.forwardRef(({className:e,...t},n)=>v.jsx(he,{ref:n,className:q("peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border border-border transition-colors data-[state=checked]:bg-primary data-[state=unchecked]:bg-bg-elevated focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/60 disabled:cursor-not-allowed disabled:opacity-50",e),...t,children:v.jsx(Xe,{className:q("pointer-events-none block h-4 w-4 rounded-full bg-foreground shadow-lg transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0.5")})}));Ke.displayName=he.displayName;export{Ke as S};
2
+ //# sourceMappingURL=switch-DNWt87O5.js.map