:root{--primary-color: #2563eb;--primary-hover: #1d4ed8;--success-color: #10b981;--error-color: #ef4444;--text-primary: #1f2937;--text-secondary: #6b7280;--border-color: #e5e7eb;--bg-light: #f9fafb}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-light);color:var(--text-primary);line-height:1.6}#root{min-height:100vh}.container{max-width:800px;margin:0 auto;padding:2rem 1rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:.5rem;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color)}.form-group small{display:block;margin-top:.25rem;color:var(--text-secondary);font-size:.875rem}.form-group.error input,.form-group.error select{border-color:var(--error-color)}.form-group .error-message{color:var(--error-color);font-size:.875rem;margin-top:.25rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:640px){.form-row{grid-template-columns:1fr}}.btn{padding:.75rem 1.5rem;border:none;border-radius:.5rem;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover)}.btn-secondary{background-color:#fff;color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-light)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-block{width:100%}.card{background:#fff;border-radius:.75rem;padding:2rem;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem}.card-header{margin-bottom:1.5rem}.card-header h2{font-size:1.5rem;margin-bottom:.5rem}.card-header p{color:var(--text-secondary)}.alert{padding:1rem;border-radius:.5rem;margin-bottom:1.5rem}.alert-success{background-color:#d1fae5;color:#065f46;border:1px solid #10b981}.alert-error{background-color:#fee2e2;color:#991b1b;border:1px solid #ef4444}.alert-info{background-color:#dbeafe;color:#1e40af;border:1px solid #3b82f6}.share-selection{display:grid;gap:1rem}.share-card{border:2px solid var(--border-color);border-radius:.5rem;padding:1.5rem;cursor:pointer;transition:all .2s}.share-card:hover{border-color:var(--primary-color)}.share-card.selected{border-color:var(--primary-color);background-color:#eff6ff}.share-card-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:1rem}.share-card-title{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.share-card-price{font-size:1.5rem;font-weight:700;color:var(--primary-color)}.share-card-description{color:var(--text-secondary);margin-bottom:1rem;font-size:.875rem}.share-card-info{display:flex;flex-wrap:wrap;gap:1rem;font-size:.875rem;color:var(--text-secondary)}.share-quantity-control{display:flex;align-items:center;gap:1rem;margin-top:1rem}.quantity-btn{width:2.5rem;height:2.5rem;border:1px solid var(--border-color);border-radius:.5rem;background:#fff;cursor:pointer;font-size:1.25rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.quantity-btn:hover:not(:disabled){background-color:var(--bg-light);border-color:var(--primary-color)}.quantity-btn:disabled{opacity:.3;cursor:not-allowed}.quantity-input{width:4rem;text-align:center;font-size:1.125rem;font-weight:600}.summary-card{background-color:var(--bg-light);border-radius:.5rem;padding:1.5rem}.summary-item{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.summary-item:last-child{border-bottom:none;font-weight:600;font-size:1.25rem;padding-top:1rem;margin-top:.5rem;border-top:2px solid var(--border-color)}.spinner{border:3px solid var(--border-color);border-top:3px solid var(--primary-color);border-radius:50%;width:1.5rem;height:1.5rem;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.header{text-align:center;margin-bottom:2rem;padding:2rem 0}.header-logo{width:80px;height:80px;-o-object-fit:contain;object-fit:contain;border-radius:16px;margin-bottom:1rem}.header-logo-placeholder{width:64px;height:64px;border-radius:16px;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:1.75rem;font-weight:700;margin-bottom:1rem}.header h1{font-size:2rem;margin-bottom:.5rem}.header-description{color:var(--text-secondary);max-width:600px;margin:0 auto .5rem;font-size:.95rem;line-height:1.5}.header p{color:var(--text-secondary)}.success-container{text-align:center;padding:3rem 1rem}.success-icon{width:4rem;height:4rem;background-color:var(--success-color);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:#fff;font-size:2rem}.success-container h2{font-size:1.75rem;margin-bottom:1rem;color:var(--text-primary)}.success-container .info-box{background-color:var(--bg-light);border-radius:.5rem;padding:1.5rem;margin:2rem 0;text-align:left}.info-box h3{font-size:1.125rem;margin-bottom:1rem}.info-box ul{list-style:none;padding:0}.info-box li{padding:.5rem 0;display:flex;justify-content:space-between}.badge{display:inline-block;padding:.25rem .75rem;border-radius:1rem;font-size:.875rem;font-weight:500}.badge-success{background-color:#d1fae5;color:#065f46}.badge-warning{background-color:#fef3c7;color:#92400e}
