:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{height:100%;margin:0;padding:0;box-sizing:border-box;width:100%;overflow-x:hidden}body{width:100%;min-height:100vh;background-color:#fff}a{font-weight:500;color:#007bff;text-decoration:none}a:hover{color:#0056b3}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#007bff;color:#fff;cursor:pointer;transition:background-color .25s}button:hover{background-color:#0056b3}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{height:100%;width:100%}.navbar-brand{display:flex;align-items:center}.navbar-title{margin:0;font-size:1.8em;font-weight:700}.navbar-link{color:#333;text-decoration:none;margin:0 15px;font-size:1.1em;transition:color .3s ease;white-space:nowrap}.navbar-link:hover{color:#007bff}.welcome-banner{text-align:center;padding:40px 20px;color:#333;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;box-sizing:border-box;border-bottom:1px solid #dee2e6;position:relative;overflow:hidden}.welcome-banner:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0006;z-index:1}.welcome-banner>*{position:relative;z-index:2}.welcome-banner-title{font-size:2.5em;margin-bottom:10px;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.7)}.welcome-banner-text{font-size:1.2em;max-width:700px;line-height:1.5;margin-bottom:20px;color:#fff;text-shadow:1px 1px 3px rgba(0,0,0,.7)}.welcome-banner-button{background-color:#007bff;color:#fff;padding:12px 25px;font-size:1em;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s ease}.welcome-banner-button:hover{background-color:#0056b3}@media (max-width: 768px){.navbar{flex-direction:column;padding:10px 20px}.navbar-brand{margin-bottom:10px}.navbar-link{margin:5px 10px;font-size:1em}.welcome-banner{padding:30px 15px}.welcome-banner-title{font-size:2em}.welcome-banner-text{font-size:1em}.welcome-banner-button{padding:10px 20px;font-size:.9em}}@media (max-width: 480px){.navbar-link{margin:5px;font-size:.9em}.welcome-banner-title{font-size:1.8em}.welcome-banner-text{font-size:.9em}}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.products-page-container{padding:40px 20px;text-align:center;background-color:#f8f8f8}.filters-container{display:flex;flex-wrap:wrap;justify-content:center;gap:15px;margin-bottom:30px;padding:20px;background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d}.filter-input,.filter-select{padding:10px 15px;border:1px solid #ced4da;border-radius:5px;font-size:1em;color:#495057;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.filter-input:focus,.filter-select:focus{border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40}.filter-select{appearance:none;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007bff%22%20d%3D%22M287%2C197.3L159.3%2C69.7c-4.7-4.7-12.3-4.7-17%2C0L5.4%2C197.3c-4.7%2C4.7-4.7%2C12.3%2C0%2C17l19.7%2C19.7c4.7%2C4.7%2C12.3%2C4.7%2C17%2C0L146.2%2C135.1c4.7-4.7%2C12.3-4.7%2C17%2C0l104.1%2C104.1c4.7%2C4.7%2C12.3%2C4.7%2C17%2C0l19.7-19.7C291.7%2C209.6%2C291.7%2C202%2C287%2C197.3z%22%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right 10px top 50%;background-size:12px auto;padding-right:30px}@media (max-width: 768px){.filters-container{flex-direction:column;align-items:stretch}.filter-input,.filter-select{width:100%}}
