:root{
  --bg:#080808;
  --bg-soft:#101010;
  --card:#171717;
  --card-2:#202020;
  --sidebar:#0b0b0b;
  --text:#f8fafc;
  --muted:#a3a3a3;
  --accent:#f6c400;
  --accent-2:#ffda3d;
  --accent-dark:#b88600;
  --red:#ef4444;
  --green:#22c55e;
  --border:#343434;
  --dark:#050505;
}
*{box-sizing:border-box}
body{
  margin:0;
  background:
    radial-gradient(circle at top right,rgba(246,196,0,.16),transparent 32%),
    radial-gradient(circle at bottom left,rgba(246,196,0,.08),transparent 28%),
    var(--bg);
  color:var(--text);
  font-family:Inter,Arial,sans-serif;
}
a{color:inherit;text-decoration:none}
.layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}
.sidebar{
  background:linear-gradient(180deg,#050505,#111111);
  border-right:1px solid var(--border);
  padding:22px;
  position:sticky;
  top:0;
  height:100vh;
}
.brand{
  font-weight:950;
  font-size:21px;
  letter-spacing:.5px;
  margin-bottom:24px;
  color:#fff;
  text-transform:uppercase;
}
.brand span{color:var(--accent)}
.brand::after{
  content:'';
  display:block;
  width:74px;
  height:4px;
  margin-top:10px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--accent),transparent);
}
.nav{display:flex;flex-direction:column;gap:8px}
.nav a{
  padding:12px 14px;
  border-radius:12px;
  color:var(--muted);
  font-weight:800;
  border:1px solid transparent;
}
.nav a:hover,.nav a.active{
  background:rgba(246,196,0,.12);
  color:#fff;
  border-color:rgba(246,196,0,.35);
}
.main{padding:28px}
.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:15px}
.topbar h1{margin:0;font-size:28px;color:#fff}
.btn{
  border:0;
  border-radius:12px;
  background:linear-gradient(180deg,var(--accent-2),var(--accent));
  color:#111;
  padding:11px 16px;
  font-weight:950;
  cursor:pointer;
  box-shadow:0 10px 22px rgba(246,196,0,.18);
}
.btn:hover{filter:brightness(1.06)}
.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
.btn.secondary{background:#2a2a2a;color:var(--text);box-shadow:none;border:1px solid var(--border)}
.btn.danger{background:var(--red);color:white;box-shadow:none}
.btn.warn{background:var(--accent);color:#111}
.btn.small{padding:7px 10px;font-size:12px;border-radius:9px}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.card{
  background:linear-gradient(180deg,var(--card-2),var(--card));
  border:1px solid var(--border);
  border-radius:18px;
  padding:18px;
  box-shadow:0 20px 60px rgba(0,0,0,.28);
}
.metric .label{color:var(--muted);font-size:13px}
.metric .value{font-size:30px;font-weight:950;margin-top:8px;color:var(--accent)}
.section{margin-top:18px}
.table-wrap{overflow:auto}
.table{width:100%;border-collapse:collapse;min-width:780px}
.table th,.table td{padding:13px;border-bottom:1px solid var(--border);text-align:left;font-size:14px}
.table th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.table tr:hover td{background:rgba(246,196,0,.035)}
.badge{padding:5px 9px;border-radius:999px;font-size:12px;font-weight:950;border:1px solid transparent}
.badge.active,.badge.approved,.badge.paid,.badge.finished{background:rgba(34,197,94,.13);color:#86efac;border-color:rgba(34,197,94,.25)}
.badge.pending,.badge.requested,.badge.accepted,.badge.in_progress,.badge.driver_arrived{background:rgba(246,196,0,.13);color:#ffdd4a;border-color:rgba(246,196,0,.28)}
.badge.blocked,.badge.rejected,.badge.failed,.badge.canceled{background:rgba(239,68,68,.13);color:#fca5a5;border-color:rgba(239,68,68,.25)}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:15px}
.input,select{
  background:#0d0d0d;
  border:1px solid var(--border);
  color:var(--text);
  border-radius:12px;
  padding:11px 13px;
  outline:none;
}
.input:focus,select:focus,.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(246,196,0,.12)}
.login-page{
  min-height:100vh;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at top right,rgba(246,196,0,.18),transparent 34%),
    linear-gradient(135deg,#050505,#171717 55%,#080808);
  padding:18px;
}
.login-card{
  width:100%;
  max-width:420px;
  background:linear-gradient(180deg,#202020,#131313);
  border:1px solid var(--border);
  border-radius:24px;
  padding:28px;
  box-shadow:0 28px 90px rgba(0,0,0,.42);
}
.login-card h1{margin:0 0 4px}.login-card p{color:var(--muted);margin-top:0}
.form{display:grid;gap:12px}
.form label{font-size:13px;color:var(--muted);font-weight:800}
.form input,.form select,.form textarea{
  width:100%;
  background:#0d0d0d;
  border:1px solid var(--border);
  color:var(--text);
  border-radius:12px;
  padding:12px;
  outline:none;
}
.form input::placeholder{color:#777}
.alert{padding:12px;border-radius:12px;margin-top:12px;display:none;white-space:pre-line;line-height:1.45}
.alert.error{background:rgba(239,68,68,.12);color:#fca5a5;border:1px solid rgba(239,68,68,.24)}
.alert.success{background:rgba(246,196,0,.12);color:#ffe580;border:1px solid rgba(246,196,0,.28)}
.chart{height:260px;display:flex;align-items:end;gap:8px;border-bottom:1px solid var(--border);padding:12px 4px}
.bar{background:linear-gradient(180deg,var(--accent-2),var(--accent-dark));min-width:18px;border-radius:8px 8px 0 0;opacity:.95}
.mobile-shell{max-width:520px;margin:0 auto;padding:18px;min-height:100vh}
.mobile-card{
  background:linear-gradient(180deg,#202020,#131313);
  border:1px solid var(--border);
  border-radius:22px;
  padding:18px;
  margin:14px 0;
  box-shadow:0 18px 52px rgba(0,0,0,.28);
}
.mobile-card h2{margin-top:0;color:#fff}
.mobile-actions{display:grid;gap:10px}
@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar{height:auto;position:relative}.nav{display:grid;grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:repeat(2,1fr)}.main{padding:18px}.topbar{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.grid{grid-template-columns:1fr}.nav{grid-template-columns:1fr}.sidebar{padding:16px}.table{min-width:680px}.topbar h1{font-size:23px}}


/* v1.0.6 - experiência mobile estilo app de chamada de guincho */
.admin-version{margin-top:18px;padding:12px 14px;border:1px solid rgba(246,196,0,.24);border-radius:14px;background:rgba(246,196,0,.08);color:var(--muted);font-size:12px}.admin-version span{display:block;margin-bottom:4px}.admin-version strong{color:var(--accent);font-size:16px;letter-spacing:.04em}
.uber-body{background:#050505;min-height:100vh;overflow-x:hidden}.uber-shell{width:100%;max-width:560px;margin:0 auto;min-height:100vh;position:relative;background:#050505;color:#fff}.uber-top{position:absolute;z-index:500;left:14px;right:14px;top:14px;display:flex;align-items:center;justify-content:space-between;gap:10px}.uber-pill{border:1px solid rgba(255,255,255,.16);background:rgba(10,10,10,.86);backdrop-filter:blur(10px);color:#fff;border-radius:999px;padding:9px 12px;font-weight:900;box-shadow:0 12px 30px rgba(0,0,0,.32)}.uber-map{height:100vh;min-height:620px;background:#181818;position:relative;z-index:1}.uber-map:empty::before{content:'Carregando mapa...';position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-weight:800}.uber-bottom-sheet{position:absolute;left:0;right:0;bottom:0;z-index:520;background:linear-gradient(180deg,#181818,#090909);border-radius:28px 28px 0 0;border:1px solid rgba(255,255,255,.09);box-shadow:0 -18px 70px rgba(0,0,0,.55);padding:18px}.sheet-handle{width:46px;height:5px;border-radius:999px;background:#3b3b3b;margin:0 auto 14px}.ride-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.ride-title h1,.ride-title h2{font-size:22px;line-height:1.05;margin:0;color:#fff}.ride-title p{margin:5px 0 0;color:var(--muted);font-size:13px}.status-dot{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:#d4d4d4;background:#111;border:1px solid var(--border);border-radius:999px;padding:7px 9px;white-space:nowrap}.status-dot::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(246,196,0,.14)}.uber-search-box{display:grid;gap:10px;margin-bottom:12px}.uber-input-row{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:center;background:#0d0d0d;border:1px solid #2c2c2c;border-radius:16px;padding:12px 13px}.uber-input-row:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(246,196,0,.13)}.pin{width:12px;height:12px;border-radius:50%;background:var(--green);display:block;margin:auto}.pin.dest{background:var(--accent)}.uber-input-row input{background:transparent;border:0;color:#fff;outline:0;width:100%;font-size:15px;font-weight:700}.uber-input-row input::placeholder{color:#777;font-weight:700}.uber-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.uber-info{background:#0c0c0c;border:1px solid #2b2b2b;border-radius:16px;padding:12px;color:#fff}.uber-info small{display:block;color:var(--muted);font-weight:800;margin-bottom:4px}.uber-info b{font-size:18px;color:var(--accent)}.uber-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:12px}.uber-actions.two{grid-template-columns:1fr 1fr}.uber-actions.three{grid-template-columns:1fr 1fr 1fr}.uber-btn{border:0;border-radius:16px;padding:14px 16px;cursor:pointer;font-weight:950;background:linear-gradient(180deg,var(--accent-2),var(--accent));color:#101010;box-shadow:0 14px 32px rgba(246,196,0,.16)}.uber-btn.secondary{background:#1f1f1f;color:#fff;border:1px solid #343434;box-shadow:none}.uber-btn.danger{background:#dc2626;color:#fff;box-shadow:none}.uber-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.uber-note{font-size:12px;color:var(--muted);line-height:1.45;margin-top:10px}.uber-alert{display:none;white-space:pre-line;margin-top:10px;border-radius:14px;padding:11px;border:1px solid rgba(239,68,68,.25);background:rgba(239,68,68,.11);color:#fecaca;font-size:13px;line-height:1.4}.driver-card{background:#0f0f0f;border:1px solid #292929;border-radius:18px;padding:13px;margin-top:10px}.driver-card p{margin:5px 0;color:#d4d4d4}.driver-card b{color:#fff}.driver-card .badge{display:inline-block;margin-bottom:6px}.leaflet-container{font-family:Inter,Arial,sans-serif;background:#161616}.leaflet-control-attribution{font-size:10px}@media(max-width:560px){.uber-map{min-height:100vh}.uber-bottom-sheet{padding:16px;border-radius:24px 24px 0 0}.ride-title h1,.ride-title h2{font-size:20px}.uber-grid{grid-template-columns:1fr 1fr}.uber-actions.three{grid-template-columns:1fr}.uber-top{top:10px;left:10px;right:10px}}

/* v1.0.7 - dashboard dinâmico, financeiro e configurações com token */
.muted{color:var(--muted);font-size:13px;line-height:1.45;margin-top:-4px}.settings-grid{grid-template-columns:1fr 1fr}.dashboard-kpis{grid-template-columns:repeat(4,1fr)}.dashboard-grid{grid-template-columns:2fr 1fr}.card.wide{grid-column:span 1}.metric small{display:block;color:var(--muted);margin-top:7px;font-size:12px;line-height:1.35}.bar-wrap{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:22px;flex:1}.bar-wrap small{color:var(--muted);font-size:10px;writing-mode:vertical-rl;max-height:46px;overflow:hidden}.hbar-row{display:grid;grid-template-columns:95px 1fr 44px;align-items:center;gap:9px;margin:11px 0;color:#e5e5e5;font-size:13px}.hbar-row div{height:10px;background:#101010;border:1px solid #292929;border-radius:999px;overflow:hidden}.hbar-row i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));border-radius:999px}.hbar-row b{text-align:right;color:var(--accent)}.money-row{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--border);color:var(--muted)}.money-row strong{color:var(--accent)}.finance-tabs{position:sticky;top:0;z-index:10;background:rgba(5,5,5,.82);backdrop-filter:blur(8px);padding:8px;border-radius:16px;border:1px solid var(--border)}.finance-form{grid-template-columns:repeat(3,1fr);align-items:end}.finance-form textarea{grid-column:1/-1;min-height:78px}.finance-form button,.finance-form .alert{grid-column:1/-1}.badge.open{background:rgba(246,196,0,.13);color:#ffdd4a;border-color:rgba(246,196,0,.28)}.badge.received{background:rgba(34,197,94,.13);color:#86efac;border-color:rgba(34,197,94,.25)}.badge.overdue{background:rgba(239,68,68,.13);color:#fca5a5;border-color:rgba(239,68,68,.25)}.badge.canceled{background:rgba(107,114,128,.18);color:#d1d5db;border-color:rgba(107,114,128,.3)}
@media(max-width:1100px){.dashboard-kpis{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.settings-grid{grid-template-columns:1fr}.finance-form{grid-template-columns:1fr}}
@media(max-width:560px){.dashboard-kpis{grid-template-columns:1fr}.hbar-row{grid-template-columns:82px 1fr 36px}.finance-tabs{position:relative}}

/* v1.0.9 - perfil discreto cliente/motorista e relatórios pessoais */
.uber-top-actions{display:flex;align-items:center;gap:8px}.user-pill{min-width:42px;text-align:center;padding:9px 10px!important}.profile-shell{width:100%;max-width:760px;margin:0 auto;min-height:100vh;padding:16px;background:#050505}.profile-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.profile-header h1{margin:0;font-size:26px}.profile-header p{margin:4px 0 0;color:var(--muted);font-size:13px}.profile-icon-btn{width:42px;height:42px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:#111;color:#fff;font-weight:950;font-size:18px}.profile-card{background:linear-gradient(180deg,#191919,#0d0d0d);border:1px solid #2b2b2b;border-radius:22px;padding:16px;margin:12px 0;box-shadow:0 16px 48px rgba(0,0,0,.32)}.profile-card h2{margin:0 0 12px;color:#fff;font-size:18px}.profile-form{grid-template-columns:1fr 1fr}.profile-form button,.profile-form .alert{grid-column:1/-1}.profile-driver-fields{display:contents}.profile-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.profile-list{display:grid;gap:10px}.profile-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid #292929;background:#0d0d0d;border-radius:16px;padding:12px}.profile-row b{display:block;color:#fff;font-size:14px}.profile-row small{display:block;color:var(--muted);margin-top:4px;font-size:12px;line-height:1.35}.profile-row div:last-child{text-align:right;display:grid;gap:6px;justify-items:end}.profile-row strong{color:var(--accent);font-size:14px}@media(max-width:760px){.profile-grid{grid-template-columns:1fr 1fr}.profile-form{grid-template-columns:1fr}.profile-row{flex-direction:column}.profile-row div:last-child{text-align:left;justify-items:start}}@media(max-width:420px){.profile-grid{grid-template-columns:1fr}.profile-shell{padding:12px}.profile-header h1{font-size:22px}}

/* v1.0.10 - busca de endereço e perfil discreto abaixo do GPS */
.uber-floating-actions{
  position:absolute;
  z-index:540;
  right:14px;
  top:62px;
  display:grid;
  gap:8px;
}
.uber-float-btn{
  width:44px;
  height:44px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(10,10,10,.88);
  backdrop-filter:blur(10px);
  color:#fff;
  font-size:18px;
  font-weight:950;
  cursor:pointer;
  box-shadow:0 12px 30px rgba(0,0,0,.32);
}
.uber-float-btn.profile-float{
  width:38px;
  height:38px;
  margin-left:auto;
  margin-right:auto;
  font-size:15px;
  opacity:.92;
  border-color:rgba(246,196,0,.22);
  background:rgba(20,20,20,.9);
}
.uber-float-btn:hover{border-color:rgba(246,196,0,.55);transform:translateY(-1px)}
.address-field{position:relative;display:grid;gap:6px}.address-suggestions{display:none;position:absolute;z-index:700;left:0;right:0;top:calc(100% + 4px);background:#090909;border:1px solid #2d2d2d;border-radius:16px;overflow:hidden;box-shadow:0 18px 45px rgba(0,0,0,.55);max-height:230px;overflow-y:auto}.address-field:first-child .address-suggestions{top:calc(100% + 4px)}.address-suggestions button{display:block;width:100%;border:0;border-bottom:1px solid #202020;background:#0f0f0f;color:#fff;text-align:left;padding:11px 13px;cursor:pointer}.address-suggestions button:hover{background:#181818}.address-suggestions button b{display:block;color:#f6c400;font-size:13px;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.address-suggestions button small{display:block;color:#a3a3a3;font-size:11px;line-height:1.35}.address-suggestions button:last-child{border-bottom:0}
@media(max-width:560px){.uber-floating-actions{right:10px;top:58px}.uber-float-btn{width:42px;height:42px}.uber-float-btn.profile-float{width:36px;height:36px}.address-suggestions{max-height:210px}}


/* v1.0.11 - clientes separado de usuários ADM e gestão de permissões */
.admin-users-grid{grid-template-columns:1.2fr .8fr}
.admin-user-form{grid-template-columns:1fr 1fr;align-items:end}
.admin-user-form button,.admin-user-form .alert{grid-column:1/-1}
.permission-list{display:grid;gap:10px;margin-top:12px}
.permission-list div{border:1px solid var(--border);background:#0d0d0d;border-radius:16px;padding:12px}
.permission-list b{display:block;color:var(--accent);margin-bottom:5px}
.permission-list small,.permission-small{display:block;color:var(--muted);font-size:12px;line-height:1.35;margin-top:4px;white-space:normal}
.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:999;place-items:center;padding:18px}
.modal-card{width:min(720px,100%);max-height:92vh;overflow:auto;background:linear-gradient(180deg,#171717,#080808);border:1px solid var(--border);border-radius:24px;padding:18px;box-shadow:0 30px 90px rgba(0,0,0,.65)}
.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.modal-head h3{margin:0;color:#fff}
@media(max-width:900px){.admin-users-grid{grid-template-columns:1fr}.admin-user-form{grid-template-columns:1fr}}

/* v1.0.15 - logo oficial, rodapé e responsividade geral */
img{max-width:100%;height:auto}
.layout,.main,.card,.mobile-shell,.uber-shell,.profile-shell{min-width:0}
.brand-image{margin-bottom:22px;padding:0;background:transparent}
.brand-image::after{display:none}
.brand-image img{display:block;width:100%;max-width:210px;margin:0 auto;filter:drop-shadow(0 10px 22px rgba(246,196,0,.16))}
.login-logo-wrap,.app-logo-wrap{text-align:center;margin-bottom:16px}
.login-logo{width:min(100%,330px);display:block;margin:0 auto 8px;filter:drop-shadow(0 16px 30px rgba(0,0,0,.35))}
.app-logo{width:min(100%,360px);display:block;margin:0 auto 10px;filter:drop-shadow(0 16px 30px rgba(0,0,0,.35))}
.system-footer{margin-top:26px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);color:var(--muted);font-size:12px;text-align:center;line-height:1.5}
.system-footer a{color:var(--accent);font-weight:900;text-decoration:none}
.system-footer a:hover{text-decoration:underline}
.auth-footer{margin-top:18px;padding-top:16px}
.mobile-footer{margin-bottom:8px}
.uber-footer{margin-top:14px;padding-top:12px;font-size:11px}
.sidebar{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden}
.nav{flex:0 0 auto}.admin-version{flex:0 0 auto}
.main{display:flex;flex-direction:column;min-height:100vh}.main #page{flex:1}
.filters .input,.filters select,.filters .btn{min-height:42px}
.table-wrap{width:100%;-webkit-overflow-scrolling:touch}
.uber-bottom-sheet{max-height:72vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.uber-bottom-sheet form{display:block}.uber-search-box{position:relative}
@media(max-width:1100px){.layout{grid-template-columns:220px 1fr}.sidebar{padding:18px}.brand-image img{max-width:180px}.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){
  body{overflow-x:hidden}
  .layout{display:block}
  .sidebar{position:relative;height:auto;min-height:0;border-right:0;border-bottom:1px solid var(--border);padding:14px}
  .brand-image{margin-bottom:12px}.brand-image img{max-width:180px;margin:0 auto}
  .nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .nav a{text-align:center;font-size:12px;padding:10px 8px;border-radius:10px;white-space:normal}
  .admin-version{margin-top:12px;text-align:center;padding:9px}.admin-version strong{font-size:14px}
  .main{padding:16px;min-height:auto}.topbar{flex-direction:row;align-items:center}.topbar h1{font-size:24px}
}
@media(max-width:640px){
  .login-card{max-width:100%;padding:22px;border-radius:20px}.login-logo{max-width:300px}
  .app-logo{max-width:310px}.mobile-shell{padding:14px}.mobile-card{padding:16px;border-radius:18px}
  .nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .filters{display:grid;grid-template-columns:1fr;gap:8px}.filters .input,.filters select,.filters .btn{width:100%}
  .topbar{flex-direction:column;align-items:stretch}.topbar .btn{width:100%}
  .grid,.dashboard-kpis,.dashboard-grid,.settings-grid,.admin-users-grid{grid-template-columns:1fr!important}
  .card{padding:15px;border-radius:16px}.metric .value{font-size:26px}
  .table{min-width:760px}.main{padding:12px}
  .uber-shell{max-width:none}.uber-map{min-height:100vh}.uber-bottom-sheet{max-height:76vh;padding:14px;border-radius:22px 22px 0 0}
  .uber-grid,.uber-actions.two{grid-template-columns:1fr}.ride-title{align-items:flex-start;gap:10px}.ride-title h1,.ride-title h2{font-size:19px}
  .uber-pill{font-size:12px;padding:8px 10px}.uber-floating-actions{right:10px;top:56px}.system-footer{font-size:11px}
}
@media(max-width:390px){.nav{grid-template-columns:1fr}.app-logo,.login-logo{max-width:260px}.uber-bottom-sheet{max-height:78vh}.uber-btn,.btn{padding:12px 13px}.table{min-width:700px}}


/* v1.0.16 - GPS automático e botão de perfil discreto */
.uber-floating-actions:has(.profile-float:only-child){gap:0}
.gps-auto-note{color:var(--muted);font-size:12px;line-height:1.4}


/* v1.0.17 - Painel inferior ocultável e ajustes de corrida */
.uber-bottom-sheet{transition:transform .22s ease,opacity .22s ease}
.uber-bottom-sheet.sheet-hidden{transform:translateY(calc(100% - 20px));opacity:.08;pointer-events:none}
.sheet-actions{display:flex;justify-content:center;margin:-4px 0 12px}
.sheet-toggle-btn,.sheet-show-btn{border:1px solid rgba(246,196,0,.32);background:rgba(10,10,10,.88);color:var(--accent);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:950;cursor:pointer;box-shadow:0 12px 30px rgba(0,0,0,.28)}
.sheet-show-btn{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:560;display:none;align-items:center;gap:6px;white-space:nowrap;background:linear-gradient(180deg,#191919,#070707)}
.sheet-show-btn:hover,.sheet-toggle-btn:hover{filter:brightness(1.08)}
.status-text-label{text-transform:none}
@media(max-width:640px){.sheet-show-btn{bottom:14px;font-size:11px;padding:8px 11px}.sheet-actions{margin:-2px 0 10px}}
