:root{
  --gt-navy:215 69% 14%;
  --gt-burgundy:340 59% 30%;
  --background:0 0% 100%;
  --foreground:215 30% 12%;
  --card:0 0% 100%;
  --card-foreground:215 30% 12%;
  --muted:240 7% 97%;
  --muted-foreground:215 12% 40%;
  --border:215 18% 88%;
}
/* shadcn-like token classes used in the original JSX */
.bg-background{background-color:hsl(var(--background));}
.text-foreground{color:hsl(var(--foreground));}
.bg-muted\/10{background-color:hsla(var(--muted),0.1);} /* fallback if tailwind misses */
.text-muted-foreground{color:hsl(var(--muted-foreground));}
.bg-muted{background-color:hsl(var(--muted));}
.border{border-color:hsl(var(--border));}
.bg-muted\/50{background-color:hsla(var(--muted),0.5);} 
.bg-muted\/30{background-color:hsla(var(--muted),0.3);} 
.bg-muted\/40{background-color:hsla(var(--muted),0.4);} 
.bg-muted\/10{background-color:hsla(var(--muted),0.1);} 

/* Simple “component” helpers (replaces shadcn Button/Card) */
.gt-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:9999px;padding:.75rem 1.05rem;font-weight:600;line-height:1;transition:filter .15s,background-color .15s,color .15s,border-color .15s;}
.gt-btn:focus{outline:2px solid hsla(var(--gt-burgundy),.35);outline-offset:2px;}
.gt-btn-primary{background-color:hsl(var(--gt-navy));color:#fff;}
.gt-btn-primary:hover{filter:brightness(1.05);} 
.gt-btn-secondary{background-color:hsl(var(--muted));color:hsl(var(--gt-navy));border:1px solid hsl(var(--border));}
.gt-btn-secondary:hover{filter:brightness(0.98);} 
.gt-btn-ghost{background:transparent;color:hsl(var(--foreground));}
.gt-btn-ghost:hover{background-color:hsla(var(--muted),0.5);} 

.gt-card{border:1px solid hsl(var(--border));border-radius:1.25rem;background:#fff;}
.gt-badge{display:inline-flex;align-items:center;border-radius:9999px;padding:.25rem .6rem;font-size:.75rem;font-weight:600;border:1px solid hsl(var(--border));}
.gt-badge-secondary{background-color:hsl(var(--muted));border-color:hsl(var(--border));color:hsl(var(--gt-navy));}
.gt-badge-outline{background:transparent;color:hsl(var(--foreground));}

/* Better form controls (matches original look) */
.gt-input,.gt-textarea,.gt-select{width:100%;border:1px solid hsl(var(--border));border-radius:1rem;padding:.7rem .85rem;background:#fff;}
.gt-input:focus,.gt-textarea:focus,.gt-select:focus{outline:2px solid hsla(var(--gt-burgundy),.25);outline-offset:2px;}

/* Small utilities */
.gt-container{max-width:72rem;margin:0 auto;padding:0 1rem;}
@media(min-width:640px){.gt-container{padding:0 1.5rem;}}

/* Hide/show mobile nav */
#mobileNav[hidden]{display:none !important;}
