.customer-cancellation{margin-top:1.25rem;padding:1.25rem;border:1px solid #bbc8b6;border-radius:12px;background:#f4f5ed;color:#294a38}
.customer-cancellation h3{margin:0 0 .6rem;font-size:1.12rem;font-weight:700;line-height:1.6}
.customer-cancellation p{line-height:1.8;overflow-wrap:anywhere}
.customer-cancellation .btn{min-height:48px;white-space:normal}
.cancellation-result:empty{display:none}
.cancellation-result{font-weight:600}
.cancellation-links{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:center;margin-top:1rem}
.cancellation-dialog{box-sizing:border-box;width:min(92vw,580px);max-height:85dvh;overflow:auto;border:0;border-radius:18px;padding:clamp(20px,5vw,36px);background:#fffdf6;color:#294a38;box-shadow:0 20px 70px #0005}
.cancellation-dialog::backdrop{background:#14271fd0}
.cancellation-dialog h2{font-size:clamp(1.3rem,4.5vw,1.7rem);line-height:1.55;margin-top:0}
.cancellation-dialog p{line-height:1.8;overflow-wrap:anywhere}
.cancellation-dialog .order-id{font:inherit;font-size:.85rem}
.cancellation-dialog-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.cancellation-dialog-actions .btn{flex:1 1 180px;min-height:50px;white-space:normal}
.cancellation-request-badge{display:inline-block;margin:.3rem .4rem;padding:.35rem .65rem;border-radius:8px;background:#fff0ca;color:#6b4212;font-weight:700;font-size:.85rem;line-height:1.4}
.cancellation-admin-summary{padding:1rem;border-left:5px solid #bc8a35;background:#fff3d8;margin:1rem 0;color:#573f17}
.cancellation-admin-summary h2{font-size:1.15rem;margin:.1rem 0 .5rem}
.cancellation-admin-summary p{line-height:1.7}
@media(max-width:600px){.customer-cancellation{padding:1rem}.cancellation-links>*{width:100%}.cancellation-links a{padding:.65rem 0}.cancellation-dialog-actions{flex-direction:column}.cancellation-dialog-actions .btn{flex:auto;width:100%}}
@media print{.customer-cancellation,.cancellation-admin-summary,.cancellation-request-badge{display:none}}

.customer-change-request{border:2px solid #3f6b50;background:#f6f8ee}
.customer-change-request h3{font-size:1.2rem}
.customer-change-request label,.order-change-admin label{display:block;font-weight:700;line-height:1.7;margin-top:1rem}
.customer-change-request textarea,.order-change-admin textarea{box-sizing:border-box;display:block;width:100%;min-height:130px;margin:.5rem 0 1rem;padding:.85rem;border:1px solid #889f87;border-radius:9px;background:#fffefb;color:#243f2c;font:inherit;font-size:16px;line-height:1.7;resize:vertical}
.customer-change-request textarea:focus,.order-change-admin textarea:focus{outline:3px solid #73966b;outline-offset:2px}
.order-request-message{margin:1rem 0;padding:1rem;border-radius:8px;background:#ffffffb5;color:#294a38}
.order-request-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:.5rem 0 0;line-height:1.8}
.order-request-response{border-left:4px solid #456e50}
.change-request-badge{display:inline-block;margin:.3rem .4rem;padding:.35rem .65rem;border-radius:8px;background:#dcebd9;color:#254d2d;font-weight:700;font-size:.85rem;line-height:1.4}
.order-change-admin{border-color:#527d4e;background:#eef5e9;color:#294a38}
@media print{.change-request-badge{display:none}}

.customer-change-request details{margin:.75rem 0}
.customer-change-request summary{box-sizing:border-box;display:list-item;cursor:pointer;border:1px solid #426a4e;border-radius:9px;padding:.85rem 1rem;min-height:48px;font-weight:700;background:#294f39;color:#fffdf6;line-height:1.5;list-style-position:inside}
.customer-change-request details[open] summary{background:#e5eddd;color:#294a38}
.customer-change-request summary:focus-visible{outline:3px solid #73966b;outline-offset:3px}
