/* Amai Desserts — Customer Order Form */

:root {
    --brand-pink:   #d63384;
    --brand-light:  #fff0f6;
    --brand-dark:   #a01060;
    --text-main:    #222;
    --radius:       12px;
}

body {
    font-family: 'Segoe UI', Arial, sans-serif;
    background: linear-gradient(135deg, #fff8fc 0%, #fef4e8 100%);
    min-height: 100vh;
    color: var(--text-main);
}

/* Header */
.order-header {
    background: var(--brand-pink);
    color: #fff;
    padding: 28px 0 20px;
    text-align: center;
    margin-bottom: 32px;
}
.order-header h1 { font-size: 2rem; font-weight: 700; margin: 0 0 4px; }
.order-header p  { opacity: 0.85; margin: 0; }

/* Recipe cards */
.recipe-card {
    background: #fff;
    border-radius: var(--radius);
    box-shadow: 0 2px 12px rgba(0,0,0,.07);
    overflow: hidden;
    transition: box-shadow .2s;
}
.recipe-card:hover { box-shadow: 0 4px 20px rgba(214,51,132,.15); }
.recipe-card img { width: 100%; height: 180px; object-fit: cover; }
.recipe-card .card-body { padding: 16px; }
.recipe-card h5 { font-weight: 600; margin-bottom: 4px; color: var(--brand-pink); }
.recipe-card p  { font-size: 0.875rem; color: #666; margin-bottom: 12px; }

/* Yield rows inside cards */
.yield-row {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 0;
    border-top: 1px solid #f0e0eb;
}
.yield-row label { flex: 1; font-size: .875rem; }
.yield-row .price { color: var(--brand-pink); font-weight: 600; min-width: 60px; text-align: right; }
.yield-row input[type=number] {
    width: 70px;
    border: 1px solid #e0c8d8;
    border-radius: 6px;
    padding: 4px 8px;
    text-align: center;
    font-size: .9rem;
}
.yield-row input[type=number]:focus {
    outline: none;
    border-color: var(--brand-pink);
    box-shadow: 0 0 0 3px rgba(214,51,132,.1);
}

/* Order summary sidebar */
.order-summary {
    background: #fff;
    border-radius: var(--radius);
    box-shadow: 0 2px 12px rgba(0,0,0,.07);
    padding: 20px;
    position: sticky;
    top: 20px;
}
.order-summary h4 { font-weight: 700; color: var(--brand-pink); margin-bottom: 12px; }
.summary-items { min-height: 60px; }
.summary-item {
    display: flex;
    justify-content: space-between;
    font-size: .875rem;
    padding: 4px 0;
    border-bottom: 1px solid #f5e8f0;
}
.summary-total {
    display: flex;
    justify-content: space-between;
    font-weight: 700;
    font-size: 1.1rem;
    padding-top: 10px;
    margin-top: 8px;
    border-top: 2px solid var(--brand-pink);
    color: var(--brand-pink);
}
.summary-disclaimer {
    font-size: .75rem;
    color: #999;
    margin-top: 8px;
    font-style: italic;
}
.summary-empty { color: #bbb; font-size: .875rem; text-align: center; padding: 16px 0; }

/* Customer info form */
.customer-form {
    background: #fff;
    border-radius: var(--radius);
    box-shadow: 0 2px 12px rgba(0,0,0,.07);
    padding: 28px;
    margin-top: 32px;
}
.customer-form h3 { font-weight: 700; margin-bottom: 20px; color: var(--brand-pink); }
.customer-form label { font-weight: 500; }

.btn-order {
    background: var(--brand-pink);
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 12px 32px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: background .2s;
}
.btn-order:hover { background: var(--brand-dark); color: #fff; }
.btn-order:disabled { opacity: .6; cursor: not-allowed; }

/* Success message */
.success-banner {
    background: #d1fae5;
    border: 1px solid #6ee7b7;
    border-radius: var(--radius);
    padding: 24px;
    text-align: center;
    margin-bottom: 32px;
}
.success-banner h3 { color: #065f46; }
