:root{--max-width:960px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial}body{margin:0;padding:0;color:#111}.container{max-width:var(--max-width);margin:0 auto;padding:1rem}.site-header{background:#0b5;padding:.5rem 0}.site-header .brand{font-weight:700;color:#042;text-decoration:none}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1rem;gap:1rem}.card{border:1px solid #eee;padding:1rem;border-radius:8px}.card img{width:100%;height:180px;object-fit:cover;background:#f5f5f5}.actions{display:flex;gap:.5rem;margin-top:.5rem}.site-footer{background:#f7f7f7;padding:1rem;margin-top:2rem}.cart-row{display:flex;gap:1rem;align-items:center;border-bottom:1px solid #eee;padding:.5rem 0}.cart-row img{width:80px;height:100px;object-fit:cover}.btn-primary,.button,button{cursor:pointer}.btn-primary{background:#0070f3;color:#fff;border:none;padding:12px 24px;border-radius:6px;font-size:16px;font-weight:500;transition:background-color .2s}.btn-primary:hover:not(:disabled){background:#0056b3}.btn-primary:disabled{background:#ccc;cursor:not-allowed}.btn-secondary{background:#6c757d;color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-size:16px;font-weight:500;transition:background-color .2s}.btn-secondary:hover{background:#5a6268}.checkout-container{max-width:1200px;margin:0 auto;padding:2rem}.checkout-content{display:grid;grid-template-columns:1fr 1fr;grid-gap:3rem;gap:3rem;margin-top:2rem}.order-summary{background:#f8f9fa;padding:2rem;border-radius:8px;height:-moz-fit-content;height:fit-content}.order-item{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid #dee2e6}.item-image{width:60px;height:80px;object-fit:cover;border-radius:4px}.item-details{flex:1 1}.item-details h4{margin:0 0 .5rem;font-size:1rem}.item-details p{margin:.25rem 0;color:#6c757d;font-size:.9rem}.item-total{font-weight:600;align-self:center}.order-totals{margin-top:2rem;padding-top:1rem;border-top:2px solid #dee2e6}.total-line{display:flex;justify-content:space-between;margin:.5rem 0}.final-total{font-weight:700;font-size:1.2rem;border-top:1px solid #dee2e6;padding-top:.5rem;margin-top:1rem}.customer-form{background:#fff;padding:2rem;border:1px solid #dee2e6;border-radius:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;margin-bottom:1.5rem}.form-row:has(.form-group:only-child){grid-template-columns:1fr}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.5rem;font-weight:500;color:#333}.form-group input,.form-group select{padding:12px;border:1px solid #ced4da;border-radius:4px;font-size:16px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#0070f3;box-shadow:0 0 0 2px rgba(0,112,243,.2)}.checkout-actions{display:flex;gap:1rem;justify-content:space-between;margin-top:2rem;padding-top:2rem;border-top:1px solid #dee2e6}.checkout-buttons{display:flex;gap:1rem;margin-top:1rem}.success-container{max-width:600px;margin:2rem auto;text-align:center}.success-content{background:#fff;padding:3rem;border-radius:12px;box-shadow:0 4px 6px rgba(0,0,0,.1)}.success-icon{font-size:4rem;margin-bottom:1rem}.success-content h1{color:#28a745;margin-bottom:1rem}.order-details{background:#f8f9fa;padding:1.5rem;border-radius:8px}.next-steps,.order-details{margin:2rem 0;text-align:left}.next-steps ul{padding-left:1.5rem}.next-steps li{margin:.5rem 0}.success-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.payment-method-selection{margin-bottom:2rem;padding:1.5rem;background:#f8f9fa;border-radius:8px}.payment-method-selection h3{margin:0 0 1rem;color:#333}.payment-options{display:flex;flex-direction:column;gap:1rem}.payment-option{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.75rem;border:1px solid #dee2e6;border-radius:4px;background:#fff;transition:background-color .2s,border-color .2s}.payment-option:hover{background:#f8f9fa;border-color:#0070f3}.payment-option input[type=radio]{margin:0}.payment-option span{font-weight:500}.square-embedded-payment{margin-top:2rem;padding:2rem;border:1px solid #dee2e6;border-radius:8px;background:#f8f9fa}.square-embedded-payment h3{margin:0 0 1rem;color:#333}#card-container{margin-bottom:1.5rem;padding:1rem;background:#fff;border:1px solid #ced4da;border-radius:4px;min-height:60px}#card-button{width:100%;margin-top:1rem}@media (max-width:768px){.checkout-content{gap:2rem}.checkout-content,.form-row{grid-template-columns:1fr}.checkout-actions,.success-actions{flex-direction:column}.payment-options{gap:.75rem}.payment-option{padding:1rem}}