
.messages-workspace{min-width:0}.messages-shell.chat-shell{grid-template-columns:300px minmax(0,1fr);height:calc(100dvh - 156px);min-height:340px;border:1px solid #dce5ed;border-radius:20px;box-shadow:0 8px 30px #102b4210;background:#fff;margin:0}
.messages-shell .chat-sidebar{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:#fff;border-inline-end:1px solid #e1e8ef;border-right:0}
.messages-shell .chat-panel-head{padding:20px 18px;border:0;background:#112c43;color:#fff;min-height:84px}.messages-shell .chat-panel-head h4{font-size:17px}.messages-caption{display:block;margin-top:5px;color:#b8cfdf;font-size:12px}.messages-new{background:#28485f;color:#fff;width:44px;height:44px;border:1px solid #527087;border-radius:13px}
.messages-shell .chat-search{padding:14px}.messages-shell .search-box{background:#f2f6f9;border:1px solid #e2e9f0;border-radius:12px}.messages-shell .search-box input{font-size:14px;min-width:0;width:100%}.messages-shell .contact-list{height:auto;flex:1;overflow:auto;padding:0 8px 12px}.messages-shell .contact-item{padding:15px 10px;margin:3px 0;border:0;border-radius:12px;min-height:76px;text-align:start}.messages-shell .contact-item.is-active{background:#eaf2f8;box-shadow:inset 3px 0 #187994}.messages-shell .contact-copy strong{font-size:14px;color:#183349}.messages-shell .contact-copy span{font-size:12px;line-height:1.5;color:#61758a}.messages-shell .contact-time{font-size:10px;white-space:nowrap;margin-top:3px}
.messages-shell .chat-main{min-height:0;overflow:hidden}.messages-shell .chat-conversation-head{min-height:84px;padding:14px 22px;background:#fff;border-bottom:1px solid #e4ebf1;flex-shrink:0}.messages-shell .entity-main{min-width:0;gap:10px}.messages-person{min-width:0}.messages-shell .messages-person h4{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.messages-shell .messages-person p{font-size:12px;display:block;color:#6c8094;margin:3px 0 0}.messages-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.messages-call{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #c7e5db;background:#eaf7f1;color:#176c4c;min-height:44px;padding:10px 14px;border-radius:12px;font-weight:600;cursor:pointer}.messages-call svg{width:19px;height:19px}
.messages-shell .chat-messages{min-height:0;padding:24px;background:#f3f6fa;overscroll-behavior:contain}.messages-shell .message-row{margin:12px 0}.messages-shell .message-bubble{padding:12px 15px;border:1px solid #e1e8f0;border-radius:16px 16px 16px 4px;max-width:min(78%,600px);box-shadow:0 2px 4px #102c4305}.messages-shell .message-bubble p{font-size:14px;line-height:1.6;overflow-wrap:anywhere;white-space:pre-wrap}.messages-shell .message-bubble time{font-size:10px;color:#6f8193}.messages-shell .message-row.mine .message-bubble{background:#173c56;border:0;border-radius:16px 16px 4px 16px}.messages-shell .message-row.mine time{color:#b8d2e4}
.messages-shell .chat-composer{padding:14px 18px;gap:10px;flex-shrink:0}.messages-shell .chat-composer textarea{background:#f3f6fa;border:1px solid #dae4ed;border-radius:14px;min-height:46px;max-height:120px;flex:1;min-width:0;font-size:16px;line-height:24px;padding:10px 13px;resize:none}.messages-shell .chat-composer button{display:flex;gap:8px;min-height:46px;border-radius:13px;background:#173c56;border-color:#173c56}.messages-shell button:focus-visible,.messages-shell input:focus-visible,.messages-shell textarea:focus-visible{outline:3px solid #4b9fc5;outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
@media(min-width:761px){.messages-shell.show-contacts .chat-main{display:flex}.messages-shell .chat-contacts-button{display:none}}
@media(max-width:760px){.messages-shell.chat-shell{grid-template-columns:minmax(0,1fr);height:var(--chat-available-height,calc(100dvh - 140px));min-height:180px;border-radius:16px}.messages-shell .chat-sidebar{display:none;border:0}.messages-shell.show-contacts .chat-sidebar{display:flex}.messages-shell.show-contacts .chat-main{display:none}.messages-shell .chat-panel-head{min-height:72px;padding:14px 16px}.messages-shell .chat-conversation-head{min-height:70px;padding:10px;gap:6px}.messages-shell .chat-contacts-button{display:grid;background:#edf3f8;color:#173c56;font-size:28px;min-width:40px;height:44px}.messages-shell .messages-person h4{font-size:14px}.messages-shell .messages-person p{font-size:11px}.messages-shell .messages-actions{gap:5px}.messages-shell .messages-actions .btn{padding:8px;min-width:40px;min-height:44px;font-size:11px}.messages-shell .messages-call{width:44px;padding:10px}.messages-shell .messages-call span{display:none}.messages-shell .chat-messages{padding:12px}.messages-shell .message-bubble{max-width:85%;padding:10px 12px}.messages-shell .message-bubble p{font-size:14px}.messages-shell .chat-composer{padding:10px 10px max(10px,env(safe-area-inset-bottom));gap:7px}.messages-shell .chat-composer button{width:46px;min-width:46px;padding:10px}.messages-shell .chat-composer button span{display:none}}
.messages-shell .search-box{position:relative}.messages-shell .search-box>svg{position:absolute;inset-inline-start:12px;top:50%;transform:translateY(-50%);width:16px;height:16px}.messages-shell .search-box input{padding-inline-start:36px}

.history-selected-stop-group{margin:16px 0;padding:14px;border:1px solid #dce5ee;border-inline-start:4px solid #15803d;border-radius:12px}.history-selected-stop-group.is-return{border-inline-start-color:#2563eb}.history-selected-stop-group>h4{font-size:14px;margin:0 0 14px;line-height:1.6}.history-selected-stop-group .history-stop-item{min-width:0}.history-selected-stop-group .history-stop-item strong{overflow-wrap:anywhere}@media(max-width:600px){.history-selected-stop-group{padding:10px}.history-selected-stop-group .history-stop-item{flex-wrap:wrap}}

.history-driver-self{padding:10px 12px;min-height:46px;background:#edf3f8;border:1px solid #dce5ed;border-radius:10px;font-weight:600}.history-driver-self small{display:block;font-weight:400;color:#61758a;margin-top:3px}.history-operations-summary{padding:20px;background:#132e45;color:#fff;margin:18px 0;border-radius:16px}.history-operations-summary h4{margin:0;font-size:17px}.history-operations-summary p,.history-operations-summary>small{color:#b7cddd;font-size:12px}.history-operations-summary>div{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:16px 0}.history-operations-summary article{background:#ffffff0b;border:1px solid #ffffff1f;border-radius:12px;padding:15px}.history-operations-summary article strong{display:block;font-size:24px;color:#75e2c4;overflow-wrap:anywhere}.history-operations-summary article span{display:block;font-size:12px;margin-top:8px;color:#d1dfeb}.history-ride-metadata{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px;background:#f0f5f9;border-radius:10px}.history-ride-metadata small,.history-ride-metadata strong{display:block;font-size:12px;overflow-wrap:anywhere}.history-ride-metadata small{color:#61758a;margin-bottom:5px}.history-operations-table th>small{display:block;color:#61758a;margin-top:5px}.history-data-note{font-size:11px;color:#61758a}.history-school-events{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;padding:12px 0;color:#36576c}.history-operations-table{max-width:100%}@media(max-width:760px){.history-operations-summary{padding:14px}.history-operations-summary>div{grid-template-columns:repeat(2,minmax(0,1fr))}.history-operations-summary article:last-child{grid-column:span 2}.history-ride-metadata{grid-template-columns:repeat(2,minmax(0,1fr))}.history-operations-table table{min-width:0}.history-operations-table thead{display:none}.history-operations-table table,.history-operations-table tbody,.history-operations-table tr,.history-operations-table td,.history-operations-table th{display:block;width:100%;white-space:normal}.history-operations-table tr{border:1px solid #dce5ed;border-radius:12px;margin:12px 0;overflow:hidden}.history-operations-table tbody th{background:#edf3f8}.history-operations-table td{display:flex;justify-content:space-between;gap:12px;font-size:12px;overflow-wrap:anywhere}.history-operations-table td:before{content:attr(data-label);font-weight:600;color:#61758a;flex:0 0 45%}}
