/* W04.2 request preview — isolated from existing menu and cart styles. */
.order-notice { color: #76543e; }
.order-form { max-width: 740px; background: #fff; border: 1px solid #e8dfd5; border-radius: 12px; padding: 24px; }
.order-type { border: 1px solid #e8dfd5; border-radius: 8px; margin: 0 0 20px; padding: 12px 16px; }
.order-type label { margin-right: 24px; }
.order-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.order-fields label { display: flex; flex-direction: column; font-weight: 600; gap: 6px; }
.order-fields input, .order-fields textarea { font: inherit; width: 100%; border: 1px solid #9e8c7f; border-radius: 6px; padding: 10px; background: white; color: #29221d; }
.order-fields label[hidden] { display: none; }
.order-fields label:has(textarea) { grid-column: 1 / -1; }
.order-preview-button { margin-top: 20px; padding: 12px 20px; background: #67432e; color: white; border: 0; border-radius: 8px; font: inherit; cursor: pointer; }
.order-preview-button:focus-visible, .order-fields :focus-visible { outline: 3px solid #b97730; outline-offset: 2px; }
.order-preview { max-width: 740px; margin-top: 22px; padding: 22px; border: 1px solid #e8dfd5; border-radius: 12px; background: white; }
.order-preview[hidden] { display: none; }
.order-preview pre { font: inherit; white-space: pre-wrap; overflow-wrap: anywhere; }
@media (max-width: 600px) { .order-fields { grid-template-columns: 1fr; } .order-form { padding: 16px; } }
