.customer-request-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:14px 0;border:1px solid #bddcec;border-radius:14px;background:linear-gradient(120deg,#f5fbfe,#eaf6fc);padding:18px}.customer-request-panel h3,.customer-request-panel p{margin:4px 0}.customer-request-panel p{color:var(--muted)}.portal-preview-note{color:var(--muted);font-size:.78rem;font-weight:800}.customer-request-history{margin-bottom:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:16px}.customer-request-history article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border-top:1px solid var(--line);padding:12px 0}.customer-request-history article:first-of-type{border-top:0}.customer-request-history article span,.customer-request-history article strong{display:block}.customer-request-history article>div>span{margin-top:4px;color:var(--muted);font-size:.75rem}.request-urgency{display:grid!important;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--surface2);color:var(--brand)}.request-urgency.emergency{background:rgba(217,86,86,.13);color:#bd3939}.request-status{display:inline-flex;border-radius:999px;padding:5px 8px;background:var(--surface2);color:var(--muted);font-size:.7rem;font-weight:900}.request-status.new{background:rgba(55,130,201,.13);color:#2770aa}.request-status.under-review{background:rgba(224,161,26,.15);color:#9c6900}.request-status.scheduled{background:rgba(45,165,111,.13);color:#218158}.request-boundary{display:flex;align-items:flex-start;gap:10px;border:1px solid #bddcec;border-radius:11px;background:#eef8fd;padding:13px;color:#315d75}.request-boundary span,.request-boundary strong{display:block}.request-boundary strong{margin-bottom:3px}.compact-action.request{margin-left:auto;background:rgba(31,126,179,.1);color:var(--brand)}.dispatch-request-queue{margin-bottom:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:16px}.dispatch-request-queue>.panel-head{margin-bottom:5px}.dispatch-request-queue>div>article{display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;align-items:center;gap:12px;border-top:1px solid var(--line);padding:12px 0}.dispatch-request-queue>div>article>span:first-child{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:var(--surface2);color:var(--brand)}.dispatch-request-queue article.urgency-emergency>span:first-child{background:rgba(217,86,86,.13);color:#bd3939}.dispatch-request-queue article small,.dispatch-request-queue article strong,.dispatch-request-queue article p{display:block;margin:3px 0}.dispatch-request-queue article small,.dispatch-request-queue article p{color:var(--muted)}.request-actions{display:flex;gap:6px}.request-actions button{white-space:nowrap}.request-empty{display:flex;align-items:center;justify-content:center;gap:8px;padding:24px;color:var(--muted)}.request-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.request-detail-grid>div{border-radius:10px;background:var(--surface2);padding:12px}.request-detail-grid span,.request-detail-grid strong{display:block}.request-detail-grid span{margin-bottom:5px;color:var(--muted);font-size:.7rem;text-transform:uppercase}.request-description{margin-top:14px;border:1px solid var(--line);border-radius:12px;padding:15px}.request-description h4{margin:0 0 8px}.request-description p{margin:0;white-space:pre-line}.dark .customer-request-panel,.dark .request-boundary{background:#172f3e;border-color:#2b5368;color:var(--text)}@media(max-width:760px){.customer-request-panel{align-items:stretch;flex-direction:column}.customer-request-history article{grid-template-columns:auto 1fr}.customer-request-history .request-status{grid-column:2;justify-self:start}.dispatch-request-queue>div>article{grid-template-columns:auto 1fr}.dispatch-request-queue article>.request-status,.request-actions{grid-column:2;justify-self:start}.request-detail-grid{grid-template-columns:1fr}}@media(max-width:450px){.request-actions{width:100%;flex-direction:column}.request-actions button{width:100%}}
