/* ================================ Customize Page Styles ================================ */ .customize-section { padding: 40px 0; background-color: #f8f9fa; } .customize-wrapper { background: #ffffff; border-radius: 8px; padding: 30px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); } /* Header */ .customize-header { margin-bottom: 30px; text-align: center; .customize-title { font-size: 28px; font-weight: 700; color: #333; margin-bottom: 10px; } .customize-description { font-size: 16px; color: #666; margin-bottom: 0; } } /* Table Header */ .customize-table-header { display: flex; align-items: center; padding: 12px 15px; background-color: #eeeeee; font-family: Verdana, sans-serif; font-size: 0.85rem; font-weight: 600; border-bottom: 2px solid #cccccc; margin-bottom: 0; > div { padding: 0 10px; } .col-image { flex: 0 0 120px; } .col-name { flex: 0 0 25%; } .col-options { flex: 1; } .col-qty { flex: 0 0 80px; text-align: center; } .col-price { flex: 0 0 100px; text-align: right; } .col-extended { flex: 0 0 100px; text-align: right; } } /* Product Row */ .customize-row { border-bottom: 1px solid #e0e0e0; transition: background-color 0.2s ease; &:hover { background-color: #f9f9f9; } } .customize-row-inner { display: flex; align-items: center; padding: 20px 15px; > .customize-col { padding: 0 10px; } } .customize-col { &.col-image { flex: 0 0 120px; img { width: 100%; height: auto; border-radius: 4px; border: 1px solid #ddd; } } &.col-name { flex: 0 0 25%; .product-name { display: block; font-weight: 600; color: #333; margin-bottom: 5px; text-decoration: none; &:hover { color: #c57000; text-decoration: underline; } } .product-size { display: block; font-size: 0.85rem; color: #666; } } &.col-options { flex: 1; select, .form-select { width: 100%; max-width: 300px; margin-bottom: 10px; padding: 8px 12px; border: 1px solid #ddd; border-radius: 4px; font-size: 0.9rem; &:focus { border-color: #c57000; outline: none; box-shadow: 0 0 0 2px rgba(197, 112, 0, 0.1); } } .form-check { margin: 10px 0; } .btn-link { padding: 5px 0; font-size: 0.85rem; text-decoration: none; &:hover { text-decoration: underline; } } } &.col-qty { flex: 0 0 80px; .qty-input { width: 100%; padding: 8px; text-align: center; border: 1px solid #ddd; border-radius: 4px; font-size: 1rem; &:focus { border-color: #c57000; outline: none; } } } &.col-price { flex: 0 0 100px; text-align: right; font-weight: 600; color: #333; } &.col-extended { flex: 0 0 100px; text-align: right; font-weight: 700; color: #c57000; font-size: 1.1rem; } } /* Teak Treatment Warning */ .teak-treatment-warning { margin-top: 10px; padding: 10px; background-color: #fff3cd; border: 1px solid #ffc107; border-radius: 4px; font-size: 0.75rem; line-height: 1.4; } /* Optional Items Section */ .customize-optional-header { margin: 40px 0 20px; padding: 15px; background-color: #f0f0f0; border-left: 4px solid #c57000; h2 { margin: 0; font-size: 20px; font-weight: 600; color: #333; } } /* Totals Section */ .customize-totals-wrapper { margin-top: 30px; padding: 20px; background-color: #f8f9fa; border-radius: 4px; .customize-total { display: flex; justify-content: space-between; align-items: center; font-size: 1.4rem; font-weight: 700; padding: 15px 20px; background: #ffffff; border-radius: 4px; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); .total-label { color: #666; } .total-amount { color: #c57000; } } .add-to-cart-button { width: 100%; padding: 15px 30px; font-size: 1.1rem; font-weight: 600; background-color: #c57000; border: none; border-radius: 4px; color: #ffffff; cursor: pointer; transition: background-color 0.3s ease, transform 0.1s ease; &:hover:not(:disabled) { background-color: #a05e00; transform: translateY(-2px); } &:active:not(:disabled) { transform: translateY(0); } &:disabled { opacity: 0.7; cursor: not-allowed; } i { margin-right: 8px; } .icon-spinner { display: inline-block; animation: spin 1s linear infinite; } } } /* Spinner animation */ @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } /* Form Errors */ .form-errors { margin-bottom: 20px; .alert { padding: 15px; border-radius: 4px; font-size: 0.9rem; } .alert-danger { background-color: #f8d7da; border: 1px solid #f5c6cb; color: #721c24; } } /* Responsive Styles */ @media (max-width: 991px) { .customize-table-header { display: none; } .customize-row-inner { flex-direction: column; align-items: flex-start; > .customize-col { width: 100%; max-width: 100%; margin-bottom: 15px; &.col-image, &.col-name, &.col-options, &.col-qty, &.col-price, &.col-extended { flex: none; } &.col-image { text-align: center; img { max-width: 200px; } } &.col-options { select, .form-select { max-width: 100%; } } &.col-qty { .qty-input { max-width: 100px; } } &.col-price, &.col-extended { text-align: left; &:before { content: attr(data-label); font-weight: 600; margin-right: 10px; } } } } } @media (max-width: 767px) { .customize-wrapper { padding: 20px; } .customize-header { .customize-title { font-size: 22px; } .customize-description { font-size: 14px; } } .customize-totals-wrapper { .customize-total { font-size: 1.2rem; padding: 12px 15px; } .add-to-cart-button { padding: 12px 20px; font-size: 1rem; } } }