*{box-sizing:border-box;margin:0;padding:0}:root{--color-bg-primary: #ffffff;--color-bg-secondary: #f8f9fa;--color-text-primary: #1a1a1a;--color-text-secondary: #666666;--color-accent: #4A90E2;--color-accent-hover: #357abd;--color-border: #e0e0e0;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--color-bg-primary: #1a1a1a;--color-bg-secondary: #2a2a2a;--color-text-primary: #ffffff;--color-text-secondary: #b0b0b0;--color-border: #404040}}body{margin:0;padding:0;min-width:320px;min-height:100vh;background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh}html{scroll-behavior:smooth}a{color:var(--color-accent);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-accent-hover)}button{font-family:inherit;cursor:pointer;border:none;background:none}.hero{min-height:80vh;display:flex;align-items:center;justify-content:center;padding:4rem 1rem;background:linear-gradient(180deg,var(--color-bg-primary) 0%,var(--color-bg-secondary) 100%)}.hero-content{max-width:800px;text-align:center}.hero-logo{width:200px;height:auto;margin:0 auto 2rem;display:block;animation:logoGlow 3s ease-in-out infinite;filter:drop-shadow(0 0 20px rgba(74,144,226,.5));transition:transform .3s ease}.hero-logo:hover{transform:scale(1.05);filter:drop-shadow(0 0 30px rgba(74,144,226,.8))}@keyframes logoGlow{0%,to{filter:drop-shadow(0 0 20px rgba(74,144,226,.5))}50%{filter:drop-shadow(0 0 30px rgba(74,144,226,.8)) drop-shadow(0 0 40px rgba(74,144,226,.4))}}.hero-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;margin-bottom:1.5rem;color:var(--color-text-primary);line-height:1.2}.hero-subtitle{font-size:clamp(1.125rem,2vw,1.5rem);color:var(--color-text-secondary);margin-bottom:2.5rem;line-height:1.6;max-width:600px;margin-left:auto;margin-right:auto}.hero-cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.hero-button{padding:.875rem 2rem;font-size:1.125rem;font-weight:600;border-radius:8px;transition:all .2s ease;display:inline-block}.hero-button-primary{background-color:var(--color-accent);color:#fff;text-decoration:none}.hero-button-primary:hover{background-color:var(--color-accent-hover);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #4a90e24d}.hero-button-secondary{background-color:transparent;color:var(--color-text-primary);border:2px solid var(--color-border)}.hero-button-secondary:hover{border-color:var(--color-accent);color:var(--color-accent);background-color:transparent}@media(max-width:640px){.hero{min-height:70vh;padding:2rem 1rem}.hero-logo{width:150px;margin-bottom:1.5rem}.hero-cta{flex-direction:column}.hero-button{width:100%}}.features{padding:4rem 1rem;background-color:var(--color-bg-secondary)}.features-content{max-width:1200px;margin:0 auto}.features-title{font-size:clamp(2rem,4vw,3rem);font-weight:700;text-align:center;margin-bottom:1rem;color:var(--color-text-primary)}.features-subtitle{font-size:1.25rem;text-align:center;color:var(--color-text-secondary);margin-bottom:3rem;max-width:600px;margin-left:auto;margin-right:auto}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.feature-card{background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:8px;padding:2rem;transition:transform .2s ease,box-shadow .2s ease}.feature-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.feature-title{font-size:1.25rem;font-weight:600;margin-bottom:.75rem;color:var(--color-text-primary)}.feature-description{color:var(--color-text-secondary);line-height:1.6}@media(max-width:640px){.features-grid{grid-template-columns:1fr}}.cta{padding:4rem 1rem;background:linear-gradient(180deg,var(--color-bg-secondary) 0%,var(--color-bg-primary) 100%)}.cta-content{max-width:600px;margin:0 auto;text-align:center}.cta-title{font-size:clamp(2rem,4vw,3rem);font-weight:700;margin-bottom:1rem;color:var(--color-text-primary)}.cta-description{font-size:1.25rem;color:var(--color-text-secondary);margin-bottom:2rem;line-height:1.6}.cta-button{display:inline-block;padding:1rem 2.5rem;background-color:var(--color-accent);color:#fff;font-size:1.25rem;font-weight:600;border-radius:8px;transition:all .2s ease;text-decoration:none}.cta-button:hover{background-color:var(--color-accent-hover);color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #4a90e266}.cta-note{margin-top:1.5rem;font-size:.875rem;color:var(--color-text-secondary)}.open-source{padding:4rem 1rem;background-color:var(--color-bg-primary);border-top:1px solid var(--color-border)}.open-source-content{max-width:800px;margin:0 auto;text-align:center}.open-source-title{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;margin-bottom:1rem;color:var(--color-text-primary)}.open-source-description{font-size:1.125rem;color:var(--color-text-secondary);margin-bottom:2rem;line-height:1.6}.open-source-badges{display:flex;gap:1rem;justify-content:center;align-items:center;flex-wrap:wrap;margin-bottom:1.5rem}.open-source-button{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;background-color:var(--color-text-primary);color:var(--color-bg-primary);font-weight:600;border-radius:8px;transition:all .2s ease}.open-source-button:hover{background-color:var(--color-text-primary);color:var(--color-bg-primary);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.github-icon{width:20px;height:20px}.license-badge{display:inline-block;padding:.875rem 1.5rem;background-color:var(--color-bg-secondary);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:8px;font-weight:600;font-size:.875rem}.open-source-note{font-size:.875rem;color:var(--color-text-secondary);font-style:italic}@media(max-width:640px){.open-source-badges{flex-direction:column}.open-source-button,.license-badge{width:100%;justify-content:center}}.app{width:100%;min-height:100vh;display:flex;flex-direction:column}.footer{background-color:var(--color-bg-secondary);border-top:1px solid var(--color-border);padding:2rem 1rem;margin-top:4rem}.footer-content{max-width:1200px;margin:0 auto;text-align:center;color:var(--color-text-secondary);font-size:.875rem}.footer-content p{margin:.5rem 0}.footer-content a{margin:0 .25rem}
