:root{--bg:#0a0d10;--panel:#14191f;--panel2:#1a2027;--line:#2b323a;--text:#f7f8fa;--muted:#98a2ad;--accent:#e7822c;--ok:#1fb56a;--danger:#ef5656;--warn:#f0a327}*{box-sizing:border-box}html,body{margin:0;background:#07090c;color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}body{min-height:100vh;background:radial-gradient(circle at top,#181d22 0,#0a0d10 38%,#07090c 100%)}button,input,select,textarea{font:inherit}.app{max-width:620px;min-height:100vh;margin:auto;background:var(--bg);border-inline:1px solid #151a1f}.top{position:sticky;top:0;z-index:30;padding:14px 16px;background:#0a0d10ee;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:8px;font-size:25px;font-weight:900;letter-spacing:.4px}.mark{width:25px;height:25px;border-left:7px solid #fff;border-bottom:7px solid var(--accent);border-radius:0 0 0 10px}.logo em{font-style:normal;color:var(--accent)}.brandlock{display:flex;flex-direction:column;align-items:flex-start}.brand-logo{display:block;width:245px;max-width:66vw;height:auto}.byline{font-size:9px;color:var(--muted);letter-spacing:.45px;margin-top:1px;padding-left:3px}.login-logo{display:block;width:min(100%,320px);height:auto;margin:0 0 2px}.login-byline{font-size:11px;color:var(--accent);letter-spacing:.4px;margin-top:-2px;margin-bottom:8px}main{padding:16px 16px 96px}.screen{display:none}.screen.active{display:block}h1{font-size:30px;line-height:1.05;margin:0 0 5px}h2{font-size:21px;margin:0}h3{margin:0}.muted{color:var(--muted)}.small{font-size:12px}.sec{display:flex;justify-content:space-between;align-items:center;margin:15px 0 10px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0}.stat{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:11px 5px;text-align:center}.stat b{display:block;font-size:25px}.stat span{font-size:10px;color:#c7cdd3}.hero{width:100%;border:0;border-radius:17px;padding:16px;color:#fff;font-weight:900;background:linear-gradient(90deg,var(--accent),#9d4f18);display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.card{background:linear-gradient(180deg,#151a20,#11151a);border:1px solid var(--line);border-radius:18px;padding:13px;margin-bottom:10px}.row{display:flex;gap:10px;align-items:center}.between{justify-content:space-between}.grow{flex:1}.thumb{width:72px;height:58px;border-radius:13px;background:linear-gradient(135deg,#5b493e,#26211e);display:grid;place-items:center;color:#e0bea4;font-weight:900}.progress{height:7px;background:#293039;border-radius:999px;overflow:hidden;margin:9px 0}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#efad6d)}.badge{font-size:11px;padding:6px 8px;border-radius:999px;background:#5a3b21;color:#ffd1a4}.badge.danger{background:#4e2222;color:#ffb3b3}.badge.ok{background:#143c29;color:#9cebbb}.chips{display:flex;gap:7px;overflow:auto}.chip{padding:7px 10px;border-radius:999px;background:#20262d;color:#cfd5db;font-size:12px;border:1px solid #2f363f;white-space:nowrap}.chip.active{background:#673c1c;color:#ffd5af;border-color:#8b4d20}.listrow{display:flex;align-items:center;gap:11px;background:#14191e;border:1px solid var(--line);padding:12px;border-radius:14px;margin-bottom:9px}.num{width:42px;height:42px;display:grid;place-items:center;background:#f3f4f5;color:#111;border-radius:10px;font-weight:900}.iconbtn{flex:0 0 auto;width:38px;height:38px;border:1px solid var(--line);border-radius:11px;background:#20262d;color:#fff;display:grid;place-items:center;font-size:16px}.iconbtn:active{transform:scale(.96);background:#2a3139}.btn{border:0;border-radius:13px;padding:12px 14px;font-weight:800}.btn.primary{background:var(--accent);color:#fff}.btn.danger{background:#5a2024;color:#ffd9dc;border:1px solid #87333a}.deletebtn{margin-top:14px}.dangericon{color:#ffb4b8;border-color:#693037;background:#32191d}.btn.dark{background:#1c2229;color:#fff;border:1px solid var(--line)}.btn.full{width:100%}.btn.sm{padding:8px 10px;font-size:12px}.actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.input{width:100%;background:#12171c;border:1px solid #2a323b;color:#fff;border-radius:12px;padding:12px;margin:6px 0 12px}.tabs{display:flex;gap:16px;overflow:auto;border-bottom:1px solid var(--line);margin:14px 0 12px}.tab{padding:10px 0;color:#8f99a4;white-space:nowrap;font-size:13px}.tab.active{color:#fff;border-bottom:2px solid var(--accent)}.stagebar{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;margin:15px 0}.stage{text-align:center;color:#6f7983;font-size:9px}.stage:before{content:"";display:block;width:25px;height:25px;border-radius:50%;margin:0 auto 5px;background:#1e242b;border:2px solid #343b44}.stage.done{color:#fff}.stage.done:before{background:var(--accent);border-color:var(--accent)}.bottom{position:fixed;z-index:35;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,620px);display:grid;grid-template-columns:repeat(5,1fr);background:#0a0d10f5;border-top:1px solid var(--line);padding:8px 5px max(8px,env(safe-area-inset-bottom))}.nav{border:0;background:transparent;color:#8c96a0;font-size:11px;padding:5px 3px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;transition:.2s}.nav-icon{width:38px;height:32px;border-radius:11px;display:grid;place-items:center;transition:.2s}.nav-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav.active{color:#fff;font-weight:800}.nav.active .nav-icon{color:var(--accent);background:rgba(231,130,44,.14);box-shadow:inset 0 0 0 1px rgba(231,130,44,.22)}.nav:active .nav-icon{transform:scale(.92)}.fab{width:56px;height:56px;margin:-23px auto 0;border:3px solid #0a0d10;border-radius:18px;background:linear-gradient(145deg,#f29443,var(--accent));color:white;font-size:31px;box-shadow:0 7px 22px rgba(231,130,44,.34);display:grid;place-items:center}.fab span{transform:translateY(-1px)}.modal{position:fixed;inset:0;z-index:80;background:#000b;display:none;align-items:flex-end;justify-content:center}.modal.open{display:flex}.sheet{width:min(100%,620px);max-height:90vh;overflow:auto;background:#11161b;border-radius:22px 22px 0 0;padding:18px;border:1px solid var(--line)}.change{display:flex;gap:10px}.dot{width:10px;height:10px;border-radius:50%;background:var(--accent);margin-top:5px}.empty{text-align:center;padding:28px;color:var(--muted)}.pack{background:#f7f7f7;color:#151515;border-radius:14px;padding:16px;margin:14px 0}.pack table{width:100%;border-collapse:collapse;font-size:12px}.pack th,.pack td{border-bottom:1px solid #ddd;padding:7px;text-align:left}.back{border:0;background:transparent;color:#fff;font-size:27px;padding:0 10px 0 0}.titlebar{display:flex;align-items:flex-start}.avatar{width:38px;height:38px;border-radius:50%;background:#2a3139;display:grid;place-items:center;font-weight:800}.notice{padding:11px 12px;border-radius:12px;background:#1b2026;border-left:4px solid var(--accent);margin:10px 0}.spinner{width:30px;height:30px;border:3px solid #39414a;border-top-color:var(--accent);border-radius:50%;animation:s .8s linear infinite;margin:30px auto}@keyframes s{to{transform:rotate(360deg)}}.home-alerts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.home-alert{width:100%;border:1px solid #303740;background:#171b20;color:#fff;border-radius:14px;padding:13px 14px;display:flex;align-items:center;gap:11px;text-align:left;cursor:pointer}.home-alert b{display:block;font-size:14px}.home-alert small{display:block;margin-top:3px;color:#aeb6bf;font-size:11px}.home-alert-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;font-size:20px;font-weight:900;flex:0 0 auto}.chat-alert .home-alert-icon{background:rgba(242,138,42,.14);color:#f28a2a}.stock-alert .home-alert-icon{background:rgba(220,65,65,.14);color:#ff6868}.home-alert-count{min-width:27px;height:27px;border-radius:999px;display:grid;place-items:center;font-weight:900;font-size:12px;background:#f28a2a;color:#fff}.stock-alert .home-alert-count{background:#d94b4b}.calendar-month-nav{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;margin:12px 0 14px}.calendar-month-nav button:first-child{text-align:left}.calendar-month-nav button:last-child{text-align:right}.calendar-nav-btn{padding:7px 6px}.calendar-nav-btn .nav-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.alert-nav-btn{position:relative}.alert-nav-btn.has-unread .alert-nav-icon{background:#f28a2a!important;color:#fff!important;box-shadow:0 0 0 3px rgba(242,138,42,.2)!important}.alert-nav-btn.has-unread:after{content:attr(data-unread);position:absolute;right:2px;top:1px;min-width:18px;height:18px;padding:0 4px;border-radius:10px;background:#d94b4b;color:#fff;font-size:10px;font-weight:900;display:grid;place-items:center;border:2px solid #0a0d10}.chat-pulse{animation:chatPulse .55s ease 3}@keyframes chatPulse{50%{transform:scale(1.12)}}
.purchase-mail-btn{margin-top:10px;width:100%;border-color:rgba(231,130,44,.45)!important}
/* Buscador global y trazabilidad */
.global-search{display:flex;gap:8px;align-items:center;margin:12px 0}.global-search .input{margin:0;min-width:0}.global-result{width:100%;display:flex;align-items:center;gap:10px;border:1px solid #29313a;background:#151b21;color:#fff;border-radius:12px;padding:11px;margin:7px 0;text-align:left}.global-result small{display:block;color:#98a4ae;margin-top:3px}.trace-row{display:flex;flex-direction:column;gap:3px;padding:11px 0;border-bottom:1px solid #29313a}.trace-row span,.trace-row small{color:#98a4ae}.truck-auto-row{display:flex;gap:8px;align-items:center}.truck-auto-row .input{margin:0;min-width:0}.truck-auto-hint{margin:6px 0 12px}.stock-alert .home-alert-icon{background:rgba(239,138,45,.15);color:#f2a25b}.stock-alert{border-color:rgba(239,138,45,.35)!important}body.light-theme .global-result{background:#fff;color:#17202a;border-color:#d8dde2}body.light-theme .trace-row{border-color:#d8dde2}
@media(max-width:700px){.global-search{gap:6px}.global-search .btn{padding:10px 11px}.truck-auto-row{align-items:stretch}}
/* Control diario operativo */
.daily-control{margin:14px 0 16px;padding:14px;border:1px solid #29313a;border-radius:16px;background:linear-gradient(145deg,#11171d,#0d1217)}.daily-control .sec{margin:0 0 10px}.daily-control h2{margin:2px 0 0}.daily-priority{width:100%;display:flex;align-items:center;gap:10px;text-align:left;border:1px solid #29313a;background:#151b21;color:#fff;border-radius:12px;padding:11px 12px;margin-top:7px}.daily-priority small{display:block;color:#9ea9b3;margin-top:3px}.daily-dot{width:10px;height:10px;border-radius:50%;background:#42b96c;box-shadow:0 0 10px rgba(66,185,108,.4);flex:0 0 auto}.daily-priority.orange .daily-dot{background:#ef8a2d;box-shadow:0 0 12px rgba(239,138,45,.55)}.daily-priority.red{border-color:rgba(238,78,78,.42)}.daily-priority.red .daily-dot{background:#ee4e4e;box-shadow:0 0 14px rgba(238,78,78,.65)}.daily-ok{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:12px;background:rgba(55,174,96,.09);border:1px solid rgba(55,174,96,.28)}.daily-ok b{color:#6bd48f}.daily-ok span{font-size:12px;color:#9ea9b3}.purchase-status-row{display:flex;align-items:center;gap:8px;margin-top:10px}.purchase-status{margin:0!important;padding:8px!important;flex:1;min-width:0}.purchase-state{font-size:10px;font-weight:900;text-transform:uppercase;padding:7px 9px;border-radius:999px;background:#242c34;color:#cbd3da;white-space:nowrap}.state-recibido{background:rgba(55,174,96,.15);color:#72d896}.state-en-tr-nsito,.state-confirmado{background:rgba(45,156,255,.14);color:#72bdff}.state-solicitado,.state-pedido{background:rgba(239,138,45,.14);color:#f3a45f}
body.light-theme .daily-control{background:#fff;border-color:#d8dde2}body.light-theme .daily-priority{background:#f7f8f9;color:#17202a;border-color:#d8dde2}body.light-theme .daily-priority small,body.light-theme .daily-ok span{color:#66727d}
@media(max-width:700px){.daily-control{padding:11px}.daily-priority{padding:10px}.purchase-status-row{align-items:stretch;flex-direction:column}.purchase-state{align-self:flex-start}}
/* Avisos superiores muy visibles */
#directChatBtn.has-unread .alert-nav-icon{background:#ff7a18!important;color:#fff!important;border:2px solid #ffb36d!important;box-shadow:0 0 0 4px rgba(255,122,24,.2),0 0 18px rgba(255,122,24,.65)!important;animation:unreadGlow 1.35s ease-in-out infinite}
#calendarBtn.has-event-today .alert-nav-icon{color:#62b7ff!important;border:2px solid #2d9cff!important;background:rgba(45,156,255,.13)!important;box-shadow:0 0 0 3px rgba(45,156,255,.12),0 0 15px rgba(45,156,255,.38)!important}#calendarBtn{color:#2377d8!important}#calendarBtn .nav-icon,#calendarBtn .alert-nav-icon{color:#2377d8!important}#calendarBtn.active{color:#2377d8!important}#calendarBtn.active .nav-icon,#calendarBtn.active .alert-nav-icon{color:#2377d8!important;background:rgba(35,119,216,.14)!important;box-shadow:inset 0 0 0 1px rgba(35,119,216,.3)!important}body.light-theme #calendarBtn.active{color:#145fae!important}body.light-theme #calendarBtn.active .nav-icon,body.light-theme #calendarBtn.active .alert-nav-icon{color:#145fae!important;background:#dcecff!important;border-color:#83b9ef!important}
@keyframes unreadGlow{50%{box-shadow:0 0 0 5px rgba(255,122,24,.12),0 0 25px rgba(255,122,24,.85)}}.direct-unread-pill{display:inline-block;margin-left:6px;padding:3px 7px;border-radius:999px;background:#f28a2a;color:#fff;font-size:10px}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.calendar-head h2{margin:3px 0;text-transform:capitalize}.calendar-icon{width:44px;height:44px;border-radius:12px;background:rgba(242,138,42,.13);color:#f28a2a;display:grid;place-items:center;font-size:22px}.cal-week,.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.cal-week{margin-bottom:5px}.cal-week span{text-align:center;color:#818a94;font-size:10px;font-weight:900}.cal-day{min-height:50px;border:1px solid #303740;border-radius:9px;padding:6px;background:#171b20;display:flex;flex-direction:column;align-items:center;justify-content:center}.cal-day b{font-size:13px}.cal-day span{font-size:8px;color:#f28a2a;margin-top:3px;font-weight:900}.cal-day.meeting-day{border-color:rgba(242,138,42,.5);background:rgba(242,138,42,.08)}.cal-day.load-day{border:2px solid #2377d8;background:rgba(35,119,216,.18);box-shadow:inset 0 0 0 1px rgba(35,119,216,.12)}.cal-day.loaded-day{border:2px solid #1f9d61;background:rgba(31,157,97,.18);box-shadow:inset 0 0 0 1px rgba(31,157,97,.12)}.cal-day.loaded-day b,.cal-day.loaded-day .cal-load-label{color:#39c980!important}.cal-day.return-day{border:2px solid #df3f4b!important;background:rgba(223,63,75,.18)!important;box-shadow:inset 0 0 0 1px rgba(223,63,75,.12)}.cal-day.return-day b,.cal-return-label{color:#ff6570!important}.cal-return-label{font-size:7px;font-weight:900;letter-spacing:.25px}.calendar-event.return-event{border-color:#df3f4b;background:rgba(223,63,75,.12)}.calendar-event.return-event .event-date{background:#df3f4b;color:#fff}.cal-day.load-day b{color:#72b7ff}.cal-day .cal-load-label{color:#72b7ff;font-size:7px;letter-spacing:.25px}.calendar-event.load-event{border-color:#2377d8;background:rgba(35,119,216,.12);cursor:pointer}.calendar-event.load-event .event-date{background:#2377d8;color:#fff}.calendar-event.load-event>.badge{background:#164e8f;color:#d9ecff}.load-date-highlight{display:inline-block;padding:3px 7px;border-radius:7px;background:rgba(35,119,216,.14);color:#3c9cff!important;font-weight:900;border:1px solid rgba(35,119,216,.3)}#pLoad.load-date-highlight{font-size:14px;margin-top:3px}.cal-day.today{box-shadow:inset 0 0 0 2px #f28a2a}.cal-day.empty-day{visibility:hidden}.calendar-event{display:flex;align-items:center;gap:12px;padding:11px;margin:8px 0;border:1px solid #303740;border-radius:12px;background:#171b20}.event-date{width:42px;height:46px;border-radius:9px;background:rgba(242,138,42,.13);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#f28a2a}.event-date b{font-size:18px;line-height:18px}.event-date span{font-size:8px;font-weight:900}.direct-person{width:100%;text-align:left;cursor:pointer}.direct-mine{margin-left:auto;border-color:rgba(242,138,42,.4);background:rgba(242,138,42,.08)}#directChatList{max-height:48vh;overflow:auto;padding-right:3px;margin:12px 0}@media(max-width:620px){.home-alerts{grid-template-columns:1fr}.home-alert{padding:12px}}@media(min-width:760px){body{padding:24px}.app{border-radius:28px;overflow:hidden;box-shadow:0 30px 80px #0008;min-height:900px}.bottom{bottom:24px;border-radius:0 0 28px 28px}}.project-cover{display:block;object-fit:cover;border:0}.cover-preview{width:100%;aspect-ratio:16/9;margin:8px 0 6px;border-radius:15px;overflow:hidden;background:linear-gradient(135deg,#5b493e,#26211e);display:grid;place-items:center;color:#e0bea4;font-size:34px;font-weight:900;border:1px solid var(--line)}.cover-preview img{width:100%;height:100%;object-fit:cover}.cover-help{margin:-5px 0 12px}.cover-remove{margin:0 0 14px}.is-operator .manage-only{display:none!important}.readonly-task{opacity:.62}.readonly-task input{cursor:not-allowed}.is-viewer .operate-only{display:none!important}.role-select{width:145px;margin:0;padding:8px;font-size:12px}.risk-stack{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.risk-green{background:#143c29!important;color:#9cebbb!important}.risk-orange{background:#5a3b21!important;color:#ffd1a4!important}.risk-red{background:#4e2222!important;color:#ffb3b3!important}.risk-options{display:grid;gap:10px;margin:15px 0}.risk-choice{border:1px solid var(--line);border-radius:14px;padding:15px;text-align:left;color:#fff}.risk-choice b,.risk-choice span{display:block}.risk-choice b{font-size:16px}.risk-choice span{font-size:12px;margin-top:4px;opacity:.8}.risk-choice.green{background:#143c29;border-color:#256747}.risk-choice.orange{background:#5a3b21;border-color:#a5632d}.risk-choice.red{background:#4e2222;border-color:#9b4141}.risk-notice-green{border-left-color:var(--ok)}.risk-notice-orange{border-left-color:var(--accent)}.risk-notice-red{border-left-color:var(--danger)}.stage-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.urgency-btn{margin-top:8px}.btn:disabled{opacity:.38;cursor:not-allowed;filter:grayscale(.5)}.welcome-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.user-position{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 12px;border-radius:11px;background:rgba(231,130,44,.12);border:1px solid rgba(231,130,44,.28);color:#f28a2a;font-size:11px;font-weight:900;letter-spacing:.45px;text-transform:uppercase;text-align:center}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.dashboard-grid .stat{min-height:74px;display:flex;flex-direction:column;justify-content:center}.dashboard-grid .stat b{font-size:23px}.dashboard-grid .stat span{font-size:10px;line-height:1.2;padding:0 3px}.load-card{display:flex;align-items:center;gap:11px;background:linear-gradient(180deg,#171c22,#12161b);border:1px solid var(--line);padding:11px;border-radius:15px;margin-bottom:9px}.load-date{width:48px;height:52px;border-radius:11px;background:#f3f4f5;color:#101317;display:flex;flex-direction:column;align-items:center;justify-content:center}.load-date b{font-size:20px;line-height:1}.load-date span{font-size:8px;font-weight:900;margin-top:4px}.load-when{color:var(--accent);font-weight:800;margin-top:4px}.empty.compact{padding:18px}.load-card .risk-stack,.load-card>.badge{flex:0 0 auto}@media(max-width:380px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}.load-card>.badge{display:none}}.unread-inline{color:#fff;background:var(--danger);border-radius:999px;padding:2px 6px;font-size:10px}.unread-badge{background:#64252b;color:#ffc0c4}.chat-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0 10px}.chat-conversation-title{margin-top:22px}.directive-list{display:grid;gap:8px}.chat-list{display:flex;flex-direction:column;gap:8px}.chat-message{background:#171d23;border:1px solid var(--line);border-radius:15px;padding:11px 12px}.chat-message.directive{background:#25190f;border-color:#8d5224;border-left:4px solid var(--accent)}.chat-message.urgent{border-color:#8e3438;background:#271416}.chat-meta{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:var(--muted)}.chat-meta b{color:var(--text)}.chat-text{font-size:14px;line-height:1.45;margin-top:8px;white-space:pre-wrap;overflow-wrap:anywhere}.urgent-label{display:inline-block;margin-top:7px;padding:3px 7px;border-radius:999px;background:#762b30;color:#ffd1d4;font-size:9px;font-weight:900}.chat-image{display:block;width:100%;max-height:280px;object-fit:cover;border-radius:11px;margin-top:9px}.chat-file{display:block;color:#ffc38f;margin-top:9px;font-size:13px}.chat-delete{border:0;background:transparent;color:#ff9da2;font-size:11px;padding:8px 0 0}.chat-compose{position:sticky;bottom:62px;background:#10151aeF;border:1px solid var(--line);border-radius:16px;padding:11px;margin-top:14px;backdrop-filter:blur(12px)}.chat-compose .input{margin-bottom:8px}.chat-options{display:flex;flex-wrap:wrap;gap:14px;margin:3px 0 8px;color:var(--muted);font-size:12px}.chat-options label{display:flex;align-items:center;gap:5px}.chat-options input{accent-color:var(--accent)}
.online-summary{width:100%;margin:14px 0 2px;padding:13px 15px;border:1px solid rgba(80,210,145,.2);border-radius:16px;background:linear-gradient(135deg,rgba(41,171,103,.14),rgba(20,25,30,.94));color:var(--text);display:flex;align-items:center;gap:11px;text-align:left}.online-summary b,.online-summary small{display:block}.online-summary small{color:var(--muted);margin-top:2px}.online-arrow{font-size:24px;color:var(--muted)}.presence-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#687078;box-shadow:none;flex:0 0 auto}.presence-dot.online,.presence-line.online .presence-dot{background:#35d07f;box-shadow:0 0 0 4px rgba(53,208,127,.12)}.presence-line{display:flex;align-items:center;gap:7px;margin-top:6px;font-size:12px;color:var(--muted)}.presence-line.online{color:#56dd94}.team-member .avatar{position:relative}.avatar-status{position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:50%;background:#687078;border:2px solid var(--card)}.avatar-status.online{background:#35d07f}
.final-report{padding-bottom:20px}.report-brandbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:8px 0 12px;padding:0 2px}.report-brandbar b:first-child{font-size:18px;letter-spacing:.08em}.report-brandbar b:last-child{font-size:16px;color:var(--accent);text-align:right}.report-hero{margin-top:14px;padding:24px;border-radius:22px;background:linear-gradient(145deg,#11171c,#183c2b);border:1px solid rgba(65,218,138,.22);display:flex;justify-content:space-between;gap:18px;align-items:center}.report-kicker{font-size:12px;font-weight:800;letter-spacing:.15em;color:#54dc96}.report-hero h2{font-size:26px;margin:6px 0}.report-hero p{margin:0;color:var(--muted)}.report-seal{width:82px;height:82px;border-radius:50%;border:2px solid #46d88c;color:#46d88c;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:30px;font-weight:800;flex:0 0 auto}.report-seal small{font-size:9px;letter-spacing:.08em}.report-dates{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.report-dates span{padding:12px;border-radius:13px;background:var(--card);color:var(--muted);font-size:12px}.report-dates b{display:block;color:var(--text);font-size:14px;margin-top:3px}.report-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.report-stat{padding:17px;border-radius:17px;background:var(--card);border:1px solid var(--line)}.report-stat strong{display:block;font-size:26px;color:#52dc94}.report-stat span,.report-stat small{display:block}.report-stat span{font-weight:700;margin-top:3px}.report-stat small{color:var(--muted);margin-top:3px}.report-section{margin-top:18px}.report-section h3{margin-bottom:10px}.report-incident{display:flex;gap:11px;padding:12px 0;border-bottom:1px solid var(--line)}.report-check{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:rgba(55,209,128,.15);color:#48db8d;font-weight:800;flex:0 0 auto}.report-check.open{background:rgba(239,85,75,.14);color:#ff6b61}.report-event{display:flex;gap:12px;padding:8px 0}.report-event i{width:9px;height:9px;border-radius:50%;background:#e77827;margin-top:5px;box-shadow:0 0 0 4px rgba(231,120,39,.12)}.report-result{margin-top:18px;padding:15px;border-radius:15px;display:flex;flex-direction:column;gap:3px}.report-result.success{background:rgba(53,208,127,.12);color:#55dc95}.report-result.warning{background:rgba(242,164,54,.13);color:#f3ad4f}.report-result span{font-size:13px;color:var(--muted)}.report-print{margin-top:14px}@media(max-width:430px){.report-hero{padding:18px}.report-seal{width:68px;height:68px;font-size:24px}.report-hero h2{font-size:22px}.report-dates{grid-template-columns:1fr}.report-grid{gap:8px}}.truck-wrap{padding-bottom:12px}.load-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 0 14px}.load-kpi{background:#171c22;border:1px solid #2b323a;border-radius:10px;padding:11px 8px;text-align:center}.load-kpi strong{display:block;font-size:24px;line-height:1;color:var(--accent);margin-bottom:5px}.load-kpi span{font-size:10px;color:var(--muted);font-weight:700}.truck-summary{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:8px 0 14px}.truck-summary strong{font-size:19px;color:var(--accent)}.truck{display:flex;align-items:stretch;height:118px;margin-top:8px}.truck-box{position:relative;flex:1;border:3px solid #d8dde2;border-right:0;border-radius:8px 0 0 8px;overflow:hidden;background:#171c22}.truck-fill{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#b75d1e,var(--accent));display:flex;align-items:center;justify-content:center;min-width:0;transition:width .35s}.truck-fill span{font-weight:900;white-space:nowrap}.truck-grid{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(7.69% - 1px),rgba(255,255,255,.11) calc(7.69% - 1px),rgba(255,255,255,.11) 7.69%);pointer-events:none}.truck-cab{width:72px;background:#d8dde2;color:#15191e;clip-path:polygon(0 22%,62% 22%,100% 58%,100% 100%,0 100%);display:flex;align-items:end;justify-content:center;padding-bottom:15px;font-size:28px}.truck-scale{display:flex;justify-content:space-between;margin:5px 72px 16px 0;color:var(--muted);font-size:10px}.truck-dims{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.truck-dims .input{padding:10px}@media(max-width:390px){.truck{height:98px}.truck-cab{width:58px}.truck-scale{margin-right:58px}.truck-summary{align-items:flex-start;flex-direction:column}}.trucks-week-stat{border-color:#18b866!important;background:linear-gradient(180deg,rgba(24,184,102,.13),rgba(24,184,102,.035))!important}.trucks-week-stat b,.trucks-week-stat span{color:#43d985!important}.truck-list-row{display:grid!important;grid-template-columns:58px minmax(120px,1fr) minmax(180px,1.3fr) auto 18px;gap:12px;align-items:center;text-align:left;width:100%}.truck-date-block{height:66px;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.truck-date-block b{font-size:27px;color:#fff;margin:3px 0}.truck-date-block span{font-size:10px;font-weight:800;color:var(--muted)}.truck-project-copy h3{color:#fff;margin:0 0 5px}.truck-mini{text-align:center;color:#fff!important}.truck-reference{width:100%;max-width:510px;aspect-ratio:4.42/1;position:relative;margin:auto;background:url("./truck-hq.svg?v=393") center/contain no-repeat}.truck-reference{background-color:transparent!important}.truck-reference-load{display:none!important}/* legacy embedded asset disabled */.truck-reference-old{background:url("data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAA0JCgsKCA0LCgsODg0PEyAVExISEyccHhcgLikxMC4pLSwzOko+MzZGNywtQFdBRkxOUlNSMj5aYVpQYEpRUk//2wBDAQ4ODhMREyYVFSZPNS01T09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0//wAARCABsAf4DASIAAhEBAxEB/8QAGwAAAQUBAQAAAAAAAAAAAAAAAAECAwQGBQf/xAA9EAACAQICBAoFDQEBAQAAAAAAAQIDBAURBiFTkRITFjFRUlRxkqMUFTJBYSIjJCU0QkNEcoGTobEzYqL/xAAXAQEBAQEAAAAAAAAAAAAAAAAAAQID/8QAIhEBAAICAgICAwEAAAAAAAAAAAERAhIhUTFhA0EycYGx/9oADAMBAAIRAxEAPwDzsAA2wAAAEAUMgEFEYa+hhSgCfSaPRzBLfEKUq1y3wVzJMVaM4BvJaOYOnrll31EN5PYNn7fmIupbCgbxaO4L1/MQPR3Bev5iLqlsGKbnk9gi/E8xD46PYHtPMQ1LYJoQ9A5O4Jl7a/kQyWjuCddfyIalsFmGZuXo9gu08xCLR3BX+L5iGq2w4uRuo6OYLtfMQ9aOYH76vmIlFsEGZvXo5gj5qvmIZLRzBdqv5EKLYTMMzc8ncF2vmIR6PYLtfMQ1S2HbDM3C0dwXa+Yh8dHME2nmIarbCgb5aOYHtPMQvJvBNov5EKLYAU33JvBNr5iEejuCL8XzUKS2CyEN29HsE2vmIbydwXbeYhRbC5hmbpaO4JtV/IheTuCe6ov5EKW2EzDM3T0dwXa+YhvJzBdr5iLrKWxAjNwtHcF23mIXk7gu18xE1LYbMEzdLR3BNr5iHcncE2nmIarbCgbrk7gu18xCrR3Bdr5iFJbCZCZG+5O4JtfMQ16O4JtfMQotgwNy9HsE2vmIRaPYLtfMQothwN0tHsF6/mIctHcF6/mIUWwWYZm+ejmC9fzENejmC7R/yIUtsIBuuTeC7R/yoOTmCr8TzEKLYUDcvR7Bdo/5EJyfwXaeYhRbDhmbd6P4LtH/ACIFo/gu08xCi2IEN5HR3BX+J5iJFo1gr+/5iFFvPxTfPRnBdp5iG8msF2nmIUWwghvVo3gu0f8AIheTeC7R/wAiFFsCAARQLGE5vKMW+5HUwjDPS5cZWzVNf2aWjb0KEcqNKMfiWkmWSoYVeVmuDSaXSzqW+jreTr1UvgjvAi0lqNLBLGnk3BzfxLKsbRLVb09xOmKWktkdIKFOhefNRUU/cjQaJNrCqj7zi6S/bF3Ha0TX1VU7mSPKz4VrWyjVr1a1dyk3J5JvUi76DbP8KO4ba80u9/6WUcscYmLl0yymJqEPoNtso7gdjbbKO4sAa0x6TfLtVdha7KO4a7C22aX7FtjWNMejfLtxVhUXiD+clxeWfBzOirC2yy4tbgX2x9xZRy+KIyu+3T5JmKrpX9X2uyjuHLD7XZR3FlAddMenPfLtX9AtdlHcJ6Bar8KO4siDXHpNsu3GxLC4TqU3Rlxeb15dBbpYbbQppOGb6XrJbrniTxWpHPHGJyyjp0yymMYmPtV9X2uyjuBYda7GO4uZAdNMemN8u1VYfa7GO4X0C12UdxZEGmPRvl2rvD7ZxaVNL9itbYRSp1ZSqNyWepP3HSQpNMTfJA7G22cdwx2Frso7iyGZdMejfLtV9X2uxjuD0C12MdxZAaY9G+Xar6vtdlHcU7vBqdWcXSzhr15e866Ak4QRnkqU8MtYRS4tPvHer7XZR3FoC6Y9G+Xap6utdjHcL6vtdjHcWQGmPRvl2rqwtdjHcVbzB6VaUXTbhk9eWrM6YEnDE3yVKeHWsIpcWn3od6DbbKO4sAXTHo3y7Qeg22yjuE9AtdlHcWAGmPRvl2qvD7XZR3Fa6wihVydNum10e86Y2S1fuScYrhYzm+XOp2VCMUuDmSK0t9miXIVHSHJH6Hb7NCehW+zRMGZRUr2FvKlLgxcXlqaKuFYfTcZTrSlPXkk2dOfsS7iHDf8AjL9TIJPQLXZIcsPtNkidIeiit6utNkhPV1pskWwA5WI4bR9GcqOcJLoKttbwjTjwm5P35s7N6voszmUl8ldxBNStqL545lqNpb5f80RUWWYsoZ6Jb7NCO1t9kiXMAMEWLGjTrXMY1pqMPe2VyW2hw7inHpkYabGlKjSpRhSXyUtWRIq8PjuOZjN3VsKVKNDgpta80cj17fL70PCjV0lNaqsPiHGQ+Jk1j98vvQ8KNJhtzK6tIVJpcJ8+oRNpSd1orpE9Ij0MkeT9y3CZfBbioy+kNWM7xZdBodEdeFVO5mc0iWV9+xodD39VVO5kjy1Pg+1Xt97/ANLGRBaPNz73/pOYw8N5+SZi5iMQ0ycGQiHICpFfTJFlIgj9sZYOXxff7l0+T6/UAMxMwOrmUAFQFe5WuJOuYhueeJKuY5Yfnl/P8dMvwx/pQzEA6uYAUQBQzEAAABQAAAAAAAAAAAAAAAAAAAAAAAAFa1LvBA+Zd5J8EeVV87EzFlzsazbJcwzEABZexLuI8NXzMv1MkfsS7hmHaqMv1MC4LkJmKgFFQgqAivfsszlQ9ldx1L37LM5VP2V3EFqkWo8xVpFqPMUKGYCAYQvYNDjMSproeZQZ2dGqE5XjrcH5CXOYhqT9J6nCu4w6qOG0aDE8LvLzEJThHKHSySho1zOvXXci0Mw0bHBFlh9MkpYFY01rg5v4l2NKFKKhTioxXMkWIpJk5DshouZWWV0lX039juaIv6qqdzOFpI8779jvaIL6qqdzJHlZ8HWb1Tfxf+loq2upS/U/9LCZzw8Omfk4QBTbJBUAgFeL+mMslSL+mS7i0mcvi+/3Lp8seP1AEHCHVzAogZgQ3PPElXMiG5euJOuZHLD88v5/jpn+GP8AQANAdXMoCAAAKgAAAAABAzAUAAAAAAAAQBQEFAAAQAFEFAUG9S7xBJvVq6ST4WPKtJ62NEzzYqNMAVAKihX7Eu4iw9/My/UySb+RLuIcOfzMv1MgupjkMQ5FD0xUxooEV79lmcun7K7jpXr+izObSfyV3EFqkWY8xWpFmPMUADsgyAwWRrdHllh6MmjX6PL6uRmPLUuiKhWhDbJZTjGLcmkl7xkZwqa4SUl8BlxTjWounNtJ9AyytqdrDgQk2viQWMgyFbj0icOK96Aymkkfp37Gg0QX1VU7mZ7SOonfannqNFod8rC5pe/NEjys+Dbf7+XS/wDSdMqKxxW2uanF04VKUpZrNknF4pn9jjvZzxuOJh0yrKbiVhDkV1TxPsi3scoYl2Rb2Xb0mvtONZHwMS7It4kqeJZfJtVn3jb0a+0EX9Nl3FpM5aw3G1eO44ENergZ+4u8Xii57SP7NnP44nG7jzNt/JMZVU+IpZQpWSxLsa3i5Yl2P+zpfpz19p2NbIXHEn+TW9hwMS7GNvRr7Nuc+FEtR5kcm8ssauZx4FGNNReayZbpQxWMEqlpFte9NmMbjKZry3lU4xF+FwMiBLEexi8HEOyG9vTGvtKKkV2sR7It4L1j2Rbxt6XX2s5CFeSxNxfAtFn8WytbWmN0qspzpQnGT9nPmG09Gsdui2NzIGsSXPaLexv1j2P+xfpK9rIpWXrDsY5esOxreNvRr7T5i5og4OIv8ot5UubbGq1SLp0IwUXnz84nKfqFjGPuXSEKqjiiiuFaRz+DYv1l2Mbek19rIpWXrHsYfWPY2NvRr7WRCv8AWPvs2VLqjjVaUeKt1BJ7xtP1C6x9y6mQZFWksV4KU7NZrobJFHE3+T/sbejX2myAi4GJdkW8RwxHsg29GvtK2JJ6iHg4h2QrXNDGKuSo0IwS59ZJmZiogiIibmT0PSEp2uJcFcK1jn+5KrbEOzR/s6OZmQD3b3/Zo/2NdviHZV/YEc38iXcRYZroS/UySra4nKDVO1jm1zvMjw+wxa2jKNS3jNN587CryHIZxV+vyi/sHC/7LH+wiVMXMg4N/wBlX9ipX/ZP9KG3v2WZy6XsovX1titzR4ulQjBPnesgpYbiUIKMqEW1782RaSUWW4NZFaNpiEfyy/smjTv1+U/0qJkLkRKF92X/AEXK+7KBhUajAL22hZxozqKM+hmWLltxEVTc4Nzb58+YxDTc6ms0JwcyKjWpcTD52HN1ienUp658KLUVm8mbZMq040qXGVqkYR+LOdLFcOjLLjm/icu+uK2K3suHNqhB5JL3k9HC3OHzdrwo9LHKutQubS4/41YyfRmTOEegzF5h07d8bbqVKpHW4nZwS/d9b8Gp/wBYamEZ/SVKOIatWoZg+OXGFJxpxjOD9zZ08Rowq4w41I8JZE1GwtJLXRRmptqyLTSr77SHjHcs6nZI+MmWH2a/AQrsbPYRLUpwrvTSp2SPjGPTSp2ReMsuxtNhEa7G02ERUnCutNKnvtV4h600qdlXiG1MPtXLPikgVjbLmpInJwl5ZVH+Vj4hstMqvZY+Ib6LbrmpIZO1obJF5OCvTSp2SPjEemlXssfGVatlQb/55EfoNDqE5XhfWmdXsq8TJY6YVn+TXiZzoWtGL1U0TKMF9yO4cpwuPTCsuezXiY16ZVOyR8ZXcKclk4R3HNr2cOMfB1ITZw7PLKt2WPiF5Z1uyx8Rm3TyzQ3gEuVqGlemNXssfENemNTsq8RnOCSW1GE6yU+YXJUO8tNKi/Kx8Y5aaT7JHxs53oVt0LeKrK26FvLycOi9MZP8qvExr0vfZF4mVI2dt1VvHqxtX91bxynCblhP3Wi8bHR0wn2ReNkHq+16q3iegWvV/scnC2tMZdkXiY7ljLsi8bKPoVsvu/2Cs7bq/wBjk4XJaY1PdaR8Y3ljV7JHxlWpZW3Fyajry6TkSppSaQuV4aJaYVeyR8bF5X1uyx8ZnFAOCLkqGj5XVuyx8Qcrq3ZY+I4ChqDgC5KaFaYVuyR8ZItL6vZI+MzagOURaU0XK+t2SPjGy0wq9kj4zPuIjiB3nphV7HHxicr6z/KR8ZwOAhVTQuSoaBaX1eyR8ZNS0prVPyqS/UZtU0WacVGOoDuz0lnGLk6C8RSlpjLPJW3/ANM4d/NtqCZaw6wi0pzjwm+ZDk4dRaXVss/Q5Zd7DlnUTy9EXiZcp4Rcyp8JUEl0ZHLxHC01JcDgVF8C8nCxyzm/yq8TDlhN/lV4jLShKE3GXOi5h1p6TU1+yuclytQ70dLK0vZs2+5sV6X1Ye1Z5d8mWrPC5yp/MUlkve0R32GShDK4orJ/eSLynBKGlzqy4Ltkn+ofPSaon9mXiMvd27s7hNey3qJa82qKnEllNBynq9mj4w5S1uzR8Zllcz6EPVzPoQsppnpNVS+yrxleWl9VSa9FXiOCrl561qHToRq5Sg+8XJSoT0pwbpwl0kAhGm1pWdi6UG2s2ush1yre2sK3Eyim11kYjhz68t4jnNrXOT/cuyU0+B0Y1akFLmzbfxK+MY1e0sRlToTdKFN5KK1ZiYRWnTjSnF60zVPCbK9lCvcUIub1tr3l+k+1KdR3mEUbqrHKo1k30nJwFqni9SGaSZ2MYm6bVCmlGnBaooxtarONxKUZOLz50JIaPEFFY2/lR1rpJqTil7Ud5kZVKkpcKU5N9LY11J9eW8llNpw49eO8a5x68d5i+MqbSW8Tjam0lvGy6tpw49aO8cpR60d5ilUqbSW8cqtTaS3jZKa2rKKl7Ud5E5x60d5mHOT55NjXKS+8xZTTSn0SjvGOp0yW8zLnPrPeCnLrMlrTRuS6VvE4UelbzgKUusxeFLpZbKd1tdK3jHJdZbziuUusxrlLrMWU7nGR6y3kFWpFt60cjN9LDN9JLKWpySzInURHmAU51ESWs4yrpS1IgBIg7qp0Ost45UqHWW84S7x2b6WatKd1U6C++t4qVBffW84Ob6WNefSxZTRZ0Out4vzHXW8zeb6Rc30sWU0ElQ663jfmV99bzgvvGsWU7850VTllNc3Scd1flPV7yAVEtaS8b8BOO+BGAEyuH1RVcPqkOQBFj0h9UT0l9UgEAndy+qJ6S+qQMMgqwrn/AMjlc/8AkrIUIs+k/wDkmhd0+D8rUygxGLE05qrdRa5szX4HCPClUcVLi45pGKg8pxa6TX4HVlGvTy5pLJlglyb3SHE3iEpRryhGMslBPUaW5qO7wqhdVElUa1vpJ62j+HVr1VZ0nm3m8nqI8a+acLemlGnBakiwjF4lBRu5Ze86uB006cV1nrOPeycrqbfSdTBpyVPU+Z6iR5Ppf0pxa6sp07S0k6UEs21qzJdGsSucQta1C7bqKMc1JnTvbC2xOxhO6hnNLVJamLSsqGGYVL0SHBclrb1sv2fTKY3FcX3SKklnYJk+MSfBS6Wczhy4PBzeXQSQ3ITMViMjRMx0Ks4eyxohB//Z") center/contain no-repeat}.truck-reference-load{position:absolute;left:14.5%;top:14%;height:61%;max-width:81.5%;background:repeating-linear-gradient(90deg,#ff841b 0,#ff982d calc(12.5% - 3px),#39434d calc(12.5% - 3px),#39434d 12.5%);border-radius:2px;box-shadow:inset 0 0 0 1px rgba(255,190,90,.45)}.truck-mini .small,.truck-mini div,.truck-scale span,.truck-summary strong{color:#fff!important}.truck-status-copy small{color:#9ca8b4!important}.truck-status-copy{display:flex;flex-direction:column;gap:8px;min-width:185px}.truck-state-pill{align-self:flex-start;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:900;letter-spacing:.2px;background:#27313a;color:#dce4eb}.truck-state-pill.confirmed{background:rgba(29,190,98,.16);border:1px solid #28c86c;color:#56e28d}.truck-state-pill.preparing{background:rgba(239,125,33,.16);border:1px solid #ef7d21;color:#ffad67}.truck-state-pill.pending{background:#242d35;border:1px solid #46515c;color:#c3ccd4}.truck-time-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.truck-time-grid span{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:6px;align-items:center;background:#0c1116;border:1px solid #26313b;border-radius:10px;padding:6px 8px}.truck-time-grid i{grid-row:1/3;font-style:normal;color:#ef7d21;font-size:17px}.truck-time-grid b{font-size:12px;color:#fff}.truck-time-grid small{font-size:9px;color:#85919c!important}.truck-project-copy .muted{color:#aeb8c4!important}.truck-section-head{display:flex;align-items:center;gap:12px;margin:6px 0 16px}.truck-section-head h1{margin:0;color:#fff}.truck-head-actions{display:flex;gap:8px;align-items:center}.truck-filter-btn{border:1px solid #35404b;background:#151b21;color:#dce3e9;border-radius:999px;padding:10px 15px;font-weight:800;white-space:nowrap}.truck-filter-btn.active{background:linear-gradient(135deg,#18a957,#39d77c);border-color:#42e589;color:#fff;box-shadow:0 0 22px rgba(42,215,116,.18)}.truck-real{position:relative;align-items:center;padding-bottom:10px;overflow:visible;filter:drop-shadow(0 5px 5px rgba(0,0,0,.35))}.truck-real .truck-box{height:36px;flex:1;border:2px solid #aeb9c4!important;border-radius:2px 5px 5px 2px!important;background:linear-gradient(180deg,#87929c 0,#5c6772 12%,#4d5863 88%,#303942 100%);overflow:hidden;box-shadow:inset 0 2px 2px rgba(255,255,255,.25),0 2px 0 #202830}.truck-real .truck-fill{background:linear-gradient(90deg,#ff7b16,#ff9829)!important;inset:2px auto 2px 2px;border-radius:2px}.truck-real .truck-grid{background:repeating-linear-gradient(90deg,transparent 0,transparent calc(12.5% - 2px),#26313b calc(12.5% - 2px),#26313b 12.5%)}.truck-cab-real{width:48px;height:36px;position:relative;background:linear-gradient(145deg,#c4ccd3 0,#8d99a4 48%,#65727e 100%);border:2px solid #697681;border-radius:10px 3px 3px 5px;clip-path:polygon(24% 0,100% 0,100% 100%,0 100%,0 38%);flex:0 0 auto;box-shadow:inset 2px 2px 2px rgba(255,255,255,.35)}.truck-cab-real .windshield{position:absolute;left:11px;top:5px;width:27px;height:13px;background:linear-gradient(145deg,#a8c0d0,#25313b);border:1px solid #d4dde3;clip-path:polygon(18% 0,100% 0,100% 100%,0 100%)}.truck-cab-real .sidewindow{position:absolute;right:3px;top:6px;width:7px;height:13px;background:#2d3943;border-radius:1px}.truck-cab-real .bumper{position:absolute;left:1px;bottom:2px;width:18px;height:4px;background:#e0e5e8;border-radius:2px}.truck-cab-real .light{position:absolute;right:1px;bottom:7px;width:5px;height:7px;background:#ffad35;box-shadow:0 0 5px #ff8a00}.truck-cab-real .grille{position:absolute;left:5px;bottom:8px;width:15px;height:5px;border-top:1px solid #4a5660;border-bottom:1px solid #4a5660}.truck-chassis{position:absolute;left:36px;right:4px;bottom:9px;height:5px;background:linear-gradient(#56616b,#252d34);border-radius:4px}.truck-meters{font-weight:800;letter-spacing:.1px;color:#fff!important}.truck-wheels{position:absolute;left:30px;right:5px;bottom:0;height:14px}.truck-wheels i{position:absolute;bottom:0;width:15px;height:15px;border-radius:50%;background:radial-gradient(circle,#9ca8b2 0 18%,#303b45 20% 44%,#090d11 46% 100%);border:2px solid #aeb9c4;box-shadow:0 2px 3px #000}.truck-wheels i:nth-child(1){left:0}.truck-wheels i:nth-child(2){right:23px}.truck-wheels i:nth-child(3){right:5px}.truck-status-copy{display:flex;flex-direction:column;gap:5px;align-items:flex-start;min-width:108px}.truck-status-copy small{font-size:9px;color:#b9c2cb;white-space:nowrap}.confirm-load{display:flex;align-items:center;gap:9px;margin:3px 0 14px;padding:12px;border:1px solid rgba(32,184,94,.35);background:rgba(32,184,94,.08);border-radius:12px;font-weight:800}.confirm-load input{width:19px;height:19px;accent-color:#20b85e}.week-badge{background:#129447!important;color:#fff!important;border-color:#20b85e!important}.inventory-main-card{position:relative;min-height:112px;text-align:left;align-items:flex-start!important;padding:18px!important}.inventory-main-card>b{font-size:28px!important;color:#f28a2a}.inventory-main-card>span{font-size:18px;font-weight:800;color:#fff}.inventory-main-card>small{display:block;margin-top:4px;color:#8f99a6;font-size:12px}.purchase-card{background:linear-gradient(145deg,#1a1d22,#121519)!important;border-color:#4b3424!important}.inventory-product-card{padding:16px!important;border:1px solid #29313a!important;background:linear-gradient(145deg,#15191e,#101318)!important}.inventory-product-card h3{margin:0 0 3px;color:#fff}.inventory-product-icon,.purchase-order-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#252c34;color:#f28a2a;font-size:21px;font-weight:800;flex:0 0 auto}.inventory-location{font-size:12px;color:#a8b0ba;margin-top:7px}.inventory-stock{min-width:54px;height:54px;border-radius:14px;background:#17231d;color:#76d59a;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:19px;font-weight:900}.inventory-stock.low{background:#342319;color:#ff9a4b}.inventory-stock small{font-size:9px;text-transform:uppercase;font-weight:700}.inventory-reserved{margin-top:12px;padding:8px 10px;border-radius:9px;background:#20252c;color:#d7dbe0;font-size:12px}.inventory-actions{display:flex;gap:8px;margin-top:12px}.purchase-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.purchase-head h2{margin:3px 0 0}.purchase-order-card{padding:14px!important}.purchase-note{margin:10px 0;padding:9px 10px;background:#181d22;border-radius:9px;color:#d6d9dd}@media(max-width:700px){.truck-list-row{grid-template-columns:48px minmax(90px,1fr) 110px auto 10px;gap:7px;padding:11px 9px!important}.truck-date-block{height:58px}.truck-date-block b{font-size:22px}.truck-project-copy .small{font-size:10px}.truck-mini .truck{height:36px!important}.truck-mini .small{font-size:9px}.truck-list-row>.badge{font-size:9px;padding:5px 6px}.truck-project-copy h3{font-size:13px}}
.truck-reference{width:100%!important;max-width:560px!important;aspect-ratio:4.42/1!important;background-image:url('./truck-hq.svg?v=393')!important;background-position:center!important;background-size:contain!important;background-repeat:no-repeat!important;overflow:visible!important}.truck-reference-load{display:block!important;position:absolute!important;left:18.8%!important;top:18%!important;height:53%!important;max-width:74.8%!important;min-width:0!important;background:repeating-linear-gradient(90deg,#ff7b16 0,#ff9829 calc(12.5% - 3px),#35404a calc(12.5% - 3px),#35404a 12.5%)!important;border-radius:2px!important;box-shadow:inset 0 0 0 1px rgba(255,190,90,.45)!important;transition:width .35s ease!important}.truck-mini{min-width:220px}.truck-meters{margin-top:2px!important;color:#fff!important;text-shadow:0 1px 2px #000}@media(max-width:700px){.truck-reference{max-width:280px!important}.truck-mini{min-width:105px}}
.home-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0 12px}.home-shortcuts button{min-width:0;border:1px solid #2b333c;background:#151a20;color:#fff;border-radius:14px;padding:12px 5px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font:inherit;font-size:11px;font-weight:800;cursor:pointer}.home-shortcuts button b{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#242b33;color:#f28a2a;font-size:18px}.home-shortcuts button:active{transform:scale(.97);background:#1c2229}@media(max-width:360px){.home-shortcuts{gap:5px}.home-shortcuts button{font-size:10px;padding-left:2px;padding-right:2px}}@media print{body{background:#fff;color:#111}.top,.bottom,.tabs,.stage-actions,.report-print,.back,.iconbtn{display:none!important}.app,main{max-width:none;padding:0}.screen{display:none!important}#project.screen{display:block!important}.titlebar,#project>.card{display:none}.final-report{display:block;color:#111}.report-hero,.report-stat,.report-dates span,.report-section{break-inside:avoid}.report-hero{background:#183c2b!important;color:#fff;-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-stat,.report-dates span{border:1px solid #ddd;background:#fff}.muted,.report-result span{color:#555!important}}
/* v77 mobile override reverted */
/* Cabecera Camiones ajustada al ancho del móvil */
@media(max-width:700px){
 .truck-section-head{display:grid;grid-template-columns:28px minmax(0,1fr);gap:6px 8px;align-items:center;margin:6px 0 14px;width:100%}
 .truck-section-head>.back{grid-column:1;grid-row:1;padding:0;font-size:25px}
 .truck-section-head>.grow{grid-column:2;grid-row:1;min-width:0}
 .truck-section-head h1{font-size:27px;line-height:1;margin:0}
 .truck-section-head .grow>.muted{font-size:13px;margin-top:3px}
 .truck-head-actions{grid-column:1/3;grid-row:2;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:7px;min-width:0}
 .truck-filter-btn{width:100%;min-width:0;padding:9px 6px;font-size:12px;text-align:center;white-space:nowrap}
}
/* Tarjeta de camión: datos y estado arriba; camión grande debajo */
.truck-list-row{grid-template-columns:58px minmax(150px,1fr) minmax(210px,1.15fr) 18px;grid-template-rows:auto auto;align-items:start;column-gap:12px;row-gap:8px}
.truck-list-row .truck-date-block{grid-column:1;grid-row:1}
.truck-list-row .truck-project-copy{grid-column:2;grid-row:1;min-width:0}
.truck-list-row .truck-status-copy{grid-column:3;grid-row:1;width:100%;min-width:0;margin:0;display:flex;flex-direction:column;align-items:stretch;gap:6px}
.truck-list-row .truck-status-copy .truck-state-pill{align-self:stretch;text-align:center}
.truck-list-row .truck-status-copy .truck-time-grid{width:100%;grid-template-columns:1fr 1fr}
.truck-list-row .truck-mini{grid-column:2/4;grid-row:2;width:100%;min-width:0;max-width:none;text-align:center;margin-top:2px}
.truck-list-row .truck-reference{width:100%!important;max-width:none!important}
.truck-list-row .truck-meters{font-size:12px!important;margin-top:3px!important}
.truck-list-row>span:last-child{grid-column:4;grid-row:1/3;align-self:center}
@media(max-width:700px){.truck-list-row{grid-template-columns:48px minmax(0,1fr) minmax(142px,.95fr) 10px;grid-template-rows:auto auto;gap:7px;padding:11px 9px!important}.truck-list-row .truck-date-block{grid-column:1;grid-row:1}.truck-list-row .truck-project-copy{grid-column:2;grid-row:1}.truck-list-row .truck-status-copy{grid-column:3;grid-row:1;gap:5px}.truck-list-row .truck-status-copy .truck-state-pill{font-size:10px;padding:6px 7px}.truck-list-row .truck-time-grid{grid-template-columns:1fr 1fr;gap:4px}.truck-list-row .truck-time-grid span{padding:5px 4px;column-gap:3px}.truck-list-row .truck-time-grid i{font-size:14px}.truck-list-row .truck-time-grid b{font-size:10px}.truck-list-row .truck-time-grid small{font-size:8px}.truck-list-row .truck-mini{grid-column:2/4;grid-row:2;width:100%;min-width:0!important}.truck-list-row .truck-reference{max-width:none!important;width:100%!important}.truck-list-row>span:last-child{grid-column:4;grid-row:1/3}.truck-project-copy h3{font-size:14px}.truck-project-copy .small{font-size:9px}}
/* Menú visual del proyecto: todos los accesos visibles sin desplazamiento */
.project-menu{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;overflow:visible;border:0;margin:16px 0 14px}.project-menu .tab{min-width:0;min-height:72px;padding:9px 4px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#192027,#12171c);color:#aab3bd;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;white-space:normal;font-size:11px;font-weight:700;line-height:1.1;cursor:pointer;box-shadow:0 5px 14px #0002;transition:transform .15s ease,border-color .15s ease,background .15s ease}.project-menu .tab:active{transform:scale(.96)}.project-menu .tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.project-menu .tab-icon{width:31px;height:31px;border-radius:10px;background:#242c34;color:#d4d9de;display:grid;place-items:center;font-size:17px;font-weight:900}.project-menu .tab.active{color:#fff;border-color:#a85c24;background:linear-gradient(180deg,#382315,#211810);box-shadow:inset 0 0 0 1px rgba(231,130,44,.18),0 7px 18px rgba(0,0,0,.25)}.project-menu .tab.active .tab-icon{background:var(--accent);color:#fff;box-shadow:0 4px 12px rgba(231,130,44,.28)}.project-menu .unread-inline{position:absolute;margin:-43px 0 0 18px}.project-menu .tab{position:relative}@media(max-width:370px){.project-menu{gap:6px}.project-menu .tab{min-height:68px;font-size:10px;padding-inline:2px}.project-menu .tab-icon{width:28px;height:28px}}.pallet-check{flex:0 0 auto;display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid #3b434c;border-radius:11px;background:#1b2127;color:#b8c0c8;font-size:11px;font-weight:800;cursor:pointer}.pallet-check input{width:18px;height:18px;margin:0;accent-color:var(--ok)}.pallet-check.checked{background:#143c29;border-color:#256747;color:#9cebbb}.pallet-verify{display:flex;align-items:center;justify-content:space-between;gap:12px;border-color:#4b3b2b}.pallet-verify.checked{border-color:#256747;background:linear-gradient(180deg,#163425,#10291d)}.pallet-verify-copy b,.pallet-verify-copy span{display:block}.pallet-verify-copy b{font-size:14px}.pallet-verify-copy span{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.35}.ready-badge{display:inline-block;margin-top:5px;background:#143c29;color:#9cebbb}.ready-pending{display:inline-block;margin-top:5px;background:#2a3036;color:#aeb7c0}.pallet-ready{border-color:#3b434c}.pallet-ready.ready{border-color:#256747;background:linear-gradient(180deg,#163425,#10291d)}@media(max-width:430px){.pallet-check span{display:none}.pallet-check{padding:7px}.pallet-verify .pallet-check span{display:inline}.pallet-verify .pallet-check{padding:8px 10px}}
/* Dashboard links and matching filtered lists. */
.dashboard-grid .stat-link{position:relative;width:100%;min-width:0;color:var(--text);cursor:pointer;appearance:none;touch-action:manipulation;padding:13px 16px 13px 5px;transition:border-color .15s,background .15s,transform .15s}
.dashboard-grid .stat-link:hover{border-color:var(--accent);background:var(--panel2)}
.dashboard-grid .stat-link:active{transform:scale(.97)}
.dashboard-grid .stat-link:focus-visible,.incident-link:focus-visible,.filter-chips .chip:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.stat-arrow{position:absolute;right:6px;top:50%;transform:translateY(-50%);font-style:normal;font-size:20px;color:var(--accent)}
.filter-chips{flex-wrap:wrap;overflow:visible;margin:14px 0 12px}
.filter-chips .chip{min-height:36px;cursor:pointer}
.incident-link{width:100%;color:var(--text);text-align:left;cursor:pointer;touch-action:manipulation}
.incident-link:hover{border-color:var(--accent)}
.incident-link .grow{min-width:0;overflow-wrap:anywhere}
.incident-project{display:block;margin-top:5px}
.incident-link>.badge{flex-shrink:0}
@media(prefers-reduced-motion:reduce){.dashboard-grid .stat-link{transition:none}.dashboard-grid .stat-link:active{transform:none}}

/* Responsive layout: móvil, tablet y escritorio */
@media (min-width:760px){
  body{padding:18px}
  .app{width:100%;max-width:1180px;min-height:calc(100vh - 36px);border-radius:24px}
  main{padding:30px 34px 105px}
  #home h1{font-size:38px}
  #home>.muted{font-size:16px}
  #home .dashboard-grid{gap:14px}
  #home .dashboard-grid .stat{min-height:105px}
  #home .dashboard-grid .stat b{font-size:31px}
  #home .dashboard-grid .stat span{font-size:13px}
  #home .load-card,#home .card{padding:17px}
  .web-home-btn{display:flex;align-items:center;gap:6px;background:var(--accent);color:#fff!important;border-radius:10px;padding:8px 12px;font-size:12px;font-weight:900;box-shadow:0 4px 13px rgba(231,130,44,.2)}
.theme-toggle-btn{width:38px;height:38px;padding:0;border-radius:11px;background:#171b20!important;border:1px solid #303740!important;color:#f28a2a!important;font-size:19px;display:grid!important;place-items:center}
body.light-theme{background:#f4f5f6;color:#171a1e}
body.light-theme .app,body.light-theme main{background:#f4f5f6;color:#171a1e}
body.light-theme .top,body.light-theme .bottom{background:rgba(255,255,255,.97);border-color:#d9dde1}
body.light-theme .card,body.light-theme .listrow,body.light-theme .stat,body.light-theme .load-card,body.light-theme .online-summary,body.light-theme .home-alert,body.light-theme .sheet,body.light-theme .truck-overview-card{background:#fff;color:#171a1e;border-color:#dfe3e6;box-shadow:0 5px 18px rgba(20,28,36,.06)}
body.light-theme .muted,body.light-theme .small.muted,body.light-theme .home-alert small{color:#68717a}
body.light-theme .input{background:#fff;color:#171a1e;border-color:#ccd2d7}
body.light-theme .btn.dark,body.light-theme .chip,body.light-theme .back,body.light-theme .iconbtn{background:#eef0f2;color:#22272c;border-color:#d5dade}
body.light-theme .theme-toggle-btn{background:#fff!important;border-color:#d9dde1!important;color:#303840!important}
body.light-theme .modal{background:rgba(25,30,35,.35)}
body.light-theme .progress,body.light-theme .truck-reference{background:#e6e9ec}
body.light-theme h1,body.light-theme h2,body.light-theme h3,body.light-theme b{color:inherit}
/* Contraste completo del modo claro */
body.light-theme{--bg:#d4d8dc;--panel:#f7f8f9;--panel2:#e1e4e7;--line:#c3c9cf;--text:#171a1e;--muted:#626c75;background:#c9ced3!important}
body.light-theme .app{background:#d4d8dc!important;border-color:#c3c9cf}
body.light-theme main{background:#d4d8dc!important}
body.light-theme .stat span,body.light-theme .inventory-main-card>span,body.light-theme .inventory-product-card h3,body.light-theme .truck-date-block b,body.light-theme .truck-project-copy h3,body.light-theme .truck-section-head h1,body.light-theme .tab.active,body.light-theme .stage.done,body.light-theme .nav.active{color:#171a1e!important}
body.light-theme .project-menu .tab{background:#fff;color:#59636d;border-color:#d8dde2;box-shadow:0 4px 12px rgba(20,28,36,.05)}
body.light-theme .project-menu .tab.active{background:#fff3e9;color:#171a1e;border-color:#e7822c}
body.light-theme .inventory-main-card,body.light-theme .purchase-card,body.light-theme .inventory-product-card{background:#fff!important;border-color:#d8dde2!important}
body.light-theme .inventory-reserved,body.light-theme .purchase-note{background:#eef1f3;color:#30363c}
body.light-theme .cal-day,body.light-theme .calendar-event,body.light-theme .chat-message,body.light-theme .chat-compose{background:#fff;color:#171a1e;border-color:#d8dde2}body.light-theme .cal-day.load-day{background:#dcecff!important;border:2px solid #2377d8!important}body.light-theme .cal-day.loaded-day{background:#dff5e9!important;border:2px solid #1f9d61!important}body.light-theme .cal-day.loaded-day b,body.light-theme .cal-day.loaded-day .cal-load-label{color:#137746!important}body.light-theme .cal-day.return-day{background:#ffe3e6!important;border:2px solid #df3f4b!important}body.light-theme .cal-day.return-day b,body.light-theme .cal-return-label{color:#b92230!important}body.light-theme .calendar-event.return-event{background:#ffe8ea!important;border-color:#df3f4b!important}body.light-theme .calendar-event.return-event .event-date{background:#df3f4b!important;color:#fff!important}body.light-theme .cal-day.load-day b,body.light-theme .cal-day .cal-load-label{color:#145fae!important}body.light-theme .calendar-event.load-event{background:#e4f0ff!important;border-color:#2377d8!important}body.light-theme .calendar-event.load-event .event-date{background:#2377d8!important;color:#fff!important}body.light-theme .load-date-highlight{background:#dcecff;color:#145fae!important;border-color:#83b9ef}
body.light-theme .truck-filter-btn{background:#fff;color:#30363c;border-color:#d8dde2}
body.light-theme .back{color:#171a1e}
body.light-theme .bottom .nav{color:#66717b}
body.light-theme .bottom .nav.active{color:#171a1e}
body.light-theme .top{background:rgba(255,255,255,.97)!important}
body.light-theme .sheet{background:#f8f9fa!important;color:#171a1e}
body.light-theme .online-summary{background:linear-gradient(135deg,rgba(41,171,103,.10),#fff)!important;color:#171a1e}
body.light-theme .home-alert{background:#fff!important;color:#171a1e}
body.light-theme .input{background:#fff!important;color:#171a1e!important}
body.light-theme .input::placeholder{color:#7a838c}
body.light-theme .brand-logo{filter:drop-shadow(0 0 0 transparent)}
/* Corrección global de contraste en modo gris claro/medio */
body.light-theme main,body.light-theme .card,body.light-theme .listrow,body.light-theme .stat,body.light-theme .load-card,body.light-theme .home-alert,body.light-theme .online-summary,body.light-theme .sheet,body.light-theme .daily-control,body.light-theme .daily-priority,body.light-theme .calendar-event,body.light-theme .cal-day,body.light-theme .chat-message,body.light-theme .chat-compose,body.light-theme .inventory-main-card,body.light-theme .inventory-product-card,body.light-theme .purchase-card,body.light-theme .project-menu .tab,body.light-theme .truck-list-row{color:#111820!important}
body.light-theme main h1,body.light-theme main h2,body.light-theme main h3,body.light-theme main b,body.light-theme main strong,body.light-theme main label,body.light-theme main p,body.light-theme main .truck-project-copy h3,body.light-theme main .truck-section-head h1,body.light-theme main .inventory-main-card>span,body.light-theme main .inventory-product-card h3{color:#111820}
body.light-theme .stat span,body.light-theme .small,body.light-theme .muted,body.light-theme .home-alert small,body.light-theme .daily-priority small,body.light-theme .inventory-location,body.light-theme .purchase-note,body.light-theme .truck-project-copy .muted{color:#4f5962!important}
body.light-theme .truck-mini .small,body.light-theme .truck-mini div,body.light-theme .truck-scale span,body.light-theme .truck-summary strong,body.light-theme .truck-meters{color:#111820!important;text-shadow:none!important}
body.light-theme .home-shortcuts button{background:#f7f8f9;color:#111820;border-color:#c3c9cf}
body.light-theme .home-shortcuts button b{background:#e1e4e7;color:#d66f19}
body.light-theme .risk-choice{color:#111820}
body.light-theme .btn.primary,body.light-theme .hero,body.light-theme .fab,body.light-theme .badge.danger,body.light-theme .home-alert-count,body.light-theme .week-badge{color:#fff!important}
  .web-home-btn b{font-size:20px;line-height:1}
  .web-home-btn span{display:block}
  .alert-nav-btn{padding:7px 10px}
  .alert-nav-btn .alert-nav-icon{width:46px;height:42px;border-radius:13px;background:#171b20;color:#f28a2a;box-shadow:inset 0 0 0 1px #303740}
  .alert-nav-btn .alert-nav-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  .brand-logo{width:340px;max-width:48vw}
  .top{padding:16px 24px}
  .bottom{width:calc(100% - 36px);max-width:1180px;bottom:18px}
  .sheet{width:min(92vw,860px);border-radius:22px;margin-bottom:18px}
  .dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .grid4{gap:12px}
  .card{padding:16px}
  .project-menu{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
  .project-menu .tab{min-height:78px}
}

@media (min-width:1024px){
  body{padding:24px}
  .app{max-width:1440px;min-height:calc(100vh - 48px)}
  .top{padding:18px 32px}
  main{padding:26px 32px 112px}
  .bottom{width:calc(100% - 48px);max-width:1440px;bottom:24px}
  .dashboard-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
  .dashboard-grid .stat{min-height:92px}
  .dashboard-grid .stat b{font-size:30px}
  .dashboard-grid .stat span{font-size:12px}
  .grid4{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
  .project-menu{grid-template-columns:repeat(8,minmax(0,1fr))}
  .actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .report-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .report-dates{gap:12px}
  .load-card{padding:14px 16px}
  .card{border-radius:20px}
}

.truck3d-toolbar{display:flex;gap:7px;justify-content:center;margin:9px 0}.truck3d-toolbar button{border:1px solid #46505a;background:#242b32;color:#fff;border-radius:9px;padding:6px 10px;font-size:10px;font-weight:800}.truck3d-viewport{height:310px;overflow:hidden;position:relative;touch-action:none;cursor:grab;background:radial-gradient(circle at 50% 35%,#34404a 0,#171d23 52%,#0d1115 100%);border-radius:16px;perspective:1100px}.truck3d-viewport:active{cursor:grabbing}.truck3d-world{--rot:-22deg;position:absolute;left:50%;top:51%;width:900px;height:340px;transform-style:preserve-3d;transform:translate(-50%,-50%) rotateX(62deg) rotateZ(var(--rot)) scale(.78);transition:transform .18s ease}.deck3d{position:absolute;left:55px;top:40px;width:760px;height:260px;background:#69737b;transform-style:preserve-3d;border:4px solid #9ca5ac;box-shadow:0 35px 60px rgba(0,0,0,.45)}.deck3d-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:58px 52px}.loadbox3d{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--d);border:1px solid #7e4a20;background:#c87d39;transform-style:preserve-3d;transform:translateZ(calc(var(--z)/2));box-shadow:none;animation:loadDrop .45s both;animation-delay:var(--delay);padding:0}.loadbox3d:before,.loadbox3d:after,.loadbox3d span{content:"";position:absolute;background:#df9b57;border:1px solid rgba(80,43,15,.55)}.loadbox3d:before{left:0;top:100%;width:100%;height:var(--z);transform-origin:top;transform:rotateX(-90deg)}.loadbox3d:after{left:100%;top:0;width:var(--z);height:100%;transform-origin:left;transform:rotateY(90deg);background:#a85e28}.loadbox3d span{inset:0;background:linear-gradient(90deg,transparent 47%,rgba(91,49,18,.38) 48%,rgba(91,49,18,.38) 52%,transparent 53%)}.wall3d{position:absolute;background:rgba(225,232,237,.16);border:2px solid rgba(225,232,237,.55);backdrop-filter:blur(1px)}.wall-left{left:55px;top:40px;width:760px;height:105px;transform-origin:top;transform:rotateX(90deg)}.wall-right{left:815px;top:40px;width:105px;height:260px;transform-origin:left;transform:rotateY(-90deg)}.cab-real3d{position:absolute;left:815px;top:86px;width:105px;height:150px;background:#e7822c;transform:translateZ(35px);clip-path:polygon(0 0,65% 0,100% 28%,100% 100%,0 100%)}.cab-real3d i{position:absolute;right:9px;top:20px;width:42px;height:38px;background:#26333c;clip-path:polygon(0 0,70% 0,100% 100%,0 100%)}.cab-real3d b{position:absolute;left:10px;bottom:22px;color:#fff;font-size:10px}.wheel-real3d{position:absolute;width:42px;height:42px;border-radius:50%;background:#15191d;border:10px solid #303840;transform:rotateX(90deg) translateZ(-20px)}.wheel-real3d.wa{left:835px;top:220px}.wheel-real3d.wb{left:160px;top:278px}.wheel-real3d.wc{left:680px;top:278px}.truck3d-legend{text-align:center;margin-top:7px;font-size:9px;color:#89949e}@keyframes loadDrop{from{opacity:0;transform:translateZ(130px)}to{opacity:1;transform:translateZ(calc(var(--z)/2))}}body.light-theme .truck3d-viewport{background:radial-gradient(circle at 50% 35%,#f8fafb,#cbd2d8)}body.light-theme .truck3d-toolbar button{background:#eef1f3;color:#1b2228;border-color:#c2c9cf}@media(max-width:600px){.truck3d-viewport{height:260px}.truck3d-world{transform:translate(-50%,-50%) rotateX(62deg) rotateZ(var(--rot)) scale(.58)}}
/* Vista 3D de carga */
.truck3d-card{margin:16px 0 8px;padding:15px;border:1px solid var(--line);border-radius:20px;background:#171d23;overflow:hidden}.truck3d-head,.truck3d-data{display:flex;align-items:center;justify-content:space-between;gap:10px}.truck3d-head span{font-size:10px;font-weight:900;letter-spacing:1.2px;color:#aeb7c0}.truck3d-head b{font-size:12px;color:#f28a2a}.truck3d-scene{height:190px;position:relative;perspective:700px;margin:5px -2px 0}.trailer3d{position:absolute;left:4%;right:21%;bottom:35px;height:112px;background:#c9ced2;border:2px solid #717b84;transform:skewY(-3deg);box-shadow:12px 15px 28px rgba(0,0,0,.34)}.trailer3d:after{content:"";position:absolute;inset:9px 8px 8px;background:#171d22;border:1px solid #68727b}.trailer3d-roof{position:absolute;left:1px;right:-10px;top:-14px;height:15px;background:#dfe3e6;transform:skewX(-48deg);transform-origin:left bottom}.trailer3d-floor{position:absolute;left:0;right:-12px;bottom:-12px;height:13px;background:#555e65;transform:skewX(48deg);transform-origin:left top}.cargo3d-clip{position:absolute;z-index:5;left:8px;bottom:9px;height:92px;overflow:hidden}.cargo3d-box{position:absolute;background:#c9823e;border:1px solid #f0bf7b;box-shadow:3px 3px 5px rgba(0,0,0,.42);transform:skewY(-3deg)}.cargo3d-box:before{content:"";position:absolute;left:0;right:-5px;top:-5px;height:5px;background:#e8b56f;transform:skewX(-42deg);transform-origin:left bottom}.cargo3d-box i{position:absolute;left:48%;top:0;bottom:0;border-left:1px solid rgba(75,40,12,.45)}.cargo3d-box b{position:absolute;left:0;right:0;top:48%;border-top:1px solid rgba(75,40,12,.35)}.cab3d{position:absolute;right:5%;bottom:31px;width:19%;height:82px;background:#e7822c;clip-path:polygon(0 18%,60% 18%,100% 48%,100% 100%,0 100%)}.cab3d-window{position:absolute;right:9%;top:29%;width:38%;height:25%;background:#25313a;clip-path:polygon(0 0,60% 0,100% 100%,0 100%)}.cab3d-logo{position:absolute;left:9%;bottom:16px;font-size:7px;font-weight:900;color:#fff}.wheel3d{position:absolute;bottom:20px;width:26px;height:26px;border-radius:50%;background:#111;border:6px solid #30363b;box-shadow:inset 0 0 0 3px #858d93;z-index:20}.wheel3d.w1{right:8%}.wheel3d.w2{left:18%}.wheel3d.w3{left:67%}.truck3d-data strong{font-size:22px;color:#fff}.truck3d-data span{font-size:11px;color:#aeb7c0}body.light-theme .truck3d-card{background:#fff;border-color:#c4cbd1}body.light-theme .truck3d-head span,body.light-theme .truck3d-data span{color:#515d67!important}body.light-theme .truck3d-data strong{color:#111820!important}@media(max-width:480px){.truck3d-scene{height:158px}.trailer3d{height:92px;bottom:34px}.cargo3d-clip{height:75px}.cab3d{height:69px}.wheel3d{width:22px;height:22px}}
.truck-height-rule{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:10px 0 14px;padding:11px 12px;border-radius:11px;background:rgba(255,255,255,.04);border:1px solid var(--line);font-size:11px}.height-ok{color:#54c987;font-weight:900}.height-alert{color:#ff625f!important;font-weight:900}body.light-theme .truck-height-rule{background:#f1f3f4}
.return-warehouse-box{margin:16px 0;padding:14px;border:1px solid rgba(231,130,44,.34);border-radius:16px;background:rgba(231,130,44,.06)}.return-warehouse-box>.small{font-weight:900;letter-spacing:.7px;color:#f29443;margin-bottom:8px}.return-warehouse-box label{margin-top:10px}
/* Ajustes de Inicio v108 */
.online-summary.online-compact{width:auto!important;display:inline-flex!important;gap:7px!important;min-height:30px!important;padding:6px 10px!important;margin:8px 0 4px!important;border-radius:999px!important;font-size:10px!important;box-shadow:none!important}
.online-summary.online-compact .presence-dot{width:8px;height:8px;flex:0 0 8px}
.online-summary.online-compact b{font-size:10px;white-space:nowrap}
.online-summary.online-compact .online-names-hidden{display:none!important}
#directChatBtn,#directChatBtn .nav-icon,#directChatBtn .alert-nav-icon{color:#29b66f!important}
#directChatBtn .alert-nav-icon{border-color:rgba(41,182,111,.42)!important;background:rgba(41,182,111,.10)!important}
#directChatBtn.has-unread .alert-nav-icon{background:#29b66f!important;border-color:#72d9a3!important;box-shadow:0 0 0 4px rgba(41,182,111,.16),0 0 18px rgba(41,182,111,.48)!important}
.search-attention{outline:3px solid rgba(231,130,44,.62)!important;box-shadow:0 0 0 6px rgba(231,130,44,.12)!important}
body.light-theme .brand-logo{background:#171b20;border-radius:10px;padding:3px 6px}
@media(max-width:600px){.online-summary.online-compact{margin-top:7px!important}}

/* Foco operativo v107: Proyectos + Camiones; módulos futuros visibles pero bloqueados */
.future-module{opacity:.78}
.future-module .nav-icon{border:1px dashed rgba(231,130,44,.38)}
.construction-panel{text-align:center;padding:18px 4px 8px}
.construction-icon{width:66px;height:66px;margin:0 auto 14px;border-radius:20px;display:grid;place-items:center;font-size:34px;font-weight:900;background:rgba(231,130,44,.14);color:#f29443;border:1px solid rgba(231,130,44,.34)}
.construction-panel h2{font-size:26px;margin:4px 0 8px}.construction-panel p{max-width:440px;margin:0 auto 18px;line-height:1.55;color:#b8c0c8}
.stock-alert,.purchase-alert,.inventory-alert{display:none!important}

/* Legibilidad consistente: ningún control se pierde contra su fondo */
button,.tab,.chip,.stat,.card,.listrow,.load-card,.truck-list-row{isolation:isolate}
.nav,.tab,.chip,.btn,.stat{font-weight:750}
.input,select.input,textarea.input{border-width:1.5px}
.input:focus{outline:2px solid rgba(231,130,44,.55);outline-offset:1px;border-color:#f29443}
.project-menu .tab{color:#c7ced5;background:#171d23;border:1px solid #303842}
.project-menu .tab.active{color:#fff;background:#2b2119;border-color:#e7822c}
.bottom .nav{color:#aeb7c0}.bottom .nav.active{color:#fff}
.truck-filter-btn{color:#d9dee3}.truck-filter-btn.active{color:#fff}
body.light-theme .construction-panel p{color:#4f5962}
body.light-theme .future-module .nav-icon{border-color:#d78943}
body.light-theme .bottom .nav{color:#4d5963!important}
body.light-theme .bottom .nav.active{color:#111820!important}
body.light-theme .project-menu .tab{color:#4f5962!important;background:#fff!important;border-color:#cbd2d8!important}
body.light-theme .project-menu .tab.active{color:#111820!important;background:#fff1e5!important;border-color:#e7822c!important}
body.light-theme .chip{color:#303942!important;background:#f7f8f9!important;border-color:#c5ccd2!important}
body.light-theme .chip.active{color:#111820!important;background:#ffe9d6!important;border-color:#e7822c!important}
body.light-theme .truck-filter-btn{color:#303942!important}
body.light-theme .truck-filter-btn.active{background:#e7822c!important;color:#fff!important;border-color:#e7822c!important}
@media(max-width:759px){main{padding-inline:14px}.project-menu .tab{min-width:72px}.bottom .nav span:last-child{font-size:10px}}
@media(min-width:760px){.project-menu .tab{min-height:80px}.bottom .nav span:last-child{font-size:12px}}

@media (min-width:1280px){
  .app{max-width:1600px}
  .bottom{max-width:1600px}
  main{padding-inline:38px}
  .top{padding-inline:38px}
  .project-menu{grid-template-columns:repeat(10,minmax(0,1fr))}
}
.truck-dimension-panel{margin:14px 0 16px;padding:15px;border:1px solid #3b454e;border-radius:18px;background:#11171c}.truck-dimension-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.truck-dimension-head span{display:block;font-size:9px;font-weight:900;letter-spacing:1.2px;color:#f29443}.truck-dimension-head b{display:block;margin-top:3px;font-size:15px;color:#fff}.truck-dimension-head small{font-size:9px;color:#8f9aa4}.truck-dimension-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.dimension-card{display:flex;gap:9px;align-items:center;padding:11px 9px;border-radius:13px;background:#1c242b;border:1px solid #36414a}.dimension-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:rgba(231,130,44,.12);color:#f29443;font-size:18px;font-weight:900}.dimension-card small,.dimension-card em{display:block}.dimension-card small{font-size:8px;font-weight:900;color:#8f9aa4}.dimension-card strong{display:block;font-size:17px;color:#fff;margin:2px 0}.dimension-card em{font-size:8px;color:#7f8a94;font-style:normal}.truck-dimension-sketch{display:grid;grid-template-columns:1.45fr 1fr;gap:9px;margin-top:10px}.truck-dimension-sketch>div>span{font-size:8px;font-weight:900;color:#8f9aa4}.sketch-trailer,.sketch-trailer-side{height:58px;margin-top:5px;border:2px solid #67737d;border-radius:7px;position:relative;background:#192128}.sketch-trailer{background:repeating-linear-gradient(90deg,#192128 0,#192128 9%,#202a31 9%,#202a31 10%)}.sketch-trailer b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:10px;color:#fff}.sketch-trailer i{position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:8px;color:#f29443;font-style:normal;text-align:center}.sketch-trailer-side b{position:absolute;left:6px;top:50%;transform:translateY(-50%);font-size:9px;color:#f29443}.sketch-trailer-side i{position:absolute;right:6px;bottom:5px;font-size:8px;color:#fff;font-style:normal}.measure-input{position:relative}.measure-input .input{padding-right:42px}.measure-input>span{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-weight:900;color:#f29443}.field-help{float:right;font-size:9px;color:#8f9aa4;font-weight:700}.dimension-control{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:12px 0 15px;padding:12px;border:1px solid #36414a;border-radius:13px;background:#171e24}.dimension-control b,.dimension-control>div>span{display:block}.dimension-control b{font-size:10px;color:#fff}.dimension-control>div>span{font-size:9px;color:#8f9aa4;margin-top:2px}.dimension-checks{display:flex!important;gap:7px;flex-wrap:wrap;justify-content:flex-end}.dimension-checks span{padding:6px 8px;border-radius:999px;background:#11171c;font-size:9px!important;margin:0!important}body.light-theme .truck-dimension-panel{background:#fff;border-color:#c8d0d6}body.light-theme .truck-dimension-head b,body.light-theme .dimension-card strong,body.light-theme .dimension-control b{color:#172027!important}body.light-theme .dimension-card,body.light-theme .dimension-control{background:#f4f6f7;border-color:#cbd2d8}body.light-theme .sketch-trailer,body.light-theme .sketch-trailer-side{background:#e7ebee}body.light-theme .sketch-trailer b,body.light-theme .sketch-trailer-side i{color:#172027}@media(max-width:600px){.truck-dimension-cards{grid-template-columns:1fr}.dimension-card{min-height:64px}.truck-dimension-sketch{grid-template-columns:1fr}.dimension-control{align-items:flex-start;flex-direction:column}.dimension-checks{justify-content:flex-start}.truck-dimension-head small{display:none}}
.editable-truck-dims{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.editable-truck-dims label{margin:0;padding:11px;border-radius:13px;background:#1c242b;border:1px solid #36414a}.editable-truck-dims label>span{display:block;font-size:10px;font-weight:900;color:#fff;margin-bottom:7px}.editable-truck-dims small{display:block;margin-top:5px;font-size:8px;color:#8f9aa4}.editable-truck-dims .measure-input i{position:absolute;right:13px;top:50%;transform:translateY(-50%);font-style:normal;font-weight:900;color:#f29443}.dims-help,.cubicaje-explain{margin-top:10px;padding:10px 12px;border-radius:11px;background:rgba(231,130,44,.08);border:1px solid rgba(231,130,44,.24);font-size:10px;line-height:1.45;color:#aeb7c0}.cubicaje-explain b,.cubicaje-explain span{display:block}.cubicaje-explain b{color:#f29443;margin-bottom:3px}body.light-theme .editable-truck-dims label{background:#f4f6f7;border-color:#cbd2d8}body.light-theme .editable-truck-dims label>span{color:#172027}body.light-theme .dims-help,body.light-theme .cubicaje-explain{color:#4f5962}@media(max-width:600px){.editable-truck-dims{grid-template-columns:1fr}.editable-truck-dims label{padding:12px}}
.today-command{margin:12px 0 15px;padding:14px;border-radius:18px;background:#141b20;border:1px solid #343f48}.today-head{display:flex;justify-content:space-between;align-items:center}.today-head span,.smart-load-result>span,.logistics-flow>span,.expedition-check>div>span{font-size:9px;font-weight:900;letter-spacing:1px;color:#f29443}.today-head h2{font-size:16px;margin:3px 0;text-transform:capitalize}.today-head>b{font-size:10px;color:#aeb7c0}.today-grid,.capacity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:10px}.today-grid button,.capacity-grid div{border:1px solid #34404a;background:#1c242b;border-radius:11px;padding:9px;text-align:left;color:#fff}.today-grid strong,.capacity-grid b{display:block;font-size:17px}.today-grid span,.capacity-grid span{display:block;font-size:8px;color:#8f9aa4;margin-top:2px}.smart-load{margin:12px 0;padding:15px;border-radius:18px;border:1px solid #315944;background:linear-gradient(135deg,rgba(41,182,111,.10),#141b20)}.smart-load.doesnt-fit{border-color:#7b413e;background:linear-gradient(135deg,rgba(255,98,95,.10),#141b20)}.smart-load-result strong,.smart-load-result small{display:block}.smart-load-result strong{font-size:21px;margin:5px 0;color:#63d496}.smart-load.doesnt-fit .smart-load-result strong{color:#ff7773}.smart-load-result small{font-size:10px;color:#aeb7c0;line-height:1.5}.capacity-grid{grid-template-columns:repeat(3,1fr)}.logistics-flow{margin:12px 0;padding:14px;border-radius:17px;background:#11171c;border:1px solid #343f48}.logistics-flow>div{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin-top:9px}.logistics-flow section{padding:8px 5px;border-radius:9px;background:#1c242b;opacity:.55;text-align:center}.logistics-flow section.set{opacity:1}.logistics-flow section.now{outline:2px solid #f29443}.logistics-flow i{display:grid;place-items:center;margin:auto;width:20px;height:20px;border-radius:50%;background:#343f48;font-style:normal;font-size:8px}.logistics-flow .set i{background:#f29443;color:#111}.logistics-flow b,.logistics-flow small{display:block}.logistics-flow b{font-size:7px;margin-top:5px}.logistics-flow small{font-size:7px;color:#8f9aa4;margin-top:2px}.expedition-check{margin:12px 0;padding:14px;border-radius:16px;background:#171e24;border:1px solid #36414a}.expedition-check>div{display:flex;justify-content:space-between}.expedition-check p{display:inline-flex;gap:5px;align-items:center;margin:8px 7px 0 0;padding:6px 8px;border-radius:999px;font-size:9px;background:#11171c}.expedition-check p.ok{color:#63d496}.expedition-check p.pending{color:#ffb15f}.expedition-check button{margin-top:11px}body.light-theme .today-command,body.light-theme .smart-load,body.light-theme .logistics-flow,body.light-theme .expedition-check{background:#fff;border-color:#cbd2d8}body.light-theme .today-grid button,body.light-theme .capacity-grid div,body.light-theme .logistics-flow section{background:#f2f4f5;color:#172027}@media(max-width:600px){.today-grid{grid-template-columns:repeat(2,1fr)}.capacity-grid{grid-template-columns:repeat(2,1fr)}.logistics-flow>div{display:flex;overflow-x:auto}.logistics-flow section{min-width:82px}}
.auto-truck-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.auto-truck-card{padding:11px;border-radius:12px;background:#11171c;border:1px solid #36414a}.auto-truck-card>span,.auto-truck-card>b,.auto-truck-card>small{display:block}.auto-truck-card>span{font-size:8px;font-weight:900;color:#f29443}.auto-truck-card>b{font-size:14px;margin:4px 0;color:#fff}.auto-truck-card>div{height:8px;border-radius:99px;background:#2a333a;overflow:hidden}.auto-truck-card>div i{display:block;height:100%;background:#f29443;border-radius:99px}.auto-truck-card>small{font-size:8px;color:#8f9aa4;margin-top:5px}body.light-theme .auto-truck-card{background:#f4f6f7;border-color:#cbd2d8}body.light-theme .auto-truck-card>b{color:#172027}@media(max-width:600px){.auto-truck-grid{grid-template-columns:1fr}}
.load2d-ok{background:#e7822c!important}.load2d-rejected{margin-top:10px;padding:10px;border-radius:12px;background:rgba(255,77,77,.09);border:1px solid rgba(255,77,77,.45)}.load2d-rejected>b{display:block;font-size:9px;color:#ff6666;letter-spacing:.7px;margin-bottom:6px}.load2d-rejected>div{display:flex;align-items:center;gap:8px;padding:6px 0;border-top:1px solid rgba(255,255,255,.07)}.load2d-rejected>div>i{width:18px;height:18px;border-radius:4px;background:#ff4d4d;flex:none}.load2d-rejected strong,.load2d-rejected small{display:block}.load2d-rejected strong{font-size:10px;color:#fff}.load2d-rejected small{font-size:8px;color:#ff9b99;margin-top:2px}.load2d-legend{display:flex;gap:14px;margin-top:8px;font-size:8px;color:#8f9aa4}.load2d-legend span{display:flex;align-items:center;gap:5px}.load2d-legend i{width:9px;height:9px;border-radius:2px}.legend-ok{background:#e7822c}.legend-bad{background:#ff4d4d}body.light-theme .load2d-rejected strong{color:#172027}
.avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.avatar-xl{width:88px!important;height:88px!important;font-size:28px!important;margin:8px auto 12px}.profile-photo-editor{text-align:center}.profile-photo-editor .input{margin:12px 0}.profile-photo-editor .btn{margin-top:8px}.profile-photo-btn{margin-bottom:12px}
.welcome-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.home-avatar{border:0;background:transparent;padding:0;cursor:pointer;flex:none}.avatar-home{width:58px!important;height:58px!important;font-size:20px!important;border:2px solid rgba(231,130,44,.75);box-shadow:0 5px 18px rgba(0,0,0,.22)}

.logystia-pulse{margin:14px 0 18px;padding:16px;border:1px solid rgba(231,130,44,.34);border-radius:20px;background:linear-gradient(145deg,#151b21,#0c1116)}.pulse-head,.pulse-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.pulse-head>div>span{font-size:9px;letter-spacing:1.2px;font-weight:900;color:#f09a50}.pulse-head h2{font-size:18px;margin-top:4px}.pulse-live{font-size:9px;font-weight:900;color:#65d895}.pulse-live i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#43c97d;margin-right:5px}.pulse-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:13px 0}.pulse-grid button{border:1px solid #2b343d;background:#171e24;color:#fff;border-radius:12px;padding:10px 5px}.pulse-grid b{display:block;font-size:20px}.pulse-grid span{font-size:9px;color:#9ca7b1}.pulse-feed{display:grid;gap:6px}.pulse-feed>button{display:flex;align-items:center;gap:9px;width:100%;border:1px solid #29323a;background:#12181e;color:#fff;border-radius:12px;padding:9px;text-align:left}.pulse-feed small{display:block;color:#929da7;margin-top:2px;font-size:10px}.pulse-rank{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:#242d35;color:#f09a50;font-size:10px;font-weight:900}.pulse-feed strong{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font-size:11px}.pulse-feed strong.hot{background:#542225;color:#ff9292}.pulse-feed strong.warm{background:#52361d;color:#ffc47e}.pulse-feed strong.cool{background:#153a2a;color:#7de3a8}.pulse-foot{margin-top:10px;padding-top:10px;border-top:1px solid #29323a}.pulse-foot span{font-size:9px;color:#818d97}.pulse-foot button{border:0;background:transparent;color:#f09a50;font-size:10px;font-weight:900}.ops-action-center{margin:0 0 12px;padding:16px;border:1px solid rgba(239,125,33,.45);border-radius:18px;background:linear-gradient(135deg,rgba(239,125,33,.13),rgba(16,20,25,.72));display:flex;align-items:center;justify-content:space-between;gap:14px}.ops-action-head{display:grid;gap:3px}.ops-action-head>span,.preflight-head span,.load2d-head span{font-size:10px;font-weight:900;letter-spacing:1.2px;color:#ef8b39}.ops-action-head b{font-size:18px}.ops-action-head small{color:#9aa3ad}.ops-exceptions{margin:0 0 14px;display:grid;gap:7px}.ops-exception{width:100%;border:1px solid #303842;background:#151a20;color:#f5f7f9;border-radius:12px;padding:10px 12px;display:flex;align-items:center;gap:10px;text-align:left}.ops-exception i{width:9px;height:9px;border-radius:50%;background:#f49a3e}.ops-exception.red i{background:#ef4f55}.ops-exception span{flex:1;font-weight:700}.ops-exception b{font-size:20px}.preflight{margin:14px 0;padding:15px;border:1px solid #303842;border-radius:16px;background:#11161b}.preflight-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.preflight-head h3{margin:3px 0 0}.preflight-head>b{padding:7px 10px;border-radius:9px;font-size:11px}.preflight-head>b.ready{background:rgba(46,204,113,.14);color:#58d98d}.preflight-head>b.pending{background:rgba(239,79,85,.14);color:#ff6b70}.preflight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.preflight-grid span{display:flex;align-items:center;gap:7px;padding:8px;border-radius:9px;background:#171d23;font-size:11px;font-weight:700}.preflight-grid i{font-style:normal;width:20px;height:20px;border-radius:50%;display:grid;place-items:center}.preflight-grid .ok i{background:rgba(46,204,113,.16);color:#58d98d}.preflight-grid .bad i{background:rgba(239,79,85,.16);color:#ff6b70}.load2d{margin:14px 0;padding:14px;border:1px solid #303842;border-radius:16px;background:#10151a}.load2d-head{display:flex;justify-content:space-between;gap:8px;margin-bottom:10px}.load2d-head b{font-size:11px;color:#aeb6bf}.load2d-trailer{height:150px;position:relative;overflow:hidden;border:3px solid #56616c;border-radius:8px;background:#20272e}.load2d-trailer>i{position:absolute;top:0;bottom:0;border-left:1px dashed rgba(255,255,255,.1)}.load2d-trailer>span{position:absolute;box-sizing:border-box;min-width:5px;min-height:8px;border:1px solid #ffad64;background:rgba(239,125,33,.7);border-radius:3px}.load2d-scale{display:flex;justify-content:space-between;margin-top:6px;font-size:10px;color:#8f99a3}.light-theme .ops-action-center,.light-theme .preflight,.light-theme .load2d{background:#fff}.light-theme .ops-exception,.light-theme .preflight-grid span{background:#f3f5f7;color:#182029}.light-theme .load2d-trailer{background:#e7ebee}@media(max-width:600px){.ops-action-center{align-items:stretch;flex-direction:column}.ops-action-center .btn{width:100%}.preflight-grid{grid-template-columns:1fr 1fr}.load2d-trailer{height:125px}}@media(max-width:430px){.pulse-grid{grid-template-columns:repeat(2,1fr)}}
/* Pulse v122: indicador EN VIVO siempre dentro del encabezado */
.pulse-head{position:relative;overflow:hidden}.pulse-live{display:inline-flex!important;align-items:center;white-space:nowrap;flex:0 0 auto;padding:6px 8px;border-radius:999px;background:rgba(67,201,125,.09);border:1px solid rgba(67,201,125,.24)}.pulse-live i{position:static!important;display:inline-block!important;flex:0 0 7px;margin:0 5px 0 0!important}

#chiefMode{margin:20px 0;padding:24px;border:1px solid #36584c;border-radius:18px;background:#14251f;color:#f0f8f3;text-align:left}#chiefMode[hidden]{display:none}#chiefMode .chief-kicker{color:#88dfad;font-size:12px;letter-spacing:.12em;font-weight:800}#chiefMode h2{font-size:26px;margin:6px 0 0;color:inherit}#chiefMode h3{font-size:19px;margin:24px 0 12px;color:inherit}.chief-top{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap}.chief-controls{display:flex;gap:8px;flex-wrap:wrap}#chiefMode button{font:inherit;font-weight:700;border:1px solid #68ad88;border-radius:9px;padding:11px 14px;cursor:pointer;background:#244a36;color:#fff;white-space:normal;text-align:left}#chiefMode button:focus-visible,#chiefMode summary:focus-visible{outline:3px solid #eba94f;outline-offset:3px}#chiefMode button:disabled{opacity:.55;cursor:wait}#chiefIntro{font-size:18px;line-height:1.55;margin:20px 0}#chiefDaily{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}#chiefDaily details{background:#20382c;padding:15px;border-radius:10px;min-width:0}#chiefDaily summary{cursor:pointer;font-weight:800}#chiefDaily p{font-size:14px}.chief-event{display:block;width:100%;margin-top:10px;overflow-wrap:anywhere}#chiefPriorities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.chief-priority{border:1px solid #51665a;border-left:4px solid #e9b760;border-radius:10px;padding:16px;min-width:0;background:#192d23}.chief-priority h4{font-size:18px;margin:0;color:inherit;overflow-wrap:anywhere}.chief-priority p{font-size:15px;line-height:1.55;color:inherit;overflow-wrap:anywhere}#chiefSource,#chiefStatus{font-size:13px;line-height:1.5;color:#bcd1c4;margin:16px 0 0}body.light-theme #chiefMode{background:#edf6f0;color:#173525;border-color:#adcbb7}body.light-theme #chiefMode .chief-kicker{color:#356b4c}body.light-theme #chiefDaily details,body.light-theme .chief-priority{background:#fff;border-color:#adcbb7}body.light-theme #chiefSource,body.light-theme #chiefStatus{color:#486151}@media(max-width:760px){#chiefMode{padding:17px}#chiefMode h2{font-size:23px}#chiefPriorities,#chiefDaily{grid-template-columns:1fr}.chief-controls{width:100%}#chiefListen{flex:1}}

.brand-logo{width:clamp(112px,24vw,168px)!important;height:auto!important}.brandlock{min-width:0!important}.fair-rules-nav-btn{color:#ef4444!important}
#news{--news-bg:#fff;--news-ink:#17212b;--news-muted:#4d5d6d;--news-line:#d5dde3;color:var(--news-ink);font-size:16px}
.news-shell{background:var(--news-bg);border:1px solid var(--news-line);border-radius:18px;padding:22px;margin-top:14px}
.news-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.news-head h1{margin:8px 0;font-size:30px;color:var(--news-ink)}
.news-kicker{font-size:14px;font-weight:800;color:#956015;letter-spacing:.07em}.news-intro,.news-meta{color:var(--news-muted);line-height:1.55}
.news-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:20px 0}.news-controls label{font-size:14px;font-weight:700}
#news button.news-button,#news select{padding:10px 14px;border:1px solid var(--news-line);border-radius:9px;background:var(--news-bg);color:var(--news-ink);min-height:44px;font-size:15px;max-width:100%}
#news button:focus-visible,#news a:focus-visible,#news select:focus-visible{outline:3px solid #d58c23;outline-offset:3px}
#news button[aria-pressed="true"]{background:#172c40;color:white;border-color:#172c40}
.news-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.news-card{border-top:1px solid var(--news-line);padding:22px 0;overflow-wrap:anywhere}.news-card h3{font-size:21px;line-height:1.3;margin:12px 0}.news-card p{line-height:1.65;white-space:pre-line}
.news-tag{display:inline-block;padding:5px 9px;border-radius:5px;font-size:14px;font-weight:700;background:#e6edf3;color:#173249;margin:0 7px 5px 0}
.news-tag.urgent{background:#ffe1df;color:#8a2119}.news-card a,#news a{color:#075dac;text-decoration:underline;overflow-wrap:anywhere}
.news-actions{background:#f1f5f7;border-left:4px solid #d78b25;border-radius:8px;padding:18px 22px;margin-top:20px}.news-actions h2{margin:0 0 16px;font-size:22px}.news-actions li{padding:0 0 16px;line-height:1.6}.news-actions ol{padding-left:22px;margin-bottom:0}
.news-home{display:flex;width:100%;align-items:center;justify-content:space-between;gap:14px;text-align:left;border:1px solid var(--line);border-left:4px solid #d78b25;border-radius:14px;background:var(--panel);color:var(--text);padding:16px;margin:14px 0}.news-home strong{display:block;font-size:18px}.news-home small{display:block;font-size:14px;margin-top:5px}
.news-empty{padding:24px 0;line-height:1.65}.news-top-nav{min-width:44px}.news-top-nav>span:last-child{font-size:12px}
body:not(.light-theme) #news{--news-bg:#19232d;--news-ink:#f3f6f8;--news-muted:#bdcbd7;--news-line:#40505e}
body:not(.light-theme) .news-actions{background:#233443}body:not(.light-theme) #news a{color:#8dccff}body:not(.light-theme) .news-kicker{color:#eab45f}
.rigging-visual{border:1px solid var(--news-line);border-radius:12px;padding:16px;margin:18px 0}.rigging-visual h2{margin:0 0 6px}.rigging-selector{margin:12px 0}.rigging-selector select{width:100%}.rigging-sheet{border-top:1px solid var(--news-line);margin-top:14px;padding-top:14px}.sling-diagram{max-width:420px;margin:16px auto;padding:18px;border-radius:12px;background:rgba(127,127,127,.08);text-align:center;font-weight:800}.sling-diagram>div{margin:7px auto}.beam{padding:10px;border:4px solid currentColor}.protector{font-size:12px;border:2px dashed currentColor;padding:5px}.sling{width:65%;padding:8px 4px;border-left:5px solid currentColor;border-right:5px solid currentColor}.thimble{font-size:12px;border:2px solid currentColor;border-radius:18px;padding:5px}.load{font-size:18px;padding-top:8px}.rigging-sheet a{display:inline-block;margin-top:8px;font-weight:700}
@media(max-width:480px){.news-shell{padding:17px}.news-head h1{font-size:27px}.news-top-nav{padding-inline:0!important}.news-card h3{font-size:20px}.news-actions{padding:16px}}

/* Shared desktop/mobile palette. Responsive rules only adjust layout. */
@media screen{
html body:is(.light-theme,:not(.light-theme)){--bg:#13283d;--panel:#203a52;--panel2:#29475f;--card:var(--panel);--line:#57758e;--text:#f4f8fc;--muted:#c5d6e5;--accent:#ffac66;--soft:#302b29;--soft-text:#ffd1ab;--ok:#8ae5b5;--danger:#ffb8c0;background:#0c1d2d!important;color:var(--text)!important;color-scheme:dark}
html body.light-theme{--bg:#e5eef5;--panel:#ffffff;--panel2:#f0f5fa;--line:#a9bdce;--text:#172f44;--muted:#496176;--accent:#a8440a;--soft:#fff0e1;--soft-text:#883504;--ok:#12623f;--danger:#a92235;background:#d3e1ed!important;color-scheme:light}
html body:is(.light-theme,:not(.light-theme)) :is(.app,main){background:var(--bg)!important;color:var(--text)!important;border-color:var(--line)!important}
html body:is(.light-theme,:not(.light-theme)) .app{box-shadow:0 18px 55px #102c4620}
html body:is(.light-theme,:not(.light-theme)) .top{background:#17364e!important;color:#f4f8fc!important;border-bottom:3px solid #f28a2a!important;backdrop-filter:none}
html body:is(.light-theme,:not(.light-theme)) .top .brand-logo{background:transparent!important;filter:none!important}
html body:is(.light-theme,:not(.light-theme)) .top :is(.nav,.theme-toggle-btn){color:#f4f8fc!important}
html body:is(.light-theme,:not(.light-theme)) .top :is(.nav-icon,.theme-toggle-btn){background:#234960!important;border-color:#638398!important;box-shadow:none!important}
html body:is(.light-theme,:not(.light-theme)) :is(.card,.listrow,.stat,.load-card,.truck-list-row,.truck-overview-card,.sheet,.online-summary,.home-alert,.global-result,.daily-control,.daily-priority,.inventory-main-card,.inventory-product-card,.purchase-card,.logystia-pulse,.ops-action-center,.ops-exception,.preflight,.load2d,.today-command,.smart-load,.logistics-flow,.expedition-check,.truck-dimension-panel,.truck3d-card,.calendar-event,.cal-day,.chat-message,.chat-compose,.report-stat,.report-dates span,.report-hero,.auto-truck-card,.news-card,.news-shell){
background:var(--panel)!important;color:var(--text)!important;border-color:var(--line)!important;box-shadow:0 4px 14px #102c4608}
html body:is(.light-theme,:not(.light-theme)) :is(.dimension-card,.dimension-control,.editable-truck-dims label,.inventory-reserved,.purchase-note,.truck-time-grid span,.load-kpi,.truck-date-block,.pulse-grid button,.pulse-feed>button,.today-grid button,.capacity-grid div,.logistics-flow section,.preflight-grid span,.home-shortcuts button,.report-dates span){background:var(--panel2)!important;color:var(--text)!important;border-color:var(--line)!important}
html body:is(.light-theme,:not(.light-theme)) :is(main,.sheet) :is(h1,h2,h3,label){color:var(--text)!important}
html body:is(.light-theme,:not(.light-theme)) :is(.stat,.truck-date-block,.truck-time-grid,.truck-project-copy,.pulse-grid,.pulse-feed,.today-grid,.capacity-grid,.dimension-card,.dimension-control,.truck-dimension-head,.auto-truck-card,.home-alert,.global-result,.calendar-event,.cal-day) :is(b,strong){color:inherit!important}
html body:is(.light-theme,:not(.light-theme)) :is(.muted,.small,.empty,.stat span,.home-alert small,.trace-row span,.trace-row small,.daily-priority small,.daily-ok span,.inventory-location,.truck-status-copy small,.truck-time-grid small,.pulse-grid span,.pulse-feed small,.pulse-foot span,.ops-action-head small,.load2d-head b,.load2d-scale,.load2d-legend,.truck-scale,.truck-dimension-head small,.dimension-card small,.dimension-card em,.dimension-control>div>span,.editable-truck-dims small,.today-grid span,.capacity-grid span,.logistics-flow small,.auto-truck-card small,.smart-load-result small,.construction-panel p,.field-help){color:var(--muted)!important}
html body:is(.light-theme,:not(.light-theme)) :is(.dims-help,.cubicaje-explain,.return-warehouse-box){background:var(--soft)!important;color:var(--soft-text)!important;border-color:var(--accent)!important}
html body:is(.light-theme,:not(.light-theme)) :is(.cubicaje-explain b,.return-warehouse-box>.small,.pulse-head>div>span,.pulse-foot button,.smart-load-result>span,.today-head>span,.auto-truck-card>span){color:var(--accent)!important}
html body:is(.light-theme,:not(.light-theme)) :is(.input,select,textarea){background:var(--panel)!important;color:var(--text)!important;border-color:var(--line)!important}
html body:is(.light-theme,:not(.light-theme)) .input::placeholder{color:var(--muted)!important;opacity:1}
html body:is(.light-theme,:not(.light-theme)) :is(.btn.dark,.iconbtn,.back,.chip,.project-menu .tab,.truck-filter-btn,.pallet-check){background:var(--panel2)!important;color:var(--text)!important;border-color:var(--line)!important}
html body:is(.light-theme,:not(.light-theme)) :is(.chip.active,.project-menu .tab.active){background:var(--soft)!important;color:var(--soft-text)!important;border-color:var(--accent)!important;box-shadow:inset 0 -3px var(--accent)!important}
html body:is(.light-theme,:not(.light-theme)) .project-menu .tab-icon{background:var(--panel)!important;color:var(--text)!important}
html body:is(.light-theme,:not(.light-theme)) .project-menu .tab.active .tab-icon{background:#a8440a!important;color:#fff!important}
html body:is(.light-theme,:not(.light-theme)) :is(.btn.primary,.hero,.fab){background:#a8440a!important;color:#fff!important;border-color:#a8440a!important}
html body:is(.light-theme,:not(.light-theme)) :is(.btn.primary,.hero,.fab) :is(b,strong,span){color:#fff!important}
html body:is(.light-theme,:not(.light-theme)) .bottom{background:#17364e!important;border-color:#57758e!important}
html body:is(.light-theme,:not(.light-theme)) .bottom .nav{color:#d7e5f0!important;opacity:1}
html body:is(.light-theme,:not(.light-theme)) .bottom .nav.active{color:#fff!important}
html body:is(.light-theme,:not(.light-theme)) .bottom .nav.active .nav-icon{background:#a8440a!important;color:#fff!important;box-shadow:none!important}
html body:is(.light-theme,:not(.light-theme)) .future-module{opacity:1}
html body:is(.light-theme,:not(.light-theme)) :is(.stat,.project-menu .tab,.chip,.truck-filter-btn,.btn.dark):hover{border-color:var(--accent)!important}
html body:is(.light-theme,:not(.light-theme)) :is(button,a,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--accent)!important;outline-offset:3px}
html body:is(.light-theme,:not(.light-theme)) :is(.truck-meters,.truck-mini .small,.truck-summary strong){color:var(--text)!important;text-shadow:none!important}
html body:is(.light-theme,:not(.light-theme)) :is(.stage,.stage.done){color:var(--text)!important;opacity:1}
html body:is(.light-theme,:not(.light-theme)) .stat span{font-size:13px;line-height:1.4}
html body:is(.light-theme,:not(.light-theme)) .stat{border-top:3px solid var(--accent)!important}
html body:is(.light-theme,:not(.light-theme)) .stat b{font-variant-numeric:tabular-nums}
html body:is(.light-theme,:not(.light-theme)) :is(.badge,.risk-orange,.ready-pending,.purchase-state){background:#fff0df!important;color:#783602!important;border-color:#cc975e!important}
html body:is(.light-theme,:not(.light-theme)) :is(.badge.ok,.risk-green,.ready-badge,.pallet-check.checked,.week-badge,.truck-filter-btn.active,.pulse-live){background:#dff6e9!important;color:#125a39!important;border-color:#3a9166!important}
html body:is(.light-theme,:not(.light-theme)) :is(.badge.danger,.risk-red,.btn.danger,.dangericon){background:#ffe6ea!important;color:#942038!important;border-color:#c55770!important}
html body:is(.light-theme,:not(.light-theme)) :is(.cal-day.load-day,.calendar-event.load-event){background:#e2efff!important;color:#174c80!important;border-color:#4380bb!important}
html body:is(.light-theme,:not(.light-theme)) :is(.cal-day.loaded-day){background:#dff6e9!important;color:#125a39!important;border-color:#3a9166!important}
html body:is(.light-theme,:not(.light-theme)) :is(.cal-day.return-day,.calendar-event.return-event){background:#ffe6ea!important;color:#942038!important;border-color:#c55770!important}
html body:is(.light-theme,:not(.light-theme)) .cal-day :is(b,.cal-load-label,.cal-return-label){color:inherit!important}
html body:is(.light-theme,:not(.light-theme)) .calendar-event .event-date{background:#17364e!important;color:#fff!important}
html body:is(.light-theme,:not(.light-theme)) :is(.smart-load-result strong,.height-ok,.expedition-check p.ok){color:var(--ok)!important}
html body:is(.light-theme,:not(.light-theme)) :is(.smart-load.doesnt-fit .smart-load-result strong,.height-alert,.load2d-rejected>b){color:var(--danger)!important}
html body:is(.light-theme,:not(.light-theme)) .pack{background:#fff!important;color:#172f44!important}
html body:is(.light-theme,:not(.light-theme)) .pack :is(h1,h2,h3,b,strong,span,small,td,th){color:#172f44!important}
}
@media screen and (min-width:760px){
html body:is(.light-theme,:not(.light-theme)) .report-stat strong{color:var(--ok)!important}
html body:is(.light-theme,:not(.light-theme)) :is(.report-result.success,.pallet-ready.ready,.pallet-verify.checked){background:#dff6e9!important;color:#125a39!important;border-color:#3a9166!important}
html body:is(.light-theme,:not(.light-theme)) .report-result.warning{background:#fff0df!important;color:#783602!important}
html body:is(.light-theme,:not(.light-theme)) :is(.report-result,.pallet-ready.ready,.pallet-verify.checked) :is(b,strong,span,small){color:inherit!important}
}

.voice-open{overflow:hidden}
.voice-launch{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:8px 13px;border:1px solid #f97316;border-radius:12px;background:#17191c;color:#fff;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;white-space:nowrap}
.voice-launch:hover,.voice-launch:focus-visible{background:#28211c;outline:2px solid #f97316;outline-offset:2px}
.voice-launch-inventory{min-height:50px;padding:6px 14px 6px 7px}
.voice-zero{position:relative;display:inline-grid;place-items:center;flex:none;width:39px;height:39px}
.voice-zero img{display:block;width:100%;height:100%;object-fit:contain}
.voice-zero-mic{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:16px;height:16px;color:#fff;filter:drop-shadow(0 1px 2px #42200a)}
.voice-launch-inventory:hover .voice-zero img,.voice-launch-inventory:focus-visible .voice-zero img{transform:rotate(18deg);transition:transform .2s}
.voice-modes{display:flex;gap:7px;margin-bottom:15px;padding:5px;border-radius:13px;background:#e5e9ec}
.voice-modes button{flex:1;min-height:40px;border:0;border-radius:9px;background:transparent;color:#26343e;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer}
.voice-modes button.active{background:#fff;color:#a1440a;box-shadow:0 1px 4px rgba(0,0,0,.12)}
.voice-modes button:focus-visible{outline:2px solid #c45110;outline-offset:2px}
.voice-layer{position:fixed;inset:0;z-index:10050;background:rgba(7,10,14,.7);display:flex;align-items:center;justify-content:center;padding:16px}
.voice-panel{width:min(600px,100%);max-height:min(850px,94dvh);overflow:auto;border:1px solid #394047;border-radius:23px;background:#f6f7f8;color:#172027;box-shadow:0 24px 70px rgba(0,0,0,.36);font-size:16px}
.voice-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:19px 21px;background:#151c22;color:white;border-radius:22px 22px 0 0;border-bottom:4px solid #f97316}
.voice-head small{font-size:12px;font-weight:800;color:#fda460;letter-spacing:.1em}
.voice-head h2{margin:4px 0 0;font-size:24px;line-height:1.15;color:#fff}
.voice-close{border:0;background:#303941;color:#fff;border-radius:50%;width:36px;height:36px;cursor:pointer;font-size:25px;line-height:1}
.voice-body{padding:18px 21px 24px}
.voice-status{margin:0 0 12px;padding:8px 12px;background:#e8ebed;border-radius:9px;color:#23303a;font-weight:800;font-size:13px;letter-spacing:.05em}
.voice-status[data-state="ESCUCHANDO"]{background:#fff0e2;color:#98400d}
.voice-status[data-state="PROCESANDO"]{background:#e4ecf7;color:#214b76}
.voice-actions{display:flex;gap:10px}
.voice-listen{display:flex;align-items:center;justify-content:center;gap:9px;flex:1;min-height:58px;border:0;border-radius:14px;background:#f97316;color:#171717;font-size:18px;font-weight:900;cursor:pointer}
.voice-listen .voice-zero{width:46px;height:46px}.voice-listen .voice-zero-mic{width:18px;height:18px}.voice-listen:disabled .voice-zero img{animation:voice-turn 1.4s linear infinite}@keyframes voice-turn{to{transform:rotate(360deg)}}
.voice-listen:disabled{opacity:.65}
.voice-stop{padding:0 15px;border:1px solid #aeb8bf;background:#fff;color:#1c292f;border-radius:13px;font-weight:700;cursor:pointer}
.voice-hint,.voice-examples{font-size:14px;line-height:1.45;color:#46525a}
.voice-body label{display:block;font-size:14px;font-weight:800;margin:12px 0 6px;color:#222e36}
.voice-entry{display:flex;gap:8px}
.voice-entry input{min-width:0;flex:1;background:#fff;color:#14212b;border:1px solid #9caab2;font-size:16px}
.voice-entry button,.voice-save{border:0;border-radius:11px;background:#1b252b;color:white;padding:10px 13px;font-size:14px;font-weight:800;cursor:pointer}
.voice-answer{margin-top:14px;line-height:1.5}
.voice-answer:not(:empty){padding:15px;background:#fff;border:1px solid #ccd5db;border-left:4px solid #f97316;border-radius:11px}
.voice-answer button{margin-top:12px;border:0;background:#eaf0f4;padding:8px 12px;border-radius:8px;color:#1a3443;font-weight:700;cursor:pointer}
.voice-draft{margin-top:18px;border-top:1px solid #c7d0d6;padding-top:14px}
.voice-draft h3{margin:0 0 8px;font-size:18px;color:#15242d}
.voice-empty{color:#56616a;font-size:14px}
.voice-line{display:grid;grid-template-columns:minmax(0,1fr) 95px 36px;gap:8px;align-items:end;margin:8px 0;padding:9px;background:#fff;border:1px solid #d0d8de;border-radius:10px}
.voice-line label{margin:0;font-size:12px}
.voice-line .input{width:100%;padding:8px;margin-top:5px;font-size:15px;background:#fff;color:#172027}
.voice-line button{height:36px;border:0;border-radius:8px;background:#eef0f2;color:#732925;font-size:21px;cursor:pointer}
.voice-save{width:100%;min-height:48px;margin-top:12px;background:#f97316;color:#161b1d;font-size:16px}
.voice-save:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:560px){.voice-layer{align-items:flex-end;padding:0}.voice-panel{max-height:94dvh;width:100%;border-radius:22px 22px 0 0}.voice-head{border-radius:21px 21px 0 0}.voice-body{padding:15px}.voice-entry{flex-wrap:wrap}.voice-entry button{width:100%;min-height:44px}}

/* Inicio: cargas a la vista y resumen compacto */
#home{--home-accent:#f28a2a}
#home .welcome-head{align-items:center;margin-bottom:5px}
#home h1{margin:0 0 6px;line-height:1.1}
#home #userPosition{font-size:14px;font-weight:600}
#home .online-summary{display:inline-flex;width:auto;max-width:100%;min-height:34px;margin:2px 0 14px;padding:6px 11px;border-radius:999px;background:rgba(53,208,127,.09);border:1px solid rgba(53,208,127,.22);font-size:13px;cursor:pointer}
#home .online-summary b{font-size:13px;font-weight:700}
#home .online-summary .presence-dot{width:8px;height:8px}
#home .global-search{margin:0 0 16px}
#home .global-search .input{min-height:48px;border-radius:12px;font-size:15px}
#home .global-search .btn{min-height:48px;border-radius:12px;font-size:14px}
#home .home-alerts{margin:0 0 15px}
#home .home-alert{min-height:62px}
#home .home-alert small{font-size:13px}
#home .home-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
#home .home-main,#home .home-side{min-width:0}
#home .home-section-head{margin:12px 0 13px}
#home .home-section-head h2{font-size:20px;letter-spacing:-.02em}
#home .home-text-link{border:0;background:none;color:var(--home-accent);font-size:14px;font-weight:800;cursor:pointer;padding:6px 0 6px 10px}
#home .home-text-link span{font-size:19px;line-height:0}
#home .load-card{position:relative;min-height:92px;padding:14px;border-radius:16px;border:1px solid var(--line);margin-bottom:9px;cursor:pointer}
#home .load-card:first-child{border-left:4px solid var(--home-accent);padding-left:11px}
#home .load-date{width:52px;height:57px;flex:0 0 52px;border-radius:11px;background:rgba(242,138,42,.15);color:#ffab5b}
#home .load-date b{font-size:23px}
#home .load-date span{font-size:11px}
#home .load-card .grow{min-width:0}
#home .load-card h3{font-size:17px;line-height:1.2;overflow-wrap:anywhere}
#home .load-card .small{font-size:13px;line-height:1.35}
#home .load-when{font-size:13px}
#home .load-card>.badge{font-size:12px}
#home .dashboard-grid.home-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 20px}
#home .home-stats .stat{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;min-width:0;min-height:94px;padding:15px;text-align:left;border-radius:15px;cursor:pointer}
#home .home-stats .stat b{font-size:28px;line-height:1;color:var(--home-accent)}
#home .home-stats .stat span{font-size:14px;line-height:1.25;padding:0;color:var(--text)}
#home .home-stats .stat-arrow{position:absolute;right:14px;top:10px;color:var(--muted);font-style:normal;font-size:19px}
#home #homeProjects .card{padding:15px;border-radius:16px}
#home #homeProjects h3{font-size:17px;line-height:1.2;overflow-wrap:anywhere}
#home #homeProjects .small{font-size:13px}
#home .home-control-link{display:flex;align-items:center;justify-content:space-between;gap:12px;text-decoration:none;margin:22px 0 8px;padding:15px 17px;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:15px}
#home .home-control-link b,#home .home-control-link small{display:block}
#home .home-control-link b{font-size:15px}
#home .home-control-link small{font-size:13px;color:var(--muted);margin-top:3px}
#home .home-control-link>span:last-child{color:var(--home-accent);font-size:25px}
#home .home-text-link:focus-visible,#home .home-stats .stat:focus-visible,#home .home-control-link:focus-visible,#home .load-card:focus-visible{outline:2px solid var(--home-accent);outline-offset:3px}
body.light-theme #home .online-summary{background:#edf8f0;border-color:#badcc8;color:#174f31;box-shadow:none}
body.light-theme #home .load-date{background:#fff0df;color:#9f4409}
body.light-theme #home .home-stats .stat span{color:#20262b!important}
body.light-theme #home .home-control-link{background:#fff;color:#171a1e;border-color:#dfe3e6;box-shadow:0 5px 18px rgba(20,28,36,.06)}
body.light-theme #home .home-text-link{color:#a34408}
@media(min-width:900px){#home .home-layout{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:24px;align-items:start}#home .home-section-head{margin-top:18px}#home .dashboard-grid.home-stats{gap:12px}#home .home-stats .stat{min-height:106px}#home .home-control-link{max-width:560px}}
@media(max-width:420px){#home .load-card>.badge{display:none}#home .home-stats .stat{min-height:88px;padding:12px}#home .home-stats .stat span{font-size:13px}#home .home-alerts{grid-template-columns:1fr}}

/* Pantalla móvil clara. En escritorio se conservan sus temas y estilos. */
@media screen and (max-width:759px){
  html body.light-theme{
    --bg:#eaf0f4;--panel:#fff;--panel2:#f4f7f9;--line:#cbd6de;
    --text:#1b2a36;--muted:#506171;--accent:#a94912;
    background:#eaf0f4!important;color:#1b2a36!important;color-scheme:light;
  }
  html body.light-theme .app,html body.light-theme main{
    background:#eaf0f4!important;color:#1b2a36!important;
  }
  html body.light-theme .top{
    background:#1e2b36!important;border-color:#384955!important;color:#fff!important;
  }
  /* LOGYSTIA: mantener el logo completo y legible en la cabecera móvil */
  html body.light-theme .top .brandlock{display:flex!important;align-items:center!important;min-width:0!important;background:#fff!important;border-radius:10px!important;padding:5px 7px!important}
  html body.light-theme .top .brand-logo{display:block!important;width:132px!important;max-width:42vw!important;height:38px!important;object-fit:contain!important;object-position:left center!important;opacity:1!important;visibility:visible!important}
  html body.light-theme .top .nav{color:#eef3f6!important}
  html body.light-theme .top .nav-icon:not(.presence-dot){
    background:#32414e!important;color:#ffb078!important;box-shadow:none!important;
  }
  html body.light-theme .top .has-unread .nav-icon{background:#c94f17!important;color:#fff!important}
  html body.light-theme .bottom{
    background:rgba(255,255,255,.98)!important;border-color:#cbd6de!important;
    box-shadow:0 -5px 18px rgba(28,51,69,.08);
  }
  html body.light-theme .bottom .nav{color:#465a68!important}
  html body.light-theme .bottom .nav.active{color:#943b0b!important}
  html body.light-theme .bottom .nav.active .nav-icon{background:#fff0e6!important;color:#a94912!important}
  html body.light-theme main h1,html body.light-theme main h2,html body.light-theme main h3,
  html body.light-theme main label{color:#1b2a36}
  html body.light-theme .muted,html body.light-theme main .small.muted,
  html body.light-theme .home-alert small{color:#516171!important}
  html body.light-theme .card,html body.light-theme .listrow,
  html body.light-theme .stat,html body.light-theme .load-card,
  html body.light-theme .home-alert,html body.light-theme .online-summary,
  html body.light-theme .truck-overview-card,html body.light-theme .truck-list-row,
  html body.light-theme .inventory-product-card,html body.light-theme .purchase-card,
  html body.light-theme .calendar-event,html body.light-theme .cal-day,
  html body.light-theme .chat-message,html body.light-theme .chat-compose,
  html body.light-theme .report-hero,html body.light-theme .load-kpi,
  html body.light-theme .auto-truck-card,html body.light-theme .truck-dimension-panel,
  html body.light-theme .dimension-card,html body.light-theme .dimension-control,
  html body.light-theme .editable-truck-dims label,html body.light-theme .daily-control,
  html body.light-theme .daily-priority,html body.light-theme .global-result{
    background:#fff!important;color:#1b2a36!important;border-color:#d0dae1!important;
    box-shadow:0 3px 12px rgba(27,47,64,.05);
  }
  html body.light-theme .sheet{background:#fff!important;color:#1b2a36!important;border-color:#d0dae1!important}
  html body.light-theme .input,html body.light-theme main select,
  html body.light-theme main textarea{
    background:#fff!important;color:#1b2a36!important;border-color:#aebfc9!important;
  }
  html body.light-theme .input::placeholder{color:#637482!important;opacity:1}
  html body.light-theme .btn.dark,html body.light-theme .iconbtn,
  html body.light-theme .back,html body.light-theme .chip,
  html body.light-theme .truck-filter-btn{
    background:#f1f5f7!important;color:#263b4b!important;border-color:#bccbd4!important;
  }
  html body.light-theme .chip.active,html body.light-theme .project-menu .tab.active{
    background:#fff0e4!important;color:#873806!important;border-color:#d77835!important;
  }
  html body.light-theme .project-menu .tab{
    background:#fff!important;color:#314755!important;border-color:#cbd6de!important;
  }
  html body.light-theme .truck-filter-btn.active{
    background:#187547!important;color:#fff!important;border-color:#187547!important;
  }
  html body.light-theme .load-date{background:#fff0e2!important;color:#93400e!important}
  html body.light-theme .load-when{color:#a3470b!important}
  html body.light-theme .inventory-product-icon,
  html body.light-theme .purchase-order-icon{background:#fff0e5!important;color:#a94912!important}
  html body.light-theme .inventory-stock{background:#e6f5ec!important;color:#17653b!important}
  html body.light-theme .inventory-stock.low{background:#fff0e2!important;color:#92440d!important}
  html body.light-theme .inventory-reserved,html body.light-theme .purchase-note,
  html body.light-theme .dims-help,html body.light-theme .cubicaje-explain{
    background:#f0f5f8!important;color:#374f5e!important;border-color:#d0dae1!important;
  }
  html body.light-theme .truck-dimension-head b,
  html body.light-theme .dimension-card strong,
  html body.light-theme .dimension-control b,
  html body.light-theme .editable-truck-dims label>span,
  html body.light-theme .auto-truck-card>b{color:#1b2a36!important}
  html body.light-theme .truck-dimension-head small,
  html body.light-theme .dimension-card small,
  html body.light-theme .dimension-card em,
  html body.light-theme .editable-truck-dims small{color:#516171!important}
  html body.light-theme .pallet-check{background:#f1f5f7;color:#263b4b;border-color:#cbd6de}
  html body.light-theme .pallet-check.checked{background:#e4f4ea;color:#155b35;border-color:#83c69b}
  html body.light-theme .badge:not(.risk-green):not(.risk-orange):not(.risk-red):not(.danger):not(.ok){
    background:#fff0e3;color:#803608;
  }
  html body.light-theme .risk-green,html body.light-theme .badge.ok{
    background:#e4f4ea!important;color:#166039!important;border-color:#a4d7b5!important;
  }
  html body.light-theme .risk-orange{
    background:#fff1dc!important;color:#82420d!important;border-color:#eac491!important;
  }
  html body.light-theme .risk-red,html body.light-theme .badge.danger{
    background:#fde9ea!important;color:#9b2630!important;border-color:#eab2b6!important;
  }
  html body.light-theme .risk-choice.green{background:#e4f4ea;color:#155b35;border-color:#84c69d}
  html body.light-theme .risk-choice.orange{background:#fff1dc;color:#82420d;border-color:#eac491}
  html body.light-theme .risk-choice.red{background:#fde9ea;color:#9b2630;border-color:#eab2b6}
  html body.light-theme .risk-choice b,html body.light-theme .risk-choice span{color:inherit}
  html body.light-theme #home .home-stats .stat span{color:#263b4b!important}
  html body.light-theme #home .home-stats .stat b{color:#9a420e!important}
  html body.light-theme #home .home-control-link{background:#fff;color:#1b2a36;border-color:#d0dae1}
  html body.light-theme .voice-launch{background:#fff3e8;color:#76370d;border-color:#d77835}
  html body.light-theme .voice-launch:hover{background:#ffe7d3}
  html body.light-theme #chiefMode{background:#eaf5ee;color:#1d4230;border-color:#b6d7c1}
  html body.light-theme #chiefMode h2,html body.light-theme #chiefMode h3,
  html body.light-theme #chiefMode b{color:#1d4230}
  html body.light-theme #chiefDaily details{background:#fff;color:#1d4230;border:1px solid #c9dfd0}
  html body.light-theme #chiefMode .chief-kicker{color:#236c43}
  html body.light-theme #chiefMode button{background:#1d6840;color:#fff}
  /* Camiones: números, metros y horas sobre superficies claras */
  html body.light-theme .truck-mini,html body.light-theme .truck-mini .small,
  html body.light-theme .truck-mini div.truck-meters,
  html body.light-theme .truck-list-row .truck-meters{
    color:#263b4b!important;text-shadow:none!important;
  }
  html body.light-theme .truck-time-grid span{
    background:#edf3f6!important;border-color:#cbd6de!important;color:#1b2a36!important;
  }
  html body.light-theme .truck-time-grid b{color:#1b2a36!important;font-size:12px}
  html body.light-theme .truck-time-grid small{
    color:#455a68!important;font-size:11px;line-height:1.15;
  }
  html body.light-theme .truck-status-copy .small{
    color:#4b5f6d!important;font-size:12px;
  }
  html body.light-theme .truck-state-pill.pending{
    background:#e9eef2!important;color:#354a58!important;border-color:#bdcbd4!important;
  }
  html body.light-theme .truck-state-pill.preparing{
    background:#fff0df!important;color:#88420e!important;border-color:#dfab79!important;
  }
  html body.light-theme .truck-state-pill.confirmed{
    background:#e3f4e9!important;color:#17613a!important;border-color:#92cfaa!important;
  }
  html body.light-theme .trucks-week-stat b,html body.light-theme .trucks-week-stat span{
    color:#17613a!important;
  }
  html body.light-theme .truck-list-row:not(.truck-completed) .truck-date-block b{color:#1b2a36!important}html body.light-theme .truck-list-row.truck-completed .truck-date-block b{color:#fff!important}
  /* Informes y controles de carga: acentos oscuros sobre blanco */
  html body.light-theme .report-kicker,
  html body.light-theme .report-result.success,
  html body.light-theme .smart-load-result strong{color:#17613a!important}
  html body.light-theme .report-result.warning,
  html body.light-theme .smart-load.doesnt-fit .smart-load-result strong{
    color:#9a4214!important;
  }
  html body.light-theme .report-seal{color:#17613a;border-color:#42996a}
  html body.light-theme .truck-dimension-head span,
  html body.light-theme .dimension-icon,
  html body.light-theme .measure-input>span,
  html body.light-theme .auto-truck-card>span,
  html body.light-theme .logistics-flow>span,
  html body.light-theme .expedition-check>div>span{
    color:#93420f!important;
  }
  html body.light-theme .truck-dimension-head small,
  html body.light-theme .field-help,
  html body.light-theme .auto-truck-card>small,
  html body.light-theme .smart-load-result small{
    color:#42586a!important;font-size:12px;
  }
  html body.light-theme .expedition-check p{
    background:#f0f5f8!important;color:#344c5b!important;
  }
  html body.light-theme .expedition-check p.ok{color:#17613a!important}
  html body.light-theme .expedition-check p.pending{color:#864411!important}
  html body.light-theme .load2d-rejected>b{color:#9b2630!important}
  html body.light-theme .load2d-rejected small{color:#405464!important}
  html body.light-theme .project-menu .tab-icon{
    background:#e8eef2;color:#385366;
  }
  html body.light-theme .project-menu .tab.active .tab-icon{
    background:#a94912;color:#fff;
  }
  .login{background:#eaf0f4;color:#1b2a36}
  .login .box{background:#fff;color:#1b2a36;border-color:#cbd6de;box-shadow:0 14px 40px rgba(27,47,64,.1)}
  .login img.login-logo{background:#1e2b36!important;padding:14px!important;border-radius:14px;box-sizing:border-box}
  .login .muted{color:#526474}
  .login .input{background:#fff;color:#1b2a36;border-color:#aebfc9}
  .login .input::placeholder{color:#657785;opacity:1}
  .login .btn.primary{background:#b45116;color:#fff}
  .login .btn.dark{background:#f1f5f7;color:#263b4b;border:1px solid #bccbd4}
  .login .err{color:#a32834}
}

.truck-state-pill.completed{background:#dcfce7!important;color:#14532d!important;border:1px solid #22c55e!important}.truck-overview-card.truck-completed{border-left:5px solid #22c55e!important}.truck-completed .truck-date-block{background:#14532d!important;color:#fff!important}.truck-completed .truck-reference-load{background:#22c55e!important}.truck-completion-panel{border-left:5px solid #22c55e}#truckStatusFeedback{margin-top:8px}

/* LOGYSTIA desktop workspace */
@media(min-width:900px){body{background:#f4f6f8!important;color:#17202a}.app{max-width:none!important;margin:0!important;padding:0 28px 40px 292px!important}.top{position:fixed!important;left:0;top:0;bottom:0;width:264px;height:100vh!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;padding:22px 18px!important;background:#111a23!important;border:0!important;box-shadow:8px 0 28px rgba(17,26,35,.08);z-index:40}.top .brand{display:block!important}.brandlock{display:block!important;background:#fff;border-radius:14px;padding:10px 8px;margin-bottom:18px}.brand-logo{width:100%!important;max-width:220px!important;height:auto!important}.top .row{display:grid!important;grid-template-columns:repeat(3,1fr);gap:8px!important}.top .nav{background:#202b36!important;border:1px solid #34414d!important;border-radius:11px!important;min-height:48px!important}.top .nav-icon{color:#fff!important}main{max-width:1400px!important;margin:0 auto!important;padding-top:28px!important}.screen{padding:0!important}.screen.active{animation:none!important}#home .welcome-head{padding:18px 22px;background:#fff;border:1px solid #e1e6ea;border-radius:18px;box-shadow:0 8px 25px rgba(24,34,45,.05);margin-bottom:14px}#home h1{font-size:34px!important;color:#17202a!important}#home #userPosition{color:#66717c!important}.global-search{display:flex!important;gap:10px}.global-search .input{background:#fff!important;border:1px solid #d9e0e6!important;color:#17202a!important;box-shadow:0 5px 18px rgba(20,28,36,.04)}#home .home-layout{grid-template-columns:minmax(0,1.35fr) minmax(380px,.75fr)!important;gap:22px!important}#home .home-main,#home .home-side{background:#fff;border:1px solid #e1e6ea;border-radius:18px;padding:18px;box-shadow:0 8px 25px rgba(24,34,45,.05)}#home .home-section-head h2{color:#17202a!important}.card,#home .load-card,#home .home-stats .stat{background:#fff!important;border:1px solid #e0e5e9!important;color:#17202a!important;box-shadow:0 5px 18px rgba(20,28,36,.05)}#home .load-card:first-child{border-left:5px solid #f47b20!important}.muted,.small.muted{color:#687481!important}#home .home-text-link{color:#c9580e!important}.bottom{position:fixed!important;left:18px!important;top:210px!important;bottom:auto!important;width:228px!important;display:flex!important;flex-direction:column!important;gap:7px!important;padding:0!important;background:transparent!important;border:0!important;z-index:45;transform:none!important;overflow:visible!important}.bottom .nav{width:100%!important;display:flex!important;flex-direction:row!important;justify-content:flex-start!important;gap:13px!important;padding:12px 14px!important;border-radius:11px!important;color:#dbe3ea!important;background:transparent!important}.bottom .nav.active,.bottom .nav:hover{background:#f47b20!important;color:#fff!important}.bottom .nav-icon{width:24px!important;height:24px!important}.bottom .fab{order:99;width:100%!important;height:46px!important;border-radius:11px!important;margin:6px 0 0!important;background:#293642!important}.home-control-link{background:#fff!important;color:#17202a!important;border-color:#e0e5e9!important}.modal{color:#17202a}.modal .card{color:#17202a!important}}

html body .top .brandlock,html body.light-theme .top .brandlock{display:flex!important;align-items:center!important;min-width:0!important;background:transparent!important;background-color:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;margin-bottom:18px!important}.prisma-wordmark{display:flex!important;flex-direction:column;align-items:flex-start;line-height:1;color:#fff!important;background:transparent!important;font-weight:950;font-size:17px;letter-spacing:.055em;white-space:nowrap}.prisma-wordmark small{display:block;margin-top:6px;color:#fff!important;opacity:.78;font-size:9px;font-weight:800;letter-spacing:.16em}@media(max-width:899px){html body .top .brandlock,html body.light-theme .top .brandlock{margin-bottom:0!important}.prisma-wordmark{font-size:21px}.prisma-wordmark small{font-size:8px;margin-top:5px}}

/* LOGYSTIA responsive collapsible sidebar v195 */
.sidebar-toggle,.mobile-menu-toggle{border:0;cursor:pointer;font:inherit}
.sidebar-toggle{display:none}.sidebar-backdrop{display:none}.sidebar-mini-brand{display:none}
@media(min-width:900px){
 body{--prisma-sidebar-w:264px}body.sidebar-collapsed{--prisma-sidebar-w:82px}
 .app{padding-left:calc(var(--prisma-sidebar-w) + 28px)!important;transition:padding-left .22s ease!important}
 .top{width:var(--prisma-sidebar-w)!important;transition:width .22s ease!important;overflow:hidden!important}
 .bottom{left:18px!important;width:calc(var(--prisma-sidebar-w) - 36px)!important;top:248px!important;transition:width .22s ease,left .22s ease!important;overflow:visible!important}
 .bottom .nav{min-height:48px!important;overflow:hidden!important;white-space:nowrap!important}
 .bottom .nav>span:last-child{opacity:1;max-width:160px;transition:opacity .15s ease,max-width .22s ease,margin .22s ease!important}
 .sidebar-toggle{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:42px;margin:0 0 12px;border-radius:11px;background:#202b36;color:#fff;border:1px solid #34414d;font-weight:800}
 .sidebar-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sidebar-toggle .collapse-label{white-space:nowrap}
 body.sidebar-collapsed .top{padding-left:11px!important;padding-right:11px!important}
 body.sidebar-collapsed .top .brandlock{display:flex!important;align-items:center!important;justify-content:center!important;width:60px!important;max-width:60px!important;margin:0 auto 12px!important;overflow:visible!important}
 body.sidebar-collapsed .top .prisma-wordmark{align-items:center!important;width:60px!important;max-width:60px!important;font-size:7px!important;letter-spacing:.01em!important;line-height:1!important;text-align:center!important;white-space:nowrap!important;transform:none!important}
 body.sidebar-collapsed .top .prisma-wordmark small{font-size:5.5px!important;letter-spacing:.05em!important;margin-top:4px!important;white-space:nowrap!important}
 body.sidebar-collapsed .sidebar-mini-brand{display:none!important}
 body.sidebar-collapsed .sidebar-toggle{width:40px;margin-left:-7px;margin-right:auto;opacity:.78}
 body.sidebar-collapsed .sidebar-toggle .collapse-label{display:none}
 body.sidebar-collapsed .top .row{grid-template-columns:1fr!important;width:48px;margin:0 auto}
 body.sidebar-collapsed .top .nav{width:48px!important;padding:5px!important}
 body.sidebar-collapsed .bottom{left:11px!important;width:60px!important;top:300px!important}
 body.sidebar-collapsed .bottom .nav{width:60px!important;justify-content:center!important;padding:12px 8px!important;gap:0!important;position:relative}
 body.sidebar-collapsed .bottom .nav>span:last-child{opacity:0;max-width:0;margin:0!important;overflow:hidden}
 body.sidebar-collapsed .bottom .fab{width:60px!important;padding:0!important}
 body.sidebar-collapsed .bottom .nav:hover::after{content:attr(aria-label);position:absolute;left:68px;padding:7px 9px;border-radius:8px;background:#111a23;color:#fff;font-size:12px;font-weight:750;box-shadow:0 6px 18px rgba(0,0,0,.18);pointer-events:none;white-space:nowrap}
}
@media(max-width:899px){
 .app{padding-left:0!important}
 .mobile-menu-toggle{position:fixed;left:3px;top:12px;z-index:71;width:40px;height:44px;display:grid;place-items:center;border-radius:12px;background:#111a23;color:#fff;border:1px solid #34414d;box-shadow:0 5px 18px rgba(0,0,0,.18)}
 .mobile-menu-toggle svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
 .top{padding-left:64px!important}
 .bottom{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(82vw,300px)!important;height:100dvh!important;transform:translateX(-105%)!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;gap:7px!important;padding:82px 14px 20px!important;background:#111a23!important;border:0!important;border-right:1px solid #34414d!important;box-shadow:12px 0 34px rgba(0,0,0,.28)!important;z-index:70!important;transition:transform .22s ease!important;overflow-y:auto!important}
 body.mobile-drawer-open .bottom{transform:translateX(0)!important}
 .bottom .nav{width:100%!important;min-height:48px!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:13px!important;padding:11px 13px!important;border-radius:11px!important;color:#dbe3ea!important}
 .bottom .nav.active{background:#f47b20!important;color:#fff!important}
 .bottom .nav-icon{width:30px!important;height:30px!important;flex:0 0 30px!important}
 .bottom .nav>span:last-child{font-size:13px!important;font-weight:800}
 .bottom .fab{order:99!important;width:100%!important;height:48px!important;margin:8px 0 0!important;border:0!important;border-radius:11px!important;background:#293642!important;font-size:26px!important}
 .sidebar-backdrop{display:block;position:fixed;inset:0;z-index:69;background:rgba(5,9,13,.48);opacity:0;pointer-events:none;transition:opacity .22s ease}
 body.mobile-drawer-open .sidebar-backdrop{opacity:1;pointer-events:auto}
 body.mobile-drawer-open{overflow:hidden}
 body.light-theme .mobile-menu-toggle{background:#111a23!important;color:#fff!important}
 body.light-theme .bottom{background:#111a23!important}
 body.light-theme .bottom .nav{color:#e7edf2!important}
 body.light-theme .bottom .nav.active{color:#fff!important;background:#f47b20!important}
}
@media(max-width:420px){.top .brandlock{min-width:0!important}.top .prisma-wordmark{font-size:clamp(14px,5vw,18px)!important}}

/* ELEPHANT PROJECTS · UI refinement v199 */
:root{
  --ep-navy:#1d2c38;
  --ep-navy-2:#263b4a;
  --ep-bg:#f3f6f8;
  --ep-card:#ffffff;
  --ep-line:#dce3e8;
  --ep-text:#172733;
  --ep-muted:#637481;
  --ep-accent:#e97824;
  --ep-accent-soft:#fff1e7;
  --ep-success:#20875a;
  --ep-danger:#c84855;
}
html,body,body.light-theme{background:var(--ep-bg)!important;color:var(--ep-text)!important}
body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important}
.app{background:var(--ep-bg)!important;border:0!important;box-shadow:none!important}
main{background:var(--ep-bg)!important;color:var(--ep-text)!important}
h1,h2,h3{color:var(--ep-text)!important;letter-spacing:-.02em}
h1{font-weight:850!important}
.muted,.small.muted{color:var(--ep-muted)!important}

/* Superficies */
.card,.listrow,.stat,.load-card,.home-alert,.online-summary,.truck-overview-card,.truck-list-row,
.inventory-product-card,.purchase-card,.calendar-event,.cal-day,.chat-message,.chat-compose,.report-hero,
.load-kpi,.auto-truck-card,.truck-dimension-panel,.dimension-card,.dimension-control,.daily-control,
.daily-priority,.global-result,.sheet{
  background:var(--ep-card)!important;
  color:var(--ep-text)!important;
  border:1px solid var(--ep-line)!important;
  box-shadow:0 4px 16px rgba(29,44,56,.055)!important;
}
.card,.listrow,.load-card,.home-alert,.truck-overview-card,.truck-list-row,.inventory-product-card,.purchase-card{
  border-radius:14px!important;
}
.stat{border-radius:13px!important;border-top:3px solid var(--ep-accent)!important}
.stat b{color:var(--ep-text)!important}
.stat span{color:var(--ep-muted)!important}

/* Cabecera / marca */
.top,.light-theme .top{
  background:var(--ep-navy)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:0 8px 26px rgba(18,31,40,.12)!important;
}
.prisma-wordmark{color:#fff!important;font-size:16px!important;letter-spacing:.035em!important}
.prisma-wordmark small{color:#f1b080!important;opacity:1!important;font-size:8px!important;letter-spacing:.1em!important;margin-top:5px!important}
.top .nav{color:#dbe5eb!important}
.top .nav-icon{background:rgba(255,255,255,.07)!important;color:#f0a36b!important;border:1px solid rgba(255,255,255,.06)!important}
.top .nav:hover .nav-icon{background:rgba(255,255,255,.12)!important}

/* Inputs y botones */
.input,select,textarea{
  background:#fff!important;color:var(--ep-text)!important;border:1px solid #cbd6dd!important;
  border-radius:10px!important;box-shadow:inset 0 1px 2px rgba(29,44,56,.025)!important;
}
.input:focus,select:focus,textarea:focus{border-color:var(--ep-accent)!important;box-shadow:0 0 0 3px rgba(233,120,36,.13)!important;outline:0!important}
.btn{border-radius:10px!important;transition:.15s ease!important}
.btn.primary,.hero,.fab{background:var(--ep-accent)!important;color:#fff!important;border-color:var(--ep-accent)!important;box-shadow:none!important}
.btn.primary:hover{filter:brightness(.96)}
.btn.dark,.iconbtn,.back,.chip,.truck-filter-btn,.project-menu .tab{
  background:#fff!important;color:var(--ep-text)!important;border:1px solid var(--ep-line)!important;
}
.chip.active,.project-menu .tab.active{
  background:var(--ep-accent-soft)!important;color:#8a3b07!important;border-color:#e6a06b!important;box-shadow:none!important;
}
.project-menu .tab.active .tab-icon{background:var(--ep-accent)!important;color:#fff!important}

/* Estados */
.badge,.risk-orange,.ready-pending,.purchase-state{background:#fff0e5!important;color:#81400d!important;border-color:#e7b184!important}
.badge.ok,.risk-green,.ready-badge,.pallet-check.checked,.truck-filter-btn.active{background:#e5f4ec!important;color:#175d3f!important;border-color:#9acdb2!important}
.badge.danger,.risk-red,.btn.danger,.dangericon{background:#fdebed!important;color:#992b39!important;border-color:#e5b0b7!important}

/* Inicio */
.welcome-head{margin-bottom:10px!important}
.global-search{background:transparent!important;margin:14px 0 18px!important}
.home-control-link{background:#fff!important;color:var(--ep-text)!important;border:1px solid var(--ep-line)!important;border-radius:14px!important;box-shadow:0 4px 16px rgba(29,44,56,.05)!important}
.online-summary{border-radius:999px!important;box-shadow:none!important}
.dashboard-grid{gap:10px!important}
.sec{margin-top:22px!important}

/* Sidebar escritorio */
@media(min-width:900px){
  body{background:#e9eef2!important}
  .app{max-width:none!important;min-height:100vh!important;margin:0!important}
  main{max-width:1500px!important;padding:30px 34px 60px!important}
  .top{background:var(--ep-navy)!important}
  .bottom{background:var(--ep-navy)!important;border:0!important;box-shadow:none!important}
  .bottom .nav{color:#d8e2e8!important;border-radius:10px!important}
  .bottom .nav:hover{background:rgba(255,255,255,.07)!important}
  .bottom .nav.active{background:rgba(233,120,36,.15)!important;color:#fff!important}
  .bottom .nav.active .nav-icon{background:var(--ep-accent)!important;color:#fff!important;box-shadow:none!important}
  .sidebar-toggle{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.12)!important}
  .screen.active{max-width:1180px!important}
  .card{padding:16px!important}
}

/* Móvil */
@media(max-width:899px){
  main{padding:18px 14px 96px!important}
  .top{padding-top:12px!important;padding-bottom:12px!important}
  .bottom{background:#fff!important;border-top:1px solid var(--ep-line)!important;box-shadow:0 -5px 18px rgba(29,44,56,.07)!important}
  .bottom .nav{color:#526775!important}
  .bottom .nav.active{color:#9b430c!important}
  .bottom .nav.active .nav-icon{background:var(--ep-accent-soft)!important;color:var(--ep-accent)!important}
  .prisma-wordmark{font-size:14px!important;max-width:210px!important;white-space:normal!important;line-height:1.05!important}
  .prisma-wordmark small{font-size:7px!important;line-height:1.15!important}
  .card{padding:14px!important}
  .dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  h1{font-size:27px!important}
}

/* Menú plegado: marca compacta y sin cortes */
@media(min-width:900px){
  body.sidebar-collapsed .top .prisma-wordmark{font-size:6.8px!important;letter-spacing:0!important;width:60px!important;max-width:60px!important;white-space:normal!important;line-height:1.08!important}
  body.sidebar-collapsed .top .prisma-wordmark small{font-size:4.5px!important;line-height:1.05!important;white-space:normal!important;text-align:center!important}
}

.ep-logistica-brand{display:block;width:285px;height:auto;max-height:74px;object-fit:contain}.brandlock{display:flex;align-items:center;min-width:0}@media(max-width:759px){.ep-logistica-brand{width:225px;max-height:60px}}.app.sidebar-collapsed .ep-logistica-brand{width:118px;max-height:48px}


#home{max-width:1280px}.p4-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.p4-weather{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #dce7f3;border-radius:14px;padding:9px 15px;color:#10233d;box-shadow:0 4px 16px #173b6420}.p4-weather .p4-sun{font-size:30px}.p4-weather b,.p4-weather small{display:block}.p4-weather small{font-size:11px;color:#64748b}.p4-title{margin-top:18px}.p4-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.p4-action{border:0;border-radius:13px;padding:18px 12px;color:#fff;display:flex;min-height:112px;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 18px #173b6420}.p4-action b{font-size:26px}.p4-action span{font-weight:800;margin-top:5px}.p4-action small{opacity:.9;margin-top:4px}.p4-action.blue{background:#1684ed}.p4-action.green{background:#10a85b}.p4-action.orange{background:#ff8a00}.p4-action.purple{background:#7752d9}.p4-stats{grid-template-columns:repeat(4,1fr)!important}.p4-stat-icon{font-size:21px;margin-bottom:4px}.p4-stat-icon.blue{color:#1684ed}.p4-stat-icon.green{color:#10a85b}.p4-stat-icon.orange{color:#ff8a00}.p4-stat-icon.red{color:#ef4444}.p4-columns{display:grid;grid-template-columns:1.15fr 1fr;gap:16px;margin-top:18px}.p4-panel{background:#fff;border:1px solid #dce7f3;border-radius:16px;padding:14px;box-shadow:0 5px 20px #173b6414}.p4-map{display:grid;grid-template-columns:.85fr 1.15fr;gap:12px}.map-bg{position:relative;min-height:260px;border-radius:13px;background:linear-gradient(145deg,#eef5fa,#dceaf3);overflow:hidden}.map-bg:before,.map-bg:after{content:"";position:absolute;border:2px solid #c1d4e1;border-radius:50%;width:210px;height:120px;transform:rotate(-22deg);left:5%;top:18%}.map-bg:after{width:160px;height:220px;left:35%;top:10%;transform:rotate(25deg)}.pin{position:absolute;z-index:2;font-size:25px;text-shadow:0 2px 5px #0002}.pin-a{color:#ff8a00;left:57%;top:27%}.pin-b{color:#16a34a;left:39%;top:57%}.pin-c{color:#1684ed;left:68%;top:68%}.ep-logistica-brand{margin-left:10px!important;object-position:left center}.brand{padding-left:12px!important;overflow:visible!important}.brandlock{overflow:visible!important}.app.sidebar-collapsed .ep-logistica-brand{width:104px!important;margin-left:6px!important}
@media(max-width:900px){.p4-actions,.p4-stats{grid-template-columns:repeat(2,1fr)!important}.p4-columns{grid-template-columns:1fr}.p4-map{grid-template-columns:1fr}.map-bg{min-height:190px}}
@media(max-width:759px){.p4-top{align-items:flex-start}.p4-weather{padding:7px 10px}.p4-weather .p4-sun{font-size:23px}.p4-actions{grid-template-columns:repeat(2,1fr);gap:8px}.p4-action{min-height:88px;padding:10px 6px}.p4-action span{font-size:12px}.p4-action small{font-size:10px}.p4-stats{grid-template-columns:repeat(2,1fr)!important}.p4-columns{gap:10px}.p4-panel{padding:10px}.ep-logistica-brand{width:205px!important;margin-left:4px!important}}
body:not(.light-theme) .p4-panel,body:not(.light-theme) .p4-weather{background:#111820;color:#f8fafc;border-color:#263544}



body.light-theme{background:#f4f7fb!important;color:#12243a!important}
body.light-theme #home,body.light-theme #home h1,body.light-theme #home h2,body.light-theme #home h3,body.light-theme #home b,body.light-theme #home span{color:#12243a}
body.light-theme #home .muted,body.light-theme #home small{color:#66788c!important}
body.light-theme #home .p4-action,body.light-theme #home .p4-action b,body.light-theme #home .p4-action span,body.light-theme #home .p4-action small{color:#fff!important}
body.light-theme #home .stat{background:#fff!important;border:1px solid #e3eaf2!important;color:#12243a!important;box-shadow:0 4px 14px rgba(31,55,82,.07)}
body.light-theme #home .stat b,body.light-theme #home .stat span{color:#12243a!important}
body.light-theme #home .p4-stat-icon.blue{color:#1684ed!important}body.light-theme #home .p4-stat-icon.green{color:#10a85b!important}body.light-theme #home .p4-stat-icon.orange{color:#ff8a00!important}body.light-theme #home .p4-stat-icon.red{color:#ef4444!important}
body.light-theme #home .load-card,body.light-theme #home #homeProjects>.card{background:#fff!important;color:#12243a!important;border:1px solid #e3eaf2!important}
body.light-theme #home .load-card h3,body.light-theme #home #homeProjects h3{color:#12243a!important}
body.light-theme #home .home-text-link{color:#1684ed!important}
body.light-theme #home .global-search .input{background:#fff!important;color:#12243a!important;border-color:#d9e2ec!important}
body.light-theme #home .online-summary{background:#fff!important;color:#12243a!important;border:1px solid #e3eaf2!important}
#home{padding-top:18px!important}.p4-top{margin-bottom:14px}.p4-title{margin:22px 0 10px!important}.p4-title h2{font-size:18px!important}.p4-panel .sec{margin-top:0!important}
@media(min-width:901px){#home{max-width:1220px!important;margin:0 auto!important}.p4-actions{gap:14px}.p4-action{min-height:124px}.p4-columns{grid-template-columns:1.08fr .92fr}}


@media(max-width:759px){#home .p4-columns>.p4-panel:nth-child(2){display:none!important}#home .p4-columns{grid-template-columns:1fr!important}}

header.top{justify-content:center!important}.brand{width:100%!important;justify-content:center!important;padding:8px 12px!important}.brandlock{justify-content:center!important}.ep-logistica-brand{width:285px!important;margin:0 auto!important}.top .brand>.row{display:none!important}@media(min-width:760px){.bottom{width:112px!important;min-width:112px!important;max-width:112px!important;position:fixed!important;left:0!important;top:88px!important;bottom:0!important;height:auto!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;padding:10px 7px!important;gap:5px!important;overflow-y:auto!important}.bottom .nav{width:98px!important;min-height:62px!important;padding:7px 4px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:3px!important;font-size:10px!important;text-align:center!important}.bottom .nav-icon{margin:0!important}.bottom .fab{width:46px!important;height:46px!important;min-height:46px!important;margin:4px auto!important}.app main{margin-left:112px!important;width:calc(100% - 112px)!important}.app.sidebar-collapsed main{margin-left:112px!important;width:calc(100% - 112px)!important}}@media(max-width:759px){.ep-logistica-brand{width:210px!important}.bottom .desktop-extra-nav{display:none!important}}

/* Desktop fixed slim sidebar v212 */
@media(min-width:900px){
 body{--prisma-sidebar-w:150px!important}
 body.sidebar-collapsed{--prisma-sidebar-w:150px!important}
 .app{padding-left:150px!important}
 .top{position:fixed!important;left:150px!important;right:0!important;top:0!important;width:auto!important;height:88px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:8px 20px!important;overflow:visible!important;background:var(--bg,#f4f7fb)!important;z-index:50!important}
 .top .brand{width:auto!important;padding:0!important}.top .brandlock{width:auto!important;margin:0!important}.ep-logistica-brand{width:285px!important;max-height:70px!important;margin:0!important}
 .bottom{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:150px!important;height:100vh!important;padding:18px 10px!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;gap:5px!important;background:#111a23!important;border:0!important;border-right:1px solid #263543!important;overflow-y:auto!important;z-index:60!important}
 .bottom .nav{width:130px!important;min-height:49px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;padding:9px 9px!important;border-radius:10px!important;color:#e8eef3!important;font-size:11px!important;white-space:normal!important;overflow:visible!important;text-align:left!important}
 .bottom .nav.active{background:#f47b20!important;color:#fff!important}.bottom .nav-icon{width:25px!important;height:25px!important;flex:0 0 25px!important;margin:0!important}.bottom .nav>span:last-child{opacity:1!important;max-width:88px!important;margin:0!important;overflow:visible!important}
 .bottom .fab{width:44px!important;height:44px!important;min-height:44px!important;margin:3px auto!important;padding:0!important;align-self:center!important}
 .sidebar-toggle,.mobile-menu-toggle{display:none!important}
 main{margin:88px 0 0!important;width:auto!important;padding-left:0!important}
 .app main{margin-left:0!important;width:auto!important}
}

/* Desktop header + sidebar precision pass v213 */
.desktop-user-head{display:none}
@media(min-width:900px){
 body{--prisma-sidebar-w:138px!important}
 .app{padding-left:138px!important}
 .top{left:138px!important;height:104px!important;padding:10px 34px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;background:#f4f7fb!important;border-bottom:1px solid #e1e8ef!important}
 .desktop-user-head{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;line-height:1.15!important}
 .desktop-user-head b{font-size:20px!important;color:#13283f!important;font-weight:850!important}.desktop-user-head span{font-size:12px!important;color:#64748b!important;margin-top:5px!important;font-weight:650!important}
 .top .brand{margin-left:auto!important;width:auto!important;display:block!important}.top .brandlock{display:flex!important;justify-content:flex-end!important;width:auto!important}.ep-logistica-brand{width:350px!important;max-height:84px!important;object-fit:contain!important;object-position:right center!important}
 .bottom{width:138px!important;padding:14px 8px!important;gap:4px!important;align-items:center!important}
 .bottom .nav{box-sizing:border-box!important;width:120px!important;min-height:46px!important;padding:7px 8px!important;gap:8px!important;border-radius:9px!important;flex:0 0 auto!important}
 .bottom .nav-icon{width:24px!important;height:24px!important;flex:0 0 24px!important;display:grid!important;place-items:center!important;font-size:19px!important}
 .bottom .nav-icon svg{width:21px!important;height:21px!important}
 .bottom .nav>span:last-child{display:block!important;max-width:76px!important;font-size:10.5px!important;line-height:1.15!important;font-weight:750!important;white-space:normal!important}
 .bottom .fab{width:42px!important;height:42px!important;min-height:42px!important;margin:2px auto!important}
 main,.app main{margin-top:104px!important}
}
@media(max-width:899px){.desktop-user-head{display:none!important}}

/* Header final alignment v214 */
@media(min-width:900px){
 .top{position:fixed!important;display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;justify-items:stretch!important;padding:0 38px!important;height:104px!important}
 .desktop-user-head{display:flex!important;align-self:center!important;justify-self:start!important;margin:0!important}
 .top .brand{display:flex!important;align-items:center!important;justify-content:flex-end!important;align-self:stretch!important;margin:0!important;padding:0!important}
 .top .brandlock{height:100%!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;margin:0!important;padding:0!important}
 .ep-logistica-brand{display:block!important;width:360px!important;max-height:86px!important;margin:0!important;object-fit:contain!important;object-position:right center!important}
 #home .p4-top .welcome-head{display:none!important}
 #home .p4-top{justify-content:flex-end!important}
}

@media(min-width:900px){.bottom{top:0!important;border-right:0!important;box-shadow:none!important}.top{border-left:0!important;box-shadow:none!important}.home-control-link{display:none!important}}

/* Accessibility / contrast pass v217 */
@media(min-width:900px){
 .desktop-user-head b{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.2)!important}
 .desktop-user-head span{color:#f47b20!important;font-weight:850!important}
 .top{background:#111a23!important;border-bottom-color:#34414d!important}
}
body.light-theme main{color:#172f44!important}
body.light-theme main :is(h1,h2,h3,h4,label,b,strong){color:#172f44}
body.light-theme main :is(.muted,.small,small){color:#4b6072!important}
body.light-theme :is(.card,.listrow,.stat,.sheet,.p4-panel,.calendar-event,.cal-day){color:#172f44!important}
body.light-theme :is(.input,input,select,textarea){color:#172f44!important;background:#fff!important;border-color:#9fb2c2!important}
body.light-theme :is(.input,input,textarea)::placeholder{color:#647789!important;opacity:1!important}
body.light-theme .bottom .nav{color:#f1f5f8!important}
body.light-theme .bottom .nav span{color:inherit!important}
body.light-theme .bottom .nav.active{color:#fff!important}
body.light-theme .project-menu .tab{color:#263d50!important;background:#f5f8fb!important}
body.light-theme .project-menu .tab.active{color:#fff!important;background:#a8440a!important}
body.light-theme .project-menu .tab-icon{color:#263d50!important;background:#e5edf4!important}
body.light-theme .project-menu .tab.active .tab-icon{color:#fff!important;background:#e97824!important}
/* Calendar: explicit contrast */
body.light-theme .cal-day{background:#fff!important;border-color:#9fb2c2!important;color:#172f44!important}
body.light-theme .cal-day :is(b,strong,span,small,.small,.muted){color:#172f44!important}
body.light-theme .cal-day.load-day{background:#dceeff!important;color:#123f6a!important;border-color:#3976ad!important}
body.light-theme .cal-day.loaded-day{background:#dff5e8!important;color:#124c33!important;border-color:#37825d!important}
body.light-theme .cal-day.return-day{background:#ffe1e5!important;color:#7c1d30!important;border-color:#b84d63!important}
body.light-theme .calendar-event{background:#fff!important;color:#172f44!important;border-color:#9fb2c2!important}
body.light-theme .calendar-event :is(b,strong,span,small,.small,.muted){color:#172f44!important}
body.light-theme .calendar-event .event-date{background:#17364e!important;color:#fff!important}
body.light-theme :is(.calendar-grid,.calendar-head,.calendar-weekdays) :is(span,b,strong){color:#172f44!important}
body.light-theme :is(.chip,.btn.dark,.iconbtn,.back,.truck-filter-btn){color:#172f44!important}
body.light-theme .btn.primary{color:#fff!important}

/* Final high-contrast normalization v218 */
body.light-theme main{--text:#172733!important;--muted:#53697b!important}
body.light-theme main .screen{color:#172733!important}
body.light-theme main .screen :is(p,li,td,th,summary){color:#172733}
body.light-theme main .screen :is(.muted,.small,small,.field-help,.inventory-location){color:#53697b!important}
body.light-theme main :is(.card,.listrow,.stat,.load-card,.truck-list-row,.truck-overview-card,.inventory-product-card,.purchase-card,.calendar-event,.cal-day,.chat-message,.chat-compose,.report-stat,.report-hero,.daily-control,.daily-priority,.today-command,.smart-load,.logistics-flow,.expedition-check,.auto-truck-card,.dimension-card,.dimension-control){color:#172733!important}
body.light-theme main :is(.card,.listrow,.stat,.load-card,.truck-list-row,.truck-overview-card,.inventory-product-card,.purchase-card,.calendar-event,.cal-day,.chat-message,.chat-compose,.report-stat,.daily-control,.daily-priority) :is(h1,h2,h3,h4,b,strong,label){color:#172733!important}
body.light-theme #home :is(.p4-panel,.stat,.load-card,.online-summary,.home-alert,#homeProjects>.card){background:#fff!important;color:#172733!important}
body.light-theme #home :is(.p4-panel,.stat,.load-card,.online-summary,.home-alert,#homeProjects>.card) :is(b,strong,h2,h3,span,p){color:#172733!important}
body.light-theme #home :is(.p4-panel,.stat,.load-card,.online-summary,.home-alert,#homeProjects>.card) :is(small,.muted){color:#53697b!important}
body.light-theme #home .p4-action,body.light-theme #home .p4-action :is(b,strong,span,small){color:#fff!important}
body.light-theme :is(.badge,.chip){color:#263d50!important}
body.light-theme :is(.badge.ok,.badge.success,.ready-badge){color:#145c38!important}
body.light-theme :is(.badge.danger,.risk-red){color:#8c2035!important}
body.light-theme :is(.today-grid button,.capacity-grid div,.logistics-flow section,.editable-truck-dims label){background:#f2f5f7!important;color:#172733!important}
body.light-theme :is(.today-grid button,.capacity-grid div,.logistics-flow section,.editable-truck-dims label) :is(b,strong,span,small){color:#172733!important}
body.light-theme :is(.truck-dimension-panel,.truck3d-card){background:#fff!important;color:#172733!important}
body.light-theme :is(.truck-dimension-panel,.truck3d-card) :is(h2,h3,b,strong){color:#172733!important}
body.light-theme :is(.truck-dimension-panel,.truck3d-card) :is(small,.muted,.truck3d-data span,.truck3d-head span){color:#53697b!important}
body.light-theme dialog,body.light-theme dialog :is(p,label,h1,h2,h3,b,strong,span){color:#172733}
body.light-theme dialog :is(small,.muted,.help){color:#53697b!important}
body.light-theme .btn.primary,body.light-theme .btn.primary :is(span,b,strong),body.light-theme .fab,body.light-theme .fab :is(span,b,strong){color:#fff!important}
@media(min-width:900px){.desktop-user-head b{color:#fff!important}.desktop-user-head span{color:#ff8a2a!important}}

/* Corporate contrast system v219 */
:root{--ep-ink:#142b3f;--ep-orange:#f47b20;--ep-white:#fff;--ep-muted:#53697b;--ep-dark:#111a23}
@media(min-width:900px){
 .top,.bottom{color:var(--ep-white)!important}
 .top :is(b,strong,h1,h2,h3,p),.bottom :is(b,strong,span,small){color:var(--ep-white)!important}
 .top .desktop-user-head span{color:var(--ep-orange)!important}
 .bottom .nav{color:var(--ep-white)!important}
 .bottom .nav .nav-icon{color:var(--ep-orange)!important}
 .bottom .nav.active,.bottom .nav.active :is(span,b,strong),.bottom .nav.active .nav-icon{color:var(--ep-white)!important}
}
body.light-theme main :is(.card,.listrow,.stat,.sheet,.p4-panel,.load-card,.online-summary,.home-alert,.truck-list-row,.truck-overview-card,.inventory-product-card,.purchase-card,.calendar-event,.cal-day,.chat-message,.chat-compose,.report-stat,.daily-control,.daily-priority,dialog){color:var(--ep-ink)!important}
body.light-theme main :is(.card,.listrow,.stat,.sheet,.p4-panel,.load-card,.online-summary,.home-alert,.truck-list-row,.truck-overview-card,.inventory-product-card,.purchase-card,.calendar-event,.cal-day,.chat-message,.chat-compose,.report-stat,.daily-control,.daily-priority,dialog) :is(h1,h2,h3,h4,b,strong,label,p,span,td,th){color:var(--ep-ink)}
body.light-theme main :is(.muted,.small,small,.help,.field-help){color:var(--ep-muted)!important}
body.light-theme main a:not(.btn):not(.nav){color:#155f9a!important}
body.light-theme main :is(.accent,.kicker,.eyebrow){color:var(--ep-orange)!important}
body.light-theme main :is(.btn.primary,.fab,.hero,.p4-action){background:var(--ep-orange)!important;color:var(--ep-white)!important}
body.light-theme main :is(.btn.primary,.fab,.hero,.p4-action) :is(b,strong,span,small){color:var(--ep-white)!important}
/* Known dark operational surfaces */
:is(#chiefMode,.voice-head,.voice-launch,.truck3d-viewport,.today-grid button.dark,.dark-panel,.dark-card){color:var(--ep-white)!important}
:is(#chiefMode,.voice-head,.voice-launch,.truck3d-viewport,.today-grid button.dark,.dark-panel,.dark-card) :is(h1,h2,h3,h4,b,strong,p,span,small,label){color:var(--ep-white)!important}
:is(#chiefMode,.voice-head,.voice-launch,.truck3d-viewport,.dark-panel,.dark-card) :is(.accent,.kicker,.eyebrow){color:var(--ep-orange)!important}
/* Calendar numbers must never inherit low contrast */
body.light-theme .cal-day>b,body.light-theme .cal-day>strong,body.light-theme .calendar-event b{color:var(--ep-ink)!important}
body.light-theme .calendar-event .event-date{color:var(--ep-white)!important}

/* Calendar weekday labels v220 */
body.light-theme :is(.calendar-weekdays,.calendar-head,.cal-weekdays,.weekdays) :is(span,b,strong,div),
body.light-theme :is(.calendar-weekday,.cal-weekday,.weekday){
 color:#f47b20!important;
 font-weight:850!important;
}

/* Hide Estado actual block v221 */
#home .p4-title:has(h2){ }
#home .home-stats.p4-stats{display:none!important}
#home .p4-title:has(+ .home-stats.p4-stats){display:none!important}

/* Full desktop contrast fix v222 */
@media(min-width:900px){
 #home .p4-panel{background:#111a23!important;border-color:#2c3a46!important}
 #home .p4-panel .home-section-head h2,
 #home .p4-panel .sec.home-section-head h2{color:#fff!important}
 #home .p4-panel .home-section-head .home-text-link{color:#f47b20!important}
 #home .p4-panel #upcomingLoads,
 #home .p4-panel #upcomingLoads :is(h3,b,strong,p,span){color:#fff!important}
 #home .p4-panel #upcomingLoads :is(small,.muted){color:#d4dde5!important}
 #home .p4-panel #homeProjects :is(h3,b,strong,p,span){color:#fff!important}
 #home .p4-panel #homeProjects :is(small,.muted){color:#d4dde5!important}
}

/* Screenshot-targeted fullscreen contrast v223 */
@media(min-width:901px){
 /* Dark outer panels */
 #home .p4-panel{background:#1b2b39!important;color:#fff!important}
 #home .p4-panel .home-section-head h2{color:#fff!important}
 #home .p4-panel .home-text-link{color:#ff8a2a!important;font-weight:850!important}
 /* Activity cards are LIGHT: force dark corporate text */
 #home #upcomingLoads .load-card{background:#fff!important;border-color:#d5dee7!important;color:#142b3f!important}
 #home #upcomingLoads .load-card h3,
 #home #upcomingLoads .load-card .small,
 #home #upcomingLoads .load-card .muted,
 #home #upcomingLoads .load-card .load-when{color:#142b3f!important;opacity:1!important}
 #home #upcomingLoads .load-card .load-date{background:#17364e!important;color:#fff!important}
 #home #upcomingLoads .load-card .load-date b,
 #home #upcomingLoads .load-card .load-date span{color:#fff!important;opacity:1!important}
 #home #upcomingLoads .load-card .badge{color:#7a3b08!important;opacity:1!important}
 #home #upcomingLoads .load-card .badge.risk-red{color:#8c2035!important}
 #home #upcomingLoads .load-card .badge.risk-green{color:#145c38!important}
 /* Project cards are DARK: force white/orange */
 #home #homeProjects>.card{background:#17364e!important;border-color:#52708a!important;color:#fff!important}
 #home #homeProjects>.card :is(h3,p,b,strong,span){color:#fff!important;opacity:1!important}
 #home #homeProjects>.card :is(.small,.muted){color:#e2eaf0!important;opacity:1!important}
 #home #homeProjects>.card .load-date-highlight{background:#244f70!important;color:#fff!important}
 #home #homeProjects>.card .badge{background:#fff3e7!important;color:#8a430d!important}
}

/* Calendar upcoming weekday labels v224 */
.calendar-event .grow>.small.muted{
 color:#f47b20!important;
 font-weight:850!important;
 opacity:1!important;
}
@media(min-width:901px){
 .calendar-event .grow>.small.muted{color:#ff8a2a!important}
}

/* Horizontal project map v225 */
#home .p4-map{display:flex!important;flex-direction:column!important;gap:12px!important}
#home .p4-map .map-bg{width:100%!important;min-height:150px!important;height:150px!important}
#home #homeProjects{width:100%!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
#home #homeProjects>.card{margin:0!important}
@media(max-width:900px){
 #home .p4-map .map-bg{min-height:120px!important;height:120px!important}
 #home #homeProjects{grid-template-columns:1fr!important;gap:10px!important}
}

/* Project map contained layout v226 */
#home .p4-panel:has(.p4-map){overflow:hidden!important}
#home .p4-map{display:flex!important;flex-direction:column!important;width:100%!important;min-width:0!important;overflow:hidden!important}
#home .p4-map .map-bg{order:1;width:100%!important;max-width:100%!important;box-sizing:border-box!important;flex:none!important}
#home #homeProjects{order:2;width:100%!important;max-width:100%!important;min-width:0!important;display:flex!important;flex-direction:column!important;gap:10px!important;box-sizing:border-box!important;overflow:hidden!important}
#home #homeProjects>.card{width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;box-sizing:border-box!important;overflow:hidden!important}
#home #homeProjects>.card .row{min-width:0!important}
#home #homeProjects>.card .grow{min-width:0!important}
#home #homeProjects>.card h3,#home #homeProjects>.card .small{overflow-wrap:anywhere!important}
@media(max-width:900px){
 #home .p4-map{width:100%!important}
 #home #homeProjects{display:flex!important;flex-direction:column!important}
 #home #homeProjects>.card{width:100%!important}
}

/* Real OpenStreetMap project map v227 */
#projectRealMap{width:100%;height:210px;border-radius:13px;overflow:hidden;background:#dceaf3;z-index:1}
#projectRealMap .leaflet-popup-content{color:#142b3f!important}
#projectRealMap .leaflet-popup-content b{color:#142b3f!important}
@media(max-width:900px){#projectRealMap{height:170px}}

/* Desktop-only weather + real map v232 */
@media(max-width:900px){
 #home .p4-weather{display:none!important}
 #home .p4-panel:has(#projectRealMap) #projectRealMap{display:none!important}
 #home .p4-panel:has(#projectRealMap) .home-section-head h2{font-size:18px!important}
}
@media(min-width:901px){
 #home .p4-weather{display:flex!important;background:#fff!important;border:1px solid #d7e1ea!important;color:#142b3f!important;min-width:245px!important}
 #home .p4-weather #p4Temp{display:block!important;color:#142b3f!important;font-size:22px!important;font-weight:900!important;opacity:1!important}
 #home .p4-weather #p4WeatherText{display:block!important;color:#53697b!important;font-size:12px!important;font-weight:700!important;opacity:1!important}
 #home .p4-weather .p4-sun{display:block!important;opacity:1!important}
 body:not(.light-theme) #home .p4-weather{background:#17364e!important;border-color:#52708a!important;color:#fff!important}
 body:not(.light-theme) #home .p4-weather #p4Temp{color:#fff!important}
 body:not(.light-theme) #home .p4-weather #p4WeatherText{color:#f47b20!important}
 #home #projectRealMap{display:block!important}
}

/* Final desktop weather visibility v233 */
@media(max-width:900px){#home .p4-weather,#home #projectRealMap{display:none!important}}
@media(min-width:901px){
 #home .p4-weather{display:flex!important;visibility:visible!important;opacity:1!important;position:relative!important;z-index:5!important}
 #home #p4Temp{display:block!important;visibility:visible!important;opacity:1!important;font-size:24px!important;line-height:1.1!important;font-weight:900!important}
 #home #p4WeatherText{display:block!important;visibility:visible!important;opacity:1!important}
}

/* Profile photo UI removed v234 */
#homeAvatar,.home-avatar,.profile-photo-editor,.profile-photo-btn{display:none!important}
.welcome-head{justify-content:flex-start!important}

.header-search,.header-info{display:none}@media(min-width:901px){header.top{display:grid!important;grid-template-columns:190px minmax(260px,440px) 180px 300px!important;align-items:center!important;gap:14px!important;padding:8px 18px!important}.desktop-user-head{position:static!important;transform:none!important}.header-search{display:flex!important;align-items:center;background:#fff;border-radius:12px;overflow:hidden;border:1px solid #d8e2eb;height:42px}.header-search .input{border:0!important;margin:0!important;background:#fff!important;color:#142b3f!important;height:40px!important;flex:1}.header-search button{width:44px;height:42px;border:0;background:#f47b20;color:#fff;font-size:22px;cursor:pointer}.header-info{display:flex!important;align-items:center;justify-content:flex-end;gap:9px}.header-weather{min-width:80px;text-align:right;line-height:1.05}.header-weather b{display:block;color:#fff;font-size:20px}.header-weather span{display:block;color:#f47b20;font-size:10px;font-weight:800;text-transform:uppercase}.header-date{height:58px;min-width:76px;border:1px solid #526779;background:#17364e;border-radius:11px;color:#fff;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:18px 25px;align-items:center;padding:5px 8px;cursor:pointer}.header-date span{grid-column:1/-1;color:#f47b20;font-size:9px;font-weight:900;text-transform:uppercase}.header-date b{font-size:23px;line-height:1;color:#fff}.header-date small{font-size:9px;color:#dce6ee;font-weight:800}.brand{width:auto!important;justify-content:flex-end!important;padding:0!important}.brandlock{justify-content:flex-end!important}.ep-logistica-brand{width:285px!important;margin:0!important}#home>.global-search{display:none!important}#home>.p4-top .p4-weather{display:none!important}}@media(max-width:900px){.header-search,.header-info{display:none!important}}

.sidebar-user{display:flex;flex-direction:column;gap:2px}.sidebar-user b{font-weight:900}.sidebar-user span{font-size:9px;opacity:.72}.bottom .sidebar-online{display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:row!important;gap:6px!important;border:0!important;border-radius:16px!important}.bottom .sidebar-online .presence-dot{display:block!important;width:8px!important;height:8px!important;min-width:8px!important;background:#22c55e!important;border-radius:50%!important;box-shadow:none!important}.bottom .sidebar-online #onlineCount{font-size:12px!important;font-weight:900!important;line-height:1!important}.bottom .sidebar-online .online-names-hidden{display:none!important}@media(min-width:760px){.sidebar-user{color:#fff;padding:5px 4px 9px;text-align:center;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:3px}.sidebar-user b{font-size:12px}.bottom .sidebar-online{margin-top:auto!important;width:50px!important;min-width:50px!important;height:28px!important;min-height:28px!important;padding:0!important;align-self:center!important;background:transparent!important}.bottom .sidebar-online #onlineCount{color:#fff!important}}@media(max-width:759px){.sidebar-user{position:fixed;left:12px;top:9px;z-index:50;color:#142b3f}.sidebar-user b{font-size:12px}.sidebar-user span{display:none}.bottom .sidebar-online{position:fixed!important;right:12px!important;bottom:76px!important;z-index:80!important;width:48px!important;min-width:48px!important;height:28px!important;min-height:28px!important;padding:0!important;background:#17364e!important;box-shadow:0 3px 10px rgba(20,43,63,.2)!important}.bottom .sidebar-online #onlineCount{color:#fff!important}}

/* Presence: green dot + number only */
.bottom .sidebar-online{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:6px!important;width:48px!important;min-width:48px!important;height:28px!important;min-height:28px!important;padding:0!important;border:0!important;border-radius:15px!important;background:transparent!important}
.bottom .sidebar-online .presence-dot{display:block!important;width:8px!important;height:8px!important;min-width:8px!important;border-radius:50%!important;background:#22c55e!important;box-shadow:none!important}
.bottom .sidebar-online #onlineCount{display:block!important;font-size:12px!important;line-height:1!important;font-weight:900!important}
.bottom .sidebar-online #onlineNames{display:none!important}
@media(min-width:760px){.bottom .sidebar-online{margin-top:auto!important;align-self:center!important}.bottom .sidebar-online #onlineCount{color:#fff!important}}
@media(max-width:759px){.bottom .sidebar-online{position:static!important;margin:0!important;background:transparent!important}.bottom .sidebar-online #onlineCount{color:#142b3f!important}}

/* Visual hierarchy v242 */
@media(min-width:760px){
 .sidebar-user b{color:#fff!important;font-size:12px!important;font-weight:900!important}
 .sidebar-user span{color:#f47b20!important;opacity:1!important;font-size:9px!important;font-weight:800!important}
}
@media(min-width:901px){
 header.top{grid-template-columns:minmax(280px,1fr) 130px 330px!important;gap:12px!important}
 .header-info{gap:7px!important;opacity:.82!important;justify-content:center!important}
 .header-weather{min-width:54px!important;text-align:right!important}
 .header-weather b{font-size:15px!important;font-weight:800!important;color:#e8eef3!important}
 .header-weather span{font-size:8px!important;color:#f47b20!important;letter-spacing:.04em!important}
 .header-date{height:42px!important;min-width:60px!important;padding:3px 6px!important;border-color:rgba(255,255,255,.16)!important;background:rgba(255,255,255,.04)!important;border-radius:9px!important;grid-template-rows:13px 18px!important}
 .header-date span{font-size:7px!important;color:#f47b20!important}
 .header-date b{font-size:17px!important;font-weight:850!important}
 .header-date small{font-size:7px!important;color:#cbd6df!important}
 .brand{min-width:0!important}
 .brandlock{width:100%!important;justify-content:flex-end!important}
 .ep-logistica-brand{width:320px!important;max-width:100%!important;margin:0!important}
}

/* Header order: weather/calendar left, search center, brand right */
@media(min-width:901px){
 header.top{grid-template-columns:150px minmax(300px,1fr) 330px!important;gap:16px!important;align-items:center!important}
 .header-info{grid-column:1!important;grid-row:1!important;justify-self:start!important;justify-content:flex-start!important}
 .header-search{grid-column:2!important;grid-row:1!important;width:min(100%,440px)!important;justify-self:center!important}
 .brand{grid-column:3!important;grid-row:1!important;justify-self:end!important}
 .brandlock{justify-content:flex-end!important}
}

/* Executive mini weather + calendar */
@media(min-width:901px){
 .header-info{display:flex!important;align-items:center!important;gap:7px!important;opacity:1!important}
 .header-weather{height:42px!important;min-width:76px!important;padding:0 8px!important;display:flex!important;align-items:center!important;gap:6px!important;text-align:left!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:10px!important;background:rgba(255,255,255,.045)!important}
 .header-weather .weather-glyph{font-size:16px!important;line-height:1!important;filter:saturate(.85)}
 .header-weather div{display:flex!important;flex-direction:column!important;gap:1px!important}
 .header-weather b{font-size:15px!important;line-height:1!important;color:#fff!important;font-weight:900!important}
 .header-weather div span{font-size:7px!important;line-height:1!important;color:#f47b20!important;font-weight:850!important;text-transform:uppercase!important;letter-spacing:.08em!important}
 .header-date{height:42px!important;min-width:68px!important;padding:4px 7px!important;display:grid!important;grid-template-columns:27px 1fr!important;grid-template-rows:18px 12px!important;column-gap:5px!important;align-items:center!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:10px!important;background:rgba(255,255,255,.045)!important;color:#fff!important}
 .header-date b{grid-column:1!important;grid-row:1/3!important;font-size:22px!important;line-height:1!important;color:#fff!important;font-weight:900!important}
 .header-date span{grid-column:2!important;grid-row:1!important;font-size:8px!important;line-height:1!important;color:#f47b20!important;font-weight:900!important;text-align:left!important}
 .header-date small{grid-column:2!important;grid-row:2!important;font-size:7px!important;line-height:1!important;color:#b9c8d4!important;font-weight:750!important;text-align:left!important}
 .header-weather:hover,.header-date:hover{background:rgba(255,255,255,.075)!important;border-color:rgba(244,123,32,.34)!important}
}

/* v245 — same corporate visual language desktop/mobile */
@media(max-width:899px){
 html,body,body.light-theme,.app,main{background:#f3f6f8!important;color:#172733!important}
 .top,.light-theme .top{background:#1d2c38!important;color:#fff!important;border-color:rgba(255,255,255,.08)!important;box-shadow:0 8px 26px rgba(18,31,40,.12)!important}
 .bottom{background:#1d2c38!important;border-top:0!important;box-shadow:0 -5px 18px rgba(18,31,40,.14)!important}
 .bottom .nav{color:#d8e2e8!important}
 .bottom .nav.active{background:rgba(233,120,36,.15)!important;color:#fff!important}
 .bottom .nav.active .nav-icon{background:#e97824!important;color:#fff!important}
 .bottom .fab{background:#e97824!important;color:#fff!important}
 .sidebar-user{color:#fff!important}
 .sidebar-user b{color:#fff!important}
 .sidebar-user span{color:#f47b20!important}
 .card,.listrow,.stat,.load-card,.home-alert,.truck-overview-card,.truck-list-row,.inventory-product-card,.purchase-card,.calendar-event,.cal-day,.chat-message,.chat-compose,.global-result,.sheet{background:#fff!important;color:#172733!important;border-color:#dce3e8!important;box-shadow:0 4px 16px rgba(29,44,56,.055)!important}
 .btn.primary,.hero,.fab{background:#e97824!important;color:#fff!important;border-color:#e97824!important}
 .btn.dark,.iconbtn,.back,.chip,.truck-filter-btn,.project-menu .tab{background:#fff!important;color:#172733!important;border-color:#dce3e8!important}
 .chip.active,.project-menu .tab.active{background:#fff1e7!important;color:#8a3b07!important;border-color:#e6a06b!important}
 .input,select,textarea{background:#fff!important;color:#172733!important;border-color:#cbd6dd!important}
 .muted,.small.muted{color:#637481!important}
 h1,h2,h3{color:#172733!important}
 #home .p4-panel{background:#1b2b39!important;color:#fff!important}
 #home .p4-panel .home-section-head h2{color:#fff!important}
 #home .p4-panel .home-text-link{color:#ff8a2a!important}
 #home #upcomingLoads .load-card{background:#fff!important;color:#142b3f!important}
 #home #homeProjects>.card{background:#17364e!important;color:#fff!important;border-color:#52708a!important}
 #home #homeProjects>.card :is(h3,p,b,strong,span){color:#fff!important}
 #home #homeProjects>.card :is(.small,.muted){color:#e2eaf0!important}
 /* explicit mobile exceptions requested */
 .header-info,#home .p4-weather,#projectRealMap{display:none!important}
}

/* v246 mobile sync — final authority */
@media(max-width:899px){
 html,body,body.light-theme,.app,main{background:#f3f6f8!important;color:#172733!important}
 .top,.light-theme .top{background:#1d2c38!important;color:#fff!important}
 .bottom,body.light-theme .bottom{position:fixed!important;left:0!important;right:auto!important;top:0!important;bottom:0!important;width:min(88vw,320px)!important;max-width:320px!important;height:100dvh!important;max-height:100dvh!important;transform:translateX(-105%)!important;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;gap:5px!important;padding:66px 12px 18px!important;background:#1d2c38!important;border:0!important;border-right:1px solid rgba(255,255,255,.09)!important;box-shadow:12px 0 34px rgba(0,0,0,.25)!important;z-index:100!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}
 body.mobile-drawer-open .bottom{transform:translateX(0)!important}
 .bottom .nav,body.light-theme .bottom .nav{display:flex!important;width:100%!important;min-width:0!important;min-height:44px!important;height:auto!important;flex:0 0 auto!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:11px!important;padding:8px 11px!important;border-radius:10px!important;background:transparent!important;color:#d8e2e8!important;text-align:left!important;font-size:12px!important;overflow:visible!important}
 .bottom .nav>span:last-child{display:inline!important;opacity:1!important;max-width:none!important;overflow:visible!important;white-space:normal!important}
 .bottom .nav-icon{width:28px!important;height:28px!important;min-width:28px!important;flex:0 0 28px!important;margin:0!important}
 .bottom .nav.active,body.light-theme .bottom .nav.active{background:rgba(233,120,36,.16)!important;color:#fff!important}
 .bottom .nav.active .nav-icon{background:#e97824!important;color:#fff!important}
 .bottom .fab{order:initial!important;width:100%!important;height:44px!important;min-height:44px!important;margin:2px 0!important;border-radius:10px!important;background:#e97824!important}
 .sidebar-user{position:absolute!important;left:14px!important;top:13px!important;z-index:2!important;display:flex!important;color:#fff!important;padding:0!important;margin:0!important;text-align:left!important;border:0!important}
 .sidebar-user b{font-size:13px!important;color:#fff!important}
 .sidebar-user span{display:block!important;font-size:9px!important;color:#f47b20!important}
 .bottom .sidebar-online{position:static!important;width:52px!important;min-width:52px!important;height:28px!important;min-height:28px!important;margin:5px auto 0!important;padding:0!important;justify-content:center!important;background:rgba(255,255,255,.06)!important}
 .bottom .sidebar-online #onlineCount{color:#fff!important}
 main{padding:18px 14px 96px!important}
 .card,.listrow,.stat,.load-card,.home-alert,.truck-overview-card,.truck-list-row,.inventory-product-card,.purchase-card,.calendar-event,.cal-day,.chat-message,.chat-compose,.global-result,.sheet{background:#fff!important;color:#172733!important;border:1px solid #dce3e8!important;box-shadow:0 4px 16px rgba(29,44,56,.055)!important}
 .btn.primary,.hero{background:#e97824!important;color:#fff!important;border-color:#e97824!important}
 .input,select,textarea{background:#fff!important;color:#172733!important;border-color:#cbd6dd!important}
 h1,h2,h3{color:#172733!important}.muted,.small.muted{color:#637481!important}
 #home .p4-panel{background:#1b2b39!important;color:#fff!important}
 #home .p4-panel .home-section-head h2{color:#fff!important}
 #home #homeProjects>.card{background:#17364e!important;color:#fff!important;border-color:#52708a!important}
 #home #homeProjects>.card :is(h3,p,b,strong,span){color:#fff!important}
 #home #homeProjects>.card :is(.small,.muted){color:#e2eaf0!important}
 .header-info,#home .p4-weather,#projectRealMap{display:none!important}
}

/* v247 — preserve desktop quick-action colors on mobile */
@media(max-width:899px){
 body.light-theme #home .p4-action.blue,#home .p4-action.blue{background:#1684ed!important}
 body.light-theme #home .p4-action.green,#home .p4-action.green{background:#10a85b!important}
 body.light-theme #home .p4-action.orange,#home .p4-action.orange{background:#ff8a00!important}
 body.light-theme #home .p4-action.purple,#home .p4-action.purple{background:#7752d9!important}
 #home .p4-action,#home .p4-action :is(b,strong,span,small){color:#fff!important}
}

@media(min-width:901px){header.top{grid-template-columns:minmax(320px,520px) 180px 300px!important}.header-search{grid-column:1}.header-info{grid-column:2}.brand{grid-column:3}}

/* v248 mobile header: search center, brand right */
@media(max-width:899px){
 header.top{display:grid!important;grid-template-columns:44px minmax(0,1fr) 126px!important;align-items:center!important;gap:7px!important;min-height:64px!important;padding:8px 8px!important}
 .header-info{display:none!important}
 .header-search{display:flex!important;grid-column:2!important;grid-row:1!important;width:100%!important;height:38px!important;min-width:0!important;align-items:center!important;background:#fff!important;border:1px solid #d8e2eb!important;border-radius:10px!important;overflow:hidden!important}
 .header-search .input{display:block!important;min-width:0!important;width:100%!important;height:36px!important;margin:0!important;padding:0 8px!important;border:0!important;border-radius:0!important;background:#fff!important;color:#142b3f!important;font-size:11px!important;box-shadow:none!important}
 .header-search button{display:flex!important;align-items:center!important;justify-content:center!important;width:36px!important;min-width:36px!important;height:38px!important;padding:0!important;border:0!important;background:#e97824!important;color:#fff!important;font-size:18px!important}
 .brand{display:flex!important;grid-column:3!important;grid-row:1!important;width:126px!important;min-width:0!important;padding:0!important;margin:0!important;justify-content:flex-end!important;overflow:hidden!important}
 .brandlock{display:flex!important;width:100%!important;min-width:0!important;margin:0!important;padding:0!important;justify-content:flex-end!important;align-items:center!important}
 .ep-logistica-brand{display:block!important;width:122px!important;max-width:122px!important;height:auto!important;margin:0!important;object-fit:contain!important;object-position:right center!important}
 #home>.global-search{display:none!important}
}
@media(max-width:420px){
 header.top{grid-template-columns:38px minmax(0,1fr) 108px!important;gap:5px!important}
 .brand{width:108px!important}.ep-logistica-brand{width:105px!important;max-width:105px!important}
 .header-search .input{font-size:10px!important;padding:0 6px!important}
}

/* v250 — restore desktop visual state only */
@media(min-width:900px){
 body.light-theme #home .p4-action.blue,#home .p4-action.blue{background:#1684ed!important}
 body.light-theme #home .p4-action.green,#home .p4-action.green{background:#10a85b!important}
 body.light-theme #home .p4-action.orange,#home .p4-action.orange{background:#ff8a00!important}
 body.light-theme #home .p4-action.purple,#home .p4-action.purple{background:#7752d9!important}
 #home .p4-action,#home .p4-action :is(b,strong,span,small){color:#fff!important}
 .bottom .nav .nav-icon,.bottom .nav .nav-icon svg{color:#f47b20!important;stroke:#f47b20!important}
 .bottom .nav.active .nav-icon,.bottom .nav.active .nav-icon svg{color:#fff!important;stroke:#fff!important}
 #home #upcomingLoads .load-card .load-date{background:#17364e!important;color:#fff!important}
 #home #upcomingLoads .load-card .load-date b,
 #home #upcomingLoads .load-card .load-date span{color:#fff!important;opacity:1!important}
 #home #upcomingLoads .load-card .load-when{color:#142b3f!important;opacity:1!important;font-weight:800!important}
 #home #upcomingLoads .load-card h3,
 #home #upcomingLoads .load-card .small,
 #home #upcomingLoads .load-card .muted{color:#142b3f!important;opacity:1!important}
 #home #homeProjects>.card .load-date-highlight{background:#244f70!important;color:#fff!important;border-color:#52708a!important}
}

/* v251 — Home date contrast */
#home #upcomingLoads .load-card .load-date b,
#home #upcomingLoads .load-card .load-date span{
 color:#fff!important;
 opacity:1!important;
 text-shadow:0 1px 2px rgba(0,0,0,.28)!important;
}
#home #homeProjects>.card .load-date-highlight{
 color:#fff!important;
 opacity:1!important;
 font-weight:900!important;
}
#home #homeProjects>.card .small.muted .load-date-highlight{
 color:#fff!important;
}

/* v253 — force desktop Activity date text white */
@media (min-width:760px){
 body.light-theme #home #upcomingLoads .load-card .load-date,
 body.light-theme #home #upcomingLoads .load-card .load-date *,
 #home #upcomingLoads .load-card .load-date,
 #home #upcomingLoads .load-card .load-date *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:0 1px 2px rgba(0,0,0,.45)!important;
 }
 #home #upcomingLoads .load-card .load-date b{font-weight:900!important}
 #home #upcomingLoads .load-card .load-date span{font-weight:800!important}
}

/* v254 — same fair = same date-block color, desktop + mobile */
#home #upcomingLoads .load-date.fair-c0{background:#1677c8!important}
#home #upcomingLoads .load-date.fair-c1{background:#0f9b6d!important}
#home #upcomingLoads .load-date.fair-c2{background:#7b61c9!important}
#home #upcomingLoads .load-date.fair-c3{background:#d96b22!important}
#home #upcomingLoads .load-date.fair-c4{background:#c44f75!important}
#home #upcomingLoads .load-date.fair-c5{background:#327d86!important}
#home #upcomingLoads .load-date[class*="fair-c"],#home #upcomingLoads .load-date[class*="fair-c"] *{color:#fff!important;-webkit-text-fill-color:#fff!important}

/* v256 — mobile color parity with desktop
   Layout stays responsive; visual colors inherit desktop rules.
   Keep only mobile structural behavior here. */
@media(max-width:899px){
 /* Remove old mobile-only palette overrides */
 html,body,body.light-theme,.app,main{color:inherit!important}
 /* Preserve requested mobile-only visibility exceptions */
 .header-info,#home .p4-weather,#projectRealMap{display:none!important}
 /* Preserve fair color coding and white date text */
 #home #upcomingLoads .load-date[class*="fair-c"],
 #home #upcomingLoads .load-date[class*="fair-c"] *{color:#fff!important;-webkit-text-fill-color:#fff!important}
}

/* v258 — orange sidebar icons, desktop + mobile */
.bottom .nav .nav-icon{color:#f47b20!important}
.bottom .nav .nav-icon svg{stroke:#f47b20!important;color:#f47b20!important}
.bottom .nav.active .nav-icon{color:#fff!important}
.bottom .nav.active .nav-icon svg{stroke:#fff!important;color:#fff!important}

/* v259 — orange icons only for selected utility menu entries */
#purchasesMenuBtn .nav-icon,
#fairRulesBtn .nav-icon,
#tvLiveMenuBtn .nav-icon,
#logisticsPanelMenuBtn .nav-icon{color:#f47b20!important}
#purchasesMenuBtn .nav-icon svg,
#fairRulesBtn .nav-icon svg,
#tvLiveMenuBtn .nav-icon svg,
#logisticsPanelMenuBtn .nav-icon svg{stroke:#f47b20!important;color:#f47b20!important}
/* texts keep normal menu color */
#purchasesMenuBtn>span:last-child,
#fairRulesBtn>span:last-child,
#tvLiveMenuBtn>span:last-child,
#logisticsPanelMenuBtn>span:last-child{color:inherit!important}

/* v260 — mobile menu: same complete menu as desktop */
@media(max-width:759px){
 .bottom .desktop-extra-nav{display:flex!important}
 #calendarBtn,#fairRulesBtn,#purchasesMenuBtn,#tvLiveMenuBtn,#logisticsPanelMenuBtn{display:flex!important}
 .bottom{overflow-y:auto!important}
}

/* v261 — mobile header proportions + add button at bottom */
@media(max-width:759px){
 header.top{grid-template-columns:38px minmax(92px,.72fr) minmax(145px,1.28fr)!important;gap:6px!important}
 .header-search{height:34px!important;max-width:150px!important;justify-self:center!important}
 .header-search .input{height:32px!important;font-size:9px!important;padding:0 5px!important}
 .header-search button{width:32px!important;min-width:32px!important;height:34px!important;font-size:16px!important}
 .brand{width:100%!important;overflow:visible!important}
 .brandlock{width:100%!important}
 .ep-logistica-brand{width:160px!important;max-width:100%!important}
 .bottom{padding-bottom:max(14px,env(safe-area-inset-bottom))!important}
 .bottom .fab{order:99!important;width:52px!important;height:52px!important;min-height:52px!important;margin:10px auto 4px!important;flex:0 0 52px!important}
}
@media(max-width:420px){
 header.top{grid-template-columns:34px minmax(82px,.68fr) minmax(140px,1.32fr)!important}
 .header-search{max-width:132px!important}
 .ep-logistica-brand{width:154px!important}
}

/* v267 — sidebar icon consistency and single active state */
.bottom .nav .nav-icon{
  width:32px!important;height:32px!important;min-width:32px!important;flex:0 0 32px!important;
  display:grid!important;place-items:center!important;
  font-size:20px!important;color:#f47b20!important;
}
.bottom .nav .nav-icon svg{width:22px!important;height:22px!important;stroke:#f47b20!important;color:#f47b20!important}
.bottom .nav>span:last-child{color:#fff!important}
#calendarBtn{color:#fff!important}
#calendarBtn>span:last-child{color:#fff!important}
#calendarBtn .nav-icon,#calendarBtn .alert-nav-icon{color:#f47b20!important;border-color:transparent!important;background:transparent!important;box-shadow:none!important}
#calendarBtn.has-event-today .nav-icon,#calendarBtn.has-event-today .alert-nav-icon{color:#f47b20!important;border-color:transparent!important;background:transparent!important;box-shadow:none!important}
.bottom .nav.active{background:rgba(233,120,36,.16)!important;color:#fff!important}
.bottom .nav.active .nav-icon,.bottom .nav.active .alert-nav-icon{background:#e97824!important;color:#fff!important;box-shadow:none!important}
.bottom .nav.active .nav-icon svg{stroke:#fff!important;color:#fff!important}

/* v268 — Inicio: mapa como selector geográfico, sin ficha operativa */
#home #homeProjects{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
#home .home-map-project{width:100%;min-width:0;padding:10px 12px;border:1px solid #52708a;border-radius:11px;background:#17364e;color:#fff;text-align:left;cursor:pointer}
#home .home-map-project b,#home .home-map-project span{display:block;color:#fff!important}
#home .home-map-project b{font-size:13px;line-height:1.2}
#home .home-map-project span{margin-top:3px;font-size:11px;color:#d7e3ec!important}
#home .home-map-project:hover,#home .home-map-project.selected{border-color:#f47b20!important;background:#20435d!important;box-shadow:inset 3px 0 0 #f47b20}
@media(max-width:900px){#home #homeProjects{grid-template-columns:1fr!important}}

.cal-day.load-day{background:#d6a800!important;border-color:#f0c62e!important;color:#fff!important}.cal-day.return-day{background:#d96b16!important;border-color:#ff8a2a!important;color:#fff!important}.cal-day.meeting-day{background:#1769aa!important;border-color:#3b8ed0!important;color:#fff!important}.cal-day.special-day{background:#23834b!important;border-color:#39a864!important;color:#fff!important}.cal-day.load-day b,.cal-day.return-day b,.cal-day.meeting-day b,.cal-day.special-day b,.cal-day.load-day span,.cal-day.return-day span,.cal-day.meeting-day span,.cal-day.special-day span{color:#fff!important}.cal-day-label{font-size:9px!important;font-weight:800!important;line-height:1.1!important;text-align:center!important}.cal-day.today{box-shadow:inset 0 0 0 2px #fff!important}

@media(min-width:760px){html,body,.app{width:100%;max-width:none!important;min-width:0!important}.app main{max-width:none!important;min-width:0!important;box-sizing:border-box!important;overflow-x:hidden!important}main>section,#home,#projects,#project,#tasks,#incidents,#inventory,#purchases,#control{width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important}#home{margin-left:0!important;margin-right:0!important}.p4-actions,.p4-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important}.p4-columns{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important}.p4-map{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important}.p4-panel,.card,.listrow,.truck-wrap,.smart-load,.load-overview{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}img,svg,canvas,video{max-width:100%}.cal-grid{width:100%!important;grid-template-columns:repeat(7,minmax(0,1fr))!important}@media(max-width:1100px){.p4-actions,.p4-stats{gap:9px!important}.p4-columns{gap:12px!important}.p4-action{min-width:0!important;padding-left:8px!important;padding-right:8px!important}}}@media(min-width:1500px){.app main{padding-left:clamp(24px,2.2vw,46px)!important;padding-right:clamp(24px,2.2vw,46px)!important}.p4-columns{gap:clamp(16px,1.4vw,26px)!important}.p4-actions,.p4-stats{gap:clamp(14px,1.2vw,22px)!important}}

@media(min-width:760px){#trucks,#trucks #truckList,#trucks .truck-section-head{width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important}#trucks .truck-overview-card,#trucks .truck-card,#trucks [class*="truck-"]{max-width:100%!important;box-sizing:border-box!important}.fair-rules-hub,.fair-rules-shell,.fairrules-hub,.fairrules-shell,.fair-rules-grid,.fairrules-grid{width:100%!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important}.fair-rules-grid,.fairrules-grid{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))!important}.modal .sheet:has(.fair-rules-hub),.modal .sheet:has(.fairrules-hub),.modal .sheet:has(.fair-rules-shell),.modal .sheet:has(.fairrules-shell){width:calc(100vw - 160px)!important;max-width:none!important;box-sizing:border-box!important}@media(max-width:1050px){#trucks .truck-section-head{flex-wrap:wrap!important}.modal .sheet:has(.fair-rules-hub),.modal .sheet:has(.fairrules-hub),.modal .sheet:has(.fair-rules-shell),.modal .sheet:has(.fairrules-shell){width:calc(100vw - 136px)!important}}}

@media(min-width:760px){#trucks,#truckList,#trucks .truck-wrap,#trucks .smart-load,#trucks .auto-truck-grid,#trucks .auto-truck-card{min-width:0!important;max-width:100%!important;box-sizing:border-box!important;overflow:hidden}.auto-truck-card>div{width:100%!important;max-width:100%!important;overflow:hidden!important;box-sizing:border-box!important}.auto-truck-card>div>i{display:block!important;max-width:100%!important;box-sizing:border-box!important}.truck,.truck-box{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}.truck-box{overflow:hidden!important}.truck-fill{max-width:100%!important;box-sizing:border-box!important;overflow:hidden!important}.truck-fill span{max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}}

/* Match truck-hq.svg's 820 x 190 coordinates; inset beyond the inner panel stroke. */
.truck-reference{aspect-ratio:820/190!important}
.truck-reference>.truck-reference-interior{position:absolute!important;left:19.024390244%!important;top:17.894736842%!important;width:75.243902439%!important;height:48.421052632%!important;overflow:hidden!important;clip-path:inset(0 round 1.5px)!important;border-radius:1.5px!important;isolation:isolate;pointer-events:none}
.truck-reference>.truck-reference-interior>.truck-reference-load{left:0!important;top:0!important;right:auto!important;bottom:auto!important;height:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important}


*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;box-sizing:border-box}body{font-family:Arial,sans-serif;color:#171717;padding:32px;max-width:900px;margin:auto;background:#fff}h1{margin:0;font-size:34px;letter-spacing:2px;color:#111}h3{margin:26px 0 10px;font-size:15px;text-transform:uppercase;letter-spacing:.7px}small{color:#666}.head{display:flex;justify-content:space-between;align-items:center;background:#171c22;color:white;border-radius:14px;padding:20px 22px;border-bottom:5px solid #ef7d21}.head h1{color:white}.head small{color:#ef7d21;font-weight:bold}.meta{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:20px 0}.meta div{padding:12px;background:#f2f3f4;border-radius:9px;border-top:3px solid #ef7d21;font-size:12px}.meta b{font-size:10px;text-transform:uppercase;color:#666}.truckprint{display:flex;height:112px;margin:10px 0 6px}.box{position:relative;flex:1;border:4px solid #252a30;border-radius:10px 0 0 10px;overflow:hidden;background:#eceff1}.fill{height:100%;width:${pct}%;background:#ef7d21!important;border-right:3px solid #bd5711;position:relative}.fill:after{content:'${used.toFixed(1)} m · ${pct}%';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:900;color:#fff}.cab{width:82px;background:#252a30!important;clip-path:polygon(0 20%,58% 20%,100% 55%,100% 100%,0 100%)}table{width:100%;border-collapse:separate;border-spacing:0;margin-top:12px;border:1px solid #ddd;border-radius:10px;overflow:hidden}th,td{border-bottom:1px solid #ddd;padding:10px;text-align:left;font-size:12px}th{background:#252a30!important;color:white;text-transform:uppercase;font-size:10px}tbody tr:nth-child(even) td{background:#f7f7f7}.note{margin-top:18px;padding:14px;border-left:5px solid #ef7d21;background:#fff5ed;border-radius:7px}.print-footer{margin-top:22px;border-top:1px solid #ddd;padding-top:10px;display:flex;justify-content:space-between}.plantruck{display:flex;justify-content:space-between;padding:10px 12px;margin:6px 0;background:#f2f3f4;border-left:4px solid #ef7d21;border-radius:7px}.plantruck b{font-size:11px}.plantruck span{font-size:11px}.pdfbtn{margin-top:18px;padding:12px 18px;background:#ef7d21;color:white;border:0;border-radius:8px;font-weight:bold}@page{size:A4;margin:12mm}@media print{button{display:none}body{padding:0}.head,.meta div,.fill,.cab,th,.note{print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}}

.preload-btn{border-color:#ef7d21!important}.preload-shell{max-width:900px}.preload-item{border:1px solid var(--line);border-radius:14px;padding:12px;margin:10px 0;background:var(--panel)}.preload-item-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.preload-item-head button{border:0;background:transparent;color:#d44;font-size:24px}.preload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.preload-grid label{font-size:10px;font-weight:800;color:var(--muted)}.preload-grid input,.preload-grid select{width:100%;margin-top:4px;padding:9px;border-radius:9px;border:1px solid var(--line);background:var(--panel2);color:var(--text)}.preload-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0}.preload-kpis div{padding:12px;border:1px solid var(--line);border-radius:12px;text-align:center;background:var(--panel)}.preload-kpis b{display:block;font-size:22px;color:#ef7d21}.preload-kpis span{font-size:10px}.preload-visual{display:grid;grid-template-columns:1fr 1fr;gap:10px}.preload-truck,.preload-profile{height:110px;position:relative;border:3px solid #53606b;border-radius:10px;overflow:hidden;background:#e9edf0;color:#17202a}.preload-truck i{position:absolute;left:0;top:0;bottom:0;background:#ef7d21;opacity:.72}.preload-profile i{position:absolute;left:0;right:0;bottom:0;background:#ef7d21;opacity:.72}.preload-truck span,.preload-profile span{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:8px;font-size:10px;font-weight:900;z-index:2}.preload-warning{margin:12px 0;padding:11px;border-left:4px solid #ef7d21;background:#fff3e8;color:#62320f;border-radius:8px;font-size:11px}.preload-plan-row{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:10px 0;border-bottom:1px solid var(--line)}.preload-plan-row small{grid-column:1/-1;color:var(--muted)}@media(max-width:700px){.preload-grid{grid-template-columns:repeat(2,1fr)}.preload-kpis{grid-template-columns:repeat(2,1fr)}.preload-visual{grid-template-columns:1fr}.truck-head-actions{flex-wrap:wrap}.preload-btn{width:100%}}

#personal{
  --p-bg:#101923;--p-panel:#172432;--p-line:#304354;--p-text:#f5f9fc;
  --p-muted:#b7c8d4;--p-orange:#ff912f;--p-blue:#55b8ff;--p-green:#61d6ad;
  color:var(--p-text);font-size:16px;line-height:1.5;max-width:1440px;margin:0 auto;padding:clamp(12px,2vw,28px);
}
#personal *{box-sizing:border-box}
#personal [hidden]{display:none!important}
#personal .personal-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:22px 0 14px;flex-wrap:wrap}
#personal>.personal-heading:first-child{margin:4px 0 20px;padding:26px 28px;border:1px solid rgba(255,255,255,.10);border-radius:24px;background:radial-gradient(circle at 90% 10%,rgba(255,145,47,.18),transparent 34%),linear-gradient(145deg,#15283d,#101d2d 68%,#102033);box-shadow:none}
#personal>.personal-heading:first-child:before{content:'●  ESPACIO PRIVADO';display:block;width:100%;color:var(--p-orange);font-size:12px;font-weight:800;letter-spacing:.12em}
#personal>.personal-heading:first-child .muted{font-size:15px;color:#aebfcb!important}
#personal>.personal-heading:first-child .btn{border-radius:13px}
#personal .personal-today{border-radius:22px}
#personal .personal-stats>div{border-radius:18px;background:rgba(255,255,255,.045);border-top:1px solid rgba(255,255,255,.10);position:relative;padding-top:19px}
#personal .personal-stats>div:before{content:'';position:absolute;left:15px;top:0;width:38px;height:3px;border-radius:0 0 4px 4px;background:var(--stat)}
#personal .personal-tabs{background:transparent;border:0;padding:0;gap:12px}
#personal .personal-tabs .btn{min-height:86px;border:1px solid rgba(255,255,255,.10);border-radius:18px;background:linear-gradient(145deg,#1b2b3a,#14222f);text-align:left;padding:16px 18px;font-size:15px}
#personal .personal-tabs .btn[data-kind="task"]:before{content:'✓  ';color:var(--p-orange);font-size:22px}
#personal .personal-tabs .btn[data-kind="event"]:before{content:'▦  ';color:var(--p-orange);font-size:22px}
#personal .personal-tabs .btn[data-kind="note"]:before{content:'✎  ';color:var(--p-orange);font-size:22px}
#personal .personal-tabs .btn[aria-pressed="true"]{background:rgba(255,145,47,.12);border-color:var(--p-orange);box-shadow:none}
#personal .personal-item{border-left:0;border:1px solid rgba(255,255,255,.10);border-radius:16px}
#personal .personal-item:before{content:'';width:4px;align-self:stretch;border-radius:4px;background:var(--item,var(--p-orange));flex-shrink:0}
#personal .personal-form{border-top:0;border-left:4px solid var(--p-orange);border-radius:18px}
#personal h1,#personal h2,#personal h3{color:#fff;line-height:1.2;margin:0;letter-spacing:-.025em}
#personal h1{font-size:clamp(30px,3vw,42px)}
#personal h2{font-size:clamp(21px,2vw,26px)}
#personal h3{font-size:18px;overflow-wrap:anywhere}
#personal p{line-height:1.55;margin:8px 0}
#personal .muted{color:var(--p-muted)!important}
#personal .card{background:linear-gradient(145deg,#1b2b3a,#14222f);border:1px solid var(--p-line);border-radius:18px;padding:20px;color:var(--p-text);box-shadow:none}
#personal .personal-today{position:relative;overflow:hidden;border-color:#46586a;background:radial-gradient(circle at top right,rgba(255,145,47,.11),transparent 45%),linear-gradient(135deg,#203449,#172635 68%)}
#personal .personal-today>.personal-heading{margin:0 0 16px}
#personal .personal-today>.personal-heading h2:before{content:'';display:inline-block;width:9px;height:9px;margin:0 10px 3px 0;border-radius:50%;background:var(--p-orange);box-shadow:0 0 0 5px rgba(255,145,47,.12)}
#personal .personal-today>.personal-heading .muted{text-transform:capitalize}
#personal .personal-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#personal .personal-stats>div{min-width:0;min-height:108px;padding:15px 16px;border-radius:15px;border:1px solid rgba(255,255,255,.11);background:rgba(10,24,37,.55);border-top:3px solid var(--stat)}
#personal .personal-stats>div:nth-child(1){--stat:var(--p-orange)}
#personal .personal-stats>div:nth-child(2){--stat:var(--p-blue)}
#personal .personal-stats>div:nth-child(3){--stat:#ff7777}
#personal .personal-stats>div:nth-child(4){--stat:var(--p-green)}
#personal .personal-stats b{font-size:30px;line-height:1.1;display:block;color:var(--stat);font-variant-numeric:tabular-nums}
#personal .personal-stats span{display:block;margin-top:9px;color:#edf5fb;font-size:14px;line-height:1.3}
#personal .personal-agenda{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:8px}
#personal .personal-agenda li{border-left:3px solid var(--p-blue);border-radius:5px;background:rgba(255,255,255,.045);padding:8px 12px;overflow-wrap:anywhere}
#personal .personal-reminder{display:flex;justify-content:space-between;gap:14px;align-items:center;border-top:1px solid #425363;padding:13px 0}
#personal .personal-reminder:first-of-type{margin-top:15px}
#personal .personal-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:24px 0 18px;padding:5px;border:1px solid var(--p-line);border-radius:17px;background:#101d29}
#personal .btn{font-size:14px;min-height:42px;cursor:pointer;border-radius:11px;font-weight:700;transition:background .18s,border-color .18s,transform .18s}
#personal .btn:hover:not(:disabled){transform:translateY(-1px)}
#personal .btn.primary{background:var(--p-orange);border:1px solid #ffab5e;color:#101a23}
#personal .btn.dark{background:#233342;color:#f5f9fc;border:1px solid #40576b}
#personal .btn.dark:hover{background:#30465a}
#personal button:disabled{opacity:.6;cursor:wait}
#personal .personal-tabs .btn{width:100%;min-height:56px;padding:8px 12px;text-align:center;background:transparent;border:1px solid transparent;color:#d4e3ee}
#personal .personal-tabs .btn[data-kind="task"]{--tab:var(--p-orange);--tab-bg:rgba(255,145,47,.17)}
#personal .personal-tabs .btn[data-kind="event"]{--tab:var(--p-blue);--tab-bg:rgba(85,184,255,.16)}
#personal .personal-tabs .btn[data-kind="note"]{--tab:var(--p-green);--tab-bg:rgba(97,214,173,.14)}
#personal .personal-tabs .btn[aria-pressed="true"]{color:#fff;background:var(--tab-bg);border-color:var(--tab);box-shadow:inset 0 -3px var(--tab)}
#personal .personal-tabs .btn:hover{background:var(--tab-bg)}
#personal #personalList{display:grid;gap:11px;margin-top:15px}
#personal .personal-item{position:relative;display:flex;justify-content:space-between;align-items:center;gap:18px;border-left:4px solid var(--item,var(--p-orange));transition:border-color .2s,background .2s}
#personal .personal-item:hover{background:#213445}
#personal .personal-item[data-kind="event"]{--item:var(--p-blue)}
#personal .personal-item[data-kind="note"]{--item:var(--p-green)}
#personal .personal-item[data-priority="high"]{--item:#ff7777}
#personal .personal-item[data-done="true"]{--item:#718b9b;opacity:.78}
#personal .personal-item-main{display:flex;gap:14px;min-width:0;align-items:flex-start}
#personal .personal-item-main>div{min-width:0}
#personal .personal-item h3{margin:0 0 5px;font-size:18px}
#personal .personal-item .muted{margin:2px 0;color:#bbceda!important;font-size:14px}
#personal .personal-item input[type=checkbox]{width:23px;height:23px;accent-color:var(--p-orange);margin:2px 0 0;flex-shrink:0}
#personal .personal-actions{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0}
#personal .personal-actions .btn{min-height:38px}
#personal .personal-body{white-space:pre-wrap;overflow-wrap:anywhere;max-height:280px;overflow:auto;color:#e7f0f5}
#personal .personal-done{text-decoration:line-through;color:#b7c8d4!important}
#personal .personal-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}
#personal .personal-form{margin:14px 0 18px;border-top:3px solid var(--p-orange)}
#personal .personal-form label{display:block;margin-top:14px;color:#f7f8fa;font-size:14px;font-weight:700}
#personal .input{width:100%;font-size:16px;background:#0f1c28;color:#fff;border:1px solid #526777;border-radius:10px;padding:11px}
#personal .input:focus{border-color:var(--p-orange)}
#personal .personal-week,#personal .personal-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
#personal .personal-week span{text-align:center;padding:7px;color:#ffac62;font-weight:700;font-size:14px}
#personal .personal-day{min-width:0;min-height:76px;padding:8px;border:1px solid #344c5e;border-radius:11px;background:#132331;color:#fff;text-align:left;cursor:pointer;transition:background .18s,border-color .18s}
#personal .personal-day:hover{background:#263e52;border-color:var(--p-blue)}
#personal .personal-day b,#personal .personal-day span{display:block}
#personal .personal-day b{font-size:17px}
#personal .personal-day span{width:fit-content;min-height:17px;margin-top:5px;font-size:13px;font-weight:700;color:var(--p-blue)}
#personal .personal-day.has-event{background:#16354c;border-color:#3571a0}
#personal .personal-day.today{border-color:var(--p-orange);box-shadow:inset 0 0 0 1px var(--p-orange)}
#personal .personal-day.selected{background:#254e68;outline:2px solid var(--p-blue);outline-offset:1px}
#personalMessage,#personal .personal-form-error{color:#ffd19f}
#personal :focus-visible{outline:2px solid var(--p-orange);outline-offset:3px}
@media(max-width:850px){#personal .personal-stats{grid-template-columns:repeat(2,minmax(0,1fr))}#personal .personal-item{align-items:flex-start;flex-direction:column}#personal .personal-actions{padding-left:37px}}
@media(max-width:520px){#personal{padding:12px;font-size:15px}#personal>.personal-heading:first-child{padding:18px}#personal .card{padding:15px}#personal .personal-stats{gap:8px}#personal .personal-stats>div{padding:12px;min-height:98px}#personal .personal-stats b{font-size:26px}#personal .personal-tabs{gap:3px;padding:4px}#personal .personal-tabs .btn{font-size:12px;min-height:56px;padding:7px 4px}#personal .personal-day{min-height:56px;padding:5px;border-radius:8px}#personal .personal-day b{font-size:14px}#personal .personal-day span{font-size:11px;margin-top:2px}#personal .personal-calendar,#personal .personal-week{gap:3px}#personal .personal-reminder{align-items:flex-start;flex-direction:column}#personal .personal-actions{padding-left:0}}
#personal .personal-dashboard{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:16px;align-items:start}
#personal .personal-main-day .personal-today{margin:0;height:100%}
#personal .personal-side-calendar{margin:0;background:linear-gradient(145deg,#182a3b,#122130);border-radius:22px}
#personal .personal-side-calendar>.personal-heading:first-child{margin:0 0 12px}
#personal .personal-side-calendar>.personal-heading:last-child{margin:12px 0 0}
#personal .personal-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 24px}
#personal .personal-quick{min-height:126px;padding:18px;text-align:left;border-radius:20px;border:1px solid rgba(255,255,255,.10);background:linear-gradient(145deg,#1a2c3d,#132231);color:#fff;cursor:pointer;transition:.18s}
#personal .personal-quick:hover{transform:translateY(-2px);border-color:#526a7e}
#personal .personal-quick.active{border-color:var(--p-orange);background:linear-gradient(145deg,rgba(255,145,47,.16),#162636)}
#personal .personal-quick b{display:block;font-size:27px;line-height:1;color:var(--p-orange);margin-bottom:18px}
#personal .personal-quick span{display:block;font-size:17px;font-weight:800}
#personal .personal-quick small{display:block;color:var(--p-muted);font-size:13px;margin-top:3px}
#personal .personal-section-head{margin-top:10px}
#personal .personal-private-note{margin-top:18px;padding:13px 16px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(0,0,0,.12);color:var(--p-muted);font-size:13px}
@media(max-width:950px){#personal .personal-dashboard{grid-template-columns:1fr}#personal .personal-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){#personal .personal-quick-grid{gap:8px}#personal .personal-quick{min-height:108px;padding:14px}#personal .personal-quick b{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){#personal .btn,#personal .personal-item,#personal .personal-day,#personal .personal-quick{transition:none}}

/* LOGYSTIA: shared visual rules */
/* Quick actions retain their original colors on every screen size. */
html body #home .p4-action.blue{--quick-action-color:#1684ed}
html body #home .p4-action.green{--quick-action-color:#10a85b}
html body #home .p4-action.orange{--quick-action-color:#ff8a00}
html body #home .p4-action.purple{--quick-action-color:#7752d9}
html body #home .p4-action{background:var(--quick-action-color)!important;border-color:var(--quick-action-color)!important;color:#fff!important}
html body #home .p4-action :is(b,span,small){color:inherit!important}
:root{--ui-accent:#e7822c;--ui-radius:10px;--ui-border:#d8dee5;--ui-ink:#182431;--ui-muted:#526171}
html body{font-family:"Barlow","Arial",sans-serif}
body .p4-panel,body .card,body .stat,body .pack{border-radius:var(--ui-radius)!important;box-shadow:none!important}
body .p4-panel,body #home .stat{background:#fff!important;border:1px solid var(--ui-border)!important;color:var(--ui-ink)!important}
body #home .muted,body #home .stat>span{color:var(--ui-muted)!important}
body #home .p4-actions{gap:12px!important}
body #home .p4-action{background:#fff!important;color:var(--ui-ink)!important;border:1px solid var(--ui-border)!important;box-shadow:none!important;border-radius:var(--ui-radius)!important;min-height:96px!important;padding:16px!important;text-align:left!important;align-items:flex-start!important}
/* Quick-action colors are defined above. */
body #home .p4-action b{font-size:22px!important;color:inherit!important}
body #home .p4-action span{font-size:14px!important}
body #home .p4-action small{font-size:12px!important;opacity:1!important}
body #home .p4-stat-icon{color:#9a4c13!important}
body .btn,body .chip,body .truck-filter-btn{border-radius:8px!important;box-shadow:none!important}
body .btn.primary{background:#e7822c!important;border-color:#e7822c!important;color:#17212b!important}
body .input{border-radius:8px!important;font-size:14px!important}
body .p4-weather,body #home .global-search{display:none!important}
body .header-info .header-weather{display:none!important}
body .header-search .input{font-size:14px!important}
body .home-section-head h2,body .p4-title h2{font-size:18px!important;letter-spacing:-.2px!important}
body .bottom .nav{border-radius:8px!important;box-shadow:none!important}
body .bottom .nav .nav-icon{background:transparent!important;border-radius:6px!important}
body .bottom .nav.active{background:#e7822c26!important;border-left-color:#e7822c!important}
body .bottom .nav.active .nav-icon{background:transparent!important}
body .bottom .nav.active .nav-icon svg{stroke:#e7822c!important}
body .bottom .nav:focus-visible,body button:focus-visible,body a:focus-visible,body .tab:focus-visible{outline:3px solid #e7822c!important;outline-offset:3px!important}
body .project-menu{gap:8px!important}
body .project-menu .tab{border-radius:8px!important;box-shadow:none!important}
body .project-menu .tab.active{background:#e7822c!important;color:#17212b!important}
body .sidebar-mini-brand{font-size:0!important}
body .sidebar-mini-brand:after{content:"L";font-size:20px;font-weight:800}
body .ui-app-name{font-size:11px;color:#e7822c;letter-spacing:2px;font-weight:800;padding-left:10px}
@media(min-width:901px){body header.top{grid-template-columns:64px minmax(220px,1fr) 300px!important}body .header-search{width:min(100%,540px)!important}body #home .p4-columns{gap:16px!important}}
@media(max-width:900px){body header.top{grid-template-columns:40px minmax(0,1fr) auto!important;gap:8px!important}body .header-info{display:none!important}body .header-search{grid-column:2!important;grid-row:1!important;width:100%!important;max-width:none!important}body .header-search .input{height:40px!important;padding:0 10px!important;font-size:13px!important}body .header-search button{height:40px!important}body .brand{grid-column:3!important;grid-row:1!important;width:96px!important}body .ep-logistica-brand{width:96px!important;max-width:96px!important;margin-left:0!important}body .ui-app-name{font-size:9px;padding-left:0}body #home .p4-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}body #home .p4-columns{grid-template-columns:1fr!important}body .btn,body .nav,body .chip,body .truck-filter-btn{min-height:44px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Desktop/mobile visual parity: one palette, responsive structure only. */
html body .bottom{color:#fff!important}
html body .header-search button{background:#f47b20!important}
html body #home h1{color:var(--text)!important}
html body #home .p4-panel{border-color:#2c3a46!important}
html body #home .p4-panel .home-text-link{color:#f47b20!important}
html body #home .stat{background:#fff!important;color:#17202a!important;border-color:#e0e5e9!important}
@media(max-width:900px){
 html body #home .p4-panel:has(#projectRealMap) #projectRealMap{display:block!important;width:100%!important;height:240px!important;min-height:240px!important}
 html body .app header.top .header-info{display:flex!important;grid-column:1 / -1!important;grid-row:2!important;justify-self:stretch!important;justify-content:flex-end!important}
 html body .app header.top{height:auto!important}
 html body .header-search{border-radius:12px!important}
 html body .header-search .input{border-radius:8px!important}
}