.quote-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;background:#e7eaeb}.quote-intro h2{font-size:27px;margin:12px 0}.quote-intro p{line-height:1.6;color:var(--muted)}.quote-path{align-self:center;line-height:2;font-size:15px}.quote-version{font-size:20px;color:var(--muted)}.quote-back{margin-bottom:18px}.quote-controls{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:20px 0}.quote-controls>span{font-size:12px;color:var(--muted)}.quote-edit-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:20px;align-items:start}.quote-edit-grid .panel-head{padding:0 0 20px}.quote-copy h2{margin-bottom:20px}.quote-copy .form-grid{display:block}.quote-copy label{margin-bottom:18px}.quote-copy textarea{min-height:125px}.quote-copy textarea[name=includes]{min-height:240px}.billing-check{justify-content:center}.billing-check span{display:flex;gap:9px;align-items:flex-start;line-height:1.5}.billing-check input{width:17px;height:17px;min-width:17px;margin-top:3px}.billing-check small{font-size:11px;line-height:1.5;color:var(--muted)}[hidden]{display:none!important}.quote-line-editor{display:grid;grid-template-columns:minmax(120px,1fr) 54px 125px 30px;gap:10px;align-items:end;margin-bottom:15px}.quote-line-editor button{height:42px;padding:0}.quote-discount{margin-top:24px}.quote-sums{max-width:330px;margin:22px 0 0 auto}.quote-sums>div{display:flex;justify-content:space-between;gap:24px;margin:12px 0}.quote-grand{border-top:1px solid #bbb;padding-top:14px;font-size:20px}.quote-sums small{display:block;text-align:right;font-size:11px}.quote-workflow .toolbar{margin-top:20px}.workflow-steps{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}.workflow-steps>div{display:flex;align-items:center;gap:8px}.workflow-steps span{background:#e8e8e4;border-radius:50%;height:25px;min-width:25px;display:grid;place-items:center;font-size:11px}.workflow-steps small{font-size:11px;line-height:1.5}.workflow-steps .finished span{background:#344937;color:white}.quote-preview-wrap{background:#e6e6e1;padding:24px;border-radius:16px;margin-bottom:22px}.quotation-paper{font-family:Arial,sans-serif;background:white;color:#141414;max-width:794px;margin:auto;padding:48px;font-size:13px;line-height:1.55;box-shadow:0 7px 25px #0000000c}.quotation-paper header{display:flex;justify-content:space-between;gap:24px;border-bottom:5px solid #111;padding-bottom:20px}.quotation-paper .brand-lockup{width:220px;max-width:100%;height:auto;filter:contrast(4)}.quotation-paper header p{margin:20px 0 0}.quote-heading{text-align:right}.quote-heading h2{font-size:27px;letter-spacing:1px;margin:0 0 8px}.quote-heading small{font-size:11px}.quote-service{display:grid;grid-template-columns:1fr 1.5fr;gap:24px;padding:20px 0}.quote-service p{margin:0;white-space:pre-line}.quote-rental{font-size:11px;margin-bottom:20px;color:#444}.quotation-paper table{width:100%;border-collapse:collapse;table-layout:fixed}.quotation-paper th,.quotation-paper td{padding:13px 8px;background:white!important;color:#111;font-size:12px;border:0;overflow-wrap:anywhere;white-space:normal}.quotation-paper th{font-weight:700;border-bottom:1px solid #222;text-transform:none}.quotation-paper th:first-child{width:65%;text-align:left}.quotation-paper th:nth-child(2),.quotation-paper td:nth-child(2){width:10%;text-align:center}.quotation-paper th:last-child,.quotation-paper td:last-child{text-align:right;width:25%}.quotation-paper tbody{border-bottom:1px dotted #888}.quotation-paper .quote-sums{font-size:13px;margin-top:10px}.quotation-paper .quote-grand{font-size:16px}.quote-includes{border-top:3px solid #222;margin-top:22px;padding-top:12px}.quote-includes h3{font-size:13px;font-style:italic;margin:0}.quote-includes ul{padding-left:19px;margin:12px 0;font-size:12px}.quote-terms{font-size:11px;white-space:pre-line;margin:18px 0}.quotation-paper footer{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid #333;padding-top:22px;font-size:11px}.quotation-paper footer p{margin-top:22px}.quote-signature{text-align:center}.quote-signature>div{height:50px;border-bottom:1px solid #111;margin-bottom:5px}#quotation-print{display:none}
@media(max-width:1100px){.quote-edit-grid{grid-template-columns:1fr}.workflow-steps{grid-template-columns:repeat(4,1fr)}}
@media(max-width:600px){.quote-intro{grid-template-columns:1fr}.quote-controls{align-items:flex-start;flex-direction:column}.workflow-steps{grid-template-columns:repeat(2,1fr)}.quote-line-editor{grid-template-columns:minmax(0,1fr) 50px 30px;gap:8px;border-bottom:1px solid #ddd;padding-bottom:18px}.quote-line-editor>label:first-child{grid-column:1/-1}.quote-line-editor>label:nth-child(2){grid-column:2;grid-row:2}.quote-line-editor>label:nth-child(3){grid-column:1;grid-row:2}.quote-line-editor>button{grid-column:3;grid-row:2}.quote-preview-wrap{padding:8px}.quotation-paper{padding:18px;font-size:11px}.quotation-paper header{gap:12px}.quotation-paper .brand-lockup{width:135px}.quote-heading h2{font-size:15px}.quote-heading small{font-size:9px}.quotation-paper header p{font-size:10px}.quote-service{grid-template-columns:1fr;gap:6px}.quotation-paper th,.quotation-paper td{font-size:10px;padding:10px 3px}.quotation-paper footer{gap:14px;font-size:10px}.quote-sums{max-width:100%}}
@page{size:A4;margin:12mm}
@media print{body>*{display:none!important}body>#quotation-print{display:block!important}dialog[open]{display:none!important}#quotation-print .quotation-paper{padding:0;box-shadow:none;max-width:none;font-size:11px}#quotation-print .quote-heading h2{font-size:23px}#quotation-print .brand-lockup{width:200px}#quotation-print .quotation-paper th,#quotation-print .quotation-paper td{padding:10px 6px;font-size:11px}#quotation-print .quote-service{padding:15px 0}#quotation-print .quote-includes{margin-top:15px}#quotation-print .quote-terms{margin:14px 0}#quotation-print tr,#quotation-print footer,#quotation-print .quote-sums{break-inside:avoid}#quotation-print thead{display:table-header-group}}
/* Keep reservation feedback inside the modal's top layer. */
.reservation-error{margin-top:16px;padding:12px 14px;border:1px solid #b8907b;border-radius:8px;background:#f4ebe5;color:#744d37;font-size:13px;line-height:1.6}
.reservation-error[hidden]{display:none}
.reservation-booth small{display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.5}
.reservation-booth.unavailable{color:var(--muted)}
