@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/chakra-petch-latin-400-normal-SafcrIr2.woff2)format("woff2"),url(/assets/chakra-petch-latin-400-normal-D7EtbySE.woff)format("woff")}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/chakra-petch-latin-ext-400-normal-C8u6EFkq.woff2)format("woff2"),url(/assets/chakra-petch-latin-ext-400-normal-MNNNbyh_.woff)format("woff")}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/chakra-petch-latin-500-normal-BR1ody1F.woff2)format("woff2"),url(/assets/chakra-petch-latin-500-normal-CnUQnZ4D.woff)format("woff")}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/chakra-petch-latin-ext-500-normal-gA6791b0.woff2)format("woff2"),url(/assets/chakra-petch-latin-ext-500-normal-BCHeNDEx.woff)format("woff")}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/chakra-petch-latin-600-normal-DVQm9bgb.woff2)format("woff2"),url(/assets/chakra-petch-latin-600-normal-DQKfcdKo.woff)format("woff")}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/chakra-petch-latin-ext-600-normal-CdGvbdDU.woff2)format("woff2"),url(/assets/chakra-petch-latin-ext-600-normal-nL80L4xU.woff)format("woff")}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/chakra-petch-latin-700-normal-CnDBPjkL.woff2)format("woff2"),url(/assets/chakra-petch-latin-700-normal-D1s_c2du.woff)format("woff")}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/chakra-petch-latin-ext-700-normal-DAkvJhej.woff2)format("woff2"),url(/assets/chakra-petch-latin-ext-700-normal-BeviJPUl.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/manrope-latin-400-normal-PaqtzbVb.woff2)format("woff2"),url(/assets/manrope-latin-400-normal-8tf8FM3T.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/manrope-latin-ext-400-normal-CMDvPJRp.woff2)format("woff2"),url(/assets/manrope-latin-ext-400-normal-C-X6QNXX.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-latin-500-normal-BYYD-dBL.woff2)format("woff2"),url(/assets/manrope-latin-500-normal-DMZssgOp.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-latin-ext-500-normal-dm74KBQw.woff2)format("woff2"),url(/assets/manrope-latin-ext-500-normal-EtoS1VaI.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/manrope-latin-600-normal-4f0koTD-.woff2)format("woff2"),url(/assets/manrope-latin-600-normal-BqgrALkZ.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/manrope-latin-ext-600-normal-_gBojHdJ.woff2)format("woff2"),url(/assets/manrope-latin-ext-600-normal-u5Pl7hTU.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-latin-700-normal-BZp_XxE4.woff2)format("woff2"),url(/assets/manrope-latin-700-normal-DGRFkw-m.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-latin-ext-700-normal-DYOwVNan.woff2)format("woff2"),url(/assets/manrope-latin-ext-700-normal-eVCcYqtJ.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-500-normal-ckzbgY84.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-600-normal-BfsvjouI.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-ext-600-normal-BfB_LPfz.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-600-normal-DObL3zCW.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-700-normal-D3wTyLJW.woff)format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-latin-ext-700-normal-CZipNAKV.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-700-normal-CxPITLHs.woff)format("woff")}:root{--font-size:16px;--text-xs:.875rem;--text-sm:.9375rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--primary-hue:155;--primary:oklch(.55 .18 var(--primary-hue));--primary-foreground:oklch(99% 0 0);--secondary:oklch(68% .18 35);--secondary-foreground:oklch(99% 0 0);--destructive:oklch(52% .24 25);--destructive-foreground:oklch(99% 0 0);--background:oklch(96% .005 155);--foreground:oklch(12% 0 0);--card:oklch(99% 0 0);--card-foreground:var(--foreground);--muted:oklch(90% .02 155);--muted-foreground:oklch(50% .01 155);--subtle-foreground:oklch(32% .01 155);--accent:oklch(94% .015 155);--accent-foreground:var(--foreground);--border:oklch(86% .01 155);--popover:var(--card);--popover-foreground:var(--foreground);--input:oklch(86% .01 155);--input-focus:oklch(40% .22 155);--invalid-border:oklch(75% .12 35);--invalid-focus:var(--destructive);--input-background:oklch(96.5% .007 155);--switch-background:oklch(78% .01 155);--ring:var(--primary);--scrim:#00000047;--on-primary-faint:#ffffff14;--on-primary-soft:#ffffff1f;--on-primary-strong:#ffffff29;--on-primary-ring:#fff9;--chart-1:var(--primary);--chart-2:var(--secondary);--chart-3:oklch(60% .2 250);--chart-4:oklch(70% .15 130);--chart-5:var(--destructive);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius:.125rem;--notch:16px;--btn-notch:5px;--font-display:"Chakra Petch", "Manrope", -apple-system, sans-serif;--font-body:"Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--primary-glow:color-mix(in oklch, var(--primary) 70%, white);--shadow-card:0 4px 6px -1px #00000014, 0 2px 4px -2px #0000000a;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-green:0 2px 4px 0 color-mix(in oklch, var(--primary-glow) 32%, transparent), 0 12px 20px -3px color-mix(in oklch, var(--primary-glow) 14%, transparent), inset 0 0 0 1px color-mix(in oklch, var(--primary-glow) 18%, transparent);--shadow-sm-soft:0 1px 2px 0 #0000000d;--shadow-card-soft:0 4px 6px -1px #00000012, 0 2px 4px -2px #0000000a;--shadow-lg-soft:0 8px 16px -3px #00000021, 0 3px 6px -3px #00000017;--shadow-green-soft:0 2px 4px 0 color-mix(in oklch, var(--primary-glow) 26%, transparent), 0 8px 14px -3px color-mix(in oklch, var(--primary-glow) 12%, transparent), inset 0 0 0 1px color-mix(in oklch, var(--primary-glow) 14%, transparent);--drop-shadow-sm:drop-shadow(0 1px 2px #0000000d);--drop-shadow-card:drop-shadow(0 4px 6px #00000014) drop-shadow(0 2px 4px #0000000a);--drop-shadow-lg:drop-shadow(0 10px 15px #0000001a) drop-shadow(0 4px 6px #0000001a);--drop-shadow-green:drop-shadow(0 2px 4px color-mix(in oklch, var(--primary-glow) 32%, transparent)) drop-shadow(0 12px 20px color-mix(in oklch, var(--primary-glow) 14%, transparent));--shadow-green-ring:inset 0 0 0 1px color-mix(in oklch, var(--primary-glow) 18%, transparent);--drop-shadow-modal:drop-shadow(0 6px 16px #00000047) drop-shadow(0 2px 5px #0000002e)}.dark{--background:oklch(13% .01 155);--foreground:oklch(97% 0 0);--card:oklch(19% .015 155);--card-foreground:var(--foreground);--popover:var(--card);--popover-foreground:var(--foreground);--primary:oklch(.65 .18 var(--primary-hue));--primary-foreground:oklch(99% 0 0);--secondary:oklch(68% .18 35);--secondary-foreground:oklch(99% 0 0);--muted:oklch(25% .015 155);--muted-foreground:oklch(70% .01 155);--subtle-foreground:oklch(86% .01 155);--accent:oklch(23% .02 155);--accent-foreground:var(--foreground);--destructive:oklch(55% .24 25);--destructive-foreground:oklch(99% 0 0);--border:oklch(33% .02 155);--input:oklch(50% .02 155);--input-focus:oklch(78% .18 155);--invalid-border:oklch(45% .12 35);--invalid-focus:oklch(68% .18 35);--input-background:oklch(18% .015 155);--ring:var(--primary);--primary-glow:var(--primary);--shadow-sm:0 1px 2px 0 #fff3;--shadow-card:0 4px 6px -1px #ffffff38, 0 2px 4px -2px #ffffff24;--shadow-lg:0 6px 14px -3px #ffffff4d, 0 3px 6px -3px #ffffff38;--shadow-green:0 2px 4px 0 color-mix(in oklch, var(--primary-glow) 52%, transparent), 0 12px 20px -3px color-mix(in oklch, var(--primary-glow) 26%, transparent), inset 0 0 0 1px color-mix(in oklch, var(--primary-glow) 32%, transparent);--shadow-sm-soft:0 1px 2px 0 #ffffff1a;--shadow-card-soft:0 4px 6px -1px #ffffff1c, 0 2px 4px -2px #ffffff12;--shadow-lg-soft:0 8px 16px -3px #ffffff2e, 0 3px 6px -3px #ffffff21;--shadow-green-soft:0 2px 4px 0 color-mix(in oklch, var(--primary-glow) 40%, transparent), 0 8px 14px -3px color-mix(in oklch, var(--primary-glow) 20%, transparent), inset 0 0 0 1px color-mix(in oklch, var(--primary-glow) 24%, transparent);--drop-shadow-sm:drop-shadow(0 1px 2px #fff3);--drop-shadow-card:drop-shadow(0 4px 6px #ffffff38) drop-shadow(0 2px 4px #ffffff24);--drop-shadow-lg:drop-shadow(0 6px 14px #ffffff4d) drop-shadow(0 3px 6px #ffffff38);--drop-shadow-green:drop-shadow(0 2px 4px color-mix(in oklch, var(--primary-glow) 52%, transparent)) drop-shadow(0 12px 20px color-mix(in oklch, var(--primary-glow) 26%, transparent));--shadow-green-ring:inset 0 0 0 1px color-mix(in oklch, var(--primary-glow) 32%, transparent);--drop-shadow-modal:drop-shadow(0 12px 24px #0000008c) drop-shadow(0 4px 8px #0006) drop-shadow(1px 0 0 #ffffff24) drop-shadow(-1px 0 0 #ffffff24) drop-shadow(0 1px 0 #ffffff24) drop-shadow(0 -1px 0 #ffffff24)}*,:before,:after{box-sizing:border-box}html{font-size:var(--font-size);scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--background);color:var(--foreground);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11", "ss01";margin:0}h1,h2,h3,h4,h5,h6,p{word-wrap:break-word;margin:0}.zg-notched{--zg-notch:16px;clip-path:polygon(var(--zg-notch) 0, 100% 0, 100% calc(100% - var(--zg-notch)), calc(100% - var(--zg-notch)) 100%, 0 100%, 0 var(--zg-notch))}.zg-notched--sm{--zg-notch:8px}.zg-notched--tl-only{clip-path:polygon(var(--zg-notch) 0, 100% 0, 100% 100%, 0 100%, 0 var(--zg-notch))}.zg-notched--br-only{clip-path:polygon(0 0, 100% 0, 100% calc(100% - var(--zg-notch)), calc(100% - var(--zg-notch)) 100%, 0 100%)}.zg-notched--flat{clip-path:none}h1{font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.02em;font-weight:600;line-height:1.2}h2{font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:.005em;font-weight:600;line-height:1.3}h3{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:.01em;font-weight:600;line-height:1.35}h4{font-family:var(--font-display);font-size:var(--text-base);letter-spacing:.015em;font-weight:600;line-height:1.4}p{font-size:var(--text-base);line-height:1.55}code,.zg-mono{font-family:var(--font-mono)}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit}::selection{background:var(--primary);color:var(--primary-foreground)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground)}.zg-shell{--zg-sidebar-w:260px;grid-template-columns:1fr;min-height:100vh;display:grid}@media (width>=1024px){.zg-shell{grid-template-columns:var(--zg-sidebar-w) 1fr}}.zg-shell__sidebar{border-bottom:1px solid var(--border);min-width:0}@media (width>=1024px){.zg-shell__sidebar{border-bottom:none;border-right:1px solid var(--border);align-self:start;height:100vh;position:sticky;top:0;overflow-y:auto}}.zg-shell__main{min-width:0;padding:32px 20px 80px}@media (width>=768px){.zg-shell__main{padding:40px 40px 100px}}@media (width>=1024px){.zg-shell__main{padding:40px 56px 120px}}.zg-container{width:100%;max-width:var(--zg-container,1200px);margin-inline:auto}.zg-cols-2,.zg-cols-3,.zg-cols-4,.zg-cols-auto,.zg-cols-sidebar,.zg-cols-sidebar-left{gap:var(--zg-gap,24px);grid-template-columns:1fr;align-items:start;display:grid}@media (width>=768px){.zg-cols-2,.zg-cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.zg-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=640px){.zg-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.zg-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.zg-cols-auto{grid-template-columns:repeat(auto-fit, minmax(var(--zg-col-min,260px), 1fr))}@media (width>=1024px){.zg-cols-sidebar{grid-template-columns:minmax(0, 1fr) var(--zg-rail,320px)}.zg-cols-sidebar-left{grid-template-columns:var(--zg-rail,320px) minmax(0, 1fr)}}@media (width>=768px){.zg-col-span-2{grid-column:span 2}}@media (width>=1024px){.zg-col-span-3{grid-column:span 3}}.zg-col-span-full{grid-column:1/-1}.zg-gap-sm{--zg-gap:16px}.zg-gap-lg{--zg-gap:32px}.zg-gap-none{--zg-gap:0}.zg-stack{gap:var(--zg-gap,24px);flex-direction:column;display:flex}.zg-cluster{align-items:center;gap:var(--zg-gap,12px);flex-wrap:wrap;display:flex}.zg-btn{border-radius:var(--radius);height:36px;font-family:var(--font-display);font-size:var(--text-sm);letter-spacing:.05em;white-space:nowrap;cursor:pointer;border:none;outline:none;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;transition:all .14s;display:inline-flex}.zg-btn:focus-visible{outline:3px solid var(--ring);outline-offset:0;box-shadow:none}.zg-btn:disabled{opacity:.5;pointer-events:none}.zg-btn--primary{background:color-mix(in oklch, var(--primary) 6%, transparent);color:var(--primary);border:1px solid var(--primary);box-shadow:inset 0 0 8px -2px color-mix(in oklch, var(--primary) 40%, transparent), 0 0 6px -4px color-mix(in oklch, var(--primary) 35%, transparent)}.zg-btn--primary:hover{background:color-mix(in oklch, var(--primary) 14%, transparent);border-color:var(--primary);box-shadow:inset 0 0 12px -2px color-mix(in oklch, var(--primary) 55%, transparent), 0 0 10px -4px color-mix(in oklch, var(--primary) 55%, transparent)}.dark .zg-btn--primary{box-shadow:inset 0 0 14px -2px color-mix(in oklch, var(--primary) 75%, transparent), 0 0 14px -4px var(--primary)}.dark .zg-btn--primary:hover{box-shadow:inset 0 0 18px -2px var(--primary), 0 0 18px -4px var(--primary)}.zg-btn--secondary{--wire-secondary:color-mix(in oklch, var(--secondary) 82%, white);background:color-mix(in oklch, var(--wire-secondary) 8%, transparent);color:var(--wire-secondary);border:1px solid var(--wire-secondary);box-shadow:inset 0 0 8px -2px color-mix(in oklch, var(--wire-secondary) 40%, transparent), 0 0 6px -4px color-mix(in oklch, var(--wire-secondary) 35%, transparent)}.zg-btn--secondary:hover{background:color-mix(in oklch, var(--wire-secondary) 18%, transparent);border-color:var(--wire-secondary);box-shadow:inset 0 0 12px -2px color-mix(in oklch, var(--wire-secondary) 55%, transparent), 0 0 10px -4px color-mix(in oklch, var(--wire-secondary) 55%, transparent)}.dark .zg-btn--secondary{box-shadow:inset 0 0 14px -2px color-mix(in oklch, var(--wire-secondary) 75%, transparent), 0 0 14px -4px var(--wire-secondary)}.dark .zg-btn--secondary:hover{box-shadow:inset 0 0 18px -2px var(--wire-secondary), 0 0 18px -4px var(--wire-secondary)}.zg-btn--outline{background:color-mix(in oklch, var(--foreground) 4%, transparent);color:var(--foreground);border:1px solid var(--border);box-shadow:inset 0 0 8px -2px color-mix(in oklch, var(--foreground) 14%, transparent), 0 0 6px -4px color-mix(in oklch, var(--foreground) 18%, transparent)}.zg-btn--outline:hover,.zg-collapsible__trigger:hover .zg-btn--outline{background:color-mix(in oklch, var(--foreground) 8%, transparent);border-color:color-mix(in oklch, var(--foreground) 45%, var(--border));box-shadow:inset 0 0 12px -2px color-mix(in oklch, var(--foreground) 22%, transparent), 0 0 10px -4px color-mix(in oklch, var(--foreground) 26%, transparent)}.dark .zg-btn--outline{border-color:color-mix(in oklch, var(--foreground) 35%, var(--border));box-shadow:inset 0 0 14px -2px color-mix(in oklch, var(--foreground) 22%, transparent), 0 0 10px -4px color-mix(in oklch, var(--foreground) 30%, transparent)}.dark .zg-btn--outline:hover,.dark .zg-collapsible__trigger:hover .zg-btn--outline{box-shadow:inset 0 0 18px -2px color-mix(in oklch, var(--foreground) 38%, transparent), 0 0 14px -4px color-mix(in oklch, var(--foreground) 42%, transparent)}.zg-btn--destructive{--wire-destructive:color-mix(in oklch, var(--destructive) 88%, black);background:color-mix(in oklch, var(--wire-destructive) 6%, transparent);color:var(--wire-destructive);border:1px solid var(--wire-destructive);box-shadow:inset 0 0 8px -2px color-mix(in oklch, var(--wire-destructive) 40%, transparent), 0 0 6px -4px color-mix(in oklch, var(--wire-destructive) 35%, transparent)}.zg-btn--destructive:hover{background:color-mix(in oklch, var(--wire-destructive) 14%, transparent);border-color:var(--wire-destructive);box-shadow:inset 0 0 12px -2px color-mix(in oklch, var(--wire-destructive) 55%, transparent), 0 0 10px -4px color-mix(in oklch, var(--wire-destructive) 55%, transparent)}.dark .zg-btn--destructive{--wire-destructive:color-mix(in oklch, var(--destructive) 70%, white);color:var(--wire-destructive);border-color:var(--wire-destructive);box-shadow:inset 0 0 14px -2px color-mix(in oklch, var(--wire-destructive) 75%, transparent), 0 0 14px -4px var(--wire-destructive)}.dark .zg-btn--destructive:hover{box-shadow:inset 0 0 18px -2px var(--wire-destructive), 0 0 18px -4px var(--wire-destructive)}.zg-btn--link{color:var(--primary);height:auto;font-family:var(--font-body);letter-spacing:normal;background:0 0;padding:0;font-weight:500;text-decoration:none}.zg-btn--link:hover{text-underline-offset:3px;text-decoration:underline}.zg-btn--sm{height:32px;padding:0 12px;font-size:13px}.zg-btn--lg{height:40px;font-size:var(--text-base);padding:0 24px}.zg-btn--icon{width:36px;height:36px;padding:0}.zg-badge{border-radius:var(--radius);height:22px;font-size:var(--text-xs);white-space:nowrap;letter-spacing:.02em;border:1px solid #0000;align-items:center;gap:4px;padding:0 8px;font-weight:600;display:inline-flex}.zg-badge--primary{background:color-mix(in oklch, var(--primary) 24%, transparent);color:var(--foreground);border-color:color-mix(in oklch, var(--primary) 75%, black);box-shadow:inset 0 0 9px 0 color-mix(in oklch, var(--primary) 70%, transparent)}.zg-badge--secondary{background:color-mix(in oklch, var(--secondary) 24%, transparent);color:var(--foreground);border-color:color-mix(in oklch, var(--secondary) 75%, black);box-shadow:inset 0 0 9px 0 color-mix(in oklch, var(--secondary) 70%, transparent)}.zg-badge--destructive{background:color-mix(in oklch, var(--destructive) 22%, transparent);color:var(--foreground);border-color:color-mix(in oklch, var(--destructive) 75%, black);box-shadow:inset 0 0 9px 0 color-mix(in oklch, var(--destructive) 65%, transparent)}.zg-badge--outline{color:var(--foreground);border-color:color-mix(in oklch, var(--foreground) 55%, transparent)}.zg-badge--muted{background:color-mix(in oklch, var(--foreground) 10%, transparent);color:var(--foreground);border-color:color-mix(in oklch, var(--foreground) 55%, transparent);box-shadow:inset 0 0 9px 0 color-mix(in oklch, var(--foreground) 22%, transparent)}.dark .zg-badge--primary{background:color-mix(in oklch, var(--primary) 22%, transparent);color:#fff;border-color:color-mix(in oklch, var(--primary) 70%, transparent);box-shadow:inset 0 0 10px 0 color-mix(in oklch, var(--primary) 75%, transparent)}.dark .zg-badge--secondary{background:color-mix(in oklch, var(--secondary) 22%, transparent);color:#fff;border-color:color-mix(in oklch, var(--secondary) 70%, transparent);box-shadow:inset 0 0 10px 0 color-mix(in oklch, var(--secondary) 75%, transparent)}.dark .zg-badge--destructive{background:color-mix(in oklch, var(--destructive) 22%, transparent);color:#fff;border-color:color-mix(in oklch, var(--destructive) 70%, transparent);box-shadow:inset 0 0 10px 0 color-mix(in oklch, var(--destructive) 75%, transparent)}.dark .zg-badge--muted{background:color-mix(in oklch, var(--foreground) 10%, transparent);color:#fff;border-color:color-mix(in oklch, var(--foreground) 32%, transparent);box-shadow:inset 0 0 10px 0 color-mix(in oklch, var(--foreground) 32%, transparent)}.dark .zg-badge--outline{color:var(--foreground);border-color:color-mix(in oklch, var(--foreground) 30%, var(--border))}.zg-pill{font-size:var(--text-xs);letter-spacing:.02em;white-space:nowrap;background:color-mix(in oklch, var(--foreground) 7%, transparent);color:var(--foreground);border:1px solid color-mix(in oklch, var(--foreground) 35%, transparent);box-shadow:inset 0 0 9px 0 color-mix(in oklch, var(--foreground) 18%, transparent);border-radius:999px;align-items:center;padding:3px 12px;font-weight:600;display:inline-flex}.dark .zg-pill{background:color-mix(in oklch, var(--foreground) 10%, transparent);color:#fff;border-color:color-mix(in oklch, var(--foreground) 32%, transparent);box-shadow:inset 0 0 10px 0 color-mix(in oklch, var(--foreground) 32%, transparent)}.zg-icon-chip{border-radius:var(--radius);background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;flex-shrink:0;justify-content:center;align-items:center;padding:8px;display:inline-flex}.zg-alert{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);font-size:var(--text-sm);grid-template-columns:16px 1fr;gap:12px;padding:12px 16px;display:grid}.zg-alert__icon{justify-content:center;align-items:flex-start;display:flex}.zg-alert__title{margin-bottom:2px;font-weight:500}.zg-alert__desc{color:var(--subtle-foreground);font-size:var(--text-xs)}.zg-alert--destructive{color:var(--destructive);border-color:color-mix(in oklch, var(--destructive) 40%, var(--border))}.zg-alert--destructive .zg-alert__desc{color:color-mix(in oklch, var(--destructive) 80%, var(--foreground))}.zg-progress{background:var(--muted);border-radius:var(--radius);height:8px;overflow:hidden}.zg-progress__fill{height:100%;width:var(--zg-progress-fill,0%);background:var(--primary);border-radius:var(--radius)}.zg-meter__caption{justify-content:space-between;margin-bottom:4px;display:flex}.zg-meter__hint{margin-right:10px}.zg-label{font-family:var(--font-display);font-size:var(--text-sm);letter-spacing:.015em;color:var(--foreground);margin-bottom:6px;font-weight:600;display:block}.zg-form-help{font-family:var(--font-body);color:var(--subtle-foreground);margin:4px 0 0;font-size:12px;font-style:italic}.zg-form-error{font-family:var(--font-body);font-size:var(--text-xs);color:var(--secondary);margin:4px 0 0}.zg-required{color:var(--secondary)}.zg-input,.zg-select,.zg-textarea{background:var(--input-background);border:1px solid var(--input);border-radius:var(--radius);width:100%;font-family:var(--font-body);font-size:var(--text-sm);color:var(--foreground);outline:none;padding:7px 12px;font-weight:400;line-height:normal;transition:border-color .14s}.zg-textarea{resize:vertical;min-height:80px}.zg-input:focus,.zg-select:focus,.zg-textarea:focus{border-color:var(--input-focus)}.zg-input--invalid,.zg-select--invalid,.zg-textarea--invalid,.zg-input[aria-invalid=true],.zg-select[aria-invalid=true],.zg-textarea[aria-invalid=true]{border-color:var(--invalid-border)}.zg-input--invalid:focus,.zg-select--invalid:focus,.zg-textarea--invalid:focus,.zg-input[aria-invalid=true]:focus,.zg-select[aria-invalid=true]:focus,.zg-textarea[aria-invalid=true]:focus{border-color:var(--invalid-focus)}.zg-input::placeholder,.zg-select::placeholder,.zg-textarea::placeholder{color:var(--subtle-foreground);opacity:1}.zg-input:disabled,.zg-select:disabled,.zg-textarea:disabled{opacity:.5;cursor:not-allowed}.zg-stepper{border:1px solid var(--input);border-radius:var(--radius);background:var(--input-background);align-items:stretch;transition:border-color .14s;display:flex;overflow:hidden}.zg-stepper:focus-within{border-color:var(--input-focus)}.zg-stepper--invalid{border-color:var(--invalid-border)}.zg-stepper--invalid:focus-within{border-color:var(--invalid-focus)}.zg-stepper__input{font-family:var(--font-body);font-size:var(--text-sm);color:var(--foreground);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:7px 12px;font-weight:400;line-height:normal}.zg-stepper__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.zg-stepper__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.zg-stepper__input{appearance:textfield}.zg-stepper__btns{border-left:1px solid var(--border);flex-direction:column;display:flex}.zg-stepper__btn{cursor:pointer;color:var(--muted-foreground);background:0 0;border:none;flex:1;align-items:center;padding:0 8px;font-family:inherit;transition:background .12s,color .12s;display:flex}.zg-stepper__btn:first-child{border-bottom:1px solid var(--border)}.zg-stepper__btn:hover{background:var(--accent);color:var(--foreground)}.zg-stepper__btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.zg-choice{cursor:pointer;border-radius:var(--radius);outline:none;align-items:center;gap:8px;display:inline-flex}.zg-choice[role=switch]{gap:10px}.zg-choice[aria-disabled=true]{cursor:default}.zg-choice:focus-visible{outline:none}.zg-choice:focus-visible .zg-check,.zg-choice:focus-visible .zg-radio,.zg-choice:focus-visible .zg-switch{box-shadow:0 0 0 3px var(--ring)}.zg-check{border:1px solid var(--border);background:var(--input-background);border-radius:var(--radius);color:#0000;cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.zg-check--checked{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.zg-check--disabled,.zg-check[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.zg-radio{border:1px solid var(--border);background:var(--input-background);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:border-color .12s,background .12s;display:inline-flex}.zg-radio--checked:after{content:"";background:var(--primary);border-radius:50%;width:8px;height:8px}.zg-radio--disabled,.zg-radio[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.zg-switch{background:var(--switch-background);cursor:pointer;border:none;border-radius:10px;flex-shrink:0;width:36px;height:20px;padding:0;transition:background .15s;display:inline-block;position:relative}.zg-switch:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.zg-switch--on{background:var(--primary)}.zg-switch--on:after{transform:translate(16px)}.zg-switch--disabled,.zg-switch[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.zg-notched-elevated{filter:var(--drop-shadow-card)}.zg-notched-elevated--sm{filter:var(--drop-shadow-sm)}.zg-notched-elevated--lg{filter:var(--drop-shadow-lg)}.zg-notched-elevated--green{filter:var(--drop-shadow-green)}.zg-notched-elevated--modal{filter:var(--drop-shadow-modal)}.zg-notched-frame{position:relative}.zg-edge-bar{pointer-events:none;z-index:1;background:linear-gradient(to bottom, var(--primary), var(--secondary));width:3px;position:absolute;top:0;bottom:0;left:0}.zg-edge-bar--right{background:linear-gradient(to bottom, var(--secondary), var(--primary));left:auto;right:0}.zg-edge-bar--top{background:linear-gradient(to right, var(--secondary), var(--primary));width:auto;height:5px;inset:0 0 auto}.zg-edge-bar--bottom{background:linear-gradient(to right, var(--primary), var(--secondary));width:auto;height:5px;inset:auto 0 0}.zg-corner-accent{opacity:.1;pointer-events:none;clip-path:polygon(100% 0,100% 100%,0 100%);background:var(--primary);width:80px;height:80px;position:absolute;bottom:0;right:0}.zg-corner-accent--primary{background:var(--primary)}.zg-corner-accent--secondary{background:var(--secondary)}.zg-notch-stroke{width:var(--notch);height:var(--notch);pointer-events:none;z-index:20;position:absolute}.zg-notch-stroke--tl{top:0;left:0}.zg-notch-stroke--br{bottom:0;right:0}.zg-notch-stroke--tr{top:0;right:0}.zg-notch-stroke--bl{bottom:0;left:0}.zg-notch-stroke--sm{width:8px;height:8px}.zg-card{background:var(--card);color:var(--card-foreground);border:1px solid var(--border);padding:20px;position:relative;overflow:hidden}.zg-card--highlighted{box-shadow:var(--shadow-green-ring);border:none}.zg-card-header{align-items:center;gap:var(--zg-ch-gap,10px);margin-bottom:var(--zg-ch-mb,16px);display:flex}.zg-card-header>h3{margin:0}.zg-modal-backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;justify-content:center;align-items:flex-start;padding:40px 24px;display:flex;position:fixed;inset:0;overflow-y:auto}.zg-modal-shadow-wrap{max-width:var(--zg-modal-w,480px);width:100%;filter:var(--drop-shadow-modal);flex-shrink:0}.zg-modal{background:var(--card);color:var(--card-foreground);clip-path:polygon(16px 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 16px);position:relative;overflow:hidden}.zg-modal__header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;display:flex}.zg-modal__title{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.01em;margin:0;font-weight:600}.zg-modal__body{padding:24px}.zg-modal__footer{border-top:1px solid var(--border);justify-content:flex-end;align-items:center;gap:8px;padding:16px 24px;display:flex}.zg-tabs{background:var(--muted);border-radius:var(--radius);gap:2px;padding:3px;display:inline-flex}.dark .zg-tabs{background:color-mix(in oklch, var(--primary) 22%, var(--muted))}.zg-tab{font-family:var(--font-body);font-size:var(--text-sm);color:var(--subtle-foreground);border-radius:var(--radius);cursor:pointer;background:0 0;border:none;padding:6px 14px;font-weight:500;transition:color .12s,background .12s}.zg-tab:hover{color:var(--foreground);background:color-mix(in oklch, var(--card) 65%, transparent)}.zg-tab:focus-visible{box-shadow:0 0 0 3px var(--ring);outline:none}.zg-tab--active{background:var(--card);color:var(--foreground);box-shadow:var(--shadow-sm)}.zg-tab--active:hover{color:var(--foreground)}.zg-collapsible--plain{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}.zg-collapsible__trigger{font-family:var(--font-body);width:100%;color:var(--foreground);text-align:left;cursor:pointer;border-radius:var(--radius);background:0 0;border:none;align-items:center;gap:12px;margin:0;padding:0;display:flex}.zg-collapsible__trigger:focus-visible{outline:2px solid var(--ring);outline-offset:-2px}.zg-collapsible__title{min-width:0;font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.01em;flex:auto;font-weight:600;line-height:1.3}.zg-collapsible__meta{color:var(--muted-foreground);font-size:var(--text-xs);flex:none}.zg-collapsible__caret.zg-btn--icon{flex:none;width:28px;height:28px}.zg-collapsible__caret.zg-btn--icon svg{transition:transform .24s cubic-bezier(.4,0,.2,1)}.zg-collapsible--open .zg-collapsible__caret svg{transform:rotate(180deg)}.zg-collapsible__region{max-height:0;transition:max-height .28s cubic-bezier(.4,0,.2,1);overflow:hidden}.zg-collapsible--open .zg-collapsible__region{max-height:var(--zg-collapsible-max,1500px)}.zg-collapsible__inner{color:var(--foreground);padding-top:14px;line-height:1.6}@media (prefers-reduced-motion:reduce){.zg-collapsible__region,.zg-collapsible__caret,.zg-collapsible__caret svg{transition:none}}.zg-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.zg-table thead{background:var(--muted)}.dark .zg-table thead{background:color-mix(in oklch, var(--primary) 22%, var(--muted))}.zg-table th{text-align:left;font-weight:600;font-size:var(--text-sm);padding:10px 16px}.zg-table td{border-bottom:1px solid var(--border);padding:10px 16px}.zg-table tbody th{border-bottom:1px solid var(--border)}.zg-table th.zg-num,.zg-table td.zg-num{text-align:right}.zg-table tbody tr:hover{background:var(--accent)}.dark .zg-table tbody tr:hover{background:var(--muted)}.zg-table-stack{width:100%;container-type:inline-size}.zg-table-scroll{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}@container (width<=560px){.zg-table--stack,.zg-table--stack tbody,.zg-table--stack tr,.zg-table--stack td,.zg-table--stack th{width:auto;display:block}.zg-table--stack thead{display:none}.zg-table--stack tbody tr{border:1px solid var(--border);border-radius:var(--radius);background:var(--card);margin:0 0 12px;overflow:hidden}.zg-table--stack tbody tr:last-child{margin-bottom:0}.zg-table--stack tbody tr:hover{background:var(--card)}.zg-table--stack tbody td:hover,.zg-table--stack tbody th:hover{background:var(--accent)}.dark .zg-table--stack tbody td:hover,.dark .zg-table--stack tbody th:hover{background:var(--muted)}.zg-table--stack tbody td,.zg-table--stack tbody th{text-align:right;border-bottom:1px solid var(--border);font-size:var(--text-sm);justify-content:space-between;align-items:baseline;gap:16px;padding:9px 14px;display:flex}.zg-table--stack tbody tr>:last-child{border-bottom:none}.zg-table--stack th.zg-num,.zg-table--stack td.zg-num{text-align:right}.zg-table--stack tbody td:before,.zg-table--stack tbody th:before{content:attr(data-label);color:var(--subtle-foreground);text-align:left;margin-right:auto;font-weight:600}.zg-table--stack tbody th[scope=row]{background:var(--muted);font-size:var(--text-base);justify-content:flex-start;padding-top:11px;padding-bottom:11px;font-weight:700}.zg-table--stack tbody th[scope=row]:before{content:none}.dark .zg-table--stack tbody th[scope=row]{background:color-mix(in oklch, var(--primary) 22%, var(--muted))}}.zg-breadcrumb{font-size:var(--text-sm);color:var(--subtle-foreground);align-items:center;gap:8px;display:flex}.zg-breadcrumb a{color:inherit;transition:color .12s}.zg-breadcrumb a:hover{color:var(--foreground)}.zg-breadcrumb__sep{color:var(--muted-foreground);-webkit-user-select:none;user-select:none}.zg-breadcrumb__current{color:var(--foreground);font-weight:500}.zg-app-header{background:var(--primary);color:var(--primary-foreground);padding:20px;position:relative}.zg-app-header__bar{z-index:10;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex;position:relative}.zg-app-header__brand{align-items:center;gap:12px;display:flex}.zg-app-header__title{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:.01em;color:inherit;margin:0;font-weight:600}.zg-app-header__action{border-radius:var(--radius);width:36px;height:36px;color:inherit;cursor:pointer;background:#ffffff1a;border:none;justify-content:center;align-items:center;padding:0;font-family:inherit;transition:background .12s;display:inline-flex}.zg-app-header__action:hover{background:var(--on-primary-strong)}.zg-edge-bar--header{background:linear-gradient(to right, var(--secondary), var(--primary))}.zg-header-nav{font-size:var(--text-sm);z-index:10;gap:4px;display:flex;position:relative}.zg-header-nav__item{color:inherit;font-family:inherit;font-size:inherit;border-radius:var(--radius);cursor:pointer;background:0 0;border:none;align-items:center;gap:7px;padding:7px 12px;font-weight:500;transition:background .12s;display:inline-flex}.zg-header-nav__item:hover{background:var(--on-primary-faint)}.zg-header-nav__item:focus-visible{outline:2px solid var(--on-primary-ring);outline-offset:1px}.zg-header-nav__item--active,.zg-header-nav__item--open{background:var(--on-primary-soft)}.zg-header-nav__group{position:relative}.zg-header-nav__caret{transition:transform .15s}.zg-header-nav__item--open .zg-header-nav__caret{transform:rotate(180deg)}.zg-app-footer{background:var(--card);border-top:1px solid var(--border);padding:14px 20px;position:relative}.zg-app-footer__text{text-align:center;color:var(--muted-foreground);font-size:var(--text-sm);margin:0}.zg-popover{background:var(--card);color:var(--foreground);min-width:200px;box-shadow:inset 0 0 0 1px var(--border), var(--shadow-lg);z-index:50;position:relative}.zg-popover__item{text-align:left;width:100%;font-family:inherit;font-size:var(--text-sm);border:none;border-top:1px solid var(--border);color:inherit;cursor:pointer;background:0 0;padding:8px 14px;font-weight:400;transition:background .1s;display:block}.zg-popover__item:first-child{border-top:none}.zg-popover__item:hover,.zg-popover__item:focus-visible{background:var(--accent);outline:none}.zg-popover__item--disabled{color:var(--muted-foreground);cursor:default}.zg-popover__item--disabled:hover{background:0 0}.zg-popover__item--active{color:var(--primary);background:color-mix(in oklch, var(--primary) 8%, transparent);font-weight:500}.zg-popover__item--active:hover,.zg-popover__item--active:focus-visible{background:color-mix(in oklch, var(--primary) 13%, transparent)}.zg-edge-bar--narrow{width:2px}.zg-stat-tile{z-index:10;justify-content:space-between;align-items:flex-start;padding:16px;display:flex;position:relative}.zg-stat-tile__label{font-size:var(--text-sm);color:var(--subtle-foreground);margin-bottom:2px}.zg-stat-tile__value{font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:.02em;margin-bottom:2px;font-weight:600}.zg-stat-tile__trend{font-size:var(--text-xs);color:var(--muted-foreground)}.zg-stat-tile__icon{color:var(--primary);flex-shrink:0;align-items:flex-start;display:inline-flex}.zg-stat-tile--warning .zg-stat-tile__icon{color:var(--secondary)}.zg-activity-list{padding:4px 0;position:relative}.zg-activity-list:before{content:"";background:linear-gradient(180deg, color-mix(in oklch, var(--primary) 40%, transparent), var(--border) 40%, color-mix(in oklch, var(--secondary) 40%, transparent));width:1px;position:absolute;top:14px;bottom:14px;left:11px}.zg-activity-list__row{grid-template-columns:24px 1fr;align-items:start;gap:12px;padding:10px 0;display:grid;position:relative}.zg-activity-list__row+.zg-activity-list__row{border-top:1px dashed var(--border)}.zg-activity-list__marker{background:var(--card);width:22px;height:22px;color:var(--primary);clip-path:polygon(4px 0,100% 0,100% calc(100% - 4px),calc(100% - 4px) 100%,0 100%,0 4px);box-shadow:inset 0 0 0 1px color-mix(in oklch, var(--primary) 50%, var(--border));justify-content:center;align-items:center;display:inline-flex}.zg-activity-list__marker--add{color:var(--primary);box-shadow:inset 0 0 0 1px color-mix(in oklch, var(--primary) 50%, var(--border))}.zg-activity-list__marker--remove{color:var(--secondary);box-shadow:inset 0 0 0 1px color-mix(in oklch, var(--secondary) 50%, var(--border))}.zg-activity-list__marker--edit{color:var(--foreground);box-shadow:inset 0 0 0 1px var(--border)}.zg-activity-list__body{flex-direction:column;gap:2px;min-width:0;display:flex}.zg-activity-list__primary{font-size:var(--text-sm);color:var(--foreground);font-weight:500}.zg-activity-list__meta{font-size:var(--text-xs);color:var(--subtle-foreground)}.zg-panel-display{font-family:var(--font-display);letter-spacing:.02em}.zg-panel-head{background:linear-gradient(90deg, color-mix(in oklch, var(--primary) 8%, transparent), transparent 60%);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin:-20px -20px 16px;padding:12px 16px;display:flex}.zg-panel-head__left{font-family:var(--font-display);font-weight:600;font-size:var(--text-base);letter-spacing:.02em;color:var(--foreground);align-items:baseline;gap:12px;display:flex}.zg-panel-head__id{color:var(--primary)}.zg-panel-head__sub{font-family:var(--font-mono);color:var(--subtle-foreground);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:400}.zg-panel-head__status{font-family:var(--font-mono);color:var(--subtle-foreground);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;font-size:11px;display:inline-flex}.zg-panel-head__dot{background:var(--primary);width:6px;height:6px;box-shadow:0 0 0 3px color-mix(in oklch, var(--primary) 25%, transparent);border-radius:50%;animation:2.4s ease-in-out infinite zg-panel-pulse}@keyframes zg-panel-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in oklch, var(--primary) 25%, transparent)}50%{box-shadow:0 0 0 5px color-mix(in oklch, var(--primary) 10%, transparent)}}.zg-text-hero{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--font-weight-semibold);letter-spacing:-.005em;line-height:1.15}.zg-text-eyebrow{font-family:var(--font-mono);font-size:11px;font-weight:var(--font-weight-medium);letter-spacing:.04em;color:var(--subtle-foreground)}.zg-text-xs{font-size:var(--text-xs)}.zg-text-sm{font-size:var(--text-sm)}.zg-text-base{font-size:var(--text-base)}.zg-text-lg{font-size:var(--text-lg)}.zg-text-xl{font-size:var(--text-xl)}.zg-text-2xl{font-size:var(--text-2xl)}.zg-text-3xl{font-size:var(--text-3xl)}.zg-font-normal{font-weight:var(--font-weight-normal)}.zg-font-medium{font-weight:var(--font-weight-medium)}.zg-font-semibold{font-weight:var(--font-weight-semibold)}.zg-font-bold{font-weight:var(--font-weight-bold)}.zg-text-foreground{color:var(--foreground)}.zg-text-subtle{color:var(--subtle-foreground)}.zg-text-muted{color:var(--muted-foreground)}.zg-app-frame{background:var(--background);flex-direction:column;min-height:100dvh;display:flex}.zg-app-main{width:100%;min-width:0;max-width:var(--zg-container,1200px);flex:1;margin-inline:auto;padding:24px 16px}@media (width>=768px){.zg-app-main{padding:32px 24px}}@media (width>=1024px){.zg-app-main{padding:40px 32px}}.zg-boot-splash{z-index:1000;background:var(--background);flex-direction:column;justify-content:center;align-items:center;gap:24px;display:flex;position:fixed;inset:0}.zg-boot-splash__mark{color:var(--primary);filter:drop-shadow(0 0 12px var(--primary-glow))}.zg-boot-splash__spinner{border:3px solid color-mix(in oklch, var(--primary) 20%, transparent);border-top-color:var(--primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite zg-boot-spin}@keyframes zg-boot-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.zg-boot-splash__spinner{animation-duration:2.4s}}
