*{box-sizing:border-box;margin:0;padding:0}html,body{color:#333;background-color:#f5f5f5;max-width:100vw;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}.container{max-width:800px;margin:0 auto;padding:2rem}.card{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 2px 8px #0000001a}h1{color:#2d5016;margin-bottom:1.5rem;font-size:2rem}h2{color:#2d5016;margin-bottom:1rem;font-size:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#555;margin-bottom:.5rem;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;width:100%;padding:.75rem;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4a7c23;outline:none}.form-group .error{color:#d32f2f;margin-top:.25rem;font-size:.875rem}.form-group .required:after{content:" *";color:#d32f2f}.checkbox-group{flex-direction:column;gap:.5rem;display:flex}.checkbox-group label{cursor:pointer;align-items:center;gap:.5rem;font-weight:400;display:flex}.checkbox-group input[type=checkbox],.checkbox-group input[type=radio]{width:auto}.btn{color:#fff;cursor:pointer;background-color:#4a7c23;border:none;border-radius:4px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:background-color .2s;display:inline-block}.btn:hover{background-color:#3d6a1c}.btn:disabled{cursor:not-allowed;background-color:#ccc}.btn-secondary{background-color:#6c757d}.btn-secondary:hover{background-color:#5a6268}.alert{border-radius:4px;margin-bottom:1rem;padding:1rem}.alert-success{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb}.alert-error{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb}.alert-info{color:#0c5460;background-color:#d1ecf1;border:1px solid #bee5eb}.payment-info{background-color:#fff3cd;border:1px solid #ffc107;border-radius:4px;margin-top:1.5rem;padding:1.5rem}.payment-info h3{color:#856404;margin-bottom:1rem}.payment-info p{margin-bottom:.5rem}.payment-info strong{color:#333}.loading{justify-content:center;align-items:center;padding:2rem;display:flex}.spinner{border:4px solid #f3f3f3;border-top-color:#4a7c23;border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
