.order-card-row{min-width:0}
.order-card-row .order-card{min-width:0}
.order-complaint-button{border:1px solid #b9d4c9;background:#edf6f2;color:#155b45;font-size:13px;font-weight:750}
.order-complaint-button:hover{border-color:#1d7658;background:#deeee7}
.order-complaint-button:focus-visible{outline:3px solid #9fd0bd;outline-offset:2px}
.detail-title-actions .order-complaint-button{border:1px solid #94c4b2;background:#edf6f2;color:#155b45}
.detail-title-actions .order-complaint-button:hover{border-color:#1d7658;background:#deeee7;box-shadow:0 4px 12px rgba(16,48,39,.1)}

.complaints-view{height:calc(100vh - 42px);padding:30px 28px;overflow:auto}
.complaints-inner{width:min(1100px,100%);margin:0 auto 42px}
.complaints-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.complaints-header>div{min-width:0}
.complaints-header h1{margin:5px 0 4px;font-size:30px}
.complaints-header p{margin:0;color:#687586}
.complaints-eyebrow{font-size:11px;font-weight:800;letter-spacing:.11em;color:#287458}
.complaints-header button,.complaints-pagination button{border:1px solid #c7ddd4;background:#edf6f2;color:#155b45}
.complaints-header button:hover:not(:disabled),.complaints-pagination button:hover:not(:disabled){border-color:#1d7658;background:#deeee7}
.complaints-message{min-height:20px;margin:0 0 10px;color:#31584b;font-size:13px;font-weight:650}
.complaints-message.success{color:#14734f}
.complaints-message.error,.complaint-form-status.error{color:#b42318}
.complaints-list{display:grid;gap:14px}
.complaints-empty{padding:40px 24px;border:1px solid #dfe7e4;border-radius:13px;background:#fff;color:#687586;text-align:center}
.complaints-empty p{margin:0 0 14px}
.complaints-load-error button{background:#e7f3ee;color:#145c42}
.complaint-card{overflow:hidden;border:1px solid #dce6e2;border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(16,58,45,.04)}
.complaint-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid #e8eeeb;background:#fbfdfc}
.complaint-card-header>div{min-width:0}
.complaint-card-header h2{margin:3px 0 4px;font-size:18px;color:#123c30;overflow-wrap:anywhere}
.complaint-card-header p{margin:0;color:#708078;font-size:12px}
.complaint-card-label{font-size:10px;font-weight:800;letter-spacing:.1em;color:#6a7d75}
.complaint-status{flex:0 0 auto;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800}
.complaint-status-in_progress{background:#fff1c7;color:#795800}
.complaint-status-closed{background:#dff2e9;color:#146244}
.complaint-order{display:flex;align-items:center;gap:10px;padding:13px 20px;border-bottom:1px solid #edf1ef;font-size:13px}
.complaint-order span{color:#6b7974}
.complaint-order a{color:#106247;font-weight:750;text-underline-offset:3px}
.complaint-conversation{display:grid;grid-template-columns:1fr 1fr;gap:0}
.complaint-conversation section{min-width:0;padding:18px 20px}
.complaint-conversation section+section{border-left:1px solid #e4ebe8;background:#f4faf7}
.complaint-conversation h3{margin:0 0 9px;font-size:13px;color:#244b3e}
.complaint-conversation p{margin:0;color:#263d35;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}
.complaint-conversation .complaint-awaiting{color:#6f7f78;font-style:italic}
.complaint-card>footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 18px;padding:10px 20px;border-top:1px solid #e8eeeb;color:#718078;font-size:11px}
.complaints-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px}
.complaints-pagination span{color:#687586;font-size:13px}

body.complaint-modal-open{overflow:hidden}
.complaint-modal-backdrop{position:fixed;z-index:1350;inset:0;display:grid;place-items:center;padding:20px;background:rgba(8,32,24,.48)}
.complaint-modal{width:min(620px,100%);max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #b8d9cc;border-radius:18px;background:#fff;padding:25px;box-shadow:0 28px 80px rgba(8,32,24,.3)}
.complaint-modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:16px;border-bottom:1px solid #e4ebe8}
.complaint-modal-heading span{font-size:10px;font-weight:800;letter-spacing:.11em;color:#287458}
.complaint-modal-heading h2{margin:5px 0 4px;font-size:24px}
.complaint-modal-heading p{margin:0;color:#687586}
.complaint-modal-close{flex:0 0 auto;width:38px;height:38px;padding:0;background:#edf4f1;color:#174f3d;font-size:22px;line-height:1}
#complaint-form label{margin:18px 0 7px;color:#29463d;font-size:13px;font-weight:750}
#complaint-message{display:block;width:100%;min-height:150px;resize:vertical;padding:12px;border:1px solid #bfd0c9;border-radius:10px;font:inherit;line-height:1.5}
#complaint-message:focus{outline:3px solid #b5ddce;border-color:#267657}
.complaint-form-meta{display:flex;justify-content:space-between;gap:12px;margin-top:7px;color:#72817a;font-size:11px}
.complaint-form-status{min-height:20px;margin:10px 0 0;color:#31584b;font-size:13px}
.complaint-modal-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:10px;margin-top:13px}
.complaint-modal-actions button{min-height:44px}
.complaint-cancel{border:1px solid #c8d7d1;background:#f1f5f3;color:#31584b}
.complaint-submit{background:#155b45;color:#fff}

@media(max-width:760px){
  .detail-title-actions .order-complaint-button{width:auto;min-height:44px}
  .complaints-view{height:auto;padding:22px 18px}
  .complaints-header{align-items:stretch;flex-direction:column}
  .complaints-header button{width:100%}
  .complaint-conversation{grid-template-columns:1fr}
  .complaint-conversation section+section{border-top:1px solid #e4ebe8;border-left:0}
  .complaint-card-header{align-items:flex-start;flex-direction:column}
  .complaint-card>footer{justify-content:flex-start}
  .complaints-pagination{display:grid;grid-template-columns:1fr 1fr}
  .complaints-pagination span{grid-column:1/-1;grid-row:1;text-align:center}
  .complaint-modal-backdrop{padding:10px}
  .complaint-modal{max-height:calc(100dvh - 20px);padding:20px}
  .complaint-modal-actions{grid-template-columns:1fr}
}

@media(max-width:520px){
  .detail-title-actions #repeat-order,.detail-title-actions .order-complaint-button{width:100%}
}
