#driver .messageBubble.messageNeedsConfirmation{border:2px solid #bd1733!important;background:#fff!important;}
#driver [data-compact-route="office"].messageNeedsConfirmation,#driver #driverNavOffice.messageNeedsConfirmation{background:#bd1733!important;color:#fff!important;border-color:#bd1733!important;}
/* Slow red pulse keeps office messages noticeable until the required response. */
@keyframes driverOfficeMessagePulse{0%,100%{box-shadow:0 0 0 0 rgba(189,23,51,.15);filter:brightness(1)}50%{box-shadow:0 0 0 5px rgba(189,23,51,.3);filter:brightness(1.25)}}
#driver [data-compact-route="office"].messageNeedsConfirmation,#driver #driverNavOffice.messageNeedsConfirmation,#driver #driverMsgBadge:not(.hidden){animation:driverOfficeMessagePulse 1.8s ease-in-out infinite;}
@media(prefers-reduced-motion:reduce){#driver [data-compact-route="office"].messageNeedsConfirmation,#driver #driverNavOffice.messageNeedsConfirmation,#driver #driverMsgBadge:not(.hidden){animation:none;outline:3px solid #bd1733;outline-offset:2px;}}
.messageConfirmation{margin-top:12px;padding-top:10px;border-top:1px solid #dbe3ef;}
.messageConfirmation button{min-height:44px;white-space:normal;}
.messageConfirmTools{padding:12px;border:1px solid #dbe3ef;border-radius:10px;margin-bottom:12px;}
.messageConfirmTools p{margin:6px 0;}
.messagePending .messagePendingSummary,.messagePending{color:#b5162f;}
.messageConfirmed{color:#087441;font-weight:600;}
.messageRecipientList{padding-left:18px;margin:10px 0;}
.messageRecipientList li{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;padding:8px 0;border-bottom:1px solid #dbe3ef;}
.messageRecipientList small{grid-column:1/-1;color:#53677e;}
.messageConfirmation summary{cursor:pointer;min-height:36px;}
.messageConfirmError{color:#b5162f;}
@media(max-width:600px){.messageRecipientList li{grid-template-columns:1fr}.messageConfirmTools .btn{max-width:100%;white-space:normal;}}

.messageReplyContext{border:1px solid #cddbec;padding:10px;margin:10px 0;border-radius:8px;overflow-wrap:anywhere}.messageReplyContext p{max-height:100px;overflow:auto;white-space:pre-wrap}.messageReplyButton{margin:8px 0 0 8px}

.messageReplyDialog{box-sizing:border-box;width:min(560px,96vw);max-width:96vw;max-height:92dvh;overflow:auto;padding:0;border:1px solid #cddbec;border-radius:12px;color:#173453;background:white}.messageReplyDialog::backdrop{background:rgba(15,35,60,.45)}.messageReplyDialog header{display:flex;align-items:center;gap:12px;padding:12px;background:white;position:sticky;top:0;z-index:1}.messageReplyDialog h2{font-size:20px;margin:0}.messageReplyForm{display:flex;flex-direction:column;gap:10px;padding:0 14px 14px}.messageReplyForm blockquote{margin:0;padding:10px;border-left:3px solid #1967d2;background:#f0f5fc;max-height:18dvh;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}.messageReplyForm textarea{box-sizing:border-box;min-height:100px;max-height:25dvh;width:100%;font-size:16px;padding:10px;resize:vertical}.messageReplyForm .btn{min-height:44px}.messageReplyError{color:#b5162f;margin:0}.messageReplyError:empty{display:none}
.messageReplyDialog{position:fixed;left:50%;right:auto;bottom:auto;margin:0;transform:translateX(-50%)}
body #messageReplyDialog{inset:var(--reply-top,8px) auto auto 50%!important;margin:0!important;width:min(560px,96vw)!important;max-width:96vw!important;height:auto!important;max-height:var(--reply-height,92dvh)!important;border-radius:12px!important;transform:translateX(-50%)}
/* Compact office composer; driver messages and sending logic remain unchanged. */
#messages .card.messageComposer{height:auto;min-height:0;padding:14px;font-size:14px;line-height:1.35}
#messages .messageComposer h3{font-size:18px;line-height:1.25;margin:0 0 8px}
#messages .messageComposer p{font-size:14px;line-height:1.35;margin:6px 0 10px}
#messages .messageComposer .field{margin:0 0 10px;gap:4px}
#messages .messageComposer label{font-size:14px;line-height:1.3;margin:0 0 4px}
#messages .messageComposer select{font-size:16px;padding:8px 10px;min-height:42px;height:42px}
#messages .messageComposer #officeMsgBody{font-size:16px;line-height:1.35;padding:9px 10px;height:110px;min-height:90px;box-sizing:border-box}
#messages .messageComposer #messageLeaveHint{font-size:13px;margin:6px 0 0;line-height:1.35}
#messages .messageComposer #sendOfficeMsg{font-size:14px;min-height:44px;padding:9px 12px;margin:0}
#messages .messageComposer .help{font-size:12px;line-height:1.3;margin-top:6px}

/* Driver mobile: hide only the phone-permission control; keep subscriptions intact. */
@media(max-width:900px){body #driver #messageConfirmTools>button.driverPhoneNotificationToggle{display:none!important}}
