:root{--surface:#fbfcfb;--surface-2:#eef3ed;--ink:#1d1f1b;--muted:#64705f;--line:#d9e1d6;--green:#0f8f68;--surface:#ffffff;--surface-2:#f8f9fc;--ink:#111827;--muted:#6b7280;--line:#e5e7eb;--green:#4f46e5;--primary:#4f46e5;--primary-soft:#eef2ff;--shadow-soft:0 18px 45px rgba(17,24,39,0.07)}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{min-height:44px;padding:0 18px;background:var(--primary);font-size:14px;font-weight:750;transition:transform .16s ease,box-shadow .16s ease}button:not(:disabled):hover{box-shadow:0 12px 24px rgba(79,70,229,.18);transform:translateY(-1px)}input{min-height:46px;padding:0 14px;border-color:var(--line);outline:none}input:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(79,70,229,.1)}.driver-shell{padding:22px}.driver-grid>div,.driver-panel,.driver-stats article{background:#ffffff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-soft)}.driver-panel{padding:24px}.driver-panel h1{color:var(--ink);font-size:clamp(32px,5vw,58px);font-weight:850;letter-spacing:-.04em}.assignment-row small,.assignment-row span,.capacity-row span,.driver-notification span,.driver-panel p,.driver-row span,.driver-stats span,.empty-note,.quote-row span,.route-detail span,.route-head span{color:var(--muted)}.eyebrow{color:var(--primary);font-size:11px;letter-spacing:0}.driver-login{gap:14px}.social-button{display:inline-grid;grid-template-columns:22px minmax(0,1fr);align-items:center;justify-items:center;gap:10px;color:var(--ink);background:#ffffff;border:1px solid var(--line);box-shadow:0 1px 2px rgba(17,24,39,.04)}.social-button svg{width:20px;height:20px}.social-button span{justify-self:center;color:var(--ink)}.social-button:not(:disabled):hover{background:#f9fafb;border-color:#d1d5db;box-shadow:0 10px 22px rgba(17,24,39,.08)}.feedback-banner,.route-timeline small.done{color:#312e81;background:var(--primary-soft);border-color:#c7d2fe}.driver-stats{gap:14px}.driver-stats article{min-height:116px}.driver-stats strong{color:var(--ink);font-size:30px;letter-spacing:-.03em}.driver-grid>div{padding:20px}.assignment-row,.capacity-row,.delivery-row,.driver-row,.quote-row,.route-card{border-color:var(--line)}.assignment-row b,.quote-row b,.route-timeline small.done{color:var(--primary)}.assignment-row b{background:var(--primary-soft)}.driver-notification,.route-timeline small{background:var(--surface-2)}@media (max-width:760px){.driver-shell{padding:16px 16px 94px}.driver-shell:after{position:fixed;right:16px;bottom:16px;left:16px;z-index:20;display:grid;min-height:62px;place-items:center;color:var(--primary);background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-soft);content:"Inicio  Pedidos  Ruta  Saldo";font-size:13px;font-weight:800;word-spacing:18px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}}:root{--app-bg:#f8f9fc;--panel:rgba(255,255,255,0.94);--text:#111827;--subtext:#6b7280;--hairline:#e5e7eb;--accent:#4f46e5;--accent-wash:#eef2ff;--lift:0 22px 60px rgba(17,24,39,0.08)}body{background:linear-gradient(rgba(17,24,39,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(17,24,39,.035) 1px,transparent 1px),var(--app-bg);background-size:44px 44px}.driver-shell{max-width:1480px;margin:0 auto}.driver-panel{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.42fr);grid-gap:26px;gap:26px;overflow:hidden;padding:30px}.driver-panel:after{display:grid;align-content:end;min-height:260px;padding:22px;color:#ffffff;background:linear-gradient(135deg,rgba(17,24,39,.94),rgba(79,70,229,.72)),linear-gradient(rgba(255,255,255,.13) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.13) 1px,transparent 0);background-size:auto,34px 34px,34px 34px;border-radius:8px;content:"Ruta, pedidos y saldo con enfoque en accion rapida.";font-size:28px;font-weight:850;line-height:1;letter-spacing:-.05em}.driver-login,.feedback-banner{grid-column:1}.driver-stats{grid-template-columns:repeat(5,minmax(150px,1fr))}.driver-grid>div,.driver-stats article{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.driver-grid>div:hover,.driver-stats article:hover{border-color:#c7d2fe;box-shadow:var(--lift);transform:translateY(-2px)}.delivery-row button,.route-head button{min-width:110px}@media (max-width:860px){.driver-shell{max-width:720px;padding:16px 16px 96px}.driver-grid,.driver-panel,.driver-stats{grid-template-columns:1fr}.driver-panel:after{min-height:180px}}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--surface-2);font-family:Arial,Helvetica,sans-serif}button{min-height:42px;padding:0 16px;color:white;background:var(--green);border:0;border-radius:8px}button:disabled{cursor:not-allowed;opacity:.55}input{width:100%;min-height:42px;padding:0 12px;color:var(--ink);background:white;border:1px solid var(--line);border-radius:8px}.driver-shell{display:grid;grid-gap:18px;gap:18px;min-height:100svh;padding:28px}.driver-grid>div,.driver-panel{padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.notification-box,.quote-box{grid-column:1/-1}.driver-panel h1{max-width:760px;margin:0;font-size:clamp(34px,4rem,64px);line-height:.98}.driver-panel p{color:var(--muted)}.driver-login{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;max-width:920px;margin-top:20px}.driver-login label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:13px;font-weight:700}.driver-login button{align-self:end}.feedback-banner{max-width:920px;margin:14px 0 0;padding:12px;color:var(--ink);background:#dff3ea;border:1px solid var(--green);border-radius:8px}.eyebrow{margin:0 0 8px;color:var(--green);font-size:12px;font-weight:800;text-transform:uppercase}.driver-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}.driver-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:12px;gap:12px}.driver-stats article{display:grid;grid-gap:6px;gap:6px;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.driver-stats span,.empty-note{color:var(--muted)}.driver-stats strong{font-size:28px;line-height:1}.assignment-row,.capacity-row,.delivery-row,.driver-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:68px;border-bottom:1px solid var(--line)}.route-card{display:grid;grid-gap:12px;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.assignment-row,.capacity-row{padding:12px 0}.assignment-row div{display:grid;grid-gap:4px;gap:4px;min-width:0}.assignment-row small,.assignment-row span,.capacity-row span{color:var(--muted)}.assignment-row small,.assignment-row span,.assignment-row strong,.capacity-row span,.capacity-row strong{overflow-wrap:anywhere}.assignment-row b{display:grid;place-items:center;width:44px;height:44px;color:white;background:var(--green);border-radius:8px}.driver-notification{display:grid;grid-gap:6px;gap:6px;padding:12px 0;border-bottom:1px solid var(--line)}.driver-notification:last-child{border-bottom:0}.driver-notification span{color:var(--muted)}.driver-notification span,.driver-notification strong{overflow-wrap:anywhere}.driver-notification.priority-high strong{color:#d54c2f}.quote-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.quote-row:last-child{border-bottom:0}.quote-row div{display:grid;grid-gap:4px;gap:4px;min-width:0}.quote-row span{color:var(--muted)}.quote-row span,.quote-row strong{overflow-wrap:anywhere}.quote-row b{color:var(--green)}.route-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.route-detail,.route-head div{display:grid;grid-gap:6px;gap:6px;min-width:0}.route-detail span,.route-head span,.route-head strong,.route-timeline small{overflow-wrap:anywhere}.route-detail span,.route-head span{color:var(--muted)}.route-timeline{display:flex;flex-wrap:wrap;gap:8px;padding-top:6px}.route-timeline small{padding:6px 8px;color:var(--muted);background:var(--surface-2);border-radius:8px}.route-timeline small.done{color:var(--green);background:#dff3ea}.delivery-row div,.driver-row{display:grid;grid-gap:4px;gap:4px}.delivery-row span,.driver-row span{color:var(--muted)}@media (max-width:760px){.driver-grid,.driver-login,.driver-stats{grid-template-columns:1fr}.assignment-row,.capacity-row,.delivery-row,.route-head{align-items:stretch;flex-direction:column}}.app-layout{display:grid;grid-template-columns:286px minmax(0,1fr);grid-gap:0;gap:0;padding:0}.app-nav{display:flex;flex-direction:column;gap:18px;min-height:100svh;padding:28px;background:var(--surface);border-right:1px solid var(--line)}.nav-brand{display:grid;grid-gap:10px;gap:10px}.nav-brand h1{margin:0;font-size:34px;line-height:1}.nav-toggle{color:var(--ink);background:var(--surface-2);border:1px solid var(--line)}.module-nav{display:grid;grid-gap:10px;gap:10px}.module-button{display:grid;grid-gap:4px;gap:4px;width:100%;min-height:58px;padding:12px;color:var(--ink);text-align:left;background:var(--surface-2);border:1px solid var(--line)}.module-button span{font-weight:850}.module-button small{color:var(--muted)}.module-button.active{color:var(--surface);background:var(--primary);border-color:var(--primary)}.module-nav .logout-menu-button{margin-top:10px;color:#991b1b;background:#fff1f2;border-color:#fecdd3}.module-nav .logout-menu-button:hover{color:#ffffff;background:#dc2626;border-color:#dc2626}.module-nav .logout-menu-button small{color:#b91c1c}.module-nav .logout-menu-button:hover small{color:rgba(255,255,255,.78)}.module-button.active small{color:rgba(255,255,255,.72)}.app-workspace{display:grid;align-content:start;grid-gap:22px;gap:22px;min-width:0;padding:28px}.account-panel,.workspace-head{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-soft);padding:22px}.account-panel h2,.workspace-head h2{margin:0;font-size:clamp(32px,4vw,56px);line-height:1}.account-panel{display:grid;grid-gap:14px;gap:14px}.nav-collapsed{grid-template-columns:84px minmax(0,1fr)}.nav-collapsed .app-nav{align-items:center;width:84px;min-width:84px;padding:22px 14px}.nav-collapsed .nav-brand{justify-items:center}.nav-collapsed .module-button small,.nav-collapsed .module-button span,.nav-collapsed .nav-brand .eyebrow,.nav-collapsed .nav-brand h1{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.nav-collapsed .module-button,.nav-collapsed .nav-toggle{width:44px;min-height:44px;padding:0;font-size:0}.nav-collapsed .nav-toggle:before{content:">>";font-size:14px}.nav-collapsed .module-button{place-items:center}.nav-collapsed .module-button:before{content:"";width:10px;height:10px;border-radius:999px;background:currentColor}@media (max-width:760px){.app-layout,.nav-collapsed{grid-template-columns:1fr}.app-nav{min-height:auto;border-right:0;border-bottom:1px solid var(--line)}}.brand-logo,.login-logo{display:block;width:100%;object-fit:contain;object-position:center}.brand-logo{max-width:158px;aspect-ratio:1/1;border-radius:8px}.login-logo{max-width:220px;margin:0 auto 4px;aspect-ratio:1/1}.driver-shell:not(.app-layout){display:grid;grid-template-columns:260px minmax(0,430px);align-items:center;grid-gap:18px;gap:18px;place-content:center;min-height:100svh}.driver-shell:not(.app-layout) .driver-panel{width:min(430px,calc(100vw - 32px));text-align:center}.driver-shell:not(.app-layout) .driver-panel h1{max-width:none;font-size:clamp(30px,5vw,44px);text-align:center}.driver-login{margin-top:10px;text-align:left}.nav-brand{justify-items:center}.nav-collapsed .nav-brand .brand-logo{max-width:46px}.login-app-sidebar{display:grid;align-content:center;grid-gap:18px;gap:18px;min-height:520px;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-soft)}.login-app-sidebar .brand-logo{margin:0 auto}.login-secondary-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-top:-2px}.text-action{min-height:34px;padding:0;color:var(--primary);border:0;font-weight:800}.text-action,.text-action:hover{background:transparent;box-shadow:none}.text-action:hover{transform:none}@media (max-width:760px){.driver-shell:not(.app-layout){grid-template-columns:1fr}.login-app-sidebar{min-height:auto}}