@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:300;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko70yyygA.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko50yyygA.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko40yyygA.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/plusjakartasans/v12/LDIoaomQNQcsA88c7O9yZ4KMCoOg4Ko20yw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--background: 210 20% 98%;--foreground: 233 33% 35%;--card: 0 0% 100%;--card-foreground: 233 33% 35%;--popover: 0 0% 100%;--popover-foreground: 233 33% 35%;--primary: 218 85% 8%;--primary-foreground: 0 0% 100%;--secondary: 210 20% 96%;--secondary-foreground: 233 33% 35%;--muted: 210 15% 94%;--muted-foreground: 233 20% 50%;--accent: 210 44% 59%;--accent-foreground: 0 0% 100%;--destructive: 356 79% 55%;--destructive-foreground: 0 0% 100%;--border: 233 20% 88%;--input: 233 20% 88%;--ring: 233 33% 35%;--radius: .75rem;--ggts-navy: 218 85% 8%;--ggts-primary: 210 44% 59%;--ggts-light: 200 33% 65%;--ggts-white: 0 0% 100%;--gradient-primary: linear-gradient(135deg, hsl(218 85% 8%) 0%, hsl(210 44% 59%) 100%);--gradient-hero: linear-gradient(135deg, hsl(218 85% 8%) 0%, hsl(218 85% 15%) 100%);--gradient-card: linear-gradient(180deg, hsl(0 0% 100%) 0%, hsl(210 20% 98%) 100%);--shadow-soft: 0 4px 20px -2px hsl(218 85% 8% / .08);--shadow-medium: 0 8px 30px -4px hsl(218 85% 8% / .12);--shadow-glow: 0 0 40px hsl(210 44% 59% / .15);--sidebar-background: 0 0% 98%;--sidebar-foreground: 233 33% 35%;--sidebar-primary: 233 33% 35%;--sidebar-primary-foreground: 0 0% 100%;--sidebar-accent: 240 4.8% 95.9%;--sidebar-accent-foreground: 233 33% 35%;--sidebar-border: 233 20% 91%;--sidebar-ring: 233 33% 35%}*{margin:0;padding:0;box-sizing:border-box;border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground));font-family:Plus Jakarta Sans,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}h1,h2,h3,h4,h5,h6{font-weight:600;letter-spacing:-.025em}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 2rem}.flex{display:flex}.flex-col{flex-direction:column}.flex-1{flex:1}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-10{grid-template-columns:repeat(10,minmax(0,1fr))}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex{display:flex}}.p-2{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-12{padding:3rem}.px-4{padding-left:1rem;padding-right:1rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-12{padding-top:3rem;padding-bottom:3rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.pl-4{padding-left:1rem}.pl-10{padding-left:2.5rem}.pr-10{padding-right:2.5rem}.m-0{margin:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-center{text-align:center}.text-left{text-align:left}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-clamp-2{display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.text-foreground{color:hsl(var(--foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-accent{color:hsl(var(--accent))}.text-destructive{color:hsl(var(--destructive))}.text-white{color:#fff}.bg-background{background-color:hsl(var(--background))}.bg-card{background-color:hsl(var(--card))}.bg-primary{background-color:hsl(var(--primary))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-muted{background-color:hsl(var(--muted))}.bg-ggts-navy{background-color:hsl(var(--ggts-navy))}.bg-ggts-primary{background-color:hsl(var(--ggts-primary))}.bg-ggts-light{background-color:hsl(var(--ggts-light))}.bg-ggts-white{background-color:hsl(var(--ggts-white))}.text-ggts-navy{color:hsl(var(--ggts-navy))}.text-ggts-primary{color:hsl(var(--ggts-primary))}.text-ggts-light{color:hsl(var(--ggts-light))}.w-full{width:100%}.w-1\.5{width:.375rem}.w-2{width:.5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-32{width:8rem}.w-40{width:10rem}.w-48{width:12rem}.w-72{width:18rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-20{height:5rem}.h-24{height:6rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.min-h-screen{min-height:100vh}.min-w-0{min-width:0}.min-h-\[100px\]{min-height:100px}.min-h-\[150px\]{min-height:150px}.aspect-video{aspect-ratio:16 / 9}.hidden{display:none}.block{display:block}.inline-flex{display:inline-flex}.relative{position:relative}.absolute{position:absolute}.sticky{position:sticky}.fixed{position:fixed}.top-0{top:0}.top-8{top:2rem}.top-20{top:5rem}.bottom-0{bottom:0}.bottom-8{bottom:2rem}.bottom-32{bottom:8rem}.left-0{left:0}.left-3{left:.75rem}.left-8{left:2rem}.left-16{left:4rem}.right-3{right:.75rem}.right-8{right:2rem}.right-20{right:5rem}.inset-0{inset:0}.z-10{z-index:10}.-translate-y-1\/2{transform:translateY(-50%)}.border{border-width:1px}.border-2{border-width:2px}.border-t{border-top-width:1px}.border-b{border-bottom-width:1px}.border-r{border-right-width:1px}.border-border{border-color:hsl(var(--border))}.border-dashed{border-style:dashed}.border-primary{border-color:hsl(var(--primary))}.rounded{border-radius:.25rem}.rounded-lg{border-radius:var(--radius)}.rounded-xl{border-radius:.75rem}.rounded-full{border-radius:9999px}.shadow-sm{box-shadow:0 1px 2px #0000000d}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a}.opacity-10{opacity:.1}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.overflow-hidden{overflow:hidden}.cursor-pointer{cursor:pointer}.cursor-grab{cursor:grab}.resize-none{resize:none}.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;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.gradient-text{background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-image:var(--gradient-primary)}.card-elevated{border-radius:.75rem;border:1px solid hsl(var(--border));background-color:hsl(var(--card));box-shadow:var(--shadow-soft);transition:box-shadow .2s ease;overflow:visible}.card-elevated:hover{box-shadow:var(--shadow-medium)}.hero-section{background:var(--gradient-hero)}.btn-gradient{background:var(--gradient-primary);color:hsl(var(--primary-foreground));font-weight:600;transition:all .3s ease}.btn-gradient:hover{box-shadow:var(--shadow-glow);transform:translateY(-2px)}.glass-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.2);background:#ffffff1a}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);font-size:.875rem;font-weight:500;transition:all .2s ease;cursor:pointer;border:none;outline:none}.btn:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.btn:disabled{pointer-events:none;opacity:.5}.btn-default{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.btn-default:hover{background-color:hsl(var(--primary) / .9)}.btn-outline{border:1px solid hsl(var(--input));background-color:hsl(var(--background));color:inherit}.btn-outline:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.btn-ghost{background:transparent}.btn-ghost:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.btn-sm{height:2.25rem;padding:0 .75rem;font-size:.8125rem}.btn-lg{height:2.75rem;padding:0 2rem}.btn-icon{height:2.5rem;width:2.5rem;padding:0}.input{display:flex;width:100%;height:2.5rem;padding:.5rem .75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));font-size:.875rem;transition:border-color .2s,box-shadow .2s}.input:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring) / .2)}.input::placeholder{color:hsl(var(--muted-foreground))}.input-lg{height:3rem}.textarea{display:flex;width:100%;min-height:80px;padding:.5rem .75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));font-size:.875rem;resize:vertical;font-family:inherit}.textarea:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring) / .2)}.label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:hsl(var(--foreground))}.badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:600;border:1px solid transparent}.badge-active{background-color:hsl(var(--accent) / .2);color:hsl(var(--accent));border-color:hsl(var(--accent) / .3)}.badge-draft{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground));border-color:hsl(var(--muted))}.badge-completed,.badge-admin{background-color:hsl(var(--primary) / .2);color:hsl(var(--primary));border-color:hsl(var(--primary) / .3)}.badge-user{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border-color:hsl(var(--secondary))}.badge-status-active{background-color:hsl(var(--accent) / .2);color:hsl(var(--accent));border-color:hsl(var(--accent) / .3)}.badge-status-inactive{background-color:hsl(var(--muted));color:hsl(var(--muted-foreground));border-color:hsl(var(--muted))}.progress{width:100%;height:.5rem;background-color:hsl(var(--secondary));border-radius:9999px;overflow:hidden}.progress-bar{height:100%;background:var(--gradient-primary);transition:width .3s ease}.card{background-color:hsl(var(--card));border-radius:var(--radius);border:1px solid hsl(var(--border));box-shadow:var(--shadow-soft)}.card-header{padding:1.5rem;display:flex;flex-direction:column;gap:.375rem}.card-title{font-size:1.25rem;font-weight:600;color:hsl(var(--foreground))}.card-description{font-size:.875rem;color:hsl(var(--muted-foreground))}.card-content{padding:0 1.5rem 1.5rem}.separator{height:1px;width:100%;background-color:hsl(var(--border));margin:1rem 0}.switch{position:relative;width:44px;height:24px;background-color:hsl(var(--input));border-radius:9999px;cursor:pointer;transition:background-color .2s}.switch.active{background-color:hsl(var(--primary))}.switch-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:9999px;transition:transform .2s;box-shadow:0 1px 3px #0000001a}.switch.active .switch-thumb{transform:translate(20px)}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid hsl(var(--border))}.table th{font-weight:500;color:hsl(var(--muted-foreground));font-size:.875rem}.table tbody tr:hover{background-color:hsl(var(--muted) / .5)}.dropdown{position:relative;display:inline-block}.dropdown-content{position:absolute;right:0;top:calc(100% + .5rem);min-width:12rem;background-color:#fff;background-color:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;padding:.5rem;z-index:1000;animation:fadeUp .2s cubic-bezier(.16,1,.3,1);transform-origin:top right}.dropdown-content:before{content:"";position:absolute;top:-4px;right:12px;width:8px;height:8px;background-color:inherit;border-left:1px solid hsl(var(--border));border-top:1px solid hsl(var(--border));transform:rotate(45deg)}.dropdown-item{display:block;width:100%;padding:.5rem .75rem;font-size:.875rem;cursor:pointer;border:none;background:transparent;text-align:left;border-radius:calc(var(--radius) - 4px);transition:background-color .15s}.dropdown-item:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.dropdown-item.destructive{color:hsl(var(--destructive))}.dropdown-item.destructive:hover{background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.select{display:flex;align-items:center;justify-content:space-between;width:100%;height:2.5rem;padding:.5rem .75rem;border:1px solid hsl(var(--input));border-radius:var(--radius);background-color:hsl(var(--background));font-size:.875rem;cursor:pointer}.select:focus{outline:none;border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring) / .2)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-float{animation:float 6s ease-in-out infinite}.animate-fade-up{animation:fadeUp .6s ease-out forwards}.animate-pulse-slow{animation:pulse 4s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.backdrop-blur-sm{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.backdrop-blur-lg{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.hover\:shadow-lg:hover{box-shadow:0 10px 15px -3px #0000001a}.hover\:underline:hover{text-decoration:underline}.hover\:text-destructive:hover{color:hsl(var(--destructive))}.hover\:bg-secondary:hover{background-color:hsl(var(--secondary))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:border-primary:hover{border-color:hsl(var(--primary))}.hover\:border-primary\/50:hover{border-color:hsl(var(--primary) / .5)}.scale-110{transform:scale(1.1)}@media(min-width:768px){.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media(min-width:1024px){.lg\:hidden{display:none}.lg\:flex{display:flex}.lg\:w-\[45\%\]{width:45%}}.space-y-1>*+*{margin-top:.25rem}.space-y-2>*+*{margin-top:.5rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.space-y-8>*+*{margin-top:2rem}.icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem;border-radius:var(--radius);transition:all .2s;background:transparent;border:none;cursor:pointer;color:hsl(var(--muted-foreground))}.icon-btn:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}input[type=checkbox]{width:1rem;height:1rem;border-radius:.25rem;border:1px solid hsl(var(--input));cursor:pointer}input[type=checkbox]:checked{background-color:hsl(var(--primary));border-color:hsl(var(--primary))}a{color:inherit;text-decoration:none}a.link{color:hsl(var(--primary))}a.link:hover{text-decoration:underline}.icon{display:inline-block;vertical-align:middle;fill:currentColor}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:hsl(var(--secondary));border-radius:4px}::-webkit-scrollbar-thumb{background:hsl(var(--muted-foreground));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--foreground))}html{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}body{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;overscroll-behavior-y:contain}html,body{overscroll-behavior:none}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:56px;background:hsl(var(--card));border-bottom:1px solid hsl(var(--border));padding:0 1rem;align-items:center;justify-content:space-between;z-index:100;box-shadow:var(--shadow-soft)}@media(max-width:768px){.mobile-header{display:flex}}.mobile-header-logo{display:flex;align-items:center;gap:.75rem;font-weight:700;font-size:1.125rem;color:hsl(var(--foreground))}.mobile-header-logo .logo-icon{width:2rem;height:2rem;border-radius:.5rem}.hamburger-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:.5rem;background:transparent;border:none;color:hsl(var(--foreground));cursor:pointer;-webkit-tap-highlight-color:transparent}.hamburger-btn:active{background:hsl(var(--secondary))}.mobile-bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;height:64px;background:hsl(var(--card));border-top:1px solid hsl(var(--border));padding-bottom:env(safe-area-inset-bottom);z-index:100;box-shadow:0 -4px 20px #0000001a}@media(max-width:768px){.mobile-bottom-nav{display:flex}.admin-main,.survey-main{padding-bottom:80px!important}}.mobile-nav-items{display:flex;width:100%;justify-content:space-around;align-items:center;height:100%}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem 1rem;color:hsl(var(--muted-foreground));text-decoration:none;border-radius:.75rem;transition:all .2s ease;-webkit-tap-highlight-color:transparent;min-width:64px;background:transparent;border:none;cursor:pointer;font-family:inherit}.mobile-nav-item:active{transform:scale(.95)}.mobile-nav-item.active{color:hsl(var(--primary))}.mobile-nav-item svg{width:24px;height:24px;margin-bottom:.25rem}.mobile-nav-item span{font-size:.6875rem;font-weight:500}@media(max-width:768px){.sidebar{position:fixed;left:-100%;top:0;height:100vh;z-index:200;transition:left .3s ease;width:280px}.sidebar.open{left:0}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:199}.sidebar-overlay.open{display:block}}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);font-size:.9375rem;font-weight:600;transition:all .2s ease;cursor:pointer;border:none;outline:none;min-height:44px;padding:.75rem 1.25rem;gap:.5rem;white-space:nowrap;-webkit-tap-highlight-color:transparent}.btn svg{flex-shrink:0;width:1.25rem;height:1.25rem}.btn-sm{min-height:40px;height:auto;padding:.625rem 1rem;font-size:.875rem}.btn-lg{min-height:52px;height:auto;padding:.875rem 1.5rem;font-size:1rem}@media(max-width:768px){.btn{min-height:48px;padding:.875rem 1.25rem;font-size:.9375rem}.btn-lg{min-height:52px;padding:1rem 1.5rem}.btn-sm{min-height:44px;padding:.75rem 1rem}}@media(max-width:768px){.input,.textarea,.select{min-height:48px;font-size:16px;padding:.875rem 1rem}.input-lg{min-height:52px}}@media(max-width:768px){.admin-layout{flex-direction:column;padding-top:56px}.admin-main{padding:1.5rem 1rem 1rem!important}.admin-main h1.text-3xl{font-size:1.5rem}.admin-main p.text-muted-foreground{font-size:.875rem}.admin-main>.flex.items-center.justify-between{flex-direction:column;align-items:flex-start;gap:1rem}.admin-main>.flex.items-center.justify-between>.flex.gap-3{width:100%}.admin-main>.flex.items-center.justify-between>.flex.gap-3 .btn,.admin-main>.flex.items-center.justify-between>a.btn{width:100%}}@media(max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr)!important;gap:.75rem!important}.stats-card{padding:1rem!important}.stats-card .text-3xl{font-size:1.5rem}.stats-card .icon-wrapper{width:2.5rem;height:2.5rem}.stats-card .icon-wrapper svg{width:1.25rem;height:1.25rem}}@media(max-width:768px){.campaigns-grid{grid-template-columns:1fr!important;gap:1rem!important}.campaign-card{padding:1rem!important}.campaign-card .flex.gap-2{flex-direction:column}.campaign-card .flex.gap-2 .btn{width:100%}}@media(max-width:768px){.flex.gap-4.mb-6{flex-direction:column;gap:.75rem}.search-wrapper{max-width:100%!important}}@media(max-width:768px){.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.table th,.table td{padding:.75rem .5rem;font-size:.875rem}.table th:nth-child(4),.table td:nth-child(4){display:none}}@media(max-width:768px){.card{border-radius:1rem}.card-header{padding:1rem}.card-content{padding:0 1rem 1rem}.card-elevated{border-radius:1rem}}@media(max-width:768px){.form-grid{grid-template-columns:1fr!important}}@media(max-width:768px){.setting-row{flex-direction:column;align-items:flex-start;gap:.75rem}.setting-row>div:first-child{width:100%}}@media(max-width:768px){.survey-container{padding-bottom:80px}.survey-header{padding-top:env(safe-area-inset-top)}.survey-header .container{padding:0 1rem}.question-title{font-size:1.25rem;padding:0 .5rem}.survey-main{padding:2rem 1rem}.option-button{padding:1rem;font-size:1rem}.rating-container{gap:.375rem;flex-wrap:wrap;justify-content:center}.rating-button{width:2.75rem;height:2.75rem;font-size:.9375rem}.survey-footer{padding-bottom:env(safe-area-inset-bottom);padding-bottom:max(env(safe-area-inset-bottom),12px)}.survey-footer .container{padding:.75rem 1rem}.survey-footer .btn{min-height:48px;padding:0 1.25rem;font-size:.9375rem}}@media(max-width:768px){.login-container{flex-direction:column}.login-panel{padding:2rem 1.5rem;min-height:100vh}.decorative-panel{display:none!important}.login-form-wrapper{max-width:100%}.logo-bars{transform:scale(.9)}.login-form-wrapper h1.text-3xl{font-size:1.75rem}.decorative-dots{display:none}}@media(max-width:768px){.max-w-4xl{padding-top:56px}.max-w-4xl>.flex.items-center.justify-between{flex-direction:column;align-items:stretch;gap:1rem}.max-w-4xl>.flex.items-center.justify-between>.flex.gap-3{flex-direction:column}.max-w-4xl>.flex.items-center.justify-between>.flex.gap-3 .btn{width:100%}}.fab{display:none;position:fixed;bottom:80px;right:16px;width:56px;height:56px;border-radius:50%;background:var(--gradient-primary);color:hsl(var(--primary-foreground));border:none;box-shadow:0 4px 20px #0003;cursor:pointer;z-index:50;-webkit-tap-highlight-color:transparent;transition:transform .2s,box-shadow .2s}.fab:active{transform:scale(.95)}.fab svg{width:24px;height:24px}@media(max-width:768px){.fab{display:flex;align-items:center;justify-content:center}}.toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:hsl(var(--foreground));color:hsl(var(--background));padding:.875rem 1.5rem;border-radius:.75rem;font-size:.9375rem;font-weight:500;box-shadow:0 4px 20px #00000026;z-index:1000;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.pull-refresh{position:fixed;top:0;left:50%;transform:translate(-50%) translateY(-100%);padding:.75rem 1.5rem;background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-radius:0 0 1rem 1rem;font-size:.875rem;font-weight:500;z-index:1000;transition:transform .3s ease}.pull-refresh.active{transform:translate(-50%) translateY(0)}.skeleton{background:linear-gradient(90deg,hsl(var(--muted)) 25%,hsl(var(--secondary)),hsl(var(--muted)) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--radius)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.ripple{position:relative;overflow:hidden}.ripple:after{content:"";position:absolute;top:50%;left:50%;width:5px;height:5px;background:#ffffff80;opacity:0;border-radius:100%;transform:scale(1) translate(-50%,-50%);transform-origin:50% 50%}.ripple:active:after{animation:ripple-effect .6s ease-out}@keyframes ripple-effect{0%{transform:scale(0);opacity:.5}to{transform:scale(40);opacity:0}}@media(max-width:768px){.text-sm{font-size:.875rem;line-height:1.4}.text-xs{font-size:.8125rem}.text-muted-foreground{color:hsl(var(--muted-foreground));opacity:.9}}@media(max-width:768px){.badge{padding:.375rem .75rem;font-size:.75rem}}html{scroll-behavior:smooth}@media(max-width:768px){::-webkit-scrollbar{width:0;height:0}}@media(max-width:768px)and (orientation:landscape){.mobile-bottom-nav{height:48px}.mobile-nav-item span{display:none}.mobile-nav-item svg{margin-bottom:0}}
