body{margin:0;padding:0;overflow:hidden;font-family:Arial,sans-serif}#renderCanvas{width:100%;height:100vh;display:block}.btn{display:inline-block;padding:.5rem 1rem;border:none;border-radius:.25rem;text-decoration:none;cursor:pointer;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.btn:hover{-webkit-transform:translateY(-1px);transform:translateY(-1px)}.btn-primary{background-color:#3490dc;color:#fff}.btn-primary:hover{background-color:rgb(32.5,117.9285714286,188.5)}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:rgb(84.3605150215,91.3905579399,97.6394849785)}.btn-success{background-color:#38c172;color:#fff}.btn-success:hover{background-color:rgb(44.5301204819,153.4698795181,90.6506024096)}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.5rem;font-weight:600;color:#374151}.form-control{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;background-color:#fff;-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}.form-control:focus{outline:0;border-color:#3490dc;-webkit-box-shadow:0 0 0 3px rgba(52,144,220,.1);box-shadow:0 0 0 3px rgba(52,144,220,.1)}.form-control.is-invalid{border-color:#e3342f}.form-control.is-invalid:focus{border-color:#e3342f;-webkit-box-shadow:0 0 0 3px rgba(227,52,47,.1);box-shadow:0 0 0 3px rgba(227,52,47,.1)}.invalid-feedback{display:block;color:#e3342f;font-size:.875rem;margin-top:.25rem}.header{background-color:#fff;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.1);box-shadow:0 2px 4px rgba(0,0,0,.1);position:sticky;top:0;z-index:1000}.header .navbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:1rem 2rem;max-width:1200px;margin:0 auto}.header .navbar .logo{font-size:1.5rem;font-weight:700;color:#3490dc;text-decoration:none}.header .navbar .nav-links{display:-webkit-box;display:-ms-flexbox;display:flex;list-style:none;margin:0;padding:0;gap:2rem}.header .navbar .nav-links a{color:#374151;text-decoration:none;font-weight:500;-webkit-transition:color .2s ease;transition:color .2s ease}.header .navbar .nav-links a:hover{color:#3490dc}.footer{background-color:#f8fafc;border-top:1px solid #e5e7eb;margin-top:auto;padding:2rem 0}.footer .footer-content{max-width:1200px;margin:0 auto;padding:0 2rem;text-align:center}.footer .footer-content .footer-text{color:#6b7280;font-size:.875rem;margin:0}.footer .footer-content .footer-links{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:2rem;margin-top:1rem;list-style:none;padding:0}.footer .footer-content .footer-links a{color:#6b7280;text-decoration:none;font-size:.875rem;-webkit-transition:color .2s ease;transition:color .2s ease}.footer .footer-content .footer-links a:hover{color:#3490dc}