:root{--color-primary:#0c0c0b;--color-secondary:#297856;--color-green-dark:#1f5c3d;--color-tertiary:#f4f5f7;--color-white:#fff;--background:var(--color-tertiary);--foreground:var(--color-primary);--primary-light:rgba(41,120,86,.14);--accent-light:rgba(12,12,11,.06);--muted-light:rgba(12,12,11,.08);--border:rgba(12,12,11,.12);--text-muted:rgba(12,12,11,.55);--shadow:0 2px 12px rgba(12,12,11,.06);--font-sans:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--nav-height:60px;--content-max:1280px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--background);color:var(--foreground);font-family:var(--font-sans);overflow-x:hidden}.app-shell{display:flex;flex-direction:column;min-height:100vh;background:var(--background)}.top-nav{position:-webkit-sticky;position:sticky;top:0;z-index:100;height:var(--nav-height);background:var(--color-primary);gap:.75rem;padding:0 1rem;border-bottom:1px solid hsla(0,0%,100%,.1)}.top-nav,.top-nav-brand{color:var(--color-white);display:flex;align-items:center}.top-nav-brand{gap:.5rem;font-weight:700;font-size:1rem;flex-shrink:0}.top-nav-logo{width:30px;height:30px;border-radius:8px;background:var(--color-secondary);color:var(--color-white);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.875rem}.top-nav-menu{overflow:visible}.top-nav-menu,.top-nav-menu-scroll{display:flex;align-items:center;gap:.2rem;flex:1 1;min-width:0}.top-nav-menu-scroll{overflow-x:auto;scrollbar-width:none}.top-nav-menu-scroll::-webkit-scrollbar{display:none}.top-nav-item{display:flex;align-items:center;gap:.35rem;padding:.45rem .65rem;border-radius:.5rem;border:none;background:transparent;color:hsla(0,0%,100%,.72);font-family:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease;text-decoration:none}.top-nav-item:hover{color:var(--color-white);background:hsla(0,0%,100%,.1)}.top-nav-item.active{color:var(--color-white);background:var(--color-secondary)}.top-nav-logout{display:flex;align-items:center;gap:.35rem;padding:.45rem .65rem;border-radius:.5rem;border:1px solid hsla(60,23%,97%,.2);background:transparent;color:hsla(60,23%,97%,.85);font-family:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;flex-shrink:0;transition:background .15s ease,border-color .15s ease}.top-nav-logout:hover{background:hsla(60,23%,97%,.12);border-color:hsla(60,23%,97%,.35);color:var(--color-tertiary)}.main-content{flex:1 1;width:100%;max-width:var(--content-max);margin:0 auto;padding:1.25rem 1.5rem 1.75rem;display:flex;flex-direction:column;gap:1.25rem;overflow-y:auto}.main-content--full,.main-content--map{max-width:none;padding:1rem 1.25rem 1.25rem;gap:1rem;min-height:0}.home-split{display:grid;grid-template-columns:minmax(320px,420px) minmax(0,1fr);grid-gap:1rem;gap:1rem;align-items:stretch;height:calc(100vh - var(--nav-height) - 7.5rem);max-height:calc(100vh - var(--nav-height) - 7.5rem);min-height:520px;overflow:hidden}.home-split-map{min-width:0;height:100%;overflow:hidden}.home-dashboard,.home-split-map{min-height:0;display:flex;flex-direction:column}.home-dashboard{gap:.875rem;overflow-y:auto;padding-right:.15rem}.ui-card{background:var(--color-white);border:1px solid var(--border);border-radius:.75rem;box-shadow:var(--shadow)}.ui-card-header{display:flex;flex-direction:column;gap:.2rem;padding:1.125rem 1.25rem 0}.ui-card-header-row{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:.75rem}.ui-card-title{font-size:.9375rem;font-weight:600;line-height:1.3;letter-spacing:-.01em}.ui-card-description{font-size:.8125rem;color:var(--text-muted);line-height:1.4}.ui-card-content{padding:1rem 1.25rem 1.25rem}.ui-badge{display:inline-flex;align-items:center;border-radius:9999px;padding:.15rem .6rem;font-size:.6875rem;font-weight:600;border:1px solid transparent;white-space:nowrap}.ui-badge--default{background:var(--muted-light);color:var(--color-primary);border-color:var(--border)}.ui-badge--secondary{background:var(--primary-light);color:var(--color-primary)}.ui-badge--warning{background:rgba(180,83,9,.1);color:#92400e;border-color:rgba(180,83,9,.2)}.ui-badge--success{background:var(--primary-light);color:var(--color-primary)}.ui-badge--destructive{background:rgba(220,38,38,.1);color:#991b1b;border-color:rgba(220,38,38,.2)}.ui-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.625rem;gap:.625rem}.ui-stat-card-body{display:flex!important;align-items:flex-start;justify-content:space-between;gap:.75rem;padding-top:1rem!important;padding-bottom:1rem!important}.ui-stat-card-label{display:block;font-size:.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.25rem}.ui-stat-card-value{display:block;font-size:1.375rem;font-weight:700;line-height:1.1;letter-spacing:-.02em}.ui-stat-card-hint{display:block;margin-top:.25rem;font-size:.6875rem;color:var(--text-muted)}.ui-stat-card-icon{width:2.25rem;height:2.25rem;border-radius:.5rem;background:var(--muted-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ui-stat-card--accent .ui-stat-card-icon{background:var(--primary-light)}.ui-ops-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;padding-top:.25rem!important}.ui-ops-item{padding:.7rem .8rem;border-radius:.5rem;background:var(--muted-light);border:1px solid var(--border)}.ui-ops-label{display:block;font-size:.6875rem;color:var(--text-muted);margin-bottom:.2rem}.ui-ops-item strong{font-size:1.125rem;font-weight:700}.ui-progress-block{padding-top:0!important}.ui-progress-head{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-muted);margin-bottom:.4rem}.ui-progress-track{height:.5rem;border-radius:999px;background:var(--muted-light);overflow:hidden}.ui-progress-fill{height:100%;border-radius:inherit;background:var(--color-secondary)}.ui-pending-list{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem!important}.ui-pending-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem .8rem;border:1px solid var(--border);border-radius:.5rem;background:var(--muted-light)}.ui-pending-name{font-size:.875rem;font-weight:600;margin:0}.ui-pending-sub{font-size:.75rem;color:var(--text-muted);margin:.15rem 0 0}.ui-empty-state{font-size:.8125rem;color:var(--text-muted);text-align:center;padding:1rem .5rem;margin:0}.ui-quick-actions{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem!important}.ui-quick-btn{display:inline-flex;align-items:center;gap:.5rem;width:100%;padding:.65rem .85rem;border:1px solid var(--border);border-radius:.5rem;background:var(--color-tertiary);color:var(--color-primary);font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer;text-align:left;transition:background .15s ease}.ui-quick-btn:hover{background:var(--muted-light)}.ui-alert{display:flex;align-items:flex-start;gap:.6rem;padding:.8rem .9rem;border-radius:.5rem;border:1px solid rgba(180,83,9,.25);background:rgba(180,83,9,.08);color:#92400e;font-size:.8125rem;line-height:1.4}.ui-alert p{margin:0}.live-map-card--embedded{height:100%;max-height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}.live-map-stage{position:relative;flex:1 1;min-height:0;display:flex;flex-direction:column}.live-map-canvas--embedded{flex:1 1;min-height:0;height:100%}@media (max-width:1100px){.home-split{grid-template-columns:1fr;height:auto;max-height:none;min-height:auto;overflow:visible}.home-split-map{height:min(56vh,520px);min-height:360px}.live-map-card--embedded{height:100%;min-height:360px}}.header{margin-bottom:0}.header h1{font-size:1.375rem;font-weight:700;line-height:1.2}.header p{color:var(--text-muted);font-size:.8125rem;margin-top:.2rem}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:.75rem;gap:.75rem}.stat-card{background:var(--color-tertiary);border:1px solid var(--border);border-radius:.75rem;padding:1rem 1.125rem;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow)}.stat-info h3{font-size:.75rem;color:var(--text-muted);margin-bottom:.25rem;font-weight:500;text-transform:uppercase;letter-spacing:.02em}.stat-info p{font-size:1.5rem;font-weight:700;line-height:1.1}.stat-icon{width:40px;height:40px;border-radius:.625rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon.accent,.stat-icon.danger,.stat-icon.primary,.stat-icon.success,.stat-icon.warning{background:var(--primary-light);color:var(--color-primary)}.card{background:var(--color-tertiary);border:1px solid var(--border);border-radius:.75rem;padding:1.125rem 1.25rem;box-shadow:var(--shadow)}.card-title{font-size:1rem;font-weight:600;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center;gap:.75rem}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:.875rem 1.125rem;text-align:left;border-bottom:1px solid var(--border);line-height:1.45;vertical-align:middle}.table th{font-size:.75rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.table tr:last-child td{border-bottom:none}.table tr:hover{background:var(--muted-light)}.badge{padding:.2rem .6rem;border-radius:9999px;font-size:.6875rem;font-weight:600;display:inline-block}.badge.pending{background:var(--muted-light);color:var(--color-primary);border:1px solid var(--border)}.badge.approved{background:var(--color-primary);color:var(--color-secondary)}.badge.rejected,.badge.suspended{background:var(--color-primary);color:var(--color-tertiary)}.badge.role{background:var(--primary-light);color:var(--color-primary)}.badge.blocked{background:rgba(180,83,9,.1);color:#92400e;border:1px solid rgba(180,83,9,.2)}.btn{padding:.5rem 1rem;border-radius:.5rem;border:none;font-weight:600;font-family:inherit;font-size:.875rem;cursor:pointer;transition:opacity .15s ease,background .15s ease}.btn-primary{background:var(--color-primary);color:var(--color-white)}.btn-primary:hover{opacity:.88}.btn-accent{background:var(--color-secondary);color:var(--color-white)}.btn-accent:hover{background:var(--color-green-dark)}.btn-success{background:var(--color-secondary);color:var(--color-white)}.btn-danger{background:var(--color-primary);color:var(--color-tertiary)}.btn-danger:hover{opacity:.88}.btn-ghost{background:transparent;border:1px solid var(--border);color:var(--foreground)}.btn-sm{padding:.4rem .75rem;font-size:.75rem}.btn-outline{background:transparent;border:1.5px solid var(--color-primary);color:var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:var(--color-secondary)}.btn-danger-outline{background:transparent;border:1.5px solid var(--color-primary);color:var(--color-primary)}.btn-danger-outline:hover{background:var(--color-primary);color:var(--color-tertiary)}.btn-secondary{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border-radius:.5rem;border:1px solid var(--border);background:var(--color-tertiary);color:var(--foreground);font-weight:600;font-size:.875rem;font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease}.btn-secondary:hover:not(:disabled){background:var(--muted-light);border-color:var(--color-primary)}.btn-secondary:disabled{opacity:.55;cursor:not-allowed}.btn-secondary.active{background:var(--color-primary);color:var(--color-tertiary);border-color:var(--color-primary)}.catalog-panel{display:flex;flex-direction:column;gap:1.25rem}.catalog-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.catalog-header-text h2{font-size:1.125rem;font-weight:700;margin:0 0 .25rem}.catalog-header-text p{margin:0;color:var(--text-muted);font-size:.875rem}.catalog-toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.catalog-search{position:relative;flex:1 1;min-width:220px;max-width:360px}.catalog-search input{width:100%;padding:.55rem .875rem .55rem 2.25rem;border:1px solid var(--border);border-radius:.5rem;font-size:.875rem;font-family:inherit;background:var(--background)}.catalog-search input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--primary-light)}.catalog-search-icon{position:absolute;left:.7rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.catalog-tabs{display:flex;gap:.35rem;flex-wrap:wrap;padding:.25rem;background:var(--muted-light);border-radius:.625rem;border:1px solid var(--border);width:-moz-fit-content;width:fit-content}.catalog-tab{padding:.45rem 1rem;border:none;border-radius:.45rem;background:transparent;color:var(--text-muted);font-weight:600;font-size:.8125rem;font-family:inherit;cursor:pointer;transition:background .15s,color .15s}.catalog-tab:hover{color:var(--foreground)}.catalog-tab.active{background:var(--color-tertiary);color:var(--color-primary);box-shadow:var(--shadow)}.catalog-add-card{background:var(--muted-light);border:1px dashed var(--border);border-radius:.625rem;padding:1rem 1.125rem}.catalog-add-card h3{margin:0 0 .75rem;font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.catalog-add-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:.65rem;gap:.65rem;align-items:end}.catalog-add-form .form-control{width:100%}.btn-add{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem 1.25rem;border:none;border-radius:.5rem;background:var(--color-primary);color:var(--color-tertiary);font-weight:700;font-size:.875rem;font-family:inherit;cursor:pointer;transition:opacity .15s,background .15s;white-space:nowrap}.btn-add:hover:not(:disabled){opacity:.9}.btn-add:disabled{opacity:.6;cursor:not-allowed}.catalog-add-form .btn-add{grid-column:1/-1;justify-self:start}.catalog-add-form .btn-add:hover{opacity:.9}.catalog-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:.625rem}.catalog-table-wrap .table{margin:0}.catalog-table-wrap .table th{background:var(--muted-light)}.catalog-table-wrap .table tr.row-muted td{opacity:.55}.catalog-row-actions{display:flex;gap:.35rem;justify-content:flex-end}.catalog-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1px solid var(--border);border-radius:.4rem;background:var(--color-tertiary);color:var(--foreground);cursor:pointer;transition:background .15s,color .15s}.catalog-icon-btn:hover{background:var(--muted-light);border-color:var(--color-primary)}.catalog-icon-btn.danger:hover{background:rgba(180,83,9,.1);border-color:#b45309;color:#92400e}.catalog-badge{display:inline-flex;align-items:center;padding:.15rem .55rem;border-radius:9999px;font-size:.6875rem;font-weight:700}.catalog-badge.on{background:rgba(34,197,94,.12);color:#15803d}.catalog-badge.off{background:var(--muted-light);color:var(--text-muted)}.catalog-alert{padding:.65rem .875rem;border-radius:.5rem;font-size:.875rem;font-weight:500}.catalog-alert.error{background:rgba(220,38,38,.08);color:#b91c1c;border:1px solid rgba(220,38,38,.2)}.catalog-alert.success{background:rgba(34,197,94,.1);color:#15803d;border:1px solid rgba(34,197,94,.2)}.catalog-empty{text-align:center;padding:2rem 1rem;color:var(--text-muted);font-size:.875rem}.catalog-toolbar .btn-add{margin-left:auto}.catalog-modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.catalog-modal-head h2{margin:0;font-size:1.125rem}.catalog-modal-form{display:flex;flex-direction:column;gap:.25rem}.catalog-form-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.75rem;gap:.75rem}@media (max-width:520px){.catalog-form-grid{grid-template-columns:1fr}}.city-tariff-pair{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;margin-top:.5rem}@media (max-width:640px){.city-tariff-pair{grid-template-columns:1fr}}.city-tariff-column{border:1px solid var(--border);border-radius:.5rem;padding:.75rem 1rem;margin:0}.city-tariff-column legend{font-weight:600;font-size:.875rem;padding:0 .35rem}.city-tariff-cell{font-size:.8125rem;color:var(--text-muted);max-width:14rem}.catalog-modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.catalog-code{font-size:.8125rem;padding:.15rem .45rem;background:var(--muted-light);border-radius:.35rem;font-family:ui-monospace,monospace}.catalog-hint,.catalog-sub{color:var(--text-muted);font-size:.8125rem}.catalog-hint{margin:.5rem 0 0}.catalog-check{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem}.catalog-edit-modal{width:100%}.catalog-edit-modal,.modal-content.catalog-edit-modal{max-width:min(560px,96vw)}.modal-content.config-city-modal{max-width:min(1040px,96vw);max-height:min(92vh,900px);overflow-y:auto;padding:1.5rem 1.75rem}.config-city-modal .catalog-modal-form{gap:.5rem}.config-city-modal .city-tariff-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.config-city-modal .city-tariff-column{min-width:0;padding:1rem 1.125rem}.config-city-modal .city-tariff-column .form-group label{font-size:.75rem;line-height:1.35}@media (max-width:900px){.config-city-modal .city-tariff-pair{grid-template-columns:1fr}}@media (max-width:640px){.modal-content.config-city-modal{max-height:94vh;padding:1.25rem 1rem}.config-city-modal .catalog-form-grid{grid-template-columns:1fr}}.catalog-edit-modal .form-group{margin-bottom:.875rem}.catalog-edit-modal .modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border)}@keyframes catalog-spin{to{transform:rotate(1turn)}}.catalog-panel .spin{animation:catalog-spin .8s linear infinite}.btn-toolbar{background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.25);color:var(--color-white)}.btn-toolbar:hover{background:var(--color-secondary);color:var(--color-white);border-color:var(--color-secondary)}.modal-backdrop{position:fixed;inset:0;background:rgba(12,12,11,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-backdrop--elevated{z-index:1100}.modal-backdrop--top{z-index:1200}.modal-content{background:var(--color-tertiary);border:1px solid var(--border);border-radius:.75rem;width:100%;max-width:500px;padding:1.5rem;gap:1.25rem;box-shadow:var(--shadow);color:var(--foreground)}.form-group,.modal-content{display:flex;flex-direction:column}.form-group{gap:.35rem}.form-group label{font-size:.8125rem;font-weight:500}.form-control{background:var(--color-tertiary);border:1px solid var(--border);border-radius:.5rem;padding:.625rem .875rem;color:var(--foreground);font-family:inherit;font-size:.875rem}.form-control:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--primary-light)}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1.5rem;background:var(--background)}.login-card{width:100%;max-width:380px}.live-map-card{background:var(--color-white);border:1px solid var(--border);border-radius:.75rem;padding:1rem 1.125rem;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:.75rem;min-height:360px}.live-map-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;flex-shrink:0}.live-map-header h2{font-size:1rem;font-weight:700}.live-map-header p{color:var(--text-muted);font-size:.75rem;margin-top:.15rem}.live-map-count{font-weight:600;color:var(--color-primary);background:var(--primary-light);padding:.3rem .65rem;border-radius:999px;font-size:.75rem;white-space:nowrap}.live-map-canvas{flex:1 1;width:100%;min-height:320px;border-radius:.5rem;overflow:hidden;border:1px solid var(--border);background:#e8eaed}.live-map-canvas--tall{min-height:380px}.live-map-driver-panel{position:absolute;left:.75rem;bottom:.75rem;z-index:500;width:min(320px,calc(100% - 1.5rem));padding:1rem;border-radius:.75rem;background:var(--color-white);border:1px solid var(--border);box-shadow:0 12px 32px rgba(12,12,11,.18)}.live-map-driver-panel-close{position:absolute;top:.5rem;right:.5rem;border:none;background:transparent;color:var(--text-muted);cursor:pointer;padding:.2rem;border-radius:.35rem}.live-map-driver-panel-close:hover{background:var(--muted-light);color:var(--color-primary)}.live-map-driver-panel-head{display:flex;align-items:center;gap:.65rem;margin-bottom:.75rem;padding-right:1.25rem}.live-map-driver-panel-head h3{margin:0;font-size:.9375rem;font-weight:700}.live-map-driver-plate{margin:.15rem 0 0;font-size:.8125rem;font-weight:600;color:var(--color-secondary)}.live-map-driver-avatar{width:44px;height:44px;border-radius:999px;object-fit:cover;flex-shrink:0}.live-map-driver-avatar--placeholder{display:flex;align-items:center;justify-content:center;background:var(--primary-light);color:var(--color-secondary);font-weight:700;font-size:1rem}.live-map-driver-fields{display:grid;grid-gap:.45rem;gap:.45rem;margin:0 0 .85rem}.live-map-driver-fields div{display:grid;grid-template-columns:88px 1fr;grid-gap:.35rem;gap:.35rem;align-items:start}.live-map-driver-fields dt{font-size:.75rem;color:var(--text-muted)}.live-map-driver-fields dd{margin:0;font-size:.8125rem;font-weight:500;color:var(--color-primary)}.live-map-driver-panel-cta{width:100%;justify-content:center}.placeholder-panel{text-align:center;padding:2.5rem 1.5rem;color:var(--text-muted)}.placeholder-panel svg{opacity:.35;margin-bottom:.75rem}@media (max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}.permissions-gate-backdrop{position:fixed;inset:0;z-index:1500;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:rgba(12,12,11,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.permissions-gate{width:min(440px,100%);padding:1.75rem 1.5rem;border-radius:.875rem;background:var(--color-tertiary);border:1px solid var(--border);box-shadow:0 24px 48px rgba(12,12,11,.25);text-align:center}.permissions-gate-icon{width:56px;height:56px;margin:0 auto 1rem;border-radius:.75rem;background:var(--primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center}.permissions-gate-title{margin:0 0 .5rem;font-size:1.25rem;font-weight:800;color:var(--color-primary)}.permissions-gate-text{margin:0 0 1rem;font-size:.875rem;line-height:1.5;color:var(--text-muted)}.permissions-gate-blocked{margin:0 0 1rem;padding:.75rem .9rem;border-radius:.625rem;background:rgba(180,83,9,.08);border:1px solid rgba(180,83,9,.2);font-size:.8125rem;line-height:1.45;color:#92400e;text-align:left}.permissions-gate-cta{width:100%;padding:.8rem 1rem;font-size:.9375rem}.permissions-gate-skip{margin-top:.75rem;border:none;background:transparent;color:var(--text-muted);font-size:.8125rem;font-weight:600;cursor:pointer;text-decoration:underline;font-family:inherit}.permissions-banner{padding:1rem 1.125rem}.permissions-banner-head{justify-content:space-between;margin-bottom:.875rem}.permissions-banner-brand,.permissions-banner-head{display:flex;align-items:flex-start;gap:.75rem}.permissions-banner-icon{width:40px;height:40px;border-radius:.625rem;background:var(--primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.permissions-banner-title{margin:0;font-size:1rem;font-weight:700;line-height:1.25;color:var(--color-primary)}.permissions-banner-subtitle{margin:.2rem 0 0;font-size:.8125rem;line-height:1.4;color:var(--text-muted)}.permissions-banner-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0}.permissions-banner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.permissions-item{padding:.875rem 1rem;border-radius:.625rem;background:var(--muted-light);border:1px solid var(--border);display:flex;flex-direction:column;gap:.5rem}.permissions-item-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.permissions-item-label{display:flex;align-items:center;gap:.4rem;font-size:.875rem;font-weight:600;color:var(--color-primary)}.permissions-item-hint{margin:0;font-size:.75rem;line-height:1.4;color:var(--text-muted);flex:1 1}.permissions-item .btn{align-self:flex-start}.permissions-floating-btn{position:fixed;bottom:1.25rem;left:1.25rem;z-index:1100;display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1rem;border:1px solid var(--border);border-radius:999px;background:var(--color-primary);color:var(--color-secondary);font-size:.8125rem;font-weight:700;font-family:inherit;cursor:pointer;box-shadow:var(--shadow)}.permissions-floating-btn:hover{opacity:.9}@media (max-width:768px){.permissions-banner-grid{grid-template-columns:1fr}}.sos-modal-backdrop{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:rgba(12,12,11,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:sos-fade-in .25s ease-out}@keyframes sos-fade-in{0%{opacity:0}to{opacity:1}}.sos-modal{width:min(920px,100%);max-height:min(88vh,820px);overflow:auto;background:var(--color-tertiary);border:1px solid var(--border);border-radius:.875rem;box-shadow:0 24px 48px rgba(12,12,11,.2);animation:sos-scale-in .3s ease-out}@keyframes sos-scale-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.sos-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.125rem 1.375rem;border-bottom:1px solid var(--border);background:var(--color-primary)}.sos-alert-title{display:flex;align-items:center;gap:.6rem;color:var(--color-secondary);font-weight:800;font-size:1.2rem}.sos-alert-title svg{color:#f87171}.sos-alert-dismiss{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid hsla(60,23%,97%,.2);border-radius:8px;background:hsla(60,23%,97%,.08);color:var(--color-tertiary);cursor:pointer}.sos-alert-dismiss:hover{background:hsla(60,23%,97%,.14)}.sos-modal-body{display:grid;grid-template-columns:minmax(260px,1fr) minmax(320px,1.2fr);grid-gap:0;gap:0}.sos-modal-info{padding:1.5rem;display:flex;flex-direction:column;gap:.35rem}.sos-modal-map-wrap{padding:1rem 1.25rem 1.25rem 0;display:flex;flex-direction:column;min-height:360px}.sos-modal-map-label{margin:0 0 .5rem;font-size:.8125rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.sos-modal-map{flex:1 1;min-height:320px;border-radius:.5rem;border:1px solid var(--border);overflow:hidden}.sos-map-marker{background:transparent;border:none}.sos-map-marker-pulse{width:28px;height:28px;border-radius:50%;background:#dc2626;border:3px solid #fff;box-shadow:0 0 0 6px rgba(220,38,38,.35);animation:sos-pulse 1.5s ease-out infinite}@keyframes sos-pulse{0%{box-shadow:0 0 0 0 rgba(220,38,38,.5)}70%{box-shadow:0 0 0 14px rgba(220,38,38,0)}to{box-shadow:0 0 0 0 rgba(220,38,38,0)}}.sos-alert-name{font-weight:800;font-size:1.375rem;color:var(--color-primary);margin:0}.sos-alert-meta{font-size:.875rem;color:var(--text-muted);margin:0 0 .5rem}.sos-alert-row{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--color-primary);margin:.15rem 0}.sos-alert-row a{color:var(--color-primary);text-decoration:none;font-weight:600}.sos-alert-row a:hover{text-decoration:underline}.sos-alert-address{margin:.2rem 0;line-height:1.4}.sos-alert-address,.sos-alert-time{font-size:.8125rem;color:var(--text-muted)}.sos-alert-time{margin:.75rem 0 .25rem}.sos-alert-map-link{display:inline-block;margin-top:.5rem;padding:.5rem .9rem;font-size:.8125rem;font-weight:700;color:var(--color-primary);background:var(--color-secondary);border-radius:.5rem;text-decoration:none;align-self:flex-start}.sos-alert-map-link:hover{opacity:.9}.sos-alerts-queue{position:fixed;bottom:1.25rem;right:1.25rem;z-index:2100;display:flex;flex-direction:column;gap:.5rem;max-width:min(320px,calc(100vw - 32px))}.sos-queue-pill{padding:.55rem .9rem;border:1px solid var(--border);border-radius:999px;background:var(--color-primary);color:var(--color-secondary);font-size:.8125rem;font-weight:700;cursor:pointer;box-shadow:var(--shadow)}.sos-queue-pill:hover{opacity:.9}@media (max-width:768px){.sos-modal-body{grid-template-columns:1fr}.sos-modal-map-wrap{padding:0 1.25rem 1.25rem}}.drivers-page{display:flex;flex-direction:column;gap:.875rem;width:100%}.drivers-toolbar-card{overflow:hidden;border-color:var(--color-primary)}.drivers-toolbar-card .ui-card-header{background:var(--color-primary);padding:1rem 1.25rem;margin:0;border-bottom:3px solid var(--color-secondary)}.drivers-toolbar-card .ui-card-title{color:var(--color-tertiary);font-size:1.125rem}.drivers-toolbar-card .ui-card-description{color:hsla(60,23%,97%,.72)}.drivers-toolbar-card .ui-card-content{padding-top:1rem!important}.drivers-toolbar-head{flex-direction:row!important;align-items:flex-start!important;justify-content:space-between!important}.drivers-toolbar-body{display:flex;flex-direction:column;gap:.875rem}.drivers-filter-tabs{display:flex;flex-wrap:wrap;gap:.5rem}.drivers-filter-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .8rem;border:1px solid var(--border);border-radius:999px;background:var(--color-tertiary);color:var(--color-primary);font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s ease,border-color .15s ease}.drivers-filter-tab:hover{background:var(--muted-light)}.drivers-filter-tab--active{background:var(--color-primary);color:var(--color-secondary);border-color:var(--color-primary)}.drivers-filter-count{min-width:1.25rem;height:1.25rem;padding:0 .35rem;border-radius:999px;background:rgba(12,12,11,.08);font-size:.6875rem;display:inline-flex;align-items:center;justify-content:center}.drivers-filter-tab--active .drivers-filter-count{background:hsla(82,85%,67%,.2);color:var(--color-secondary)}.drivers-search{position:relative}.drivers-search-icon{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.drivers-search-input{width:100%;padding:.7rem .9rem .7rem 2.5rem;border:1px solid var(--border);border-radius:.625rem;background:var(--muted-light);color:var(--color-primary);font-size:.875rem;font-family:inherit}.drivers-search-input:focus{outline:none;border-color:var(--color-primary);background:var(--color-tertiary)}.drivers-table-card{overflow:hidden;border-color:var(--color-primary)}.drivers-table-wrap{overflow-x:auto}.drivers-table{width:100%;min-width:1240px;border-collapse:collapse}.drivers-table td,.drivers-table th{padding:.85rem 1rem;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.drivers-table th{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-secondary);background:var(--color-primary);position:-webkit-sticky;position:sticky;top:0;z-index:1}.drivers-table tbody tr:hover{background:rgba(12,12,11,.04)}.drivers-table tbody tr:nth-child(2n){background:rgba(12,12,11,.02)}.drivers-table tbody tr:nth-child(2n):hover{background:rgba(12,12,11,.05)}.drivers-cell-user{display:flex;align-items:center;gap:.7rem;min-width:180px}.drivers-avatar{width:40px;height:40px;border-radius:999px;object-fit:cover;flex-shrink:0}.drivers-avatar--placeholder{display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:var(--color-secondary);font-size:.75rem;font-weight:700}.drivers-name{font-weight:600;font-size:.875rem}.drivers-sub{font-size:.75rem;color:var(--text-muted)}.drivers-stack{display:flex;flex-direction:column;gap:.15rem;min-width:120px}.drivers-plate{display:inline-flex;padding:.25rem .55rem;border-radius:.375rem;background:var(--color-primary);color:var(--color-secondary);font-weight:700;font-size:.8125rem;letter-spacing:.05em}.drivers-actions{display:flex;flex-wrap:wrap;gap:.4rem;min-width:200px}.drivers-actions .btn{display:inline-flex;align-items:center;gap:.3rem;white-space:nowrap}.drivers-status-cell{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start}.drivers-online{font-size:.6875rem;color:var(--text-muted)}.drivers-online--on{color:#166534;font-weight:600}.drivers-empty{text-align:center;color:var(--text-muted);padding:2.5rem 1rem!important}.driver-detail-modal{width:min(1080px,96vw);max-height:94vh}.driver-detail-modal,.driver-history-modal{max-width:none;overflow-y:auto;padding:1.75rem 2rem}.driver-history-modal{width:min(960px,96vw);max-height:92vh}.driver-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1rem}.driver-detail-title{font-size:1.25rem;font-weight:700;margin:0}.driver-detail-subtitle{margin:.2rem 0 0;font-size:.8125rem;color:var(--text-muted)}.driver-detail-close{width:36px;height:36px;padding:0}.driver-detail-hero{display:flex;gap:1.25rem;align-items:center;padding:1.25rem 1.5rem;border:1px solid var(--color-primary);border-radius:.75rem;background:var(--color-primary);color:var(--color-tertiary);margin-bottom:1.25rem}.driver-detail-avatar{width:72px;height:72px;border-radius:999px;object-fit:cover;flex-shrink:0}.driver-detail-avatar--placeholder{display:flex;align-items:center;justify-content:center;background:var(--color-secondary);color:var(--color-primary);font-weight:800;font-size:1.125rem}.driver-detail-hero-info h3{margin:0;font-size:1.25rem;color:var(--color-tertiary)}.driver-detail-hero-info p{margin:.25rem 0 .65rem;font-size:.875rem;color:hsla(60,23%,97%,.75)}.driver-detail-section-card{border-color:var(--color-primary)}.driver-detail-plate{display:inline-flex;padding:.15rem .45rem;border-radius:.35rem;background:var(--color-primary);color:var(--color-secondary);width:-moz-fit-content;width:fit-content}.driver-detail-badges{display:flex;flex-wrap:wrap;gap:.35rem}.driver-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:.75rem}.driver-detail-fields{display:grid;grid-gap:.65rem;gap:.65rem;padding-top:.25rem!important}.driver-detail-fields div{display:flex;flex-direction:column;gap:.15rem}.driver-detail-fields span{font-size:.6875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.driver-detail-fields strong{font-size:.875rem}.driver-detail-docs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;padding-top:.5rem!important}.driver-detail-doc span{display:block;font-size:.75rem;color:var(--text-muted);margin-bottom:.35rem}.driver-detail-doc img{width:100%;height:220px;object-fit:cover;border-radius:.5rem;border:2px solid var(--color-primary);transition:opacity .15s ease}.driver-detail-doc a:hover img{opacity:.88}.driver-detail-doc-empty{height:220px;border:1px dashed var(--border);border-radius:.5rem;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.8125rem}.driver-detail-notes-prev{margin:0;font-size:.875rem;color:var(--text-muted);line-height:1.45}.driver-detail-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.5rem}.driver-detail-actions .btn{display:inline-flex;align-items:center;gap:.4rem}.confirm-dialog-backdrop{position:fixed;inset:0;background:rgba(12,12,11,.65);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:1100;padding:1rem}.confirm-dialog{background:var(--color-tertiary);border:2px solid var(--color-primary);border-radius:.875rem;width:min(420px,100%);padding:1.5rem;box-shadow:0 20px 50px rgba(12,12,11,.25);text-align:center}.confirm-dialog-icon{width:48px;height:48px;margin:0 auto .75rem;border-radius:999px;background:var(--color-primary);color:var(--color-secondary);display:flex;align-items:center;justify-content:center}.confirm-dialog-title{margin:0 0 .5rem;font-size:1.125rem;font-weight:700;color:var(--color-primary)}.confirm-dialog-message{margin:0 0 1.25rem;font-size:.875rem;color:var(--text-muted);line-height:1.5}.confirm-dialog-actions{display:flex;gap:.6rem;justify-content:center}.confirm-dialog-actions .btn{min-width:110px}.rides-page{display:flex;flex-direction:column;gap:.875rem;width:100%}.rides-toolbar-card{overflow:hidden;border-color:var(--color-primary)}.rides-toolbar-card .ui-card-header{background:var(--color-primary);padding:1rem 1.25rem;margin:0;border-bottom:3px solid var(--color-secondary)}.rides-toolbar-card .ui-card-title{color:var(--color-tertiary);font-size:1.125rem}.rides-toolbar-card .ui-card-description{color:hsla(60,23%,97%,.72)}.rides-toolbar-head{flex-direction:row!important;align-items:flex-start!important;justify-content:space-between!important}.rides-toolbar-body{display:flex;flex-direction:column;gap:.875rem}.rides-filter-tabs{display:flex;flex-wrap:wrap;gap:.5rem}.rides-filter-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .8rem;border:1px solid var(--border);border-radius:999px;background:var(--color-tertiary);color:var(--color-primary);font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer}.rides-filter-tab--active{background:var(--color-primary);color:var(--color-secondary);border-color:var(--color-primary)}.rides-filter-count{min-width:1.25rem;height:1.25rem;padding:0 .35rem;border-radius:999px;background:rgba(12,12,11,.08);font-size:.6875rem;display:inline-flex;align-items:center;justify-content:center}.rides-filter-tab--active .rides-filter-count{background:hsla(82,85%,67%,.2);color:var(--color-secondary)}.rides-filters-row{display:flex;flex-direction:column;gap:.75rem}.rides-date-range{display:flex;flex-wrap:wrap;gap:.6rem;align-items:flex-end}.rides-date-field{display:flex;flex-direction:column;gap:.2rem;font-size:.6875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.rides-date-input{padding:.55rem .7rem;border:1px solid var(--border);border-radius:.5rem;background:var(--muted-light);color:var(--color-primary);font-family:inherit;font-size:.875rem}.rides-search{position:relative;display:flex;gap:.5rem;align-items:stretch}.rides-search-icon{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.rides-search-input{flex:1 1;padding:.7rem .9rem .7rem 2.5rem;border:1px solid var(--border);border-radius:.625rem;background:var(--muted-light);color:var(--color-primary);font-size:.875rem;font-family:inherit}.rides-search-btn{flex-shrink:0}.rides-error{padding:.75rem 1rem;border:1px solid var(--color-primary);border-radius:.5rem;background:rgba(12,12,11,.05);color:var(--color-primary);font-size:.875rem}.rides-table-card{overflow:hidden;border-color:var(--color-primary)}.rides-table-wrap{overflow-x:auto}.rides-table{width:100%;min-width:1320px;border-collapse:collapse}.rides-table td,.rides-table th{padding:.85rem 1rem;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.rides-table th{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-secondary);background:var(--color-primary);position:-webkit-sticky;position:sticky;top:0;z-index:1}.rides-table tbody tr:nth-child(2n){background:rgba(12,12,11,.02)}.rides-table tbody tr:hover{background:rgba(12,12,11,.05)}.rides-stack{display:flex;flex-direction:column;gap:.15rem;min-width:110px}.rides-name{font-weight:600;font-size:.875rem}.rides-sub{font-size:.75rem;color:var(--text-muted)}.rides-id{font-family:ui-monospace,monospace;font-weight:700;font-size:.8125rem;color:var(--color-primary)}.rides-route span{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rides-platform{padding:.2rem .55rem;background:var(--color-primary);color:var(--color-secondary)}.rides-platform,.rides-status{display:inline-flex;border-radius:999px;font-size:.75rem;font-weight:600}.rides-status{padding:.25rem .55rem}.rides-status--active{background:rgba(12,12,11,.08);color:var(--color-primary);border:1px solid var(--border)}.rides-status--completed{background:var(--color-primary);color:var(--color-secondary)}.rides-status--cancelled{background:var(--color-primary);color:var(--color-tertiary);border:1px solid var(--color-primary)}.rides-cancel-reason{font-size:.8125rem;font-weight:500;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rides-empty{text-align:center;color:var(--text-muted);padding:2.5rem 1rem!important}.ride-detail-modal{width:min(960px,96vw);max-width:none;max-height:94vh;overflow-y:auto;padding:1.75rem 2rem}.ride-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1rem}.ride-detail-title{margin:0;font-size:1.25rem;font-weight:700}.ride-detail-subtitle{margin:.2rem 0 0;font-size:.75rem;color:var(--text-muted);font-family:ui-monospace,monospace}.ride-detail-hero{padding:1rem 1.25rem;border-radius:.75rem;background:var(--color-primary);color:var(--color-tertiary);margin-bottom:1rem}.ride-detail-hero-main{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.5rem}.ride-detail-platform{padding:.2rem .55rem;border-radius:999px;background:var(--color-secondary);color:var(--color-primary);font-size:.75rem;font-weight:700}.ride-detail-hero-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.8125rem;color:hsla(60,23%,97%,.75)}.ride-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:.75rem}.ride-detail-section-card{border-color:var(--color-primary)}.ride-detail-fields{display:grid;grid-gap:.65rem;gap:.65rem;padding-top:.25rem!important}.ride-detail-fields div{display:flex;flex-direction:column;gap:.15rem}.ride-detail-fields span{font-size:.6875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.ride-detail-fields strong{font-size:.875rem}.ride-detail-fare-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.ride-detail-cancel-card{border-color:var(--color-primary);background:rgba(12,12,11,.03)}.ride-detail-actors{display:flex;flex-wrap:wrap;gap:.6rem;padding-top:.25rem!important}.ride-detail-actor{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .7rem;border:1px solid var(--border);border-radius:.5rem;background:var(--muted-light);font-size:.8125rem}.ride-detail-empty-person{margin:0;color:var(--text-muted);font-size:.875rem}.ride-detail-timeline{display:grid;grid-gap:.65rem;gap:.65rem;padding-top:.25rem!important}.ride-detail-timeline-item{display:flex;gap:.65rem;align-items:flex-start}.ride-detail-timeline-dot{width:10px;height:10px;border-radius:999px;background:var(--color-secondary);border:2px solid var(--color-primary);margin-top:.35rem;flex-shrink:0}.ride-detail-timeline-item div{display:flex;flex-direction:column;gap:.1rem}.ride-detail-timeline-item strong{font-size:.875rem}.ride-detail-timeline-item span{font-size:.75rem;color:var(--text-muted)}.ride-chat-card .ui-card-content{padding-top:.25rem!important}.ride-chat-title{display:inline-flex;align-items:center;gap:.45rem}.ride-chat-body{display:flex;flex-direction:column;gap:.5rem}.ride-chat-error{margin:0;padding:.65rem .85rem;border-radius:.5rem;background:rgba(12,12,11,.06);color:var(--color-primary);font-size:.875rem}.ride-chat-empty{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2rem 1rem;text-align:center;color:var(--text-muted);border:1px dashed var(--border);border-radius:.75rem}.ride-chat-empty p{margin:0;font-size:.875rem}.ride-chat-thread{display:flex;flex-direction:column;gap:.65rem;max-height:360px;overflow-y:auto;padding:.85rem;border:1px solid var(--border);border-radius:.75rem;background:var(--muted-light)}.ride-chat-bubble-wrap{display:flex}.ride-chat-bubble-wrap--passenger{justify-content:flex-start}.ride-chat-bubble-wrap--driver{justify-content:flex-end}.ride-chat-bubble-wrap--other{justify-content:center}.ride-chat-bubble{max-width:min(78%,520px);padding:.65rem .8rem;border-radius:.75rem;display:flex;flex-direction:column;gap:.3rem}.ride-chat-bubble--passenger{background:var(--color-tertiary);border:1.5px solid var(--color-primary);color:var(--color-primary)}.ride-chat-bubble--driver{background:var(--color-primary);color:var(--color-tertiary)}.ride-chat-bubble--other{background:rgba(12,12,11,.08);border:1px solid var(--border)}.ride-chat-bubble-head{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;font-size:.6875rem}.ride-chat-bubble-head strong{font-size:.75rem}.ride-chat-bubble--driver .ride-chat-bubble-head span{color:hsla(60,23%,97%,.72)}.ride-chat-type{padding:.1rem .35rem;border-radius:999px;background:hsla(82,85%,67%,.25);font-weight:600}.ride-chat-bubble-content{font-size:.875rem;line-height:1.45;white-space:pre-wrap;word-break:break-word}.ride-chat-time{font-size:.6875rem;opacity:.75}.ride-chat-location{font-style:italic}.ride-chat-image-link{display:block}.ride-chat-image{max-width:100%;max-height:180px;border-radius:.5rem;object-fit:cover;border:1px solid var(--border)}@media (max-width:900px){.top-nav-item span,.top-nav-logout span{display:none}.main-content{padding:1rem;gap:1rem}.stats-grid{grid-template-columns:1fr 1fr}.driver-detail-docs,.driver-detail-grid,.ride-detail-fare-row,.ride-detail-grid{grid-template-columns:1fr}.rides-filters-row{gap:.5rem}}.lost-found-panel .lost-muted,.support-panel .support-muted{font-size:.875rem;color:var(--text-muted)}.lost-found-error,.support-error{color:#b42318;font-size:.875rem}.lost-item-list,.support-ticket-list{display:flex;flex-direction:column;gap:.5rem;max-height:65vh;overflow-y:auto}.lost-item-row,.support-ticket-item{text-align:left;padding:.75rem 1rem;border-radius:.75rem;border:1px solid var(--border);background:transparent;cursor:pointer;transition:background .15s ease,border-color .15s ease}.lost-item-row:hover,.support-ticket-item:hover{background:var(--muted-light)}.lost-item-row.is-active,.support-ticket-item.is-active{background:var(--primary-light);border-color:rgba(12,12,11,.2)}.lost-item-row-head,.support-ticket-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.lost-item-title,.support-ticket-subject{font-weight:600;color:var(--color-primary)}.lost-item-meta,.support-ticket-meta{margin-top:.25rem;font-size:.8rem;color:var(--text-muted)}.lost-badge,.support-badge{font-size:.7rem;font-weight:700;padding:.2rem .5rem;border-radius:999px;white-space:nowrap}.lost-badge-open,.support-badge-open{background:hsla(82,85%,67%,.45);color:var(--color-primary)}.lost-badge-in_progress,.support-badge-pending{background:rgba(12,12,11,.08);color:var(--color-primary)}.lost-badge-resolved,.support-badge-resolved{background:rgba(12,12,11,.12);color:var(--color-primary)}.lost-badge-closed,.support-badge-closed{background:rgba(12,12,11,.06);color:var(--text-muted)}.lost-detail,.support-detail{display:flex;flex-direction:column;gap:1rem}.lost-detail-header,.support-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.lost-status-row,.support-status-row{display:flex;gap:.5rem;flex-wrap:wrap}.support-messages{display:flex;flex-direction:column;gap:.5rem;max-height:42vh;overflow-y:auto;padding:.25rem}.support-message{max-width:82%;padding:.6rem .85rem;border-radius:.85rem;font-size:.9rem;line-height:1.45}.support-message.is-user{align-self:flex-start;background:var(--muted-light);color:var(--color-primary)}.support-message.is-admin{align-self:flex-end;background:var(--color-primary);color:var(--color-tertiary)}.support-message-sender{font-size:.72rem;opacity:.75;margin-bottom:.25rem}.image-thumb,.support-message-image{display:block;margin-top:.5rem;max-width:120px;max-height:88px;border-radius:.5rem;border:1px solid var(--border);overflow:hidden;padding:0;background:transparent;cursor:zoom-in}.image-thumb img,.support-message-image{width:100%;height:100%;object-fit:cover;display:block}.image-lightbox{position:fixed;inset:0;z-index:2000;background:rgba(12,12,11,.82);display:flex;align-items:center;justify-content:center;padding:1.5rem}.image-lightbox-dialog{display:flex;flex-direction:column;align-items:center;gap:.75rem;max-width:min(92vw,960px);max-height:92vh}.image-lightbox-full{max-width:100%;max-height:calc(92vh - 3rem);object-fit:contain;border-radius:.75rem}.image-lightbox-close{color:var(--color-tertiary)}.image-thumb-error{margin-top:.5rem;font-size:.8rem;color:#b42318}.support-pending-photo{display:flex;align-items:center;gap:.75rem}.support-pending-photo img{height:72px;border-radius:.5rem;object-fit:cover}.support-compose{display:flex;gap:.5rem;align-items:center}.support-attach-btn{flex-shrink:0;padding:.5rem}.support-reply-input{flex:1 1}.lost-detail-photo{max-width:100%;border-radius:.75rem;border:1px solid var(--border)}.lost-detail-info{font-size:.875rem;color:var(--text-muted);display:flex;flex-direction:column;gap:.35rem;padding:.75rem 1rem;background:var(--muted-light);border-radius:.75rem}.top-nav-brand{text-decoration:none}.top-nav-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.top-nav-icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:.5rem;color:hsla(60,23%,97%,.85);text-decoration:none;transition:background .15s ease,color .15s ease}.top-nav-icon-btn.active,.top-nav-icon-btn:hover{background:var(--color-secondary);color:var(--color-white)}.top-nav-dropdown{position:relative;flex-shrink:0}.top-nav-dropdown-trigger{font-family:inherit}.top-nav-dropdown-trigger .rotated{transform:rotate(180deg)}.top-nav-dropdown-menu{position:absolute;top:calc(100% + .35rem);left:0;min-width:200px;background:var(--color-primary);border:1px solid hsla(0,0%,100%,.15);border-radius:.65rem;padding:.35rem;box-shadow:0 8px 24px rgba(0,0,0,.25);z-index:300}.top-nav-dropdown-item{display:flex;align-items:center;gap:.5rem;padding:.55rem .75rem;border-radius:.45rem;color:hsla(0,0%,100%,.88);text-decoration:none;font-size:.8125rem}.top-nav-dropdown-item.active,.top-nav-dropdown-item:hover{background:var(--color-secondary);color:var(--color-white)}.login-title{text-align:center;margin-bottom:.35rem;font-weight:700;font-size:1.35rem}.login-subtitle{text-align:center;color:var(--text-muted);margin-bottom:1.25rem;font-size:.875rem}.login-form{display:flex;flex-direction:column;gap:1rem}.login-submit{width:100%;padding:.875rem;background:var(--color-secondary);color:var(--color-primary)}.dispatch-msg{margin-bottom:1rem;padding:.75rem 1rem;border-radius:.5rem;font-size:.875rem;border:1px solid var(--border)}.dispatch-msg--ok{background:var(--primary-light);color:var(--color-primary)}.dispatch-msg--err{background:var(--muted-light);color:var(--color-primary)}.panel-card-body{padding:1.375rem 1.5rem 1.5rem;display:flex;flex-direction:column;gap:1.25rem}.panel-card-body>.card-title{margin-bottom:0}.notifications-broadcast{display:flex;flex-direction:column;gap:1.25rem}.panel-section{display:flex;flex-direction:column;gap:1.5rem}.panel-section-head{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem 1.5rem 0}.panel-section-head h2{font-size:1.0625rem;font-weight:600;margin:0;line-height:1.3}.panel-section-head p{margin:.4rem 0 0;font-size:.8125rem;color:var(--text-muted);line-height:1.5}.panel-section-head svg{flex-shrink:0;margin-top:.15rem;color:var(--color-primary)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1.25rem 1.5rem;gap:1.25rem 1.5rem;padding:0 1.5rem}.form-field{display:flex;flex-direction:column;gap:.5rem;min-width:0}.form-field>span{font-size:.8125rem;font-weight:500}.form-field--full{grid-column:1/-1}.form-field input,.form-field select,.form-field textarea{width:100%;background:var(--color-tertiary);border:1px solid var(--border);border-radius:.5rem;padding:.625rem .875rem;color:var(--foreground);font-family:inherit;font-size:.875rem}.form-field textarea{resize:vertical;min-height:6.5rem;line-height:1.45}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--primary-light)}.panel-section .dispatch-msg{margin:0 1.5rem}.panel-actions{display:flex;flex-wrap:wrap;gap:.75rem;padding:1.25rem 1.5rem 1.5rem;border-top:1px solid var(--border);margin-top:.25rem}.data-table-wrap{overflow-x:auto;margin-top:.25rem}.data-table-wrap .table th{padding-top:1rem;padding-bottom:.75rem}.data-table-wrap .table td{padding-top:.9rem;padding-bottom:.9rem}.clientes-form-grid{display:grid;grid-template-columns:minmax(280px,1fr) minmax(320px,1fr);grid-gap:2rem;gap:2rem;align-items:start}.clientes-form-fields{display:flex;flex-direction:column;gap:1.25rem}.clientes-form-fields .form-group{gap:.5rem}.clientes-map-col{display:flex;flex-direction:column;gap:.75rem}.form-hint{font-size:.75rem;color:var(--text-muted);margin-top:.3rem;display:block}.form-row-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.developer-observability-list{display:flex;flex-direction:column;gap:1rem;margin:0;padding:0;list-style:none}.developer-observability-list li{padding:1rem 1.125rem;border:1px solid var(--border);border-radius:.625rem;background:var(--muted-light)}.developer-observability-list strong{display:block;font-size:.875rem;margin-bottom:.35rem}.developer-observability-list p{margin:0;font-size:.8125rem;color:var(--text-muted);line-height:1.5}.developer-observability-list a{color:var(--color-primary);font-weight:500}.checkbox-row{display:flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer}.driver-ride-history-filters{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.driver-ride-history-filters label{display:flex;flex-direction:column;gap:.35rem;font-size:.8125rem;min-width:140px}.developer-panel{display:flex;flex-direction:column;gap:1rem}.developer-toolbar{display:flex;gap:.5rem;flex-wrap:wrap}.developer-tabs{margin-bottom:.25rem}.developer-tab-panel{display:flex;flex-direction:column;gap:1rem}.developer-setup-bar{height:10px;border-radius:999px;background:var(--border);overflow:hidden;margin-bottom:1rem}.developer-setup-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--accent));transition:width .25s ease}.developer-setup-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.developer-setup-list li{display:flex;gap:.65rem;align-items:flex-start;padding:.65rem .75rem;border-radius:.65rem;border:1px solid var(--border)}.developer-setup-list li.done{background:var(--primary-light)}.developer-setup-list li.pending{background:#fff7ed}.developer-setup-dot{font-weight:700;min-width:1rem}.developer-setup-list small{display:block;color:var(--muted);margin-top:.15rem}.developer-filters{margin-bottom:1rem}.developer-filters,.developer-health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:.75rem;gap:.75rem}.developer-health-item{padding:.75rem;border-radius:.65rem;border:1px solid var(--border);display:flex;flex-direction:column;gap:.25rem}.developer-health-item.up{background:var(--primary-light)}.developer-health-item.down{background:rgba(254,97,80,.12)}.developer-logs-table-wrap{overflow-x:auto}.log-level{text-transform:uppercase;font-size:.6875rem;font-weight:700;padding:.15rem .45rem;border-radius:999px}.log-level--error{background:rgba(254,97,80,.15);color:#b91c1c}.log-level--warn{background:rgba(234,179,8,.15);color:#a16207}.log-level--info{background:var(--primary-light);color:var(--color-primary)}.log-message{max-width:420px;word-break:break-word}@media (max-width:900px){.form-grid{grid-template-columns:1fr;gap:1.125rem}.clientes-form-grid{gap:1.5rem}.clientes-form-grid,.form-row-2{grid-template-columns:1fr}.top-nav-logout span{display:none}}[data-sileo-viewport]{z-index:10000!important;pointer-events:none}[data-sileo-viewport]>*{pointer-events:auto}[data-sileo-viewport] [data-sileo-title]{color:#fff!important}[data-sileo-viewport] [data-sileo-description]{color:hsla(0,0%,100%,.88)!important}[data-sileo-viewport] [data-sileo-badge]{color:#fff!important}