/* util.css — rebuilt from live reference/dom/style.css for class parity */

/* Tailwind preflight border reset: without border-style:solid, width-only
   utilities (border-b, border-border, etc.) render no border at all. */
*,
::before,
::after {
  border-width: 0;
  border-style: solid;
  border-color: hsl(var(--border));
}


@keyframes accordion-up { 0% { height: var(--radix-accordion-content-height); } to { height: 0; } }
@keyframes accordion-down { 0% { height: 0; } to { height: var(--radix-accordion-content-height); } }
[data-state="open"] > svg.lucide-chevron-down,
[data-state="open"] > button > svg.lucide-chevron-down { transform: rotate(180deg); }
[role="tabpanel"][hidden], [role="region"][hidden] { display: none !important; }
/* fixed [&_svg] descendant targeting */
.\[\&_svg\]\:pointer-events-none svg { pointer-events: none; }
.\[\&_svg\]\:size-4 svg { width: 1rem; height: 1rem; }
.\[\&_svg\]\:shrink-0 svg { flex-shrink: 0; }

.transition-all { transition-property:all;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:.15s }
.bg-primary { background-color:hsl(var(--primary)) }
.rounded-md { border-radius:calc(var(--radius) - 2px) }
.min-h-\[80px\] { min-height:80px }
.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) }
.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) }
.border-primary { border-color:hsl(var(--primary)) }
.p-1 { padding:.25rem }
.max-w-\[10rem\] { max-width:10rem }
.bg-gradient-to-br { background-image:linear-gradient(to bottom right,var(--tw-gradient-stops)) }
.hover\:bg-primary\/90:hover { background-color:hsl(var(--primary) / .9) }
.top-4 { top:1rem }
.from-primary\/10 { --tw-gradient-from: hsl(var(--primary) / .1) var(--tw-gradient-from-position);
  --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) }
.focus\:outline-none:focus { outline:2px solid transparent;
  outline-offset:2px }
.align-middle { vertical-align:middle }

.gap-3 { gap:.75rem }
.border-b { border-bottom-width:1px }
.border-l-4 { border-left-width:4px }
.mt-0\.5 { margin-top:.125rem }
.h-24 { height:6rem }
.border-primary\/20 { border-color:hsl(var(--primary) / .2) }
.via-primary\/5 { --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--primary) / .05) var(--tw-gradient-via-position), var(--tw-gradient-to) }
.disabled\:cursor-not-allowed:disabled { cursor:not-allowed }


.py-1\.5 { padding-top:.375rem;
  padding-bottom:.375rem }
.file\:bg-transparent::file-selector-button { background-color:transparent }
.mb-8 { margin-bottom:2rem }
.last\:border-0:last-child { border-width:0px }
.border-border\/70 { border-color:hsl(var(--border) / .7) }
.space-y-12>:not([hidden])~:not([hidden]) { --tw-space-y-reverse: 0;
  margin-top:calc(3rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:calc(3rem * var(--tw-space-y-reverse)) }
.mr-2 { margin-right:.5rem }
.bg-background { background-color:hsl(var(--background)) }
.text-primary-foreground { color:hsl(var(--primary-foreground)) }
.max-w-5xl { max-width:64rem }
.rounded-sm { border-radius:calc(var(--radius) - 4px) }
.right-4 { right:1rem }
.text-primary\/90 { color:hsl(var(--primary) / .9) }
.px-6 { padding-left:1.5rem;
  padding-right:1.5rem }
.text-primary\/80 { color:hsl(var(--primary) / .8) }
.focus\:ring-offset-2:focus { --tw-ring-offset-width: 2px }
.text-3xl { font-size:1.875rem;
  line-height:2.25rem }
.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 }

.bg-muted\/20 { background-color:hsl(var(--muted) / .2) }
.w-5 { width:1.25rem }
.focus\:ring-primary:focus { --tw-ring-color: hsl(var(--primary)) }
.hover\:bg-accent:hover { background-color:hsl(var(--accent)) }
.max-w-md { max-width:28rem }
.opacity-50 { opacity:.5 }
.p-3 { padding:.75rem }
.max-w-\[6rem\] { max-width:6rem }
.hover\:shadow-md:hover { --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow) }
.text-base { font-size:1rem;
  line-height:1.5rem }
.hover\:bg-primary-foreground\/10:hover { background-color:hsl(var(--primary-foreground) / .1) }
.py-12 { padding-top:3rem;
  padding-bottom:3rem }
.mx-auto { margin-left:auto;
  margin-right:auto }
.bg-card\/80 { background-color:hsl(var(--card) / .8) }
.h-10 { height:2.5rem }
.max-w-sm { max-width:24rem }
.text-sm { font-size:.875rem;
  line-height:1.25rem }
.bg-background\/60 { background-color:hsl(var(--background) / .6) }
.text-muted-foreground { color:hsl(var(--muted-foreground)) }
.bg-primary\/5 { background-color:hsl(var(--primary) / .05) }
.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)) }

.uppercase { text-transform:uppercase }
.border-primary\/50 { border-color:hsl(var(--primary) / .5) }
.py-8 { padding-top:2rem;
  padding-bottom:2rem }
.bg-secondary { background-color:hsl(var(--secondary)) }
.px-4 { padding-left:1rem;
  padding-right:1rem }
.via-transparent { --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to) }
.text-left { text-align:left }
.via-secondary\/5 { --tw-gradient-to: hsl(var(--secondary) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--secondary) / .05) var(--tw-gradient-via-position), var(--tw-gradient-to) }
.hover\:text-accent-foreground:hover { color:hsl(var(--accent-foreground)) }
.gap-1 { gap:.25rem }

.flex-col { flex-direction:column }
.ml-2 { margin-left:.5rem }
.min-h-\[22rem\] { min-height:22rem }
.grid { display:grid }
.text-secondary { color:hsl(var(--secondary)) }
.text-xl { font-size:1.25rem;
  line-height:1.75rem }
.relative { position:relative }
.py-4 { padding-top:1rem;
  padding-bottom:1rem }
.bg-background\/80 { background-color:hsl(var(--background) / .8) }
.text-xs { font-size:.75rem;
  line-height:1rem }

.rounded { border-radius:.25rem }
.max-w-xl { max-width:36rem }
.bg-accent\/10 { background-color:hsl(var(--accent) / .1) }
.via-secondary\/10 { --tw-gradient-to: hsl(var(--secondary) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), hsl(var(--secondary) / .1) var(--tw-gradient-via-position), var(--tw-gradient-to) }
.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)) }
.group:hover .group-hover\:translate-x-1 { --tw-translate-x: .25rem;
  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)) }
.from-secondary\/5 { --tw-gradient-from: hsl(var(--secondary) / .05) var(--tw-gradient-from-position);
  --tw-gradient-to: hsl(var(--secondary) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) }
.border-primary-foreground { border-color:hsl(var(--primary-foreground)) }
.hover\:shadow-lg:hover { --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) }
.drop-shadow-2xl { --tw-drop-shadow: drop-shadow(0 25px 25px rgb(0 0 0 / .15));
  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) }
.inset-0 { inset:0 }
.bg-gradient-to-b { background-image:linear-gradient(to bottom,var(--tw-gradient-stops)) }
.group:hover .group-hover\:border-primary { border-color:hsl(var(--primary)) }
.file\:text-foreground::file-selector-button { color:hsl(var(--foreground)) }
.italic { font-style:italic }
.px-3 { padding-left:.75rem;
  padding-right:.75rem }
.block { display:block }
.h-11 { height:2.75rem }
.shadow-sm { --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow) }
.placeholder\:text-muted-foreground::-moz-placeholder { color:hsl(var(--muted-foreground)) }
.placeholder\:text-muted-foreground::placeholder { color:hsl(var(--muted-foreground)) }
.h-full { height:100% }
.hover\:bg-secondary\/80:hover { background-color:hsl(var(--secondary) / .8) }
.py-3 { padding-top:.75rem;
  padding-bottom:.75rem }
.hover\:bg-primary\/80:hover { background-color:hsl(var(--primary) / .8) }
.max-w-none { max-width:none }
.text-destructive { color:hsl(var(--destructive)) }
.from-transparent { --tw-gradient-from: transparent var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) }
.mt-12 { margin-top:3rem }
.rounded-full { border-radius:9999px }
.rounded-xl { border-radius:.75rem }
.text-primary-foreground\/90 { color:hsl(var(--primary-foreground) / .9) }
.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) }
.pointer-events-none { pointer-events:none }
.hover\:text-primary\/80:hover { color:hsl(var(--primary) / .8) }


.pl-4 { padding-left:1rem }
.object-cover { -o-object-fit:cover;
  object-fit:cover }
.caption-bottom { caption-side:bottom }
.py-0\.5 { padding-top:.125rem;
  padding-bottom:.125rem }
.underline { text-decoration-line:underline }
.drop-shadow-xl { --tw-drop-shadow: drop-shadow(0 20px 13px rgb(0 0 0 / .03)) drop-shadow(0 8px 5px rgb(0 0 0 / .08));
  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) }
.overflow-hidden { overflow:hidden }
.mt-4 { margin-top:1rem }
.group:hover .group-hover\:text-primary { color:hsl(var(--primary)) }
.to-background\/10 { --tw-gradient-to: hsl(var(--background) / .1) var(--tw-gradient-to-position) }
.h-12 { height:3rem }
.shadow-inner { --tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / .05);
  --tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);
  box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow) }
.border-primary\/30 { border-color:hsl(var(--primary) / .3) }
.flex { display:flex }
.h-32 { height:8rem }
.space-y-8>:not([hidden])~:not([hidden]) { --tw-space-y-reverse: 0;
  margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:calc(2rem * var(--tw-space-y-reverse)) }
.w-full { width:100% }
.mb-16 { margin-bottom:4rem }
.h-4 { height:1rem }
.bg-gradient-to-r { background-image:linear-gradient(to right,var(--tw-gradient-stops)) }
.hover\:border-primary\/50:hover { border-color:hsl(var(--primary) / .5) }
.pt-6 { padding-top:1.5rem }
.w-16 { width:4rem }
.p-6 { padding:1.5rem }
.peer:disabled~.peer-disabled\:cursor-not-allowed { cursor:not-allowed }
.py-1 { padding-top:.25rem;
  padding-bottom:.25rem }
.text-primary\/70 { color:hsl(var(--primary) / .7) }

.p-4 { padding:1rem }

.mb-12 { margin-bottom:3rem }
.leading-none { line-height:1 }
.transition-transform { transition-property:transform;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:.15s }
.whitespace-nowrap { white-space:nowrap }
.text-accent { color:hsl(var(--accent)) }
.from-accent\/10 { --tw-gradient-from: hsl(var(--accent) / .1) var(--tw-gradient-from-position);
  --tw-gradient-to: hsl(var(--accent) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) }

.tracking-tight { letter-spacing:-.025em }
.gap-12 { gap:3rem }
.tracking-wide { letter-spacing:.025em }
.hover\:bg-primary-foreground\/90:hover { background-color:hsl(var(--primary-foreground) / .9) }
.list-decimal { list-style-type:decimal }
.bg-muted\/60 { background-color:hsl(var(--muted) / .6) }
.mt-1 { margin-top:.25rem }
.space-y-10>:not([hidden])~:not([hidden]) { --tw-space-y-reverse: 0;
  margin-top:calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:calc(2.5rem * var(--tw-space-y-reverse)) }
.pl-6 { padding-left:1.5rem }
.bg-secondary\/10 { background-color:hsl(var(--secondary) / .1) }
.bg-muted\/40 { background-color:hsl(var(--muted) / .4) }
.border-input { border-color:hsl(var(--input)) }

.container { max-width:1400px }
.max-w-3xl { max-width:48rem }
.focus-visible\:ring-offset-2:focus-visible { --tw-ring-offset-width: 2px }
.pt-0 { padding-top:0 }
.peer:disabled~.peer-disabled\:opacity-70 { opacity:.7 }
.text-2xl { font-size:1.5rem;
  line-height:2rem }
.hover\:-translate-y-1:hover { --tw-translate-y: -.25rem;
  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)) }
.gap-2 { gap:.5rem }

.bg-muted\/50 { background-color:hsl(var(--muted) / .5) }
.gap-6 { gap:1.5rem }
.group\/menu-item:hover .group-hover\/menu-item\:opacity-100,
.group:hover .group-hover\:opacity-100 { opacity:1 }
.min-h-\[120px\] { min-height:120px }
.px-8 { padding-left:2rem;
  padding-right:2rem }
.text-center { text-align:center }
.rounded-lg { border-radius:var(--radius) }
.file\:text-sm::file-selector-button { font-size:.875rem;
  line-height:1.25rem }
.duration-200 { animation-duration:.2s }
.max-w-2xl { max-width:42rem }
.bg-muted { background-color:hsl(var(--muted)) }
.space-y-3>:not([hidden])~:not([hidden]) { --tw-space-y-reverse: 0;
  margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:calc(.75rem * var(--tw-space-y-reverse)) }
.flex-shrink-0,
.shrink-0 { flex-shrink:0 }
.mb-4 { margin-bottom:1rem }

.flex-grow,
.grow { flex-grow:1 }
.h-5 { height:1.25rem }
.mb-3 { margin-bottom:.75rem }
.w-8 { width:2rem }
.items-center { align-items:center }
.h-6 { height:1.5rem }
.inline-flex { display:inline-flex }
.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)) }
.place-items-center { place-items:center }
.from-primary\/5 { --tw-gradient-from: hsl(var(--primary) / .05) var(--tw-gradient-from-position);
  --tw-gradient-to: hsl(var(--primary) / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) }
.transition-shadow { transition-property:box-shadow;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:.15s }

.to-accent\/5 { --tw-gradient-to: hsl(var(--accent) / .05) var(--tw-gradient-to-position) }
.rounded-2xl { border-radius:1rem }
.h-3 { height:.75rem }
.hover\:bg-muted\/50:hover { background-color:hsl(var(--muted) / .5) }
.w-32 { width:8rem }
.items-start { align-items:flex-start }
.text-card-foreground { color:hsl(var(--card-foreground)) }
.mb-2 { margin-bottom:.5rem }
.file\:font-medium::file-selector-button { font-weight:500 }
.overflow-auto { overflow:auto }
.focus-visible\:ring-primary:focus-visible { --tw-ring-color: hsl(var(--primary)) }

.h-48 { height:12rem }
.bg-card { background-color:hsl(var(--card)) }
.w-12 { width:3rem }
.pr-4 { padding-right:1rem }

.items-stretch { align-items:stretch }
.list-disc { list-style-type:disc }
.py-2 { padding-top:.5rem;
  padding-bottom:.5rem }
.text-foreground { color:hsl(var(--foreground)) }


.flex-wrap { flex-wrap:wrap }
.text-primary { color:hsl(var(--primary)) }


.file\:border-0::file-selector-button { border-width:0px }

.list-inside { list-style-position:inside }
.bg-primary-foreground { background-color:hsl(var(--primary-foreground)) }

.border-border { border-color:hsl(var(--border)) }


.space-y-6>:not([hidden])~:not([hidden]) { --tw-space-y-reverse: 0;
  margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:calc(1.5rem * var(--tw-space-y-reverse)) }
.grid-cols-3 { grid-template-columns:repeat(3,minmax(0,1fr)) }
.max-w-xs { max-width:20rem }
.rounded-t-2xl { border-top-left-radius:1rem;
  border-top-right-radius:1rem }
.to-accent\/10 { --tw-gradient-to: hsl(var(--accent) / .1) var(--tw-gradient-to-position) }
.absolute { position:absolute }

.bg-muted\/30 { background-color:hsl(var(--muted) / .3) }
.to-secondary\/5 { --tw-gradient-to: hsl(var(--secondary) / .05) var(--tw-gradient-to-position) }
.bg-primary\/10 { background-color:hsl(var(--primary) / .1) }
.mb-6 { margin-bottom:1.5rem }
.inline-block { display:inline-block }
.leading-tight { line-height:1.25 }
.divide-border>:not([hidden])~:not([hidden]) { border-color:hsl(var(--border)) }
.hover\:no-underline:hover { text-decoration-line:none }
.overflow-x-auto { overflow-x:auto }
.text-4xl { font-size:2.25rem;
  line-height:2.5rem }
.gap-8 { gap:2rem }
.mt-2 { margin-top:.5rem }
.h-16 { height:4rem }
.text-lg { font-size:1.125rem;
  line-height:1.75rem }
.space-y-4>:not([hidden])~:not([hidden]) { --tw-space-y-reverse: 0;
  margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom:calc(1rem * var(--tw-space-y-reverse)) }
.duration-300 { animation-duration:.3s }
.py-16 { padding-top:4rem;
  padding-bottom:4rem }
.w-4 { width:1rem }
.h-auto { height:auto }
.justify-center { justify-content:center }
.justify-between { justify-content:space-between }
.border { border-width:1px }
.px-2\.5 { padding-left:.625rem;
  padding-right:.625rem }
.text-secondary-foreground { color:hsl(var(--secondary-foreground)) }
.w-3 { width:.75rem }
.min-w-full { min-width:100% }
.p-8 { padding:2rem }
.z-10 { z-index:10 }
.w-10 { width:2.5rem }

.border-transparent { border-color:transparent }
.focus-visible\:ring-ring:focus-visible { --tw-ring-color: hsl(var(--ring)) }
.drop-shadow-lg { --tw-drop-shadow: drop-shadow(0 10px 8px rgb(0 0 0 / .04)) drop-shadow(0 4px 3px rgb(0 0 0 / .1));
  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) }

.font-semibold { font-weight:600 }
.w-6 { width:1.5rem }
.py-20 { padding-top:5rem;
  padding-bottom:5rem }
.gap-4 { gap:1rem }
.h-8 { height:2rem }

.font-medium { font-weight:500 }
.focus\:ring-ring:focus { --tw-ring-color: hsl(var(--ring)) }

.max-w-4xl { max-width:56rem }
.mt-6 { margin-top:1.5rem }
.align-top { vertical-align:top }
.disabled\:pointer-events-none:disabled { pointer-events:none }
.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)) }
.gap-10 { gap:2.5rem }
.text-primary-foreground\/80 { color:hsl(var(--primary-foreground) / .8) }
.ring-offset-background { --tw-ring-offset-color: hsl(var(--background)) }
.flex-row { flex-direction:row }
.focus-visible\:outline-none:focus-visible { outline:2px solid transparent;
  outline-offset:2px }
.hover\:underline:hover { text-decoration-line:underline }
.mt-8 { margin-top:2rem }
.disabled\:opacity-50:disabled { opacity:.5 }

.font-bold { font-weight:700 }
.py-5 { padding-top:1.25rem;
  padding-bottom:1.25rem }
.flex-1 { flex:1 1 0% }

@media (min-width: 640px) {
.sm\:flex-row { flex-direction:row }
.sm\:grid-cols-2 { grid-template-columns:repeat(2,minmax(0,1fr)) }
.sm\:items-center { align-items:center }
}

@media (min-width: 768px) {
.md\:text-2xl { font-size:1.5rem;
    line-height:2rem }
.md\:text-sm { font-size:.875rem;
    line-height:1.25rem }
.md\:text-3xl { font-size:1.875rem;
    line-height:2.25rem }
.md\:grid-cols-3 { grid-template-columns:repeat(3,minmax(0,1fr)) }
.md\:text-xl { font-size:1.25rem;
    line-height:1.75rem }
.md\:grid-cols-\[220px_1fr\] { grid-template-columns:220px 1fr }
.md\:p-12 { padding:3rem }
.md\:col-span-2 { grid-column:span 2 / span 2 }
.md\:grid-cols-2 { grid-template-columns:repeat(2,minmax(0,1fr)) }
.md\:text-5xl { font-size:3rem;
    line-height:1 }
.md\:py-32 { padding-top:8rem;
    padding-bottom:8rem }
.md\:text-lg { font-size:1.125rem;
    line-height:1.75rem }
.md\:flex-row { flex-direction:row }
.md\:text-4xl { font-size:2.25rem;
    line-height:2.5rem }
.md\:text-6xl { font-size:3.75rem;
    line-height:1 }
.md\:p-8 { padding:2rem }
}

@media (min-width: 1024px) {
.lg\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
.lg\:grid-cols-\[2fr_1fr\] { grid-template-columns:2fr 1fr }
.lg\:flex-row { flex-direction:row }
.lg\:py-16 { padding-top:4rem;
    padding-bottom:4rem }
.lg\:grid-cols-\[1\.5fr_1fr\] { grid-template-columns:1.5fr 1fr }
.lg\:justify-between { justify-content:space-between }
.lg\:col-span-3 { grid-column:span 3 / span 3 }
.lg\:grid-cols-\[1\.6fr_1fr\] { grid-template-columns:1.6fr 1fr }
.lg\:items-center { align-items:center }
.lg\:grid-cols-2 { grid-template-columns:repeat(2,minmax(0,1fr)) }
.lg\:grid-cols-\[1\.4fr_1fr\] { grid-template-columns:1.4fr 1fr }
.lg\:grid-cols-3 { grid-template-columns:repeat(3,minmax(0,1fr)) }
.lg\:grid-cols-\[3fr_2fr\] { grid-template-columns:3fr 2fr }
}

@media (min-width: 1280px) {
.xl\:grid-cols-3 { grid-template-columns:repeat(3,minmax(0,1fr)) }
}
