:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74c3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-toast-width:320px;--toastify-toast-background:#fff;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error)}.Toastify__toast-container{box-sizing:border-box;color:#fff;padding:4px;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:320px;width:var(--toastify-toast-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:1em;top:1em}.Toastify__toast-container--top-center{left:50%;top:1em;transform:translateX(-50%)}.Toastify__toast-container--top-right{right:1em;top:1em}.Toastify__toast-container--bottom-left{bottom:1em;left:1em}.Toastify__toast-container--bottom-center{bottom:1em;left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width:480px){.Toastify__toast-container{left:0;margin:0;padding:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:0;transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:0;transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:0}}.Toastify__toast{border-radius:4px;box-shadow:0 1px 10px 0 #0000001a,0 2px 15px 0 #0000000d;box-sizing:border-box;cursor:default;direction:ltr;display:flex;font-family:sans-serif;font-family:var(--toastify-font-family);justify-content:space-between;margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);overflow:hidden;padding:8px;position:relative;z-index:0}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{align-items:center;display:flex;flex:1 1 auto;margin:auto 0;padding:6px}.Toastify__toast-body>div:last-child{flex:1 1;word-break:break-word}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:20px}.Toastify--animate{animation-duration:.7s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}@media only screen and (max-width:480px){.Toastify__toast{border-radius:0;margin-bottom:0}}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74c3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74c3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{align-self:flex-start;background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;transition:.3s ease}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:5px;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:9999;z-index:var(--toastify-z-index)}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{left:auto;right:0;transform-origin:right}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:perspective(400px)}30%{opacity:1;transform:perspective(400px) rotateX(-20deg)}to{opacity:0;transform:perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideOutRight{0%{transform:translateZ(0)}to{transform:translate3d(110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translateZ(0)}to{transform:translate3d(-110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translateZ(0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translateZ(0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-name:Toastify__slideOutLeft}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-name:Toastify__slideOutRight}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.riquixa-icon{fill:currentColor;display:inline-block;height:1em;transition:all .2s ease;vertical-align:-.125em;width:1em}.header-brand .riquixa-icon:hover,.logo .riquixa-icon:hover{transform:scale(1.1) rotate(5deg)}.header-brand .riquixa-icon{font-size:1.8rem;margin-right:.5rem}.nav-btn .riquixa-icon{font-size:1.2rem}.logo .riquixa-icon{font-size:2.5rem;margin-bottom:.5rem}h1 .riquixa-icon{margin-right:.5rem;vertical-align:middle}.rides-history-modal .modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow:hidden;width:95%}.rides-history-modal .modal-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e0e0e0;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.rides-history-modal .modal-header h2{font-size:24px;font-weight:600;margin:0}.rides-history-modal .close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:32px;height:40px;justify-content:center;line-height:1;padding:0;transition:background .2s;width:40px}.rides-history-modal .close-btn:hover{background:#ffffff4d}.modal-filters{align-items:center;background:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;gap:16px;justify-content:space-between;padding:16px 24px}.filter-group{align-items:center;gap:12px}.filter-group label{color:#495057;font-size:14px;font-weight:500}.status-filter{background:#fff;border:1px solid #ced4da;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .2s}.status-filter:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.rides-count{color:#6c757d;font-size:14px;font-weight:500}.modal-body{padding:24px}.loading-container{color:#6c757d;padding:60px 20px}.spinner{border:4px solid #f3f3f3;border-top-color:#667eea;height:48px;margin-bottom:16px;width:48px}.empty-state{color:#6c757d;padding:60px 20px}.empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.empty-state p{font-size:16px;margin:0 0 16px}.clear-filter-btn{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background .2s}.clear-filter-btn:hover{background:#5568d3}.rides-list{grid-gap:16px;display:grid;gap:16px}.ride-card{border:1px solid #e0e0e0;cursor:pointer;padding:16px;transition:all .2s}.ride-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.ride-header{margin-bottom:12px}.ride-type{align-items:center;color:#495057;display:flex;font-weight:500;gap:8px}.type-icon{font-size:20px}.type-text{font-size:14px}.status-badge{border-radius:12px;font-size:12px;padding:4px 12px}.status-ongoing{background:#cce5ff;color:#004085}.status-completed{background:#d4edda;color:#155724}.status-cancelled{color:#721c24}.status-unknown{background:#e2e3e5;color:#383d41}.ride-locations{margin:12px 0}.location-row{align-items:flex-start;display:flex;gap:8px;margin:6px 0}.location-icon{flex-shrink:0;font-size:16px;margin-top:2px}.location-text{color:#495057;font-size:14px;line-height:1.5}.location-arrow{color:#adb5bd;font-size:16px;margin:2px 0;padding-left:24px}.ride-footer{align-items:center;border-top:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-top:12px;padding-top:12px}.ride-date{color:#6c757d;font-size:12px}.manual-badge{background:#e7f3ff;border-radius:4px;color:#06c;font-size:11px;font-weight:500;padding:2px 8px}.ride-details{flex-direction:column;height:100%}.details-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e0e0e0;color:#fff;display:flex;gap:16px;padding:20px 24px}.back-btn{background:#fff3;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background .2s}.back-btn:hover{background:#ffffff4d}.details-header h3{font-size:20px;font-weight:600;margin:0}.details-content{flex:1 1;overflow-y:auto;padding:24px}.details-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:24px;padding:16px}.details-section h4{border-bottom:2px solid #667eea;color:#343a40;font-size:16px;font-weight:600;margin:0 0 16px;padding-bottom:8px}.info-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-item{display:flex;flex-direction:column;gap:4px}.info-item label{color:#6c757d;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.info-item div,.info-item p{color:#495057;font-size:14px;margin:0}.route-info{display:flex;flex-direction:column;gap:8px}.route-point{align-items:flex-start;display:flex;gap:12px}.route-icon{flex-shrink:0;font-size:20px;margin-top:4px}.route-point label{color:#6c757d;display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.route-point p{color:#495057;font-size:14px;line-height:1.5;margin:0}.route-divider{color:#adb5bd;font-size:20px;margin:4px 0;padding-left:32px;text-align:center}.timeline{display:flex;flex-direction:column;gap:12px}.timeline-item{align-items:flex-start;gap:12px}.timeline-icon{flex-shrink:0;font-size:20px}.timeline-item label{color:#6c757d;display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.timeline-item p{color:#495057;font-size:14px;margin:0}.cancelled-by{color:#6c757d;font-size:12px;font-style:italic;margin-top:4px}.evaluations-section{background:#f8f9fa}.evaluation-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:16px;padding:16px}.evaluation-card:last-child{margin-bottom:0}.evaluation-header{align-items:center;display:flex;gap:8px;margin-bottom:12px}.evaluation-icon{font-size:20px}.evaluation-header h5{color:#495057;font-size:14px;font-weight:600;margin:0}.stars-rating{display:flex;gap:4px;margin-bottom:12px}.star{color:#ddd;font-size:20px}.star.filled{color:#ffc107}.evaluation-comment{background:#f8f9fa;border-left:3px solid #667eea;border-radius:4px;padding:12px}.evaluation-comment p{color:#495057;font-size:14px;font-style:italic;line-height:1.6;margin:0 0 8px}.evaluation-date{color:#6c757d;display:block;font-size:12px}.user-evaluation{border-left:3px solid #667eea}.partner-evaluation{border-left:3px solid #28a745}.no-evaluation{background:#fff;border:1px dashed #dee2e6;color:#6c757d;font-style:italic;text-align:center}.no-evaluation p{font-size:14px;margin:0}.notes-box{background:#f8f9fa;border-left:3px solid #ffc107;border-radius:4px;padding:12px}.notes-box p{color:#495057;font-size:14px;line-height:1.6;margin:0}.manual-info{background:#e7f3ff;border-color:#06c}@media (max-width:768px){.rides-history-modal .modal-content{border-radius:0;max-height:100vh;width:100%}.filter-group,.modal-filters{align-items:stretch;flex-direction:column}.info-grid{grid-template-columns:1fr}.details-content{padding:16px}}.new-ride-modal .modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;overflow:hidden;width:95%}.new-ride-modal .modal-header{align-items:center;background:linear-gradient(135deg,#28a745,#20c997);border-bottom:1px solid #e0e0e0;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.new-ride-modal .modal-header h2{font-size:24px;font-weight:600;margin:0}.new-ride-modal .close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:32px;height:40px;justify-content:center;line-height:1;padding:0;transition:background .2s;width:40px}.new-ride-modal .close-btn:hover:not(:disabled){background:#ffffff4d}.new-ride-modal .close-btn:disabled{cursor:not-allowed;opacity:.5}.new-ride-modal .modal-body{flex:1 1;overflow-y:auto;padding:24px}.form-section{border-bottom:1px solid #e0e0e0;margin-bottom:24px;padding-bottom:24px}.form-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section h3{align-items:center;color:#343a40;display:flex;font-size:16px;font-weight:600;gap:8px;margin:0 0 16px}.form-section h3:before{background:linear-gradient(180deg,#28a745,#20c997);border-radius:2px;content:"";height:20px;width:4px}.form-group{margin-bottom:16px}.form-group:last-child{margin-bottom:0}.form-group label{color:#495057;font-size:14px;margin-bottom:8px}.required{color:#dc3545;margin-left:4px}.form-group input[type=datetime-local],.form-group input[type=tel],.form-group input[type=text],.form-group textarea{background:#fff;border:1px solid #ced4da;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#28a745;box-shadow:0 0 0 3px #28a7451a;outline:none}.form-group input:disabled,.form-group textarea:disabled{background:#f8f9fa;cursor:not-allowed;opacity:.7}.form-group input.invalid,.form-group textarea.invalid{border-color:#dc3545}.form-group input.invalid:focus,.form-group textarea.invalid:focus{box-shadow:0 0 0 3px #dc35451a}.form-group textarea{min-height:60px}.field-error{color:#dc3545;display:block;font-weight:500}.char-count,.field-error{font-size:12px;margin-top:4px}.char-count{color:#6c757d}.form-row{grid-gap:16px;gap:16px;grid-template-columns:1fr 1fr}.travel-type-options{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.travel-option{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:16px;position:relative;transition:all .2s}.travel-option input[type=radio]{height:0;opacity:0;position:absolute;width:0}.travel-option:hover{background:#28a7450d;border-color:#28a745}.travel-option.active{background:#28a7451a;border-color:#28a745;box-shadow:0 4px 12px #28a74526}.option-icon{font-size:32px}.option-text{color:#495057;font-size:14px;font-weight:600;text-align:center}.travel-option.active .option-text{color:#28a745}.route-arrow{color:#adb5bd;font-size:24px;margin:8px 0;text-align:center}.schedule-toggle{margin-bottom:16px}.checkbox-label{color:#495057;font-size:14px;gap:8px;-webkit-user-select:none;user-select:none}.checkbox-label input[type=checkbox]{accent-color:#28a745;height:18px;width:18px}.checkbox-label input[type=checkbox]:disabled{cursor:not-allowed}.form-actions{border-top:1px solid #e0e0e0;gap:12px;margin-top:24px;padding-top:24px}.btn-cancel,.btn-submit{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 24px;transition:all .2s}.btn-cancel{background:#e9ecef;color:#495057}.btn-cancel:hover:not(:disabled){background:#dee2e6}.btn-submit{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.btn-submit:hover:not(:disabled){box-shadow:0 4px 12px #28a7454d;transform:translateY(-1px)}.btn-cancel:disabled,.btn-submit:disabled{cursor:not-allowed;opacity:.6}.spinner-small{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}@media (max-width:768px){.new-ride-modal .modal-content{border-radius:0;max-height:100vh;width:100%}.form-row,.travel-type-options{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.btn-cancel,.btn-submit{justify-content:center;width:100%}}.chat-area,.chat-area-empty{background-color:#f0f2f5}.chat-area-empty{align-items:center;display:flex;height:100%;justify-content:center}.empty-state{color:#8696a0}.empty-state i{color:#d1d7db}.empty-state h3{color:#41525d}.empty-state p{font-size:.9rem}.chat-header{background-color:#fff;border-bottom:1px solid #e9edef;box-shadow:0 1px 2px #0000000d}.chat-header-info h2{color:#111b21;font-size:1.1rem;font-weight:600;margin:0}.chat-header-info .phone-number{color:#667781;font-size:.85rem}.chat-header-actions,.rides-btn{align-items:center;display:flex;gap:.5rem}.rides-btn{background-color:#fff;border:1px solid #d1d7db;border-radius:20px;color:#111b21;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.rides-btn:hover{background-color:#f5f6f6;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.rides-btn i{font-size:1rem}.history-btn{border-color:#667eea;color:#667eea}.history-btn:hover{background-color:#f0f2ff;border-color:#5568d3}.new-ride-btn{border-color:#28a745;color:#28a745}.new-ride-btn:hover{background-color:#e7f8ee;border-color:#20c997}.bot-toggle-btn{background-color:#fff;border:1px solid #d1d7db;border-radius:20px;font-size:.9rem;padding:.5rem 1rem;transition:all .2s ease}.bot-toggle-btn:hover{background-color:#f5f6f6;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.bot-toggle-btn.active{background-color:#e7f8ee;border-color:#25d366}.bot-toggle-btn.inactive{background-color:#fdecea;border-color:#e74c3c}.bot-toggle-btn i{font-size:1rem}.text-success{color:#25d366!important}.text-muted{color:#8696a0!important}.messages-container{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PHBhdHRlcm4gaWQ9ImEiIHBhdHRlcm5Vbml0cz0idXNlclNwYWNlT25Vc2UiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCI+PHBhdGggZD0iTTAgMGg0MHY0MEgweiIgZmlsbD0iI2YwZjJmNSIvPjxwYXRoIGQ9Ik0xOCAyMGEyIDIgMCAxIDAgNCAwIDIgMiAwIDEgMC00IDB6IiBmaWxsPSIjZDFkN2RiIiBmaWxsLW9wYWNpdHk9Ii4zIi8+PC9wYXR0ZXJuPjwvZGVmcz48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2EpIi8+PC9zdmc+);display:flex;flex-direction:column;gap:.5rem}.loading-messages{align-items:center;color:#8696a0;display:flex;flex-direction:column;height:100%;justify-content:center}.loading-messages i{font-size:2rem;margin-bottom:1rem}.loading-older{align-items:center;color:#8696a0;display:flex;font-size:.9rem;gap:.5rem;justify-content:center;padding:1rem}.loading-older i{animation:spin 1s linear infinite}.unread-separator{gap:1rem;margin:1rem 0}.unread-line{background:linear-gradient(90deg,#0000,#06cf9c,#0000);flex:1 1;height:1px}.unread-badge{align-items:center;animation:pulse 2s ease-in-out infinite;background-color:#06cf9c;border-radius:20px;box-shadow:0 2px 4px #06cf9c4d;display:flex;gap:.5rem;letter-spacing:.5px;padding:.4rem 1rem;text-transform:uppercase}.unread-badge i{animation:bounce 1s ease-in-out infinite;font-size:.8rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(2px)}}.message{animation:fadeIn .3s ease;margin-bottom:.25rem;max-width:65%}.message.sent{align-self:flex-end;margin-left:auto}.message.received{align-self:flex-start}.message-content{border-radius:8px;box-shadow:0 1px 2px #0000001a;padding:.5rem .75rem}.message.sent .message-content{background-color:#d9fdd3;border-bottom-right-radius:2px}.message.received .message-content{background-color:#fff;border-bottom-left-radius:2px}.message-content p{color:#111b21;line-height:1.4;white-space:pre-wrap}.message-time{color:#667781;margin-top:.25rem;text-align:right}.bot-message .message-content{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #5a67d8;color:#fff}.bot-message .message-content p{color:#fff}.bot-message .message-time{color:#fffc}.bot-badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fff3;border-radius:10px;display:inline-flex;font-size:.7rem;font-weight:600;gap:.3rem;margin-bottom:.3rem;padding:.2rem .5rem}.bot-badge i{font-size:.8rem}.message-input-form{background-color:#f0f2f5;border-top:1px solid #e9edef;display:flex;gap:.5rem;padding:1rem}.message-input{background-color:#fff;border:1px solid #d1d7db;border-radius:25px;font-size:.95rem;padding:.75rem 1rem;transition:border-color .2s ease}.message-input:focus{border-color:#25d366;box-shadow:0 0 0 3px #25d3661a}.message-input:disabled{background-color:#f5f6f6;cursor:not-allowed;opacity:.6}.send-button{align-items:center;background-color:#25d366;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;height:50px;justify-content:center;transition:all .2s ease;width:50px}.send-button:hover:not(:disabled){background-color:#20ba5a;box-shadow:0 4px 8px #25d3664d;transform:scale(1.05)}.send-button:active:not(:disabled){transform:scale(.95)}.send-button:disabled{background-color:#d1d7db;cursor:not-allowed;opacity:.5}.messages-container::-webkit-scrollbar-track{background:#0000}.messages-container::-webkit-scrollbar-thumb{background-color:#0003}.messages-container::-webkit-scrollbar-thumb:hover{background-color:#0000004d}@media (max-width:768px){.chat-area{border-radius:0;bottom:0;height:100vh;left:0;max-height:100vh;max-width:100vw;position:fixed;right:0;top:0;width:100vw;z-index:1000}.chat-header{flex-shrink:0;padding:.75rem 1rem;position:-webkit-sticky;position:sticky;top:0;z-index:1001}.chat-header-info h2{font-size:1rem}.chat-header-actions{gap:.25rem}.bot-toggle-btn,.rides-btn{font-size:.85rem;padding:.4rem .8rem}.bot-toggle-btn span,.rides-btn span{display:none}.bot-toggle-btn,.rides-btn{border-radius:50%;height:36px;justify-content:center;padding:0;width:36px}.messages-container{flex:1 1;max-height:calc(100vh - 140px);min-height:0;overflow-y:auto;padding:.75rem .75rem calc(80px + env(safe-area-inset-bottom))}.message{max-width:85%}.message-content{padding:.4rem .6rem}.message-content p{font-size:.9rem}.message-input-form{background-color:#f0f2f5;border-top:1px solid #e9edef;bottom:0;box-shadow:0 -2px 8px #0000000d;display:flex;gap:.5rem;left:0;padding:.75rem .75rem calc(.75rem + env(safe-area-inset-bottom));position:fixed;right:0;width:100vw;z-index:1002}.message-input{border-radius:25px;flex:1 1;font-size:.95rem;padding:.75rem 1rem}.send-button{flex-shrink:0;height:45px;width:45px}}.audio-message-container .message-content{background:#0000;border:none;box-shadow:none;padding:0}.audio-message{background:linear-gradient(135deg,#e3f2fd,#f8f9fa);border:1px solid #e0e0e0;border-radius:12px;max-width:350px;min-width:280px;padding:16px}.message.received .audio-message{background:linear-gradient(135deg,#fff,#f5f5f5);border-color:#e9ecef}.message.sent .audio-message{background:linear-gradient(135deg,#dcf8c6,#e8f5e8);border-color:#c8e6c9}.audio-header{align-items:center;color:#555;display:flex;font-weight:500;gap:8px;margin-bottom:12px}.audio-header i{color:#2196f3;font-size:1.1rem}.audio-size{color:#666;font-size:.8rem;font-weight:400}.audio-controls{display:flex;gap:10px;margin-bottom:10px}.btn-audio-download,.btn-audio-play{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:6px;justify-content:center;min-width:90px;padding:8px 12px;transition:all .2s ease}.btn-audio-play{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.btn-audio-play:hover:not(:disabled){background:linear-gradient(135deg,#45a049,#3d8b40);box-shadow:0 3px 8px #4caf504d;transform:translateY(-1px)}.btn-audio-download{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff}.btn-audio-download:hover:not(:disabled){background:linear-gradient(135deg,#1976d2,#1565c0);box-shadow:0 3px 8px #2196f34d;transform:translateY(-1px)}.btn-audio-download:disabled,.btn-audio-play:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.audio-error{align-items:center;background:#ffebee;border-left:3px solid #d32f2f;border-radius:4px;color:#d32f2f;display:flex;font-size:.8rem;gap:6px;margin-top:8px;padding:6px 8px}.audio-info{border-top:1px solid #0000001a;margin-top:10px;padding-top:8px}.audio-info small{color:#666;font-size:.75rem;line-height:1.3}@media (max-width:768px){.audio-message{max-width:280px;min-width:250px;padding:12px}.audio-controls{flex-direction:column;gap:8px}.btn-audio-download,.btn-audio-play{min-width:auto;width:100%}}@media (max-width:480px){.audio-message{max-width:240px;min-width:200px;padding:10px}.audio-header{font-size:.9rem}.btn-audio-download,.btn-audio-play{font-size:.8rem;padding:6px 10px}}.notification-settings-modal{max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.settings-section{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.setting-item{align-items:center;background:#f8f9fa;border-radius:12px;display:flex;justify-content:space-between;padding:1.25rem;transition:all .2s ease}.setting-item:hover{background:#e9ecef;transform:translateX(4px)}.setting-info{flex:1 1;gap:1rem}.setting-icon,.setting-info{align-items:center;display:flex}.setting-icon{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;color:#007bff;font-size:1.5rem;height:48px;justify-content:center;width:48px}.setting-text{flex:1 1}.setting-text h3{color:#2c3e50;font-size:1rem;font-weight:600;margin:0 0 .25rem}.setting-text p{color:#6c757d;font-size:.875rem;margin:0}.toggle-switch{cursor:pointer;height:30px}.toggle-slider{border-radius:30px}.toggle-slider:before{box-shadow:0 2px 4px #0003;height:22px;width:22px}.toggle-switch input:checked+.toggle-slider{background-color:#28a745}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(26px)}.toggle-switch:hover .toggle-slider{box-shadow:0 0 0 4px #28a7451a}.settings-footer{border-top:1px solid #dee2e6;display:flex;justify-content:center;padding-top:1rem}.test-notification-btn{align-items:center;background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:8px;box-shadow:0 4px 12px #007bff4d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.test-notification-btn:hover{box-shadow:0 6px 16px #007bff66;transform:translateY(-2px)}.test-notification-btn:active{transform:translateY(0)}.test-notification-btn i{font-size:1.1rem}@media (max-width:600px){.notification-settings-modal{max-width:none;width:95%}.setting-item{padding:1rem}.setting-icon{font-size:1.25rem;height:40px;width:40px}.setting-text h3{font-size:.9rem}.setting-text p{font-size:.8rem}.toggle-switch{height:26px;width:48px}.toggle-slider:before{height:18px;width:18px}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(22px)}}.modal-overlay{animation:fadeInOverlay .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000a6;height:100%;padding:20px;width:100%}@keyframes fadeInOverlay{0%{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0);opacity:0}to{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:1}}.ride-chat-modal{animation:modalSlideIn .4s cubic-bezier(.34,1.56,.64,1) forwards;background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000026,0 10px 20px #0000001a,0 0 0 1px #ffffff1a;display:flex;flex-direction:column;max-height:85vh;max-width:520px;overflow:hidden;transform:scale(.9);width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.ride-chat-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;overflow:hidden;padding:24px 20px;position:relative}.ride-chat-header:before{background:linear-gradient(135deg,#ffffff1a,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.ride-chat-info{flex:1 1;z-index:2}.ride-chat-info h3{font-size:1.3rem;font-weight:600;margin:0 0 8px;text-shadow:0 1px 2px #0000001a}.ride-details{display:flex;flex-wrap:wrap;font-size:.85rem;gap:16px;opacity:.9}.ride-details span{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:12px;display:flex;gap:4px;padding:4px 8px}.ride-details i{font-size:.8rem}.modal-close{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;color:#fff;z-index:2}.modal-close:hover{background:#ffffff4d;transform:scale(1.1)}.modal-close i{font-size:1.1rem}.ride-summary{background:linear-gradient(135deg,#f8f9fd,#f1f3f9);border-bottom:1px solid #0000000d;padding:20px;position:relative}.ride-summary:before{background:linear-gradient(90deg,#0000,#677eea4d,#0000);content:"";height:1px;left:0;position:absolute;right:0;top:0}.ride-route{gap:12px;margin-bottom:16px}.ride-route,.route-item{align-items:center;display:flex}.route-item{background:#fff;border:1px solid #0000000d;border-radius:12px;box-shadow:0 2px 8px #0000000f;gap:8px;padding:10px 14px;transition:all .2s ease}.route-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.route-item i{font-size:1rem}.route-item.origin i{color:#4caf50}.route-item.destination i{color:#f44336}.route-text{color:#2c3e50;font-size:.9rem;font-weight:500;line-height:1.3}.route-arrow{color:#667eea;font-size:1.2rem;margin:0 4px}.ride-status{align-items:center;border-radius:20px;display:inline-flex;font-size:.8rem;gap:6px;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.ride-status.pending{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:1px solid #ffeaa7;color:#856404}.ride-status.accepted{background:linear-gradient(135deg,#d4edda,#a8e6a1);border:1px solid #a8e6a1;color:#155724}.ride-status.in-progress{background:linear-gradient(135deg,#cce7ff,#a3d5ff);border:1px solid #a3d5ff;color:#004085}.ride-status.completed{background:linear-gradient(135deg,#d1ecf1,#b8daff);border:1px solid #b8daff;color:#0c5460}.ride-status.cancelled{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:1px solid #f5c6cb;color:#721c24}.ride-messages-container{background:linear-gradient(135deg,#fafbff,#f8f9fd);flex:1 1;overflow-y:auto;padding:20px;position:relative}.ride-messages-container:before{background-image:radial-gradient(circle at 25% 25%,#677eea05 0,#0000 50%),radial-gradient(circle at 75% 75%,#764ba205 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.empty-messages{align-items:center;color:#8e9aaf;display:flex;flex-direction:column;gap:12px;height:100%;justify-content:center;position:relative;text-align:center;z-index:1}.empty-messages i{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:3.5rem;margin-bottom:12px;opacity:.6}.empty-messages p{font-size:1.1rem;font-weight:500;margin:0}.empty-messages small{color:#a0a8b8;font-size:.9rem;opacity:.8}.ride-message{animation:fadeInMessage .4s cubic-bezier(.34,1.56,.64,1);display:flex;margin:12px 0;position:relative;z-index:1}.ride-message.sent{justify-content:flex-end}.ride-message.received{justify-content:flex-start}.message-content{word-wrap:break-word;border-radius:20px;box-shadow:0 2px 8px #00000014;max-width:75%;padding:14px 18px;position:relative;transition:all .2s ease}.message-content:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-1px)}.ride-message.sent .message-content{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom-right-radius:8px;color:#fff}.ride-message.received .message-content{background:#fff;border:1px solid #00000014;border-bottom-left-radius:8px;color:#2c3e50}.ride-message.parceiro-message .message-content{background:linear-gradient(135deg,#4caf50,#45a049);border-bottom-right-radius:8px;color:#fff}.ride-message.bot-message .message-content{background:linear-gradient(135deg,#ff9800,#f57c00);border-bottom-left-radius:8px;color:#fff}.bot-badge,.parceiro-badge{align-items:center;display:flex;font-size:.75rem;font-weight:600;gap:6px;letter-spacing:.5px;margin-bottom:6px;opacity:.9;text-transform:uppercase}.bot-badge i,.parceiro-badge i{font-size:.8rem}.message-content p{font-size:.95rem;line-height:1.5;margin:0}.message-time{display:block;font-size:.7rem;margin-top:6px;opacity:.7}@keyframes fadeInMessage{0%{opacity:0;transform:translateY(15px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.ride-message-form{background:#fff;border-top:1px solid #0000000d;padding:20px;position:relative}.ride-message-form:before{background:linear-gradient(90deg,#0000,#677eea33,#0000);content:"";height:1px;left:0;position:absolute;right:0;top:0}.message-input-container{align-items:center;gap:12px}.ride-message-input{background:#fafbff;border:2px solid #e8ecf3;border-radius:25px;flex:1 1;font-size:.95rem;outline:none;padding:14px 18px;transition:all .3s ease}.ride-message-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.ride-message-input:disabled{background-color:#f8f9fa;cursor:not-allowed;opacity:.6}.ride-send-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;height:50px;justify-content:center;transition:all .3s ease;width:50px}.ride-send-button:hover:not(:disabled){box-shadow:0 6px 16px #667eea66;transform:scale(1.05) translateY(-1px)}.ride-send-button:active{transform:scale(.95)}.ride-send-button:disabled{background:linear-gradient(135deg,#bbb,#999);box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.ride-messages-container::-webkit-scrollbar{width:8px}.ride-messages-container::-webkit-scrollbar-track{background:#0000000d;border-radius:4px}.ride-messages-container::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px;-webkit-transition:all .2s ease;transition:all .2s ease}.ride-messages-container::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190)}@media (max-width:768px){.modal-overlay{padding:10px}.ride-chat-modal{border-radius:16px;height:90vh;max-height:none;width:95%}.ride-chat-header{padding:16px}.ride-chat-info h3{font-size:1.2rem}.ride-details{font-size:.8rem;gap:8px}.ride-summary{padding:16px}.ride-route{flex-direction:column;gap:8px}.route-item{justify-content:flex-start;width:100%}.route-arrow{margin:4px 0;transform:rotate(90deg)}.ride-message-form,.ride-messages-container{padding:16px}.message-content{max-width:85%;padding:12px 16px}.route-text{font-size:.85rem}}@media (max-width:480px){.ride-chat-modal{border-radius:0;height:100vh;width:100%}.modal-overlay{padding:0}.ride-chat-header{padding:14px 16px}.ride-chat-info h3{font-size:1.1rem}.ride-details{font-size:.75rem}.ride-details span{padding:3px 6px}.message-content{max-width:90%;padding:10px 14px}.message-content p{font-size:.9rem}.ride-send-button{height:46px;width:46px}.ride-message-input{font-size:.9rem;padding:12px 16px}}.ride-message.audio-message-container .message-content{background:#0000!important;border:none!important;box-shadow:none!important}.ride-message .audio-message{background:#fff;border:2px solid #e8ecf3;border-radius:16px;box-shadow:0 4px 12px #0000001a;transition:all .2s ease}.ride-message .audio-message:hover{box-shadow:0 6px 20px #00000026;transform:translateY(-2px)}.ride-message.sent .audio-message{background:linear-gradient(135deg,#f8f9ff,#f0f2ff);border-color:#667eea}.ride-message.received .audio-message{background:#fff;border-color:#e8ecf3}.ride-message.parceiro-message .audio-message{background:linear-gradient(135deg,#f1f8e9,#e8f5e8)}.ride-message.audio-message-container .message-content{background:#0000;border:none;box-shadow:none;padding:0}.ride-message .audio-message{background:linear-gradient(135deg,#e3f2fd,#f8f9fa);border:1px solid #e0e0e0;border-radius:12px;max-width:350px;min-width:280px;padding:16px}.ride-message.received .audio-message{background:linear-gradient(135deg,#fff,#f5f5f5);border-color:#e9ecef}.ride-message.sent .audio-message{background:linear-gradient(135deg,#dcf8c6,#e8f5e8);border-color:#c8e6c9}.ride-message.parceiro-message .audio-message{background:linear-gradient(135deg,#e8f5e8,#dcf8c6);border-color:#4caf50}.ride-message .audio-header{align-items:center;color:#555;display:flex;font-weight:500;gap:8px;margin-bottom:12px}.ride-message .audio-header i{color:#2196f3;font-size:1.1rem}.ride-message .audio-size{color:#666;font-size:.8rem;font-weight:400}.ride-message .audio-controls{display:flex;gap:10px;margin-bottom:10px}.ride-message .btn-audio-download,.ride-message .btn-audio-play{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:6px;justify-content:center;min-width:90px;padding:8px 12px;transition:all .2s ease}.ride-message .btn-audio-play{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.ride-message .btn-audio-play:hover:not(:disabled){background:linear-gradient(135deg,#45a049,#3d8b40);box-shadow:0 3px 8px #4caf504d;transform:translateY(-1px)}.ride-message .btn-audio-download{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff}.ride-message .btn-audio-download:hover:not(:disabled){background:linear-gradient(135deg,#1976d2,#1565c0);box-shadow:0 3px 8px #2196f34d;transform:translateY(-1px)}.ride-message .btn-audio-download:disabled,.ride-message .btn-audio-play:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.ride-message .audio-error{align-items:center;background:#ffebee;border-left:3px solid #d32f2f;border-radius:4px;color:#d32f2f;display:flex;font-size:.8rem;gap:6px;margin-top:8px;padding:6px 8px}.ride-message .audio-info{border-top:1px solid #0000001a;margin-top:10px;padding-top:8px}.ride-message .audio-info small{color:#666;font-size:.75rem;line-height:1.3}@media (max-width:768px){.ride-message .audio-message{max-width:280px;min-width:250px;padding:12px}.ride-message .audio-controls{flex-direction:column;gap:8px}.ride-message .btn-audio-download,.ride-message .btn-audio-play{min-width:auto;width:100%}}@media (max-width:480px){.ride-message .audio-message{max-width:240px;min-width:200px;padding:10px}.ride-message .audio-header{font-size:.9rem}.ride-message .btn-audio-download,.ride-message .btn-audio-play{font-size:.8rem;padding:6px 10px}}.btn-chat{align-items:center;background:linear-gradient(135deg,#25d366,#20b358);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:6px;justify-content:center;min-width:100px;padding:8px 16px;text-decoration:none;transition:all .2s ease}.btn-chat:hover{background:linear-gradient(135deg,#20b358,#1aa049);box-shadow:0 4px 12px #25d3664d;transform:translateY(-1px)}.btn-chat:active{transform:translateY(0)}.ride-actions{align-items:center;flex-wrap:wrap;gap:10px;margin-top:15px}.ride-actions .btn{flex:1 1;min-width:120px}.ride-actions-row{display:flex;gap:.5rem;margin-top:.5rem}@media (max-width:768px){.ride-actions{flex-direction:column;gap:8px}.ride-actions .btn{min-width:auto;width:100%}}@media (max-width:480px){.btn-chat{font-size:.8rem;min-width:90px;padding:6px 12px}}.rides-tabs-header{border-bottom:2px solid #e0e0e0;display:flex;gap:0;margin-bottom:1.5rem}.tab-button{background:#0000;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:1rem 1.5rem;position:relative;transition:all .3s ease}.tab-button.active,.tab-button:hover{background:#4a90e20d;color:#4a90e2}.tab-button.active{border-bottom-color:#4a90e2}.tab-button.active:after{background:linear-gradient(90deg,#4a90e2,#357abd);bottom:-2px;box-shadow:0 2px 8px #4a90e24d;content:"";height:3px;left:0;position:absolute;right:0}.scheduled-badge{background:linear-gradient(135deg,#ff9800,#f57c00)!important;border-radius:6px;box-shadow:0 2px 8px #ff980033;font-weight:600;padding:.4rem .8rem}.ride-card.scheduled{background:linear-gradient(90deg,#ff980008,#fff);border-left:4px solid #ff9800}@media (max-width:768px){.rides-tabs-header{flex-direction:column}.tab-button{border-bottom:1px solid #e0e0e0;border-left:3px solid #0000}.tab-button.active{border-bottom-color:#e0e0e0;border-left-color:#4a90e2}.tab-button.active:after{bottom:0;height:100%;left:0;right:auto;top:0;width:3px}}.date-filter-tabs{background:#f8f9fa;border-radius:8px;display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem;padding:.5rem}.date-filter-btn{background:#fff;border:2px solid #e0e0e0;border-radius:6px;color:#666;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:600;max-width:140px;min-width:100px;padding:.6rem 1rem;transition:all .3s ease}.date-filter-btn:hover{background:#4a90e20d;border-color:#4a90e2;color:#4a90e2;transform:translateY(-2px)}.date-filter-btn.active{background:linear-gradient(135deg,#4a90e2,#357abd);border-color:#4a90e2;box-shadow:0 4px 12px #4a90e24d;color:#fff}.ride-scheduled-info{background:linear-gradient(135deg,#ff98001a,#f57c000d);border-left:4px solid #ff9800;border-radius:6px;font-size:.95rem;margin-bottom:1rem;padding:.8rem}.ride-scheduled-info strong{color:#f57c00}.scheduled-date{color:#ff9800;font-weight:600}.scheduled-time{color:#f57c00;font-weight:600}@media (max-width:768px){.date-filter-tabs{flex-direction:column;gap:.3rem}.date-filter-btn{max-width:100%}}.final-users-management{background:linear-gradient(135deg,#667eea,#764ba2);height:90vh;min-height:100vh;overflow-y:auto;padding:2rem}.page-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 16px #0000001a;display:flex;justify-content:space-between;margin-bottom:2rem;padding:2rem}.header-content h1{font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.header-content p{color:#7f8c8d;font-size:1.1rem;margin:0}.statistics-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 16px #0000001a;display:flex;gap:1rem;padding:1.5rem;transition:transform .3s ease}.stat-card:hover{transform:translateY(-2px)}.stat-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;font-size:2.5rem;height:60px;justify-content:center;width:60px}.stat-content h3{color:#2c3e50;font-size:2rem;font-weight:700;margin:0 0 .25rem}.stat-content p{color:#7f8c8d;font-size:.9rem;margin:0}.filters-section{background:#fff;border-radius:12px;box-shadow:0 4px 16px #0000001a;margin-bottom:2rem}.filters-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:2rem}.filter-group{min-width:200px}.filter-group label{color:#2c3e50}.search-input,.status-filter{border:2px solid #ecf0f1;border-radius:8px;font-size:1rem;padding:.75rem;transition:border-color .3s ease}.search-input:focus,.status-filter:focus{border-color:#667eea;outline:none}.users-section{background:#fff;border-radius:12px;box-shadow:0 4px 16px #0000001a;overflow:hidden}.section-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #ecf0f1;display:flex;justify-content:space-between;padding:1.5rem 2rem}.section-header h2{color:#2c3e50;font-size:1.5rem;margin:0}.total-count{color:#7f8c8d;font-weight:500}.users-table-container{overflow-x:auto}.users-table{border-collapse:collapse;width:100%}.users-table th{background:#f8f9fa;border-bottom:2px solid #ecf0f1;color:#2c3e50;font-weight:600;padding:1rem;position:-webkit-sticky;position:sticky;text-align:left;top:0;z-index:10}.users-table td{border-bottom:1px solid #ecf0f1;padding:1rem;vertical-align:top}.users-table tr:hover{background:#f8f9fa}.user-info{gap:.75rem}.user-avatar{font-size:1.1rem;font-weight:700;height:40px;width:40px}.user-details strong{color:#2c3e50;display:block;margin-bottom:.25rem}.user-details small{color:#7f8c8d;font-size:.85rem}.contact-info div{color:#2c3e50;margin-bottom:.25rem}.contact-info small{color:#7f8c8d;font-size:.8rem;line-height:1.3}.preferences{color:#2c3e50}.preferences div{margin-bottom:.25rem}.accessibility{color:#e67e22!important;font-weight:500}.activity-stats div{color:#2c3e50;margin-bottom:.25rem}.activity-stats small{color:#7f8c8d;font-size:.8rem}.dates div{color:#2c3e50;margin-bottom:.25rem}.dates small{color:#7f8c8d;font-size:.8rem;text-transform:capitalize}.status-badge{font-size:.8rem;padding:.25rem .75rem}.status-badge.active{background:#d4edda;color:#155724}.status-badge.inactive{background:#f8d7da;color:#721c24}.status-badge.blocked{background:#fff3cd;color:#856404}.status-badge.clickable{cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.status-badge.clickable:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.status-badge.active.clickable:hover{background:#c3e6cb}.status-badge.inactive.clickable:hover{background:#f5c6cb}.block-reason{color:#856404;display:block;font-size:.75rem;font-style:italic;margin-top:.25rem}.btn-action{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.9rem;height:32px;justify-content:center;transition:all .3s ease;width:32px}.btn-action.edit{background:#3498db;color:#fff}.btn-action.edit:hover{background:#2980b9;transform:scale(1.1)}.btn-action.block{background:#f39c12;color:#fff}.btn-action.block:hover{background:#e67e22;transform:scale(1.1)}.btn-action.unblock{background:#27ae60;color:#fff}.btn-action.unblock:hover{background:#229954;transform:scale(1.1)}.btn-action.delete{background:#e74c3c;color:#fff}.btn-action.delete:hover{background:#c0392b;transform:scale(1.1)}.pagination{border-top:1px solid #ecf0f1;gap:1rem;justify-content:center}.page-info{color:#7f8c8d;font-weight:500}.loading-container{color:#7f8c8d;padding:3rem}.spinner{animation:spin 1s linear infinite;border:4px solid #ecf0f1;border-left-color:#667eea;border-radius:50%;height:40px;margin-bottom:1rem;width:40px}.empty-state{color:#7f8c8d;padding:3rem}.empty-state h3{margin:0 0 .5rem}.access-denied{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh}.access-denied-content{border-radius:12px;box-shadow:0 8px 32px #0003}.access-denied-content i{color:#e74c3c;margin-bottom:1rem}.access-denied-content h2{color:#2c3e50;margin:0 0 .5rem}.access-denied-content p{color:#7f8c8d;margin:0}.modal-content{border-radius:12px;box-shadow:0 8px 32px #0000004d}.modal-header{border-bottom:1px solid #ecf0f1}.modal-header h2{color:#2c3e50}.modal-close{color:#7f8c8d;padding:.5rem;transition:all .3s ease}.modal-close:hover{background:#ecf0f1;color:#2c3e50}.create-user-form,.edit-user-form{flex:1 1;overflow-y:auto;padding:1.5rem 2rem}.form-sections{display:flex;flex-direction:column;gap:2rem}.form-section{background:#fafafa;border:1px solid #ecf0f1;border-radius:8px;padding:1.5rem}.form-section h3{border-bottom:1px solid #ecf0f1;color:#2c3e50;font-size:1.1rem;margin:0 0 1rem;padding-bottom:.5rem}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-group{gap:.5rem}.form-group.required label:after{color:#e74c3c;content:" *"}.form-group input,.form-group select,.form-group textarea{border:2px solid #ecf0f1;border-radius:6px;font-size:1rem;transition:border-color .3s ease}.form-group input.disabled-input{background:#f8f9fa;color:#6c757d;cursor:not-allowed}.form-group small{color:#7f8c8d;font-size:.8rem}.checkbox-container{align-items:center;border-radius:6px;cursor:pointer;display:flex;gap:.5rem;padding:.5rem;transition:background .3s ease}.checkbox-container:hover{background:#f8f9fa}.checkbox-container input[type=checkbox]{margin:0;width:auto}.checkmark{color:#2c3e50;font-size:.9rem}.modal-footer{border-top:1px solid #ecf0f1}.btn{display:inline-flex;text-decoration:none;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea66}.btn-secondary{background:#6c757d}.btn-secondary:hover:not(:disabled){background:#5a6268;transform:translateY(-2px)}@media (max-width:768px){.final-users-management{padding:1rem}.page-header{flex-direction:column;gap:1rem;text-align:center}.header-content h1{font-size:2rem}.statistics-grid{grid-template-columns:1fr}.filters-row{flex-direction:column;gap:1rem}.filter-group{min-width:auto}.users-table-container{font-size:.9rem}.users-table td,.users-table th{padding:.5rem}.action-buttons{flex-direction:column;gap:.25rem}.btn-action{font-size:.8rem;height:28px;width:28px}.modal-content{margin:.5rem;max-height:95vh}.create-user-form,.edit-user-form,.modal-footer,.modal-header{padding:1rem}.form-row{grid-template-columns:1fr}.modal-footer{flex-direction:column}}@media (max-width:480px){.header-content h1{font-size:1.5rem}.stat-card{padding:1rem}.stat-icon{font-size:2rem;height:50px;width:50px}.stat-content h3{font-size:1.5rem}.users-table{font-size:.8rem}.pagination{flex-direction:column;gap:.5rem}}.rides-management{background:#f5f7fa;max-height:90vh;min-height:100vh;overflow-y:auto;padding:2rem}.management-header{border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem}.header-content,.management-header{margin-bottom:1.5rem}.header-content h1{color:#2c3e50;font-size:1.8rem}.header-content h1 i{color:#3498db}.tabs{display:flex;margin-bottom:1rem}.tabs button{cursor:pointer;margin-right:.5rem;padding:.5rem 1rem}.tabs button.active{background-color:#007bff;color:#fff}.btn-refresh{background:#3498db;border-radius:8px;font-size:.95rem;font-weight:500;padding:.75rem 1.25rem;transition:all .3s ease}.btn-refresh:hover:not(:disabled){background:#2980b9;box-shadow:0 4px 12px #3498db4d;transform:translateY(-1px)}.btn-refresh:disabled{opacity:.6}.filters-section{background:#f8f9fa;border-radius:8px;margin-bottom:1rem;padding:1.5rem}.filters-row{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{color:#555;font-size:.9rem;font-weight:600}.filter-group input,.filter-group select{border:1px solid #ddd;border-radius:6px;font-size:.95rem;padding:.65rem;transition:all .2s ease}.filter-group input[type=date]{cursor:pointer;font-family:inherit}.filter-group input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(.5)}.filter-group input:focus,.filter-group select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.filter-actions{display:flex;gap:.5rem}.btn-clear,.btn-filter{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:.5rem;padding:.65rem 1.25rem;transition:all .2s ease}.btn-filter{background:#27ae60;color:#fff}.btn-filter:hover{background:#229954}.btn-clear{background:#95a5a6;color:#fff}.btn-clear:hover{background:#7f8c8d}.results-info{align-items:center;border-top:1px solid #e0e0e0;color:#666;display:flex;flex-wrap:wrap;font-size:.9rem;gap:.5rem;padding-top:1rem}.date-range-info{background:#3498db1a;border-radius:4px;color:#3498db;font-weight:500;padding:.25rem .75rem}.rides-table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:1.5rem;overflow:hidden}.rides-table{border-collapse:collapse;width:100%}.rides-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.rides-table thead th{font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase}.rides-table tbody tr{border-bottom:1px solid #f0f0f0;transition:background .2s ease}.rides-table tbody tr:hover{background:#f8f9fa}.rides-table tbody td{color:#333;font-size:.95rem;padding:1rem}.user-cell{display:flex;flex-direction:column;gap:.25rem}.user-cell strong{color:#2c3e50}.user-cell small{color:#7f8c8d;font-size:.85rem}.location-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.type-badge{background:#e8f4f8;color:#2980b9;font-weight:500;padding:.35rem .75rem}.status-badge,.type-badge{border-radius:20px;display:inline-block;font-size:.85rem}.status-badge{font-weight:600;letter-spacing:.5px;padding:.35rem .85rem}.status-pending{background:#fff3cd;color:#856404}.status-accepted{background:#d1ecf1;color:#0c5460}.status-ongoing{background:#cfe2ff;color:#084298}.status-completed{background:#d1e7dd;color:#0f5132}.status-cancelled{background:#f8d7da;color:#842029}.status-default{background:#e2e3e5;color:#383d41}.btn-details{align-items:center;background:#3498db;border-radius:6px;display:flex;justify-content:center;padding:.5rem .75rem;transition:all .2s ease}.btn-details:hover{background:#2980b9;transform:scale(1.05)}.btn-change-status{align-items:center;background:#9b59b6;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:.5rem .75rem;transition:all .2s ease}.btn-change-status:hover{background:#8e44ad;transform:scale(1.05)}.action-buttons{gap:.5rem}.action-buttons,.btn-unassign{align-items:center;display:flex;justify-content:center}.btn-unassign{background:#f39c12;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:.5rem .75rem;transition:all .2s ease}.btn-unassign:hover{background:#e67e22;transform:scale(1.05)}.btn-cancel-ride{align-items:center;background:#e74c3c;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:.5rem .75rem;transition:all .2s ease}.btn-cancel-ride:hover{background:#c0392b;transform:scale(1.05)}.confirm-modal{max-width:500px}.confirm-message{color:#555;font-size:1rem;line-height:1.6;margin-bottom:1.5rem}.form-group label{color:#2c3e50}.form-group textarea{border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:.95rem;padding:.75rem;resize:vertical;width:100%}.form-group textarea:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.cancel-reason-select{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:.95rem;padding:.75rem;width:100%}.cancel-reason-select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.warning-text{align-items:center;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;color:#856404;display:flex;font-size:.9rem;gap:.5rem;margin-top:1rem;padding:.75rem}.warning-text i{color:#ffc107}.btn-danger{background:#e74c3c;border-radius:8px;font-size:.95rem;font-weight:500;padding:.75rem 1.25rem}.btn-danger:hover:not(:disabled){background:#c0392b;box-shadow:0 4px 12px #e74c3c4d;transform:translateY(-1px)}.btn-danger:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{padding:.75rem 1.25rem}.btn-secondary:hover{box-shadow:0 4px 12px #95a5a64d;transform:translateY(-1px)}.pagination{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.pagination-btn{align-items:center;background:#3498db;border:none;color:#fff;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.25rem;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:#2980b9;transform:translateX(0)}.pagination-btn:hover:not(:disabled):first-child{transform:translateX(-3px)}.pagination-btn:hover:not(:disabled):last-child{transform:translateX(3px)}.pagination-btn:disabled{background:#bdc3c7;opacity:.5}.pagination-info{gap:.25rem}.page-numbers{color:#2c3e50}.items-count{color:#7f8c8d}.loading-container{border-radius:12px;box-shadow:0 2px 8px #0000001a;flex-direction:column;padding:4rem 2rem}.loading-container i{color:#3498db;font-size:3rem}.loading-container span{color:#7f8c8d;font-size:1.1rem}.empty-state{align-items:center;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;justify-content:center}.empty-state i{color:#bdc3c7;margin-bottom:1rem}.empty-state h3{color:#2c3e50;font-size:1.5rem}.empty-state p{color:#7f8c8d;font-size:1rem}.modal-content{box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;overflow:hidden}.modal-header{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:2px solid #f0f0f0;color:#fff;padding:1.5rem 2rem}.modal-header h2{font-size:1.5rem}.btn-close{align-items:center;background:#fff3;border-radius:50%;color:#fff;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.btn-close:hover{background:#ffffff4d;transform:rotate(90deg)}.modal-body{flex:1 1;overflow-y:auto;padding:2rem}.details-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.details-section{background:#f8f9fa;border-left:4px solid #3498db;border-radius:12px;padding:1.5rem}.details-section.full-width{grid-column:1/-1}.details-section h3{align-items:center;color:#2c3e50;display:flex;font-size:1.1rem;gap:.5rem;margin:0 0 1rem}.details-section h3 i{color:#3498db}.detail-item{align-items:start;border-bottom:1px solid #e0e0e0;justify-content:space-between;padding:.75rem 0}.detail-item:last-child{border-bottom:none}.detail-item .label{color:#555;flex-shrink:0;font-size:.95rem;font-weight:600;margin-right:1rem}.detail-item .value{color:#2c3e50;font-size:.95rem;text-align:right;word-break:break-word}.detail-item .value.mono{background:#fff;border-radius:4px;font-family:Courier New,monospace;font-size:.85rem;padding:.25rem .5rem}.detail-item .value.highlight{color:#27ae60;font-weight:600}.badge-yes{background:#d1e7dd;color:#0f5132}.badge-no,.badge-yes{border-radius:12px;font-size:.85rem;font-weight:600;padding:.25rem .75rem}.badge-no{background:#f8d7da;color:#842029}.times-grid{grid-gap:.5rem;display:grid;gap:.5rem}.notes-content{background:#fff;border-radius:8px;color:#2c3e50;line-height:1.6;padding:1rem;white-space:pre-wrap}.technical-info{background:#2c3e50;border-left-color:#e74c3c;color:#fff}.technical-info h3{color:#fff}.technical-info h3 i{color:#e74c3c}.technical-info .detail-item{border-bottom-color:#ffffff1a}.technical-info .detail-item .label{color:#bdc3c7}.technical-info .detail-item .value{color:#fff}.modal-footer{background:#f8f9fa;border-top:1px solid #f0f0f0;padding:1.5rem 2rem}.btn-secondary{align-items:center;background:#95a5a6;color:#fff;display:flex;font-size:.95rem;font-weight:500;gap:.5rem;transition:all .2s ease}.btn-secondary:hover{background:#7f8c8d}@media (max-width:1024px){.details-grid{grid-template-columns:1fr}.details-section.full-width{grid-column:1}}@media (max-width:768px){.rides-management{max-height:90vh;overflow-y:auto;padding:1rem}.filters-row{grid-template-columns:1fr}.filter-actions{flex-direction:column}.btn-clear,.btn-filter{justify-content:center;width:100%}.rides-table-container{overflow-x:auto}.rides-table{min-width:800px}.pagination{flex-direction:column;gap:1rem}.pagination-btn{justify-content:center;width:100%}.modal-content{margin:.5rem;max-height:95vh;max-width:100%}.details-section,.modal-body{padding:1rem}}@media (max-width:480px){.header-content{align-items:stretch;flex-direction:column;gap:1rem}.header-content h1{font-size:1.4rem}.btn-refresh{justify-content:center;width:100%}.detail-item{align-items:start;flex-direction:column;gap:.5rem}.detail-item .value{text-align:left}}.status-change-modal{max-width:600px;width:90%}.ride-info-summary{background:#f8f9fa;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.ride-info-summary h3{color:#495057;font-size:1rem;margin:0 0 .75rem}.info-row{display:flex;font-size:.9rem;gap:1rem;justify-content:space-between;margin-bottom:.5rem}.info-row:last-child{margin-bottom:0}.duration-input,.partner-select,.status-select{border:1px solid #ced4da;border-radius:6px;font-size:1rem;padding:.75rem;transition:border-color .3s ease;width:100%}.duration-input:focus,.partner-select:focus,.status-select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.help-text{color:#6c757d;display:block;font-size:.85rem;font-style:italic;margin-top:.5rem}.current-partner-info{align-items:center;background:#e8f5e9;border:1px solid #4caf50;border-radius:6px;color:#2e7d32;display:flex;gap:.75rem;padding:.75rem 1rem}.current-partner-info i{color:#4caf50;font-size:1.2rem}.current-partner-info strong{color:#1b5e20}.current-partner-info small{color:#558b2f;font-size:.8rem;font-style:italic;margin-left:auto}.checkbox-group{background:#f8f9fa;border-radius:6px;margin-top:1.5rem;padding:1rem}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:.75rem;margin-bottom:.5rem}.checkbox-label input[type=checkbox]{cursor:pointer;height:20px;width:20px}.checkbox-label span{color:#2c3e50}.warning-box{align-items:flex-start;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;gap:.75rem;margin-top:1rem;padding:1rem}.warning-box i{color:#f39c12;font-size:1.2rem;margin-top:.1rem}.warning-box p{color:#856404;font-size:.9rem;line-height:1.5;margin:0}.btn-primary{align-items:center;background:linear-gradient(135deg,#3498db,#2980b9);border-radius:8px;display:flex;font-size:1rem;font-weight:500;gap:.5rem}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2980b9,#21618c);box-shadow:0 4px 12px #3498db4d;transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{cursor:not-allowed;opacity:.5}html{box-sizing:border-box!important;height:100vh!important;margin:0!important;overflow:hidden!important;padding:0!important;width:100vw!important}#root,body{bottom:0!important;height:100vh!important;left:0!important;margin:0!important;overflow:hidden!important;padding:0!important;position:fixed!important;right:0!important;top:0!important;width:100vw!important}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%!important;margin:0!important;overflow:hidden!important;padding:0!important;width:100%!important}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#root{height:100%!important;width:100%!important}.app{bottom:0!important;display:flex!important;flex-direction:column!important;height:100vh!important;left:0!important;margin:0!important;overflow:hidden!important;padding:0!important;position:fixed!important;right:0!important;top:0!important;width:100vw!important}.app-header{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 4px #0000001a;color:#fff;flex-shrink:0;justify-content:space-between;padding:1rem 1.5rem;z-index:1000}.app-header,.header-left{align-items:center;display:flex}.header-left{gap:.5rem}.header-left h1,.header-left i{font-size:1.5rem}.header-left h1{font-weight:600}.header-right{gap:1rem}.header-right,.sse-status{align-items:center;display:flex}.sse-status{border-radius:20px;font-size:.875rem;font-weight:500;gap:.5rem;padding:.25rem .75rem}.sse-status.connected{background-color:#48bb7833;color:#68d391}.sse-status.connecting{background-color:#fbd38d33;color:#f6e05e}.sse-status.disconnected{background-color:#fc818133;color:#fc8181}.sse-status i.fa-spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.user-name{font-weight:500}.logout-btn{background:#ffffff1a;border:none;border-radius:50%;color:#fff;cursor:pointer;padding:.5rem;transition:background-color .2s}.logout-btn:hover{background:#fff3}.hamburger-btn{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;display:none;font-size:1.2rem;margin-right:1rem;padding:.5rem;transition:background-color .2s}.hamburger-btn:hover{background:#ffffff1a}.sidebar-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:99}.app-content{flex:1 1;height:calc(100vh - 80px);width:100%}.app-content,.sidebar{display:flex;overflow:hidden}.sidebar{background:#fff;border-right:1px solid #e2e8f0;flex-direction:column;flex-shrink:0;height:100%;width:350px}.sidebar-header{background:#f8fafc;border-bottom:2px solid #e2e8f0;box-shadow:0 2px 4px #0000000d;padding:1.5rem}.sidebar-header h2{color:#2d3748;font-size:1.25rem;font-weight:600;margin-bottom:1rem}.search-container{position:relative}.search-container i{color:#667eea;font-size:1rem;left:.75rem;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.search-input{background:#fff;border:2px solid #e2e8f0;border-radius:.75rem;box-shadow:0 1px 3px #0000001a;font-size:.875rem;outline:none;padding:.75rem .75rem .75rem 2.5rem;transition:all .2s;width:100%}.search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;transform:translateY(-1px)}.conversations-list{flex:1 1;overflow-y:auto;padding-top:.5rem}.conversation-item{align-items:flex-start;border-bottom:1px solid #f7fafc;cursor:pointer;display:flex;padding:1rem;transition:background-color .2s}.conversation-item:hover{background-color:#f7fafc}.conversation-item.selected{background-color:#ebf4ff;border-right:3px solid #667eea}.conversation-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;flex-shrink:0;height:40px;justify-content:center;margin-right:.75rem;width:40px}.conversation-content{flex:1 1;min-width:0}.conversation-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.25rem}.conversation-name{color:#2d3748;font-size:.875rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-meta{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.timestamp{color:#a0aec0;font-size:.75rem}.unread-badge{background:#667eea;border-radius:10px;color:#fff;font-size:.75rem;font-weight:600;min-width:1.25rem;padding:.125rem .375rem;text-align:center}.conversation-preview{align-items:center;display:flex;justify-content:space-between}.last-message{flex:1 1;min-width:0}.message-direction{color:#a0aec0;margin-right:.25rem}.message-text{color:#718096;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-messages{font-size:.875rem}.bot-controls{align-items:center;display:flex;flex-shrink:0;gap:.25rem;margin-left:.5rem}.bot-toggle-btn{border:none;border-radius:12px;font-size:.75rem;font-weight:600;gap:.25rem;padding:.125rem .375rem}.bot-toggle-btn.active{background:#48bb78;color:#fff}.bot-toggle-btn.inactive{background:#e2e8f0;color:#718096}.bot-status-text{font-size:.625rem}.auto-reactivate-info{color:#ed8936;font-size:.75rem}.no-conversations{color:#a0aec0;padding:2rem;text-align:center}.main-content{flex:1 1}.chat-area,.main-content{display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.chat-area{background:#fff}.no-conversation{align-items:center;color:#a0aec0;display:flex;flex-direction:column;height:100%;justify-content:center;text-align:center}.no-conversation i{font-size:4rem;margin-bottom:1rem;opacity:.5}.no-conversation h3{font-size:1.5rem;margin-bottom:.5rem}.chat-header{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;padding:1rem 1.5rem}.chat-header,.contact-avatar,.contact-info{align-items:center;display:flex}.contact-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;height:40px;justify-content:center;margin-right:.75rem;width:40px}.contact-details h3{color:#2d3748;font-size:1rem;font-weight:600;margin-bottom:.125rem}.phone-number{color:#718096;font-size:.875rem}.chat-actions .action-btn{background:#0000;border:1px solid #e2e8f0;border-radius:.5rem;color:#667eea;cursor:pointer;padding:.5rem;transition:all .2s}.chat-actions .action-btn:hover{background:#f7fafc;border-color:#667eea}.bot-toggle-btn,.chat-actions{align-items:center;display:flex;gap:.5rem}.bot-toggle-btn{background:#fff;border:2px solid;border-radius:.75rem;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem .75rem;transition:all .2s}.bot-toggle-btn.active{background:#f0fff4;border-color:#48bb78;color:#48bb78}.bot-toggle-btn.active:hover{background:#c6f6d5;transform:translateY(-1px)}.bot-toggle-btn.inactive{background:#fffaf0;border-color:#f56565;color:#f56565}.bot-toggle-btn.inactive:hover{background:#fed7d7;transform:translateY(-1px)}.bot-toggle-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.bot-status-text{font-weight:600}.bot-timer{font-size:.75rem;margin-left:.25rem;opacity:.8}.whatsapp-btn{background:#25d366!important;border-color:#25d366!important;color:#fff!important}.whatsapp-btn:hover{background:#128c7e!important;border-color:#128c7e!important}.messages-container{background:#f7fafc;flex:1 1;height:calc(100% - 140px);min-height:0;padding:1rem}.no-messages{align-items:center;color:#a0aec0;display:flex;flex-direction:column;height:100%;justify-content:center;text-align:center}.no-messages i{font-size:3rem;margin-bottom:1rem;opacity:.5}.messages-list{display:flex;flex-direction:column;gap:.5rem;padding:0 .5rem}.message{animation:slideInMessage .3s ease-out;opacity:1;transform:translateY(0);transition:all .3s ease-in-out}@keyframes slideInMessage{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.message.temporary{opacity:.8}.message.temporary .message-bubble{background:linear-gradient(135deg,#667eea,#5a67d8)!important;position:relative}.message.temporary .message-bubble:after{animation:sendingShimmer 1.5s ease-in-out infinite;background:#ffffff1a;border-radius:inherit;bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes sendingShimmer{0%,to{opacity:0}50%{opacity:.3}}.message{display:flex;margin-bottom:.5rem;max-width:100%}.message.received{justify-content:flex-start}.message.sent{justify-content:flex-end}.message-content{max-width:70%;min-width:80px}.message-bubble{border-radius:1rem;-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;padding:.75rem 1rem;position:relative;white-space:pre-wrap;word-break:break-word}.message.received .message-bubble{background:#fff;border-bottom-left-radius:.25rem;box-shadow:0 1px 2px #0000001a;color:#2d3748}.message.sent .message-bubble{background:#667eea;border-bottom-right-radius:.25rem;color:#fff}.unread-separator{align-items:center;display:flex;justify-content:center;margin:1.5rem 0;padding:0 1rem;position:relative}.unread-separator:before{background:linear-gradient(90deg,#0000,#00000014,#0000);content:"";height:1px;left:0;position:absolute;right:0;z-index:0}.separator-text{background:#e9edef;border-radius:7.5px;box-shadow:0 1px 2px #0000000f;color:#54656f;font-size:.813rem;font-weight:500;letter-spacing:.01em;padding:.375rem .875rem;position:relative;text-transform:lowercase;white-space:nowrap;z-index:1}@media (prefers-color-scheme:dark){.separator-text{background:#2a3942;color:#8696a0}.unread-separator:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000)}}.message-text{word-wrap:break-word;font-size:.875rem;font-weight:500;line-height:1.5;margin-bottom:.25rem;max-width:100%;overflow-wrap:break-word;white-space:pre-wrap;word-break:break-word}.message.received .message-text{color:#1a202c}.message.sent .message-text{color:#fff;text-shadow:0 1px 2px #0000001a}.message-info{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.message-time{font-size:.75rem;font-weight:500;opacity:.8}.message.sent .message-time{color:#ffffffe6}.message.received .message-time{color:#4a5568}.message-status{color:#ffffffe6;font-size:.75rem;opacity:.9}.loading-older-messages{align-items:center;background:#f9fafbcc;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;display:flex;font-size:.9rem;gap:.5rem;justify-content:center;margin:.5rem;padding:1rem}.loading-older-messages i{color:#667eea}.no-more-messages{align-items:center;border-bottom:1px solid #e5e7eb;color:#9ca3af;display:flex;font-size:.85rem;gap:.5rem;justify-content:center;margin-bottom:.5rem;padding:1rem;text-align:center}.no-more-messages i{color:#d1d5db}.messages-container{overflow-y:auto;scroll-behavior:smooth;scrollbar-color:#cbd5e1 #f1f5f9;scrollbar-width:thin}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.messages-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.messages-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width:768px){.message-content{max-width:85%}.message-text{font-size:.8rem;line-height:1.4}.message-bubble{padding:.6rem .8rem}}@media (max-width:480px){.message-content{max-width:90%}.messages-list{padding:0 .25rem}}.message-composer{background:#fff;border-top:1px solid #e2e8f0;flex-shrink:0;padding:1rem;width:100%}.composer-container{max-width:100%;width:100%}.message-input-container{align-items:flex-end;background:#f7fafc;border:1px solid #e2e8f0;border-radius:1.5rem;display:flex;gap:.5rem;padding:.5rem;transition:border-color .2s}.message-input-container:focus-within{border-color:#667eea}.message-input{background:#0000;border:none;flex:1 1;font-size:.875rem;line-height:1.4;max-height:120px;min-height:1.5rem;outline:none;padding:.5rem .75rem;resize:none}.send-btn{align-items:center;background:#667eea;border:none;border-radius:50%;box-shadow:0 2px 4px #667eea4d;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:40px;justify-content:center;transition:all .3s ease;width:40px}.send-btn:hover:not(:disabled){background:#5a67d8;box-shadow:0 4px 8px #667eea66;transform:scale(1.05)}.send-btn:active:not(:disabled){transform:scale(.98);transition:all .1s ease}.send-btn:disabled{background:#e2e8f0;box-shadow:none;color:#a0aec0;cursor:not-allowed;transform:none}.send-btn.sending{animation:sendingPulse 1s ease-in-out infinite;background:#48bb78;transform:scale(1.02)}@keyframes sendingPulse{0%,to{box-shadow:0 2px 4px #48bb784d}50%{box-shadow:0 4px 12px #48bb7899}}.fab{background:#667eea;border:none;border-radius:50%;bottom:2rem;box-shadow:0 4px 12px #667eea66;color:#fff;cursor:pointer;font-size:1.25rem;height:56px;position:fixed;right:2rem;transition:all .3s;width:56px;z-index:1000}.fab:hover{background:#5a67d8;box-shadow:0 6px 16px #667eea80;transform:scale(1.1)}.modal-overlay{z-index:2000}.modal{background:#fff;border-radius:.75rem;box-shadow:0 10px 25px #0003;display:flex;flex-direction:column;max-height:90vh;max-width:500px;overflow:hidden;width:100%}.modal-header h2{font-weight:600;gap:.5rem}.close-btn{background:#0000;border:none;border-radius:.25rem;color:#a0aec0;cursor:pointer;font-size:1.25rem;padding:.5rem;transition:all .2s}.close-btn:hover{background:#f7fafc;color:#718096}.modal-content{flex:1 1;padding:1.5rem}.form-input,.form-textarea{border:1px solid #e2e8f0;border-radius:.5rem;font-size:.875rem;outline:none;padding:.75rem;transition:border-color .2s;width:100%}.form-input:focus,.form-textarea:focus{border-color:#667eea}.form-textarea{min-height:100px}.input-help{color:#a0aec0;font-size:.75rem;margin-top:.25rem}.modal-footer{border-top:1px solid #e2e8f0;gap:.75rem;justify-content:flex-end}.btn{border-radius:.5rem;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.btn-secondary{color:#718096}.btn-secondary:hover:not(:disabled){background:#cbd5e0}.btn-primary:hover:not(:disabled){background:#5a67d8}.btn:disabled{cursor:not-allowed;opacity:.6}.loading-container{background:#f7fafc;height:100vh}.loading-spinner{color:#667eea;text-align:center}.loading-spinner i{animation:spin 1s linear infinite;font-size:2rem;margin-bottom:1rem}.loading-spinner p{color:#718096;font-size:1rem}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:2rem 1rem;position:relative}.login-container:before{background:radial-gradient(circle at 20% 80%,#7877c64d 0,#0000 50%),radial-gradient(circle at 80% 20%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 40% 40%,#7877c633 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.login-card{animation:slideUp .6s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:20px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a,0 0 0 1px #fff3;max-width:450px;padding:2rem;position:relative;width:100%;z-index:1}.login-header{margin-bottom:1.5rem;text-align:center}.login-header .logo{align-items:center;display:flex;gap:.75rem;justify-content:center;margin-bottom:.5rem}.login-header .logo i{font-size:2rem}.login-header .logo i,.login-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text}.login-header h1{font-size:1.8rem;font-weight:700;margin:0}.login-subtitle{color:#6b7280;font-size:.9rem;font-weight:500;margin:0}.login-form{gap:1.2rem}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:.4rem}.form-group label{font-size:.9rem}.input-container{align-items:center;display:flex;position:relative}.input-container i{color:#9ca3af;font-size:1rem;left:1rem;position:absolute;z-index:2}.input-container input{background:#fffc;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;padding:1rem 1rem 1rem 3rem;transition:all .3s ease;width:100%}.input-container input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.input-container input:disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}.form-input{background:#fff;border:2px solid #e5e7eb;border-radius:10px;color:#1f2937;font-family:inherit;font-size:1rem;padding:.9rem 1rem;transition:all .3s ease;width:100%}.form-input::placeholder{color:#9ca3af}.form-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a;outline:none}.form-input:disabled{background:#f9fafb;border-color:#e5e7eb;color:#9ca3af;cursor:not-allowed}.error-message{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.75rem 1rem}.error-message i{color:#dc2626}.login-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;overflow:hidden;padding:.85rem 1.5rem;position:relative;text-decoration:none;transition:all .3s ease}.login-btn:disabled{cursor:not-allowed;opacity:.7}.login-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea4d;color:#fff}.login-btn.primary:hover:not(:disabled){box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.login-btn.primary:active{transform:translateY(0)}.login-btn.demo{background:#667eea1a;border:2px solid #667eea33;color:#667eea;flex:1 1;font-size:.9rem;min-width:120px;padding:.65rem 1rem}.login-btn.demo:hover:not(:disabled){background:#667eea26;border-color:#667eea4d;transform:translateY(-1px)}.divider{align-items:center;display:flex;margin:.5rem 0}.divider:after,.divider:before{background:#e5e7eb;content:"";flex:1 1;height:1px}.divider span{color:#9ca3af;font-size:.9rem;font-weight:500;padding:0 1rem}.quick-login-group{margin-bottom:.5rem}.quick-login-title{color:#374151;font-size:.9rem;font-weight:600;margin-bottom:.6rem}.quick-login-btns{display:flex;flex-wrap:wrap;gap:.5rem}.demo-info{margin-top:.5rem;text-align:center}.demo-info p{align-items:center;color:#6b7280;display:flex;font-size:.8rem;gap:.4rem;justify-content:center;margin:0}.demo-info i{color:#667eea;font-size:.8rem}.legal-links{align-items:center;border-top:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:1rem;padding-top:1rem;text-align:center}.legal-links a{border-bottom:1px solid #0000;color:#667eea;font-size:.85rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .3s ease}.legal-links a:hover{border-bottom-color:#5a67d8;color:#5a67d8}.legal-links span{color:#cbd5e0}@media (max-width:480px){.login-container{padding:1rem}.login-card{border-radius:16px;padding:2rem 1.5rem}.login-header h1{font-size:1.8rem}.login-header .logo i{font-size:2rem}}@media (max-width:768px){.hamburger-btn,.sidebar-overlay{display:block}.app-header{padding:.75rem 1rem}.header-left h1{display:none}.app-content{height:calc(100vh - 60px)}.sidebar{height:100%;left:0;position:absolute;top:0;transform:translateX(-100%);transition:transform .3s;width:100%;z-index:100}.sidebar.open{transform:translateX(0)}.conversations-list{padding-bottom:5rem}.main-content{height:100%;width:100%}.messages-container{height:calc(100% - 120px);padding:.75rem}.message-composer{padding:.75rem}.fab{bottom:1rem;right:1rem}.modal{margin:.5rem;max-height:calc(100vh - 1rem);width:calc(100% - 1rem)}.message-content{max-width:85%}}.header-brand{align-items:center;display:flex;gap:.5rem;transition:opacity .2s}.header-brand:hover{opacity:.8}.header-nav{align-items:center;display:flex;gap:1rem;margin-left:2rem}.mobile-menu-toggle{display:none}.nav-btn{align-items:center;background:#0000;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.nav-btn:hover{background:#ffffff1a}.nav-btn.active{background:#fff3;font-weight:600}.admin-menu-container{position:relative}.admin-btn .fa-chevron-down{font-size:.75rem;transition:transform .2s}.admin-btn .fa-chevron-down.rotated{transform:rotate(180deg)}.admin-dropdown{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a;left:0;min-width:200px;overflow:hidden;position:absolute;top:100%;z-index:1000}.dropdown-item{align-items:center;background:#0000;border:none;color:#374151;cursor:pointer;display:flex;font-size:.875rem;gap:.75rem;padding:.75rem 1rem;text-align:left;transition:background .2s;width:100%}.dropdown-item:hover{background:#f3f4f6}.dropdown-item.active{background:#667eea;color:#fff}.user-info{align-items:center;display:flex;gap:1rem}.user-details{align-items:flex-end;display:flex;flex-direction:column;gap:.125rem}.user-name{font-size:.875rem;font-weight:600}.user-role{font-size:.75rem;font-weight:500;opacity:.8}.access-denied,.admin-access-denied{align-items:center;background:#f8fafc;display:flex;justify-content:center;min-height:100vh;padding-top:4rem}.access-denied-content{background:#fff;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a;max-width:400px;padding:3rem;text-align:center}.access-denied-content i{color:#f56565;font-size:4rem;margin-bottom:1.5rem}.access-denied-content h2{color:#2d3748;font-size:1.5rem;margin-bottom:1rem}.access-denied-content p{color:#718096;margin-bottom:2rem}.partner-management,.user-management{background:#f8fafc;max-height:90vh;min-height:100vh;overflow-y:auto;padding:5rem 2rem 2rem}.management-header{background:#fff;border-radius:1rem;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.header-content{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.header-content h1{align-items:center;color:#2d3748;display:flex;font-size:1.75rem;gap:.75rem;margin:0}.header-content h1 i{color:#667eea}.partners-grid,.users-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.partner-card,.user-card{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.partner-card:hover,.user-card:hover{border-color:#667eea;box-shadow:0 8px 16px #667eea26;transform:translateY(-4px)}.partner-card-header,.user-card-header{align-items:center;background:linear-gradient(135deg,#f7fafc,#edf2f7);border-bottom:2px solid #e2e8f0;display:flex;gap:1rem;padding:1.5rem}.user-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 4px 6px #667eea4d;color:#fff;display:flex;flex-shrink:0;font-size:1.75rem;height:60px;justify-content:center;width:60px}.partner-info,.user-info{flex:1 1;min-width:0}.partner-info h3,.user-info h3{color:#2d3748;font-size:1.25rem;font-weight:700;margin:0 0 .5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.partner-email,.user-email{align-items:center;color:#718096;display:flex;font-size:.875rem;gap:.5rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email i{color:#667eea;flex-shrink:0}.role-badge{border-radius:9999px;box-shadow:0 2px 4px #0000001a;font-size:.75rem;font-weight:700;letter-spacing:.05em;padding:.5rem 1rem;text-transform:uppercase;white-space:nowrap}.role-badge-admin{background:linear-gradient(135deg,#fc8181,#f56565);color:#fff}.role-badge-operador{background:linear-gradient(135deg,#63b3ed,#4299e1);color:#fff}.role-badge-parceiro{background:linear-gradient(135deg,#68d391,#48bb78);color:#fff}.partner-card-body,.user-card-body{display:flex;flex:1 1;flex-direction:column;gap:1rem;padding:1.5rem}.user-details-grid{display:flex;flex-direction:column;gap:.75rem}.detail-item{align-items:center;background:#f7fafc;border-radius:.5rem;color:#4a5568;display:flex;font-size:.875rem;gap:.75rem;padding:.75rem;transition:background .2s}.detail-item:hover{background:#edf2f7}.detail-item i{color:#667eea;flex-shrink:0;font-size:1rem;text-align:center;width:1.25rem}.detail-item span{flex:1 1;font-weight:500}.user-status-bar{border-top:1px solid #e2e8f0;display:flex;justify-content:center;padding-top:.5rem}.status-badge{align-items:center;border-radius:9999px;display:flex;font-size:.875rem;gap:.5rem;letter-spacing:.05em;padding:.5rem 1.25rem;text-transform:uppercase}.status-badge.active{background:#c6f6d5;color:#2f855a}.status-badge.inactive{background:#fed7d7;color:#c53030}.status-badge i{font-size:1rem}.partner-card-actions,.user-card-actions{background:#f7fafc;border-top:1px solid #e2e8f0;display:flex;gap:0}.btn-delete,.btn-edit{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;flex:1 1;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;padding:1rem;transition:all .2s}.btn-edit{border-right:1px solid #e2e8f0;color:#667eea}.btn-edit:hover{background:#667eea;color:#fff}.btn-delete{color:#f56565}.btn-delete:hover{background:#f56565;color:#fff}.btn-delete i,.btn-edit i{font-size:1rem}.empty-state{background:#fff;border-radius:1rem;box-shadow:0 1px 3px #0000001a;padding:4rem 2rem}.empty-state i{color:#cbd5e0;font-size:4rem;margin-bottom:1.5rem}.empty-state h3{color:#2d3748;font-size:1.25rem;margin-bottom:.5rem}.empty-state p{color:#718096}.loading-container{align-items:center;background:#fff;border-radius:1rem;box-shadow:0 1px 3px #0000001a;display:flex;gap:1rem;justify-content:center;padding:4rem}.loading-container i{color:#667eea;font-size:1.5rem}.loading-container span{color:#4a5568;font-size:1.125rem}.modal-overlay{background:#00000080}.modal-content{border-radius:1rem;padding:2rem}.modal-large{max-width:800px}.modal-header{border-bottom:1px solid #e2e8f0}.modal-header h2{align-items:center;color:#2d3748;display:flex;font-size:1.25rem;gap:.75rem;margin:0}.modal-header h2 i{color:#667eea}.btn-close{background:#0000;border:none;border-radius:.375rem;color:#718096;cursor:pointer;padding:.5rem;transition:all .2s}.btn-close:hover{background:#f7fafc;color:#2d3748}.partner-form,.user-form{padding:1.5rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.form-group,.form-row{margin-bottom:1rem}.form-group label{color:#374151;font-size:.875rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;padding:.75rem;transition:all .2s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#f56565;box-shadow:0 0 0 3px #f565651a}.error-message{color:#f56565;display:block;font-size:.75rem;margin-top:.25rem}.form-actions{border-top:1px solid #e2e8f0;padding-top:1rem}@media (max-width:768px){.partners-grid,.users-grid{grid-template-columns:1fr}.partner-card-header,.user-card-header{flex-wrap:wrap}.user-avatar{font-size:1.5rem;height:50px;width:50px}.role-badge{margin-top:.5rem;text-align:center;width:100%}.btn-delete span,.btn-edit span{display:none}.btn-delete,.btn-edit{padding:.875rem}}@media (max-width:480px){.partner-management,.user-management{max-height:90vh;overflow-y:auto;padding:4.5rem 1rem 1rem}.management-header,.monitoring-header{padding:1rem}.header-content{align-items:stretch;flex-direction:column}.header-content h1{font-size:1.5rem}.btn-primary{justify-content:center;width:100%}}.btn-primary,.btn-secondary{align-items:center;border:none;border-radius:.5rem;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.btn-secondary{background:#e2e8f0}.btn-secondary:hover{background:#cbd5e0}@media (max-width:768px){.header-nav{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 6px #0000001a;flex-direction:column;left:0;margin:0;opacity:0;padding:1rem;position:fixed;right:0;top:80px;transform:translateY(-100%);transition:all .3s ease;visibility:hidden;z-index:999}.header-nav.mobile-open{opacity:1;transform:translateY(0);visibility:visible}.mobile-menu-toggle{align-items:center;background:#ffffff1a;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;transition:background .2s;width:40px}.mobile-menu-toggle:hover{background:#fff3}.mobile-menu-toggle i{font-size:1.25rem}.admin-dropdown{background:#ffffff1a;border:1px solid #fff3;box-shadow:none;margin-top:.5rem;position:static;width:100%}.dropdown-item{border-bottom:1px solid #ffffff1a;color:#fff}.dropdown-item:hover{background:#ffffff1a}.dropdown-item.active{background:#fff3;color:#fff}.partner-management,.user-management{max-height:90vh;overflow-y:auto;padding:1rem}.management-header{padding:1.5rem}.header-content{align-items:flex-start;flex-direction:column}.form-row,.partners-grid,.users-grid{grid-template-columns:1fr}.modal-content{margin:.5rem;max-height:calc(100vh - 1rem)}.user-info{align-items:flex-end;flex-direction:column;gap:.5rem}.user-details{align-items:center}}.partner-monitoring{background:#f8fafc;max-height:90vh;min-height:100vh;overflow-y:auto;padding:5rem 2rem 2rem}.monitoring-header{background:#fff;border-radius:1rem;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.monitoring-header .header-content{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.btn-refresh{align-items:center;background:#667eea;border:none;border-radius:.5rem;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.btn-refresh:hover:not(:disabled){background:#5a67d8;box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.btn-refresh:disabled{cursor:not-allowed;opacity:.5}.filter-bar{display:flex;flex-wrap:wrap;gap:1rem}.filter-btn{background:#f7fafc;border:2px solid #e2e8f0;border-radius:.5rem;color:#2d3748;cursor:pointer;font-weight:600;padding:.75rem 1.25rem;transition:all .2s}.filter-btn:hover{background:#edf2f7;border-color:#cbd5e0}.filter-btn.active{background:#667eea;border-color:#667eea;color:#fff}.partners-grid-monitoring{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.partner-monitoring-card{background:#fff;border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem;transition:all .2s}.partner-monitoring-card:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.status-badge-monitoring{border-radius:9999px;color:#fff;font-size:.875rem;font-weight:700;padding:.5rem 1rem;white-space:nowrap}.availability-section{margin:1rem 0}.availability-info-compact{border-radius:.5rem;font-size:.875rem;padding:1rem}.availability-info-compact.available{background:#e6fffa;border-left:4px solid #4caf50}.availability-info-compact.paused{background:#fffaf0;border-left:4px solid #ff9800}.availability-info-compact p{color:#2d3748;margin:.25rem 0}.partner-stats{grid-gap:1rem;background:#f7fafc;border-radius:.5rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin:1.5rem 0;padding:1rem}.stat-item{text-align:center}.stat-value{color:#2d3748;font-size:1.75rem;font-weight:700;margin-bottom:.25rem}.stat-label{color:#718096;font-size:.75rem;font-weight:600;letter-spacing:.025em;text-transform:uppercase}.partner-rating{align-items:center;background:#fff5e6;border-radius:.5rem;display:flex;gap:.5rem;margin:1rem 0;padding:.75rem}.rating-label{color:#2d3748;font-weight:600}.rating-value{align-items:center;display:flex;font-size:1.125rem;gap:.5rem}.rating-number{color:#f59e0b;font-weight:700}.btn-details{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-weight:600;margin-top:1rem;padding:.75rem;transition:all .2s;width:100%}.btn-details:hover{box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.rides-list{max-height:60vh;overflow-y:auto;padding:1rem}.ride-detail-card{background:#f7fafc;border:1px solid #e2e8f0;border-radius:.75rem;margin-bottom:1rem;padding:1.25rem}.ride-header{border-bottom:2px solid #e2e8f0}.ride-status{border-radius:9999px;font-size:.875rem;font-weight:600;padding:.375rem .875rem}.ride-status.completed{background:#c6f6d5;color:#2f855a}.ride-status.in_progress{background:#feebc8;color:#c05621}.ride-status.cancelled{background:#fed7d7;color:#c53030}.ride-status.pending{background:#e2e8f0;color:#4a5568}.ride-date{color:#718096;font-size:.875rem}.ride-locations{margin:1rem 0}.location-item{align-items:flex-start;gap:.75rem}.location-icon{font-size:1.25rem;margin-top:.125rem}.location-item strong{color:#4a5568;display:block;font-size:.875rem;margin-bottom:.25rem}.location-item p{color:#2d3748;margin:0}.location-arrow{font-size:1.5rem}.ride-type,.ride-user{align-items:center;color:#4a5568;display:flex;font-size:.9rem;gap:.5rem;margin:.5rem 0}.ride-rating{background:#fffaf0;padding:.75rem}.ride-rating .stars{margin-left:.5rem}.ride-review{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;margin:.75rem 0;padding:.75rem}.ride-review strong{align-items:center;color:#2d3748;display:flex;gap:.5rem;margin-bottom:.5rem}.ride-review i{color:#4299e1;font-size:1rem}.ride-review.user-review{background:#ebf8ff;border-color:#90cdf4}.ride-review.user-review i,.ride-review.user-review strong{color:#2c5282}.ride-review.partner-review{background:#f0fff4;border-color:#9ae6b4}.ride-review.partner-review i,.ride-review.partner-review strong{color:#276749}.ride-review p{color:#4a5568;line-height:1.6;margin:.5rem 0 0}.review-text{border-left:3px solid #cbd5e0;color:#2d3748;font-style:italic;margin-top:.5rem;padding-left:1rem}.ride-rating{align-items:center;background:#fef5e7;border:1px solid #f9e79f;border-radius:.5rem;display:flex;gap:.5rem;margin:.75rem 0;padding:.5rem}.ride-rating strong{color:#d68910}.ride-rating i{color:#f39c12;font-size:1rem}.ride-rating .stars{font-size:1.125rem;margin-left:.25rem}.ride-rating .rating-number{color:#d68910;font-weight:600;margin-left:.5rem}.ride-duration{align-items:center;color:#4a5568;display:flex;font-size:.9rem;gap:.5rem;margin:.5rem 0}.ride-duration i{color:#718096}@media (max-width:768px){.partner-monitoring{max-height:90vh;overflow-y:auto;padding:1rem}.monitoring-header .header-content{align-items:stretch;flex-direction:column}.btn-refresh{justify-content:center;width:100%}.filter-bar{flex-direction:column}.filter-btn{width:100%}.partners-grid-monitoring{grid-template-columns:1fr}.partner-stats{grid-template-columns:repeat(2,1fr)}}.parceiro-control-container{background:linear-gradient(135deg,#667eea,#764ba2);height:100vh;min-height:100vh;overflow-x:hidden;overflow-y:auto;padding:2rem 2rem 4rem}.parceiro-control-container::-webkit-scrollbar{width:10px}.parceiro-control-container::-webkit-scrollbar-track{background:#ffffff1a;border-radius:5px}.parceiro-control-container::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:5px}.parceiro-control-container::-webkit-scrollbar-thumb:hover{background:#ffffff80}.parceiro-header{color:#fff;margin-bottom:2rem}.parceiro-header-content{align-items:center;display:flex;justify-content:space-between}.parceiro-header h1{font-size:2.5rem;margin-bottom:.5rem;text-shadow:2px 2px 4px #0000004d}.parceiro-subtitle{font-size:1.2rem;opacity:.9}.header-actions{gap:1rem}.btn-settings,.header-actions{align-items:center;display:flex}.btn-settings{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #fff;border-radius:8px;color:#fff;cursor:pointer;font-size:1.2rem;height:48px;justify-content:center;padding:.75rem;transition:all .3s;width:48px}.btn-settings:hover{background:#fff;box-shadow:0 4px 8px #0003;color:#667eea;transform:translateY(-2px) rotate(90deg)}.btn-logout{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #fff;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;padding:.75rem 1.5rem;transition:all .3s}.btn-logout:hover{background:#fff;box-shadow:0 4px 8px #0003;color:#667eea;transform:translateY(-2px)}.availability-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;margin-bottom:2rem;padding:2rem}.availability-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.availability-header h2{color:#333;font-size:1.5rem}.status-badge{border-radius:25px;font-size:1rem;font-weight:700;padding:.5rem 1.5rem}.status-badge.available{background:#4caf50;color:#fff}.status-badge.unavailable{background:#f44336;color:#fff}.availability-controls{display:flex;flex-direction:column;gap:1.5rem}.control-group{display:flex;flex-direction:column;gap:.5rem}.control-group label{color:#555;font-weight:600}.form-select{background:#fff;border:2px solid #ddd;border-radius:8px;cursor:pointer;font-size:1rem;padding:.75rem;transition:border-color .3s}.form-select:focus,.form-select:hover{border-color:#667eea;outline:none}.time-selector{align-items:center;display:flex;gap:1rem}.time-input-group{align-items:center;display:flex;gap:.5rem}.time-input{background:#fff;border:2px solid #ddd;border-radius:8px;font-size:1.2rem;font-weight:700;padding:.75rem;text-align:center;transition:border-color .3s;width:80px}.time-input:focus,.time-input:hover{border-color:#667eea;outline:none}.time-input::-webkit-inner-spin-button,.time-input::-webkit-outer-spin-button{height:40px;opacity:1}.time-label{color:#666;font-size:1rem;font-weight:600}.availability-info{background:#e8f5e9;border-left:4px solid #4caf50;border-radius:8px;padding:1rem}.availability-info.paused{background:#fff3e0;border-left-color:#ff9800}.availability-info p{color:#333;margin:.5rem 0}.btn-resume{background:#4caf50;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;margin-top:1rem;padding:.75rem 1.5rem;transition:all .3s;width:100%}.btn-resume:hover{background:#45a049;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.button-group{display:flex;flex-direction:column;gap:1rem}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:.5rem;justify-content:center;padding:1rem 2rem;transition:all .3s}.btn-success{background:#4caf50;color:#fff}.btn-success:hover{background:#45a049;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.btn-danger{background:#f44336}.btn-danger:hover{background:#da190b;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.btn-warning{background:#ff9800;color:#fff}.btn-warning:hover{background:#e68900;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.pause-controls{align-items:center;display:flex;gap:1rem}.form-select-small{background:#fff;border:2px solid #ddd;border-radius:8px;cursor:pointer;flex:1 1;font-size:1rem;padding:.75rem}.rides-section{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;margin-bottom:2rem;max-height:none;overflow:visible;padding:2rem}.rides-section h2{border-bottom:2px solid #e0e0e0;color:#333;font-size:1.5rem;margin-bottom:1.5rem;padding-bottom:1rem}.empty-state{color:#666;padding:3rem 1rem;text-align:center}.empty-state p{font-size:1.2rem;margin:.5rem 0}.empty-subtitle{font-size:1rem;opacity:.7}.rides-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));max-height:none;overflow-y:visible;padding-right:.5rem}.rides-grid::-webkit-scrollbar{width:12px}.rides-grid::-webkit-scrollbar-track{background:#f1f1f1;border:1px solid #e0e0e0;border-radius:6px}.rides-grid::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #f1f1f1;border-radius:6px}.rides-grid::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#764ba2,#667eea)}.rides-list{display:flex;flex-direction:column;gap:1.5rem;max-height:none;overflow-y:visible;padding-right:.5rem}.rides-list::-webkit-scrollbar{width:12px}.rides-list::-webkit-scrollbar-track{background:#f1f1f1;border:1px solid #e0e0e0;border-radius:6px}.rides-list::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #f1f1f1;border-radius:6px}.rides-list::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#764ba2,#667eea)}.rides-section-header{margin-bottom:1.5rem}.filter-tabs{border-top:1px solid #e0e0e0;display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem;padding-top:1rem}.filter-tab{background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#666;cursor:pointer;font-size:.95rem;font-weight:500;padding:.6rem 1.2rem;transition:all .3s ease}.filter-tab:hover{border-color:#667eea;box-shadow:0 4px 8px #667eea33;color:#667eea;transform:translateY(-2px)}.filter-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;box-shadow:0 4px 12px #667eea4d;color:#fff}.pagination{align-items:center;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:10px;display:flex;justify-content:space-between;margin-top:2rem;padding:1.5rem}.pagination-btn{background:#fff;border:2px solid #667eea;border-radius:8px;color:#667eea;cursor:pointer;font-size:.95rem;font-weight:600;min-width:130px;padding:.7rem 1.5rem;transition:all .3s ease}.pagination-btn:hover:not(:disabled){background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea4d;color:#fff;transform:translateY(-2px)}.pagination-btn:disabled{border-color:#ccc;color:#999;cursor:not-allowed;opacity:.4}.pagination-info{align-items:center;display:flex;flex-direction:column;gap:.3rem}.page-numbers{color:#333;font-size:1rem;font-weight:600}.items-count{color:#666;font-size:.85rem}@media (max-width:768px){.filter-tabs{gap:.5rem}.filter-tab{font-size:.85rem;padding:.5rem .9rem}.pagination{flex-direction:column;gap:1rem}.pagination-btn{min-width:0;min-width:auto;width:100%}.pagination-info{order:-1}}.ride-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:1.5rem;transition:all .3s}.ride-card.available{border-color:#4caf50;box-shadow:0 2px 8px #4caf5033}.ride-card.available:hover{box-shadow:0 6px 16px #4caf504d;transform:translateY(-4px)}.ride-card.accepted{border-color:#2196f3;box-shadow:0 2px 8px #2196f333}.ride-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.ride-type{color:#667eea;font-size:1.1rem;font-weight:700}.ride-time{background:#f5f5f5;color:#666}.ride-status,.ride-time{border-radius:12px;font-size:.9rem;padding:.25rem .75rem}.ride-status{background:#4caf50;color:#fff;font-weight:700}.ride-user{background:#f9f9f9;color:#333;line-height:1.6;padding:.75rem}.ride-location,.ride-user{border-radius:8px;margin:1rem 0}.ride-location{background:#e3f2fd;padding:1rem}.location-item{display:flex;gap:.5rem;margin:.5rem 0}.location-label{color:#555;font-weight:700;min-width:60px}.location-text{color:#333;flex:1 1}.location-arrow{color:#667eea;font-size:1.2rem;margin:.25rem 0;text-align:center}.ride-meta{border-top:1px solid #e0e0e0;color:#666;font-size:.9rem;margin-top:1rem;padding-top:.75rem}.btn-accept{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;margin-top:1rem;padding:1rem;transition:all .3s;width:100%}.btn-accept:hover{box-shadow:0 6px 12px #667eea66;transform:translateY(-2px)}.btn-accept:active{transform:translateY(0)}.status-accepted{background:#4caf50!important}.status-ongoing{background:#ff9800!important}.status-completed{background:#9e9e9e!important}.ride-card.ongoing{border-color:#ff9800;box-shadow:0 2px 8px #ff980033}.ride-card.completed{border-color:#9e9e9e;box-shadow:0 2px 8px #9e9e9e33;opacity:.85}.ride-notes{background:#fff3cd;border-left:4px solid #ffc107;border-radius:4px;margin-top:.75rem;padding:.75rem}.ride-notes strong{color:#856404;display:block;margin-bottom:.5rem}.ride-notes p{color:#856404;font-size:.9rem;line-height:1.5;margin:0}.ride-actions{display:flex;gap:.75rem;margin-top:1rem}.btn-start{background:linear-gradient(135deg,#4caf50,#45a049);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;padding:.875rem 1.5rem;transition:all .3s}.btn-start:hover{box-shadow:0 6px 12px #4caf5066;transform:translateY(-2px)}.btn-finish{background:linear-gradient(135deg,#ff9800,#f57c00);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;padding:.875rem 1.5rem;transition:all .3s}.btn-finish:hover{box-shadow:0 6px 12px #ff980066;transform:translateY(-2px)}.btn-finish:active,.btn-start:active{transform:translateY(0)}.modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{animation:slideUp .3s ease;background:#fff;border-radius:16px;box-shadow:0 10px 40px #0000004d;max-height:90vh;overflow-y:auto;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;padding:1.5rem}.modal-header h3{color:#333;font-size:1.5rem;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:1.5rem;height:36px;justify-content:center;transition:all .2s;width:36px}.modal-close:hover{background:#f5f5f5;color:#333}.modal-body{padding:1.5rem}.ride-summary{background:#f5f5f5;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.ride-summary p{color:#333;font-size:.95rem;margin:.5rem 0}.ride-summary strong{color:#667eea;display:inline-block;min-width:80px}.form-group label{color:#333;font-weight:700}.form-textarea{border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:1rem;padding:.75rem;resize:vertical;transition:border-color .3s;width:100%}.form-textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.char-count{color:#999;display:block;font-size:.85rem;margin-top:.25rem;text-align:right}.modal-footer{border-top:2px solid #e0e0e0;display:flex;gap:1rem;padding:1.5rem}.btn-secondary{background:#e0e0e0;border:none;border-radius:8px;color:#333;flex:1 1;font-size:1rem;font-weight:700;padding:.875rem 1.5rem;transition:all .3s}.btn-secondary:hover{background:#d0d0d0}.modal-footer .btn-finish{flex:1 1}@media (max-width:768px){.modal-content{margin:1rem;max-height:95vh}.modal-header h3{font-size:1.25rem}.modal-footer{flex-direction:column}.btn-secondary,.modal-footer .btn-finish{width:100%}.ride-actions{flex-direction:column}.btn-finish,.btn-start{width:100%}.parceiro-control-container{padding:1rem}.parceiro-header h1{font-size:2rem}.parceiro-header-content{flex-direction:column;gap:1rem;text-align:center}.header-actions{justify-content:center;width:100%}.btn-settings{height:48px;width:48px}.btn-logout{flex:1 1}.availability-card,.rides-section{padding:1.5rem}.rides-grid{grid-template-columns:1fr}.pause-controls{flex-direction:column}.form-select-small{width:100%}.time-selector{flex-direction:column;gap:.75rem}.time-input-group{justify-content:center;width:100%}}@media (max-width:400px){.parceiro-control-container{padding:1.5rem 0 2rem}.parceiro-header h1{font-size:1.8rem}.parceiro-subtitle{font-size:1rem}.header-actions{flex-direction:column;gap:.5rem;width:100%}.btn-logout,.btn-settings{width:100%}.availability-card,.rides-section{border-radius:8px;padding:0}.availability-header h2,.rides-section h2{font-size:1.2rem}.rides-grid{gap:1rem;grid-template-columns:1fr}.ride-card{border-radius:8px;padding:1rem}.ride-header{align-items:flex-start;flex-direction:column;gap:.5rem}.ride-type{font-size:1rem}.ride-status,.ride-time{font-size:.85rem;padding:.25rem .6rem}.ride-user{font-size:.9rem;padding:.6rem}.ride-location{padding:.75rem}.location-item{flex-direction:column;gap:.25rem}.location-label{font-size:.85rem;min-width:0;min-width:auto}.location-text{font-size:.9rem;word-break:break-word}.location-arrow{font-size:1rem;margin:.15rem 0}.ride-meta{font-size:.85rem}.ride-notes{padding:.6rem}.ride-notes strong{font-size:.9rem}.ride-notes p{font-size:.85rem}.btn-accept,.btn-finish,.btn-start{font-size:1rem;padding:.875rem 1rem}.ride-actions{flex-direction:column;gap:.5rem}.ride-actions .btn-finish,.ride-actions .btn-start{width:100%}.filter-tabs{gap:.5rem}.filter-tab{font-size:.85rem;padding:.5rem .8rem}.pagination{flex-direction:column;gap:.75rem;padding:1rem}.pagination-btn{font-size:.9rem;min-width:0;min-width:auto;padding:.6rem 1rem;width:100%}.page-numbers{font-size:.95rem}.items-count{font-size:.8rem}.time-selector{flex-direction:column;gap:.5rem}.time-input-group{justify-content:space-between;width:100%}.time-input{font-size:1rem;padding:.6rem;width:70px}.time-label{font-size:.9rem}.button-group .btn{font-size:.95rem;padding:.875rem 1.5rem}.modal-content{max-width:calc(100vw - 2rem);padding:1.5rem}.modal-header h3{font-size:1.1rem}.form-textarea{font-size:.9rem;min-height:100px}.partner-stats{gap:.75rem;grid-template-columns:repeat(2,1fr);padding:.75rem}.stat-value{font-size:1.5rem}.stat-label{font-size:.7rem}}.legal-page{background:linear-gradient(135deg,#667eea,#764ba2);height:200px;min-height:100vh;overflow-y:auto;padding:2rem 1rem}.legal-container{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;margin:0 auto;max-width:900px;padding:3rem;position:relative}.back-button{align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;left:2rem;padding:.5rem 1rem;position:absolute;top:2rem;transition:all .3s ease}.back-button:hover{background:#edf2f7;border-color:#cbd5e0;transform:translateX(-3px)}.legal-content{color:#2d3748;line-height:1.8;margin-top:3rem}.legal-content h1{border-bottom:3px solid #667eea;color:#1a202c;font-size:2.5rem;font-weight:700;margin-bottom:.5rem;padding-bottom:1rem}.last-updated{color:#718096;font-size:.875rem;font-style:italic;margin-bottom:2rem}.legal-content section{margin-bottom:2.5rem}.legal-content h2{border-top:1px solid #e2e8f0;color:#2d3748;font-size:1.75rem;font-weight:600;margin-bottom:1rem;margin-top:2rem;padding-top:1rem}.legal-content h3{color:#4a5568;font-size:1.25rem;font-weight:600;margin-bottom:.75rem;margin-top:1.5rem}.legal-content h4{color:#4a5568;font-size:1.1rem;font-weight:600;margin-bottom:.5rem;margin-top:1rem}.legal-content p{color:#4a5568;margin-bottom:1rem}.legal-content ol,.legal-content ul{margin-bottom:1rem;margin-left:2rem}.legal-content li{color:#4a5568;margin-bottom:.5rem}.legal-content strong{color:#2d3748;font-weight:600}.legal-content a{border-bottom:1px solid #0000;color:#667eea;font-weight:500;text-decoration:none;transition:all .3s ease}.legal-content a:hover{border-bottom-color:#667eea}.contact-info{background:#f7fafc;border-left:4px solid #667eea;border-radius:8px;margin-top:1rem;padding:1.5rem}.contact-info p{margin-bottom:.5rem}.legal-footer{border-top:2px solid #e2e8f0;color:#718096;font-size:.875rem;margin-top:3rem;padding-top:2rem;text-align:center}.warning-section{margin:2rem 0}.warning-box{background:#fff5f5;border:2px solid #fc8181;border-radius:8px;display:flex;gap:1rem;padding:1.5rem}.warning-box i{color:#e53e3e;flex-shrink:0;font-size:1.5rem}.warning-box h3{color:#c53030;margin-bottom:.75rem;margin-top:0}.warning-box li,.warning-box p{color:#742a2a}.warning-note{background:#fed7d7;border-radius:6px;font-size:.9rem;margin-top:1rem;padding:.75rem}.timeline{margin:2rem 0;padding:1rem 0}.timeline-item{display:flex;gap:1.5rem;margin-bottom:2rem;position:relative}.timeline-item:not(:last-child):before{background:#cbd5e0;content:"";height:calc(100% + 1rem);left:1.25rem;position:absolute;top:3rem;width:2px}.timeline-marker{align-items:center;background:#667eea;border-radius:50%;box-shadow:0 2px 8px #667eea4d;color:#fff;display:flex;flex-shrink:0;font-weight:600;height:2.5rem;justify-content:center;width:2.5rem}.timeline-content h4{color:#2d3748;margin-top:0}.timeline-content p{color:#718096;margin:0}.timeline-note{background:#edf2f7;border-left:4px solid #667eea;border-radius:8px;margin-top:1rem;padding:1rem}.deletion-form{background:#f7fafc;border-radius:8px;margin-top:2rem;padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#2d3748;display:block;font-weight:600;margin-bottom:.5rem}.required{color:#e53e3e}.form-control{border:2px solid #e2e8f0;border-radius:6px;font-family:inherit;font-size:1rem;padding:.75rem;transition:all .3s ease;width:100%}.form-control:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-text{color:#718096;display:block;font-size:.875rem;margin-top:.5rem}.text-danger{color:#e53e3e;font-weight:500}.confirmation-group{background:#fff5f5;border:2px solid #fc8181;border-radius:8px;padding:1.5rem}.confirm-input{font-size:1.1rem;font-weight:700;text-align:center;text-transform:uppercase}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.btn-secondary{background:#edf2f7;border:1px solid #cbd5e0;border-radius:6px;color:#4a5568;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.btn-secondary:hover:not(:disabled){background:#e2e8f0}.btn-danger{align-items:center;background:#e53e3e;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.btn-danger:hover:not(:disabled){background:#c53030;box-shadow:0 4px 12px #e53e3e4d;transform:translateY(-2px)}.btn-danger:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.5;transform:none}.deletion-confirmation{padding:3rem 2rem;text-align:center}.confirmation-icon{color:#48bb78;font-size:5rem;margin-bottom:1.5rem}.deletion-confirmation h2{border:none;color:#2d3748;font-size:2rem;margin-bottom:1rem;padding:0}.deletion-confirmation p{color:#4a5568;font-size:1.1rem;margin-bottom:1rem}.confirmation-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.btn-primary{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.btn-primary:hover{background:#5a67d8;box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.faq-item{background:#f7fafc;border-left:4px solid #667eea;border-radius:8px;margin-bottom:1rem;padding:1.5rem}.faq-item h4{color:#2d3748;margin-bottom:.75rem;margin-top:0}.faq-item p{color:#4a5568;margin:0}@media (max-width:768px){.legal-container{padding:2rem 1.5rem}.back-button{margin-bottom:2rem;position:static}.legal-content{margin-top:1rem}.legal-content h1{font-size:2rem}.legal-content h2{font-size:1.5rem}.timeline-item{gap:1rem}.form-actions{flex-direction:column}.form-actions button{width:100%}.confirmation-actions{flex-direction:column}.confirmation-actions button{width:100%}}.notification-settings{margin-top:1rem}.notification-controls{display:flex;flex-direction:column;gap:1rem}.notification-item{align-items:center;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.notification-info{align-items:center;display:flex;flex:1 1;gap:1rem}.notification-icon{font-size:2rem;min-width:40px;text-align:center}.notification-info div{flex:1 1}.notification-info strong{color:#333;display:block;font-size:1rem;margin-bottom:.25rem}.notification-info p{color:#666;font-size:.85rem;margin:0}.warning-text{color:#ff6b6b!important;font-weight:500;margin-top:.25rem!important}.toggle-switch{display:inline-block;height:28px;min-width:56px;position:relative;width:56px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#ccc;border-radius:28px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:4px;content:"";height:20px;left:4px;position:absolute;transition:.3s;width:20px}.toggle-switch input:checked+.toggle-slider{background-color:#075e54}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(28px)}.toggle-switch input:disabled+.toggle-slider{background-color:#e0e0e0;cursor:not-allowed}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 1px #075e54}.btn-sm{border-radius:6px;font-size:.85rem;padding:.4rem .8rem}@media (max-width:768px){.notification-item{align-items:flex-start;flex-direction:column;gap:1rem}.toggle-switch{align-self:flex-end}.notification-icon{font-size:1.5rem}}