:root{
 --ink:#1b2d2d;--muted:#718181;--line:#dce5e2;--canvas:#f4f6f4;--white:#fff;--navy:#142625;--navy2:#203c39;
 --amber:#ed7128;--amber2:#f6934d;--green:#16866b;--red:#cf4d47;--blue:#277d95;--violet:#7165a6;
 --soft-green:#e4f6ef;--soft-red:#fcebea;--soft-amber:#fff0e2;--soft-blue:#e7f2f7;--radius:14px;--shadow:0 15px 45px rgba(7,31,37,.09);
 font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:light
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:var(--canvas);color:var(--ink);font-size:14px}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.025em}p{line-height:1.55}.kicker{color:var(--amber);font-size:8px;font-weight:900;letter-spacing:.17em;margin:0 0 5px}.logo-mark{align-items:center;background:linear-gradient(145deg,var(--amber),#d96416);border-radius:10px;color:#fff;display:inline-flex;font-size:11px;font-weight:950;height:38px;justify-content:center;letter-spacing:-.05em;width:38px}

/* Login */
.login-page{background:var(--navy)}.login-layout{display:grid;grid-template-columns:1.15fr .85fr;min-height:100vh}.login-story{background:radial-gradient(circle at 18% 13%,rgba(240,126,47,.24),transparent 32%),linear-gradient(145deg,#0d3538,#061a20);color:#fff;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:clamp(50px,8vw,125px);position:relative}.login-story:after{background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:36px 36px;content:"";inset:0;position:absolute}.login-brand{align-items:center;display:flex;gap:12px;margin-bottom:70px;position:relative;z-index:1}.login-brand .logo-mark{border-radius:14px;font-size:15px;height:55px;width:55px}.login-brand strong{font-size:23px}.login-brand em,.brand em{color:var(--amber2);font-style:normal}.login-story>.kicker{color:#ffad6c;position:relative;z-index:1}.login-story h1{font-family:Georgia,serif;font-size:clamp(43px,5.5vw,78px);font-weight:500;line-height:1.01;margin:14px 0 28px;position:relative;z-index:1}.login-story h1 i{color:#ff9a4d;font-style:italic}.login-copy{color:#b5c8ca;font-size:17px;max-width:650px;position:relative;z-index:1}.login-stats{display:flex;gap:35px;margin-top:35px;position:relative;z-index:1}.login-stats span{color:#9cb3b5;font-size:9px;font-weight:700}.login-stats b{color:#fff;display:block;font-family:Georgia,serif;font-size:24px;font-weight:500}.login-access{align-items:center;background:#eaf0ef;display:flex;justify-content:center;padding:35px}.login-card{background:#fff;border:1px solid #d3dfdd;border-radius:22px;box-shadow:0 30px 90px rgba(5,28,32,.15);max-width:445px;padding:45px;width:100%}.login-card h2{font-size:29px;margin:0 0 7px}.login-card>p:not(.kicker){color:var(--muted);margin-bottom:30px}.login-card label{color:#3b5053;display:grid;font-size:10px;font-weight:800;gap:7px;margin-top:16px}.login-card input{background:#fbfdfd;border:1px solid #ccd8d7;border-radius:9px;height:46px;outline:none;padding:0 13px}.login-card input:focus,input:focus,select:focus,textarea:focus{border-color:var(--amber)!important;box-shadow:0 0 0 3px rgba(240,126,47,.12);outline:none}.form-error{background:var(--soft-red);border:1px solid #efc6c2;border-radius:9px;color:#a43d38;font-size:10px;padding:10px 12px}.demo-box{align-items:center;background:#f3f6f5;border-radius:9px;color:var(--muted);display:flex;flex-direction:column;font-size:9px;gap:3px;margin-top:20px;padding:11px}.demo-box b{color:var(--ink)}.mobile-logo{align-items:center;display:none;gap:10px;margin-bottom:30px}

/* Buttons */
.button{align-items:center;border:1px solid transparent;border-radius:8px;cursor:pointer;display:inline-flex;font-size:9px;font-weight:900;gap:6px;justify-content:center;min-height:37px;padding:8px 13px;text-decoration:none;transition:.18s;white-space:nowrap}.button:hover{transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.6;transform:none}.button.primary{background:var(--amber);box-shadow:0 7px 18px rgba(240,126,47,.2);color:#fff}.button.primary:hover{background:#df6d20}.button.secondary{background:var(--soft-green);border-color:#bee8d8;color:#087856}.button.ghost{background:#fff;border-color:#cad6d4;color:#465a5e}.button.wide{justify-content:space-between;width:100%}.text-button,.link-button{background:none;border:0;color:#d7651c;cursor:pointer;font-size:9px;font-weight:900;padding:4px}.icon-button,.row-button,.close-button{align-items:center;background:#f2f5f4;border:0;border-radius:7px;cursor:pointer;display:inline-flex;height:30px;justify-content:center;width:30px}.row-button{background:#fff;border:1px solid #d2dcda;color:#738285;font-size:17px}.close-button{font-size:19px}.icon-button.danger{color:var(--red)}.mini-button{background:#fff;border:1px solid #ccd8d6;border-radius:6px;cursor:pointer;font-size:8px;font-weight:850;min-height:29px;padding:5px 8px}.mini-button:hover{border-color:var(--amber);color:#c85b14}

/* Shell */
.app-shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--navy);bottom:0;color:#c7d3d4;display:flex;flex-direction:column;left:0;position:fixed;top:0;width:245px;z-index:50}.brand{align-items:center;border-bottom:1px solid rgba(255,255,255,.075);display:flex;gap:11px;height:77px;padding:0 19px}.brand strong{color:#fff;display:block;font-size:17px}.brand small{color:#71898c;display:block;font-size:7px;font-weight:800;letter-spacing:.12em;margin-top:2px}.sidebar nav{flex:1;overflow-y:auto;padding:14px 11px}.sidebar nav>p{color:#587477;font-size:7px;font-weight:900;letter-spacing:.17em;margin:17px 10px 7px}.nav-item{align-items:center;background:transparent;border:0;border-radius:8px;color:#94aaac;cursor:pointer;display:flex;font-size:10px;font-weight:750;gap:10px;margin:2px 0;min-height:38px;padding:7px 10px;position:relative;text-align:left;width:100%}.nav-item>span{align-items:center;color:#789295;display:flex;font-size:15px;height:20px;justify-content:center;width:20px}.nav-item:hover{background:rgba(255,255,255,.05);color:#fff}.nav-item.active{background:linear-gradient(90deg,rgba(240,126,47,.25),rgba(240,126,47,.05));color:#fff}.nav-item.active:before{background:var(--amber);border-radius:0 3px 3px 0;content:"";height:24px;left:-11px;position:absolute;width:3px}.nav-item.active>span{color:var(--amber2)}.nav-item em{background:rgba(255,255,255,.07);border-radius:30px;color:#82989a;font-size:7px;font-style:normal;margin-left:auto;min-width:19px;padding:2px 5px;text-align:center}.nav-item .danger-count{background:rgba(223,81,75,.24);color:#ffaaa5}.sidebar-footer{padding:10px 12px 0}.connection{align-items:center;border:1px solid rgba(255,255,255,.08);border-radius:8px;display:flex;gap:8px;padding:9px}.connection>i{background:#37ce91;border-radius:50%;box-shadow:0 0 0 4px rgba(55,206,145,.1);height:7px;width:7px}.offline .connection>i{background:var(--red)}.connection span{display:grid}.connection b{font-size:8px}.connection small{color:#688184;font-size:7px}.profile{align-items:center;border-top:1px solid rgba(255,255,255,.07);display:flex;gap:8px;margin-top:9px;padding:11px 3px}.avatar{align-items:center;background:#304a4f;border-radius:50%;color:#fff;display:flex;font-size:8px;font-weight:900;height:31px;justify-content:center;width:31px}.profile>div{display:grid;min-width:0}.profile b{color:#edf3f2;font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile small{color:#6f878a;font-size:7px}.profile form{margin-left:auto}.profile form button{background:none;border:0;color:#779092;cursor:pointer;font-size:15px}.sidebar-mask{display:none}.workspace{grid-column:2;min-width:0}.topbar{align-items:center;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);display:flex;height:77px;justify-content:space-between;padding:0 clamp(17px,3vw,42px);position:sticky;top:0;z-index:30}.page-title{align-items:center;display:flex;gap:10px}.page-title p{color:var(--amber);font-size:7px;font-weight:900;letter-spacing:.16em;margin:0 0 3px}.page-title h1{font-family:Georgia,serif;font-size:21px;font-weight:500;margin:0}.menu-button{background:#fff;border:1px solid var(--line);border-radius:7px;display:none;font-size:18px;height:34px;width:34px}.top-actions{align-items:center;display:flex;gap:7px}.global-search{align-items:center;background:#f6f8f7;border:1px solid var(--line);border-radius:8px;display:flex;height:37px;padding:0 9px;width:220px}.global-search span{color:#8a999b;font-size:16px}.global-search input{background:transparent;border:0;box-shadow:none!important;font-size:9px;height:100%;outline:none;padding:0 7px;width:100%}.live{align-items:center;border:1px solid var(--line);border-radius:99px;color:#68797c;display:flex;font-size:7px;gap:5px;padding:7px 9px}.live i{background:#2dbd80;border-radius:50%;height:5px;width:5px}.offline .live i{background:var(--red)}.content{margin:auto;max-width:1580px;min-height:calc(100vh - 77px);outline:none;padding:clamp(21px,3vw,40px)}.loading{align-items:center;color:var(--muted);display:flex;flex-direction:column;gap:10px;justify-content:center;min-height:55vh}.loading span{animation:spin .7s linear infinite;border:3px solid #d7e2e0;border-radius:50%;border-top-color:var(--amber);height:29px;width:29px}

/* Shared panels and headers */
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 3px 10px rgba(7,31,37,.025);min-width:0;overflow:hidden}.panel>header{align-items:center;border-bottom:1px solid #eaf0ef;display:flex;justify-content:space-between;min-height:70px;padding:16px 20px}.panel h3{font-size:14px;margin:0}.panel .kicker{font-size:7px}.dashboard-intro,.actionbar,.dispatch-head,.hse-head,.audit-head{align-items:flex-end;display:flex;justify-content:space-between;margin-bottom:21px}.dashboard-intro h2,.actionbar h2,.dispatch-head h2,.hse-head h2,.audit-head h2{font-family:Georgia,serif;font-size:25px;font-weight:500;margin:0 0 4px}.dashboard-intro p,.actionbar p,.dispatch-head p,.hse-head p,.audit-head p{color:var(--muted);margin:0}.data-time{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--muted);display:grid;font-size:7px;gap:1px 7px;grid-template-columns:7px auto;padding:8px 10px}.data-time i{background:var(--green);border-radius:50%;grid-row:1/3;height:6px;width:6px}.data-time b{color:var(--ink);font-size:8px}.actionbar>div:last-child{display:flex;gap:7px}.actionbar{align-items:center}.status{align-items:center;background:#edf1f0;border-radius:99px;color:#5b6b6e;display:inline-flex;font-size:7px;font-weight:900;gap:5px;padding:4px 7px;white-space:nowrap}.status i{background:currentColor;border-radius:50%;height:5px;width:5px}.status-habilitado,.status-completado,.status-completada,.status-cerrado,.status-aprobada{background:var(--soft-green);color:#087656}.status-por_vencer,.status-programado,.status-programada,.status-pendiente,.status-cargando,.status-cotizando,.status-nueva{background:var(--soft-amber);color:#aa5b18}.status-bloqueado,.status-demore,.status-demorado,.status-cancelado,.status-cancelada{background:var(--soft-red);color:#a43b36}.status-en_ruta,.status-en_locacion,.status-descargando,.status-en_proceso,.status-investigando{background:var(--soft-blue);color:#216f91}.priority{background:#eef2f1;border-radius:6px;color:#617174;display:inline-block;font-size:7px;font-weight:900;padding:4px 7px;text-transform:uppercase}.priority-alta,.priority-media{background:var(--soft-amber);color:#a85a17}.priority-critica{background:var(--soft-red);color:#a63a35}.priority-baja,.priority-normal{background:#edf2f1;color:#657477}.count-chip{background:#edf1f0;border-radius:99px;font-size:8px;padding:5px 8px}.count-chip.danger{background:var(--soft-red);color:#a33b36}.progress{align-items:center;display:flex;gap:6px;min-width:90px}.progress progress{appearance:none;background:#e5ebe9;border:0;border-radius:99px;height:5px;overflow:hidden;width:100%}.progress progress::-webkit-progress-bar{background:#e5ebe9}.progress progress::-webkit-progress-value{background:linear-gradient(90deg,var(--amber),var(--amber2));border-radius:99px}.progress progress::-moz-progress-bar{background:var(--amber)}.progress b{font-size:7px}.empty{align-items:center;color:var(--muted);display:flex;flex-direction:column;justify-content:center;min-height:180px;padding:28px;text-align:center}.empty>span{align-items:center;background:#eef2f1;border-radius:50%;color:#75878a;display:flex;font-size:19px;height:44px;justify-content:center;margin-bottom:10px;width:44px}.empty h3{color:var(--ink);font-size:12px;margin:0 0 4px}.empty p{font-size:9px;margin:0}

/* Dashboard */
.metrics{display:grid;gap:11px;grid-template-columns:repeat(5,minmax(0,1fr));margin-bottom:14px}.metric{align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;gap:12px;min-height:108px;padding:16px}.metric-icon{align-items:center;border-radius:9px;display:flex;font-size:17px;height:38px;justify-content:center;width:38px}.metric-icon.amber{background:var(--soft-amber);color:#c46119}.metric-icon.green{background:var(--soft-green);color:var(--green)}.metric-icon.red{background:var(--soft-red);color:var(--red)}.metric-icon.blue{background:var(--soft-blue);color:var(--blue)}.metric-icon.violet{background:#efecf8;color:var(--violet)}.metric p{color:var(--muted);font-size:8px;margin:0}.metric strong{display:block;font-family:Georgia,serif;font-size:23px;font-weight:500;margin:2px 0}.metric small{color:#839194;font-size:7px}.restriction-banner{align-items:center;background:linear-gradient(105deg,#4d2424,#331b1c);border-radius:11px;color:#fff;display:flex;gap:12px;margin-bottom:14px;padding:13px 16px}.restriction-banner>span{align-items:center;background:var(--red);border-radius:8px;display:flex;font-weight:900;height:32px;justify-content:center;width:32px}.restriction-banner b{font-size:9px}.restriction-banner p{color:#d6b5b2;font-size:8px;margin:2px 0}.restriction-banner button{background:none;border:0;color:#ffaaa4;cursor:pointer;font-size:8px;font-weight:900;margin-left:auto}.dashboard-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1.55fr) minmax(280px,.65fr);margin-bottom:14px}.live-routes,.alert-stack{padding:4px 10px}.route-row{align-items:center;background:none;border:0;border-bottom:1px solid #ebf0ef;cursor:pointer;display:grid;gap:10px;grid-template-columns:34px minmax(0,1fr) auto 12px;padding:11px 8px;text-align:left;width:100%}.route-row:last-child{border-bottom:0}.route-row:hover,.alert-row:hover{background:#fafcfc}.route-icon{align-items:center;background:var(--soft-amber);border-radius:8px;color:var(--amber);display:flex;height:32px;justify-content:center;width:32px}.route-icon.demore,.route-icon.demorado{background:var(--soft-red);color:var(--red)}.route-row>div:nth-child(2) b,.route-row>div:nth-child(2) small{display:block}.route-row>div:nth-child(2) b{font-size:9px}.route-row>div:nth-child(2) small{color:var(--muted);font-size:7px;margin-top:3px}.route-row i{color:var(--amber);font-style:normal}.route-state{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.route-state small{color:var(--muted);font-size:7px}.alert-row{align-items:center;background:none;border:0;border-bottom:1px solid #ebf0ef;cursor:pointer;display:grid;gap:9px;grid-template-columns:30px minmax(0,1fr) 10px;padding:10px 7px;text-align:left;width:100%}.alert-row:last-child{border-bottom:0}.alert-icon{align-items:center;border-radius:7px;display:flex;font-size:12px;font-weight:900;height:29px;justify-content:center;width:29px}.alert-icon.danger{background:var(--soft-red);color:var(--red)}.alert-icon.warning{background:var(--soft-amber);color:#bd651b}.alert-row small,.alert-row b,.alert-row p{display:block}.alert-row small{color:var(--red);font-size:6px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.alert-row b{font-size:8px;margin:2px 0}.alert-row p{color:var(--muted);font-size:7px;margin:0}.finance-summary{display:grid;gap:0;padding:16px}.finance-summary span{border-bottom:1px solid #e9efee;display:flex;justify-content:space-between;padding:12px 5px}.finance-summary span:last-child{border:0}.finance-summary small{color:var(--muted);font-size:8px}.finance-summary b{font-family:Georgia,serif;font-size:16px;font-weight:500}.finance-summary .positive b{color:var(--green)}

/* Tables and cards */
.table-panel{min-height:230px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;min-width:900px;width:100%}th{background:#f7f9f8;border-bottom:1px solid var(--line);color:#78878a;font-size:7px;font-weight:900;letter-spacing:.08em;padding:10px 13px;text-align:left;text-transform:uppercase;white-space:nowrap}td{border-bottom:1px solid #ebefee;color:#485a5d;font-size:8px;padding:11px 13px;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcfc}td>b,td>small{display:block}td>b{color:var(--ink);font-size:8px}td>small{color:var(--muted);font-size:7px;margin-top:3px}.code{color:#d5641c!important}.entity{align-items:center;background:none;border:0;cursor:pointer;display:flex;gap:9px;min-width:190px;padding:0;text-align:left}.entity-avatar{align-items:center;background:var(--soft-amber);border-radius:8px;color:#b75916;display:flex;font-size:8px;font-weight:900;height:32px;justify-content:center;width:32px}.entity b,.entity small{display:block}.entity b{font-size:8px}.entity small{color:var(--muted);font-size:7px;margin-top:3px}.row-actions{align-items:center;display:flex;gap:4px}.dispatch-head,.hse-head{background:linear-gradient(125deg,#11383a,#071f25);border-radius:var(--radius);color:#fff;margin-bottom:14px;padding:24px 27px}.dispatch-head p,.hse-head p{color:#a8bfc1}.dispatch-head .kicker,.hse-head .kicker{color:#ff9e56}.dispatch-grid,.card-grid,.fleet-grid,.company-grid{display:grid;gap:13px;grid-template-columns:repeat(3,minmax(0,1fr))}.dispatch-card,.request-card,.maintenance-card,.fleet-card,.company-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:17px}.dispatch-card.is-delayed{border-color:#e8b7b3;box-shadow:inset 0 3px var(--red)}.dispatch-card>header,.request-card>header,.maintenance-card>header,.fleet-card>header,.company-card>header{align-items:start;display:flex;justify-content:space-between}.dispatch-card header small,.request-card header small,.maintenance-card header small,.fleet-card>small,.company-card>small{color:var(--amber);font-size:7px;font-weight:900;letter-spacing:.08em}.dispatch-card h3,.request-card h3,.maintenance-card h3,.fleet-card h3,.company-card h3{font-family:Georgia,serif;font-size:19px;font-weight:500;margin:3px 0}.route-visual,.mini-route{align-items:center;background:#f5f7f6;border-radius:8px;display:grid;font-size:8px;font-weight:750;gap:7px;grid-template-columns:1fr auto 1fr;margin:14px 0;padding:10px}.route-visual span:last-child,.mini-route span:last-child{text-align:right}.route-visual i,.mini-route i{color:var(--amber);font-style:normal}.dispatch-card dl,.request-card dl,.maintenance-card dl,.fleet-card dl{display:grid;gap:8px;grid-template-columns:1fr 1fr;margin:13px 0}.dispatch-card dt,.request-card dt,.maintenance-card dt,.fleet-card dt{color:var(--muted);font-size:7px}.dispatch-card dd,.request-card dd,.maintenance-card dd,.fleet-card dd{font-size:8px;font-weight:800;margin:3px 0 0}.dispatch-card>footer,.request-card>footer,.maintenance-card>footer{align-items:center;border-top:1px solid #ebf0ef;display:flex;justify-content:space-between;margin-top:14px;padding-top:12px}.dispatch-card footer small{color:var(--muted);font-size:7px}.client-line{color:#65777a;font-size:8px;margin:4px 0}.vehicle-symbol{align-items:center;background:var(--soft-amber);border-radius:9px;color:var(--amber);display:flex;font-size:16px;height:36px;justify-content:center;width:36px}.fleet-card>p,.company-card>p{color:var(--muted);font-size:8px}.fleet-card dl{border-bottom:1px solid #ebf0ef;border-top:1px solid #ebf0ef;padding:10px 0}.blocked-note{background:var(--soft-red);border-radius:7px;color:#9f3b37;font-size:7px;margin-bottom:10px;padding:8px}.company-card header>span:first-child{align-items:center;background:var(--navy2);border-radius:9px;color:#fff;display:flex;font-size:9px;font-weight:900;height:36px;justify-content:center;width:36px}.company-card footer{align-items:center;border-top:1px solid #ebf0ef;display:flex;justify-content:space-between;margin-top:14px;padding-top:10px}.doc-cell{align-items:center;display:flex;gap:8px;min-width:170px}.doc-cell>span{align-items:center;background:#eef4f2;border-radius:7px;color:#188060;display:flex;font-size:14px;height:30px;justify-content:center;width:30px}.doc-cell b,.doc-cell small{display:block}.doc-cell b{font-size:8px}.doc-cell small{color:var(--muted);font-size:7px;margin-top:2px}.file-link{color:#087b58;display:block;font-size:7px;font-weight:850;max-width:135px;overflow:hidden;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.demo-file{color:var(--muted);font-size:7px}.unverified{color:var(--red);display:block;font-size:6px;margin-top:3px}.alert-hero,.map-banner,.report-hero{align-items:center;background:linear-gradient(125deg,#113b3c,#071f25);border-radius:var(--radius);color:#fff;display:flex;justify-content:space-between;margin-bottom:14px;overflow:hidden;padding:26px 28px;position:relative}.alert-hero h2,.map-banner h2,.report-hero h2{font-family:Georgia,serif;font-size:25px;font-weight:500;margin:0 0 5px}.alert-hero p:not(.kicker),.map-banner p:not(.kicker),.report-hero p:not(.kicker){color:#a7bec0;margin:0}.alert-hero .kicker,.map-banner .kicker,.report-hero .kicker{color:#ff9f57}.alert-stack.full{padding:8px 14px}.alert-stack.full .alert-row{padding:13px 9px}.alert-stack.full .alert-row b{font-size:9px}.map-banner>span{color:rgba(255,255,255,.12);font-size:70px}.tracking-grid{display:grid;gap:13px;grid-template-columns:repeat(2,minmax(0,1fr))}.tracking-card{background:#fff;border:1px solid var(--line);border-radius:13px;display:grid;gap:15px;grid-template-columns:145px 1fr;padding:14px}.map-grid{align-items:center;background-color:#e7ece9;background-image:linear-gradient(45deg,rgba(91,113,113,.13) 25%,transparent 25%),linear-gradient(-45deg,rgba(91,113,113,.13) 25%,transparent 25%);background-size:22px 22px;border-radius:9px;display:flex;flex-direction:column;justify-content:center;min-height:150px}.map-grid span{align-items:center;background:var(--amber);border-radius:50%;box-shadow:0 7px 18px rgba(240,126,47,.25);color:#fff;display:flex;font-size:19px;height:36px;justify-content:center;width:36px}.map-grid b{background:rgba(7,31,37,.78);border-radius:5px;color:#fff;font-size:6px;margin-top:9px;padding:4px 6px}.tracking-card>div:last-child header{align-items:center;display:flex;justify-content:space-between}.tracking-card h3{font-family:Georgia,serif;font-size:19px;font-weight:500;margin:0}.tracking-card p{color:var(--muted);font-size:8px}.tracking-card>div:last-child>b{font-size:8px}.tracking-card footer{align-items:center;border-top:1px solid #ebf0ef;display:flex;justify-content:space-between;margin-top:19px;padding-top:12px}.tracking-card footer small{color:var(--muted);font-size:7px}

/* HSE, cost, reports */
.incident-list{display:grid;gap:9px}.incident-list>article{align-items:center;background:#fff;border:1px solid var(--line);border-radius:11px;display:grid;gap:12px;grid-template-columns:35px 1fr auto;padding:14px}.severity{align-items:center;border-radius:8px;display:flex;font-weight:900;height:34px;justify-content:center;width:34px}.severity-baja{background:var(--soft-green);color:var(--green)}.severity-media{background:var(--soft-amber);color:#bd651b}.severity-alta,.severity-critica{background:var(--soft-red);color:var(--red)}.incident-list small{color:var(--red);font-size:7px;font-weight:900}.incident-list h3{font-size:11px;margin:3px 0}.incident-list p{color:var(--muted);font-size:8px;margin:0 0 3px}.incident-list>article>div:nth-child(2)>b{font-size:7px}.incident-list>article>div:last-child{align-items:flex-end;display:grid;gap:6px;justify-items:end}.cost-metrics{margin-bottom:14px}.cost-bars{display:grid;gap:16px;padding:25px}.cost-bars span{display:flex;justify-content:space-between;margin-bottom:7px}.cost-bars b{font-size:8px}.cost-bars em{color:var(--muted);font-size:8px;font-style:normal}.cost-bars progress{appearance:none;background:#e7eceb;border:0;border-radius:99px;height:7px;overflow:hidden;width:100%}.cost-bars progress::-webkit-progress-bar{background:#e7eceb}.cost-bars progress::-webkit-progress-value{background:linear-gradient(90deg,var(--amber),var(--amber2));border-radius:99px}.report-hero>span{color:rgba(255,255,255,.1);font-size:65px;font-weight:950}.report-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px}.report-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:19px}.report-card>span{align-items:center;background:var(--soft-amber);border-radius:8px;color:#bd5c17;display:flex;font-size:17px;height:36px;justify-content:center;margin-bottom:14px;width:36px}.report-card h3{font-size:14px;margin-bottom:5px}.report-card p{color:var(--muted);font-size:8px;min-height:38px}.backup-panel{align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;display:flex;justify-content:space-between;padding:17px}.backup-panel>div{align-items:center;display:flex;gap:11px}.backup-panel>div>span{align-items:center;background:#e9f1f2;border-radius:8px;color:var(--blue);display:flex;font-size:17px;height:36px;justify-content:center;width:36px}.backup-panel h3{font-size:11px;margin:0 0 3px}.backup-panel p{color:var(--muted);font-size:8px;margin:0}.audit-head>span{background:var(--soft-green);border-radius:99px;color:#087857;font-size:8px;font-weight:850;padding:7px 10px}.audit-panel{padding:15px 24px}.timeline article{display:grid;gap:11px;grid-template-columns:11px 1fr;min-height:66px;position:relative}.timeline article:not(:last-child):after{background:#dce6e4;content:"";height:100%;left:5px;position:absolute;top:13px;width:1px}.timeline article>span{background:var(--amber);border:3px solid #ffeadb;border-radius:50%;height:11px;position:relative;top:2px;width:11px;z-index:1}.timeline b{font-size:9px}.timeline p{color:#526669;font-size:8px;margin:2px 0}.timeline small{color:var(--muted);font-size:7px}

/* Modal and drawer */
.modal{background:#fff;border:0;border-radius:15px;box-shadow:0 30px 90px rgba(7,31,37,.3);max-height:calc(100vh - 30px);max-width:720px;padding:0;width:calc(100% - 30px)}.modal::backdrop{backdrop-filter:blur(3px);background:rgba(4,22,27,.66)}.modal form>header,.drawer-layer aside>header{align-items:center;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:19px 22px}.modal h2,.drawer-layer h2{font-family:Georgia,serif;font-size:21px;font-weight:500;margin:0}.modal-body{max-height:62vh;overflow:auto}.form-grid,.drawer-form{display:grid;gap:14px 13px;grid-template-columns:1fr 1fr;padding:20px 22px}.form-grid label,.drawer-form label,.drawer-area{color:#415659;display:grid;font-size:9px;font-weight:800;gap:6px}.form-grid label.wide,.drawer-form .wide,.drawer-area{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea,.drawer-form input,.drawer-form select,.drawer-form textarea,.drawer-area textarea{background:#fbfdfd;border:1px solid #cad7d5;border-radius:8px;color:var(--ink);min-height:42px;padding:8px 11px;resize:vertical;width:100%}.form-grid textarea,.drawer-form textarea{min-height:75px}.file{background:#f5f8f7;border:1px dashed #b6c9c6;border-radius:9px;padding:12px}.file input{background:#fff;height:auto}.file small{color:var(--muted);font-size:7px;font-weight:500}.checkbox{align-items:center!important;display:flex!important;flex-direction:row!important}.checkbox input{height:17px!important;min-height:0!important;width:17px!important}.form-notice,.eligibility{align-items:center;background:var(--soft-amber);border:1px solid #f0d5b6;border-radius:8px;display:flex;gap:9px;margin:0 22px 18px;padding:9px 11px}.form-notice b,.form-notice span{display:block}.form-notice b{font-size:8px}.form-notice span{color:#8e623c;font-size:7px}.eligibility{background:var(--soft-green);border-color:#c0e7d8;margin:18px 22px 0}.eligibility>span{align-items:center;background:var(--green);border-radius:50%;color:#fff;display:flex;height:27px;justify-content:center;width:27px}.eligibility b{font-size:8px}.eligibility p{color:#4b7969;font-size:7px;margin:2px 0}.modal form>footer{border-top:1px solid var(--line);display:flex;gap:7px;justify-content:flex-end;padding:15px 22px}.drawer-layer{inset:0;pointer-events:none;position:fixed;z-index:80}.drawer-mask{background:rgba(4,22,27,.55);border:0;inset:0;opacity:0;position:absolute;transition:.22s;width:100%}.drawer-layer aside{background:#fff;box-shadow:-20px 0 60px rgba(7,31,37,.22);height:100%;max-width:590px;overflow-y:auto;position:absolute;right:0;transform:translateX(102%);transition:.25s;width:94%}.drawer-layer.open{pointer-events:auto}.drawer-layer.open .drawer-mask{opacity:1}.drawer-layer.open aside{transform:translateX(0)}#drawerBody{padding:20px 22px}.trip-detail>header{background:linear-gradient(135deg,#10383a,#071f25);border-radius:11px;color:#fff;padding:18px}.trip-detail>header h3{font-family:Georgia,serif;font-size:20px;font-weight:500;margin:13px 0 4px}.trip-detail>header h3 i{color:var(--amber);font-style:normal}.trip-detail>header p{color:#b4c6c7;font-size:8px}.trip-detail>header .progress progress{background:#314b4f}.detail-grid{display:grid;grid-template-columns:1fr 1fr;margin:14px 0}.detail-grid>div{background:#f6f8f7;border-bottom:1px solid var(--line);padding:11px}.detail-grid>div:nth-child(odd){border-right:1px solid var(--line)}.detail-grid dt{color:var(--muted);font-size:7px}.detail-grid dd{font-size:8px;font-weight:800;margin:3px 0 0}.resource-check{display:grid;gap:7px;grid-template-columns:1fr 1fr}.resource-check>span{align-items:center;background:#f5f8f7;border-radius:8px;display:flex;gap:7px;padding:8px}.resource-check b{font-size:7px}.drawer-actions{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0}.credential{background:linear-gradient(140deg,#103b3d,#071f25);border-radius:12px;box-shadow:0 13px 30px rgba(7,31,37,.18);color:#fff;overflow:hidden;padding:17px}.credential-top,.credential-top>div{align-items:center;display:flex;justify-content:space-between}.credential-top>div{gap:8px}.credential-top .logo-mark{border-radius:6px;font-size:7px;height:26px;width:26px}.credential-top b{font-size:9px}.credential-main{align-items:center;display:grid;gap:10px;grid-template-columns:48px 1fr 94px;margin:22px 0}.big-avatar{align-items:center;background:rgba(240,126,47,.18);border-radius:10px;color:#ffad72;display:flex;font-size:14px;font-weight:900;height:48px;justify-content:center;width:48px}.credential-main small{color:#77c8ad;font-size:6px;font-weight:900;letter-spacing:.09em}.credential-main h3{font-family:Georgia,serif;font-size:17px;font-weight:500;margin:3px 0}.credential-main p{color:#adc1c2;font-size:7px;margin:0}.credential-main img{background:#fff;border-radius:7px;height:92px;padding:5px;width:92px}.credential>footer{align-items:center;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;padding-top:10px}.credential>footer b{color:#ff9e59;font-size:9px}.credential>footer span{color:#80999b;font-size:6px}.related-docs{border:1px solid var(--line);border-radius:10px;overflow:hidden}.related-docs>header{border-bottom:1px solid var(--line);padding:12px}.related-docs h3{font-size:11px;margin:0}.related-docs article{align-items:center;border-bottom:1px solid #eaf0ef;display:grid;gap:8px;grid-template-columns:8px 1fr auto;padding:10px 12px}.related-docs article:last-child{border:0}.doc-dot{background:var(--muted);border-radius:50%;height:7px;width:7px}.doc-dot.habilitado{background:var(--green)}.doc-dot.por_vencer{background:var(--amber)}.doc-dot.bloqueado{background:var(--red)}.related-docs b,.related-docs small{display:block}.related-docs b{font-size:8px}.related-docs small{color:var(--muted);font-size:7px;margin-top:2px}.request-detail>h3,.maintenance-detail>h3,.incident-detail>h3{font-family:Georgia,serif;font-size:21px;font-weight:500;margin:14px 0 4px}.request-detail>p,.maintenance-detail>p,.incident-detail>p{color:var(--muted);font-size:9px}.detail-route{align-items:center;background:#f5f8f7;border-radius:8px;display:grid;font-size:8px;font-weight:800;gap:8px;grid-template-columns:1fr auto 1fr;margin:15px 0;padding:12px}.detail-route span:last-child{text-align:right}.detail-route i{color:var(--amber);font-style:normal}.detail-note{background:#f5f8f7;border-radius:8px;color:#4c6063!important;padding:11px}.status-buttons{display:flex;flex-wrap:wrap;gap:5px;margin:14px 0}.drawer-area{margin:14px 0}.toast{background:var(--green);border-radius:8px;bottom:20px;box-shadow:var(--shadow);color:#fff;font-size:9px;font-weight:850;left:50%;max-width:calc(100% - 30px);opacity:0;padding:11px 15px;pointer-events:none;position:fixed;transform:translate(-50%,12px);transition:.2s;z-index:120}.toast.show{opacity:1;transform:translate(-50%,0)}.toast.error{background:#a83e39}

/* Conevial: obras, portafolio e inspecciones ISO */
.profile>.profile-action{background:none;border:0;color:#779092;cursor:pointer;font-size:13px;margin-left:auto;padding:3px}.profile>.profile-action:hover{color:#fff}.profile form{margin-left:0}
.status-cerrada,.status-activo,.status-conforme{background:var(--soft-green);color:#087656}.status-planificacion,.status-observada{background:var(--soft-amber);color:#aa5b18}.status-no_conforme{background:var(--soft-red);color:#a43b36}.status-en_correccion,.status-pausado{background:var(--soft-blue);color:#216f91}.status-finalizado{background:#e8eceb;color:#526564}
.project-hero,.inspection-hero{align-items:center;background:linear-gradient(125deg,#24413e,#142625);border-radius:var(--radius);color:#fff;display:grid;gap:22px;grid-template-columns:1fr auto auto;margin-bottom:14px;padding:24px 27px}.project-hero h2,.inspection-hero h2{font-family:Georgia,serif;font-size:25px;font-weight:500;margin:0 0 5px}.project-hero p:not(.kicker),.inspection-hero p:not(.kicker){color:#afc3bf;margin:0}.project-hero>div:nth-child(2){min-width:180px}.project-hero>div:nth-child(2)>small{color:#88a39d;display:block;font-size:7px;font-weight:900;letter-spacing:.1em}.project-hero>div:nth-child(2)>b{display:block;font-family:Georgia,serif;font-size:25px;font-weight:500;margin:3px 0}.project-grid{display:grid;gap:13px;grid-template-columns:repeat(3,minmax(0,1fr))}.project-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:18px}.project-card header{align-items:center;display:flex;justify-content:space-between}.project-card>small{color:var(--amber);display:block;font-size:7px;font-weight:900;letter-spacing:.06em;margin-top:13px}.project-card h3{font-family:Georgia,serif;font-size:18px;font-weight:500;margin:5px 0}.project-card>p{color:var(--muted);font-size:8px;margin-bottom:10px}.project-location{background:#f3f7f5;border-radius:7px;color:#49615d;font-size:8px;margin:10px 0;padding:9px}.project-card>.progress{margin:14px 0}.project-card dl{border-top:1px solid var(--line);display:grid;gap:10px;grid-template-columns:1fr 1fr;margin:14px 0 12px;padding-top:12px}.project-card dt{color:var(--muted);font-size:7px}.project-card dd{font-size:8px;font-weight:800;margin:3px 0 0}.project-unit{align-items:center;background:#e9f4ef;border-radius:8px;color:#15785f;display:inline-flex;font-size:7px;font-weight:950;height:31px;justify-content:center;letter-spacing:.04em;min-width:38px;padding:0 8px;text-transform:uppercase}.unit-construccion{background:var(--soft-amber);color:#ae5818}.unit-concesion_vial{background:var(--soft-blue);color:#246f89}.project-stack{padding:4px 10px}.project-row{align-items:center;background:none;border:0;border-bottom:1px solid #ebf0ef;cursor:pointer;display:grid;gap:10px;grid-template-columns:43px minmax(0,1fr) minmax(115px,170px) 12px;padding:12px 8px;text-align:left;width:100%}.project-row:last-child{border-bottom:0}.project-row:hover{background:#fafcfc}.project-row>div:nth-child(2) small{color:var(--amber);display:block;font-size:6px;font-weight:900;letter-spacing:.06em}.project-row>div:nth-child(2) b{display:block;font-size:9px;margin:3px 0}.project-row>div:nth-child(2) p,.project-row>div:nth-child(3)>small{color:var(--muted);font-size:7px;margin:0}.project-row>div:nth-child(3)>small{display:block;margin-top:5px;text-align:right}.project-detail>header{background:linear-gradient(135deg,#284844,#142625);border-radius:11px;color:#fff;padding:18px}.project-detail>header h3{font-family:Georgia,serif;font-size:21px;font-weight:500;margin:14px 0 4px}.project-detail>header p{color:#b5c9c5;font-size:8px}.project-detail>header .progress{margin-top:15px}.project-progress-edit{background:#f4f7f6;border:1px solid var(--line);border-radius:9px;margin:13px 0;padding:12px}.project-progress-edit label{color:#415659;display:grid;font-size:8px;font-weight:800;gap:6px}.project-progress-edit input{background:#fff;border:1px solid #cad7d5;border-radius:7px;min-height:38px;padding:7px 10px;width:100%}
.inspection-summary{display:flex;gap:11px}.inspection-summary span{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.09);border-radius:9px;min-width:110px;padding:9px 12px}.inspection-summary small{color:#9cb3af;display:block;font-size:6px;font-weight:900;letter-spacing:.08em}.inspection-summary b{display:block;font-family:Georgia,serif;font-size:22px;font-weight:500;margin-top:3px}.inspection-list{display:grid;gap:9px}.inspection-card{align-items:center;background:#fff;border:1px solid var(--line);border-left:4px solid var(--green);border-radius:11px;display:grid;gap:13px;grid-template-columns:52px minmax(0,1fr) auto;padding:14px}.inspection-card.result-observada{border-left-color:var(--amber)}.inspection-card.result-no_conforme{border-left-color:var(--red)}.inspection-score{align-items:center;background:var(--soft-green);border-radius:10px;color:#107358;display:flex;font-family:Georgia,serif;font-size:19px;height:46px;justify-content:center;width:46px}.result-observada .inspection-score{background:var(--soft-amber);color:#a75a19}.result-no_conforme .inspection-score{background:var(--soft-red);color:#a43b36}.inspection-card>div:nth-child(2)>small{color:var(--amber);font-size:7px;font-weight:900}.inspection-card h3{font-size:11px;margin:3px 0}.inspection-card p{color:var(--muted);font-size:8px;margin:0 0 3px}.inspection-card>div:nth-child(2)>b{font-size:7px}.inspection-card>div:last-child{align-items:flex-end;display:grid;gap:5px;justify-items:end}.inspection-card>div:last-child>small{color:var(--muted);font-size:7px}.inspection-detail h3{font-family:Georgia,serif;font-size:21px;font-weight:500;margin:14px 0 4px}.inspection-detail>p{color:var(--muted);font-size:9px}.inspection-detail h4{font-size:9px;margin:16px 0 6px}

@keyframes spin{to{transform:rotate(360deg)}}
.telematics-link{text-decoration:none}
@media(max-width:1240px){.metrics{grid-template-columns:repeat(3,1fr)}.metrics .metric:nth-child(4),.metrics .metric:nth-child(5){grid-column:span 1}.dispatch-grid,.card-grid,.fleet-grid,.company-grid{grid-template-columns:repeat(2,1fr)}.report-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:920px){.app-shell{display:block}.sidebar{transform:translateX(-103%);transition:.23s}.sidebar.open{transform:translateX(0)}.sidebar-mask{background:rgba(4,22,27,.55);border:0;inset:0;opacity:0;pointer-events:none;position:fixed;transition:.2s;z-index:45}.menu-open .sidebar-mask{display:block;opacity:1;pointer-events:auto}.workspace{display:block}.menu-button{display:block}.global-search{width:180px}.login-layout{grid-template-columns:1fr}.login-story{display:none}.login-access{min-height:100vh}.mobile-logo{display:flex}}
@media(max-width:700px){.content{padding:17px 12px 35px}.topbar{height:70px;padding:0 12px}.page-title h1{font-size:17px}.hide-mobile,.live{display:none}.global-search{max-width:165px;width:30vw}.dashboard-intro,.actionbar,.audit-head{align-items:flex-start;flex-direction:column;gap:11px}.actionbar>div:last-child{width:100%}.metrics{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.dispatch-grid,.card-grid,.fleet-grid,.company-grid,.tracking-grid,.report-grid{grid-template-columns:1fr}.dispatch-head,.hse-head,.alert-hero,.map-banner,.report-hero{align-items:flex-start;flex-direction:column;gap:15px;padding:21px}.report-hero>span,.map-banner>span{display:none}.tracking-card{grid-template-columns:115px 1fr}.form-grid,.drawer-form{grid-template-columns:1fr}.form-grid label.wide,.drawer-form .wide{grid-column:auto}.incident-list>article{grid-template-columns:34px 1fr}.incident-list>article>div:last-child{align-items:flex-start;grid-column:2;justify-items:start}.credential-main{grid-template-columns:43px 1fr 82px}.credential-main img{height:80px;width:80px}.resource-check{grid-template-columns:1fr}}
@media(max-width:440px){.hide-small{display:none}.global-search{display:none}.top-actions .button.primary{min-width:37px;padding:8px}.metrics{grid-template-columns:1fr}.restriction-banner{align-items:flex-start}.restriction-banner button{display:none}.tracking-card{grid-template-columns:1fr}.map-grid{min-height:120px}.detail-grid{grid-template-columns:1fr}.detail-grid>div:nth-child(odd){border-right:0}.login-access{padding:13px}.login-card{border-radius:16px;padding:29px 22px}.credential-main{grid-template-columns:1fr}.credential-main img{height:94px;width:94px}.drawer-layer aside{width:100%}}
.tracking-share{background:linear-gradient(130deg,#eaf6f1,#f7fbf9);border:1px solid #b9ded0;border-radius:11px;margin:13px 0;padding:13px}.tracking-share-status{align-items:center;display:flex;gap:11px}.tracking-share-icon{align-items:center;background:#dce7e4;border-radius:50%;color:#60777a;display:flex;font-size:16px;height:39px;justify-content:center;width:39px}.tracking-share-icon.on{animation:pulse-gps 1.8s infinite;background:#d9f3e9;color:#087653}.tracking-share-status small{color:#66817c;display:block;font-size:6px;font-weight:950;letter-spacing:.1em}.tracking-share-status b{display:block;font-size:9px;margin:2px 0}.tracking-share-status p{color:#718487;font-size:7px;margin:0}.tracking-share .drawer-actions{border-top:1px solid #d5e8e1;margin-top:11px;padding-top:10px}.button.whatsapp,.mini-button.whatsapp{background:#168b62;border-color:#168b62;color:#fff}.tracking-pill{align-items:center;background:#edf1f0;border-radius:999px;color:#667b7e;display:inline-flex;font-size:6px;font-weight:900;gap:4px;padding:5px 7px;text-transform:uppercase}.tracking-pill i{background:#849596;border-radius:50%;height:5px;width:5px}.tracking-pill.on{background:#dcf3ea;color:#087653}.tracking-pill.on i{animation:pulse-gps 1.8s infinite;background:#16835f}.tracking-card-actions{align-items:center;display:flex;gap:5px}@keyframes pulse-gps{0%{box-shadow:0 0 0 0 rgba(22,131,95,.3)}70%{box-shadow:0 0 0 7px rgba(22,131,95,0)}100%{box-shadow:0 0 0 0 rgba(22,131,95,0)}}
@media(max-width:440px){.tracking-share .drawer-actions{align-items:stretch;flex-direction:column}.tracking-share .drawer-actions .button{width:100%}.tracking-card footer{align-items:flex-start;flex-direction:column;gap:8px}.tracking-card-actions{width:100%}.tracking-card-actions>*{flex:1}}
@media(max-width:1240px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.project-hero,.inspection-hero{align-items:flex-start;grid-template-columns:1fr;padding:21px}.project-grid{grid-template-columns:1fr}.project-row{grid-template-columns:40px minmax(0,1fr) 12px}.project-row>div:nth-child(3){display:none}.inspection-summary{width:100%}.inspection-summary span{flex:1;min-width:0}.inspection-card{grid-template-columns:46px 1fr}.inspection-card>div:last-child{align-items:flex-start;grid-column:2;justify-items:start}}
@media(max-width:440px){.project-card dl{grid-template-columns:1fr}.inspection-summary{flex-direction:column}.inspection-card{grid-template-columns:1fr}.inspection-card>div:last-child{grid-column:1}.inspection-score{height:40px;width:40px}}
@media print{body.printing *{visibility:hidden!important}body.printing #printCredential,body.printing #printCredential *{visibility:visible!important}body.printing #printCredential{left:15mm;position:fixed;top:15mm;width:175mm;-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* Conevial360: identidad y tipografía de alta legibilidad */
:root{font-family:"Segoe UI Variable","Aptos","Segoe UI",Roboto,Helvetica,Arial,sans-serif}
body{font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.login-brand strong{color:#fff}.login-brand em,.brand em,.mobile-logo em{color:var(--amber2);font-style:normal}.mobile-logo strong{color:var(--navy)}
button,input,select,textarea{font-family:inherit;font-size:13px}.brand{height:82px}.brand strong{font-size:20px;font-weight:780;letter-spacing:-.02em}.brand small{color:#fff;font-size:9px;font-weight:700;letter-spacing:.045em;line-height:1.3;max-width:158px;opacity:.96;white-space:normal}.sidebar nav{padding-bottom:18px}.sidebar-footer{margin-top:20px;padding:14px 0 3px}.connection b,.profile b{font-size:10px}.connection small,.profile small{color:#8ea4a6;font-size:9px}.avatar{font-size:10px}.nav-item{font-size:12px;font-weight:720;min-height:40px}.sidebar nav>p{color:#7f999b;font-size:9px}.page-title p{font-size:9px}.page-title h1{font-size:23px}.kicker{font-size:10px}.button,.text-button,.link-button{font-size:11px}.mini-button{font-size:10px}.global-search input{font-size:11px}.live{font-size:9px}.content{color:#172929}.content p,#drawerBody p{font-size:10.5px}.content small,#drawerBody small{font-size:9px!important}.content dt,#drawerBody dt{font-size:9px!important}.content dd,#drawerBody dd{font-size:10.5px!important}.content h3,#drawerBody h3{line-height:1.3}.status,.priority{font-size:9px}.form-grid label,.drawer-form label,.drawer-area,.login-card label{font-size:11px}.form-grid input,.form-grid select,.form-grid textarea,.drawer-form input,.drawer-form select,.drawer-form textarea,.drawer-area textarea,.login-card input{font-size:13px}.modal h2,.drawer-layer h2{font-size:23px}.toast{font-size:11px}.tracking-share-status small,.tracking-pill{font-size:8px}.tracking-share-status b{font-size:11px}.tracking-share-status p{font-size:9px}

/* Conevial360 3.3: tipografía profesional, menú compacto y acciones seguras */
body{color:#1d3032;font-family:"Segoe UI Variable Text","Aptos","Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5}
b,strong{font-weight:650}h1,h2,h3,.page-title h1,.dashboard-intro h2,.actionbar h2,.dispatch-head h2,.hse-head h2,.audit-head h2,.metric strong,.finance-summary b,.project-hero h2,.inspection-hero h2,.modal h2,.drawer-layer h2{font-family:"Segoe UI Variable Display","Aptos Display","Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:650;letter-spacing:-.018em}
.brand{height:70px}.brand strong{font-size:19px;font-weight:750}.brand small{font-size:9px}.sidebar nav{padding:7px 11px 9px}.sidebar nav>p{font-size:9px;margin:9px 10px 4px}.nav-item{font-size:11.5px;font-weight:600;gap:8px;margin:1px 0;min-height:31px;padding:4px 9px}.nav-item>span{font-size:14px;height:18px;width:18px}.nav-item.active:before{height:20px}.nav-item em{font-size:8.5px}.sidebar-footer{margin-top:8px;padding:8px 0 2px}.connection{padding:7px 8px}.profile{margin-top:6px;padding:8px 3px}.profile b,.connection b{font-size:10px}.profile small,.connection small{font-size:9px}.avatar{height:29px;width:29px}
.content p,#drawerBody p{font-size:12px}.content small,#drawerBody small{font-size:10.5px!important}.content dt,#drawerBody dt{font-size:10.5px!important}.content dd,#drawerBody dd{font-size:12px!important}.content h3,#drawerBody h3{font-weight:650}.kicker{font-size:9.5px;font-weight:700;letter-spacing:.12em}.button,.text-button,.link-button{font-size:11.5px;font-weight:650}.mini-button{font-size:10.5px;font-weight:650}.status,.priority{font-size:9.5px;font-weight:650}.panel h3{font-size:16px}.metric p,.metric small{font-size:10px}.metric strong{font-size:25px}.route-row>div:nth-child(2) b,.alert-row b,.timeline b{font-size:11.5px}.route-row>div:nth-child(2) small,.route-state small,.alert-row p,.timeline p,.timeline small{font-size:10px!important}th{font-size:9.5px;font-weight:650}td,td>b,.entity b{font-size:11.5px}td>small,.entity small{font-size:10px}.dispatch-card header small,.request-card header small,.maintenance-card header small,.fleet-card>small,.company-card>small,.project-card>small{font-size:10px!important}.dispatch-card dt,.request-card dt,.maintenance-card dt,.fleet-card dt,.project-card dt{font-size:10.5px!important}.dispatch-card dd,.request-card dd,.maintenance-card dd,.fleet-card dd,.project-card dd{font-size:12px!important}.client-line,.fleet-card>p,.company-card>p,.project-card>p{font-size:11.5px!important}.form-grid label,.drawer-form label,.drawer-area,.login-card label{font-size:11.5px;font-weight:650}
.content b,.content strong,#drawerBody b,#drawerBody strong{font-weight:650}.progress b{font-size:10px}.data-time{font-size:10px}.data-time b{font-size:11px}.tracking-pill{font-size:10px;font-weight:650}.blocked-note,.file-link,.demo-file,.unverified{font-size:10px}.project-unit{font-size:9.5px;font-weight:650}.project-row>div:nth-child(2) b{font-size:11px}.incident-list>article>div:nth-child(2)>b,.inspection-card>div:nth-child(2)>b,.resource-check b{font-size:10.5px}.cost-bars b,.cost-bars em,.audit-head>span{font-size:10.5px}.credential-top b,.credential>footer b,.related-docs b{font-size:11px}
.button.danger{background:#fff;border-color:#e3aaa6;color:#a33c37}.button.danger:hover{background:#fff3f2;border-color:#cf6a64}.delete-zone{align-items:center;background:#fff7f6;border:1px solid #efc8c4;border-radius:11px;display:flex;gap:16px;justify-content:space-between;margin-top:20px;padding:14px}.delete-zone b{color:#8f3531;font-size:12px}.delete-zone p{color:#815d5a;font-size:10.5px!important;margin:3px 0 0}.delete-zone .button{flex:0 0 auto}.related-docs .row-actions small{margin:0}.related-docs .row-actions .icon-button{height:27px;width:27px}
@media(max-height:850px) and (min-width:921px){.brand{height:62px}.sidebar nav{padding-top:5px}.sidebar nav>p{margin-top:6px}.nav-item{min-height:29px}.sidebar-footer{margin-top:5px}.connection{padding:6px}.profile{padding:6px 3px}}
@media(max-width:700px){.delete-zone{align-items:stretch;flex-direction:column}.delete-zone .button{width:100%}}

/* Via360 3.4: temas, tipografía abierta y tableros sin desborde horizontal */
:root{--font-ui:"Segoe UI Variable Text","Aptos","Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-display:"Segoe UI Variable Display","Aptos Display","Segoe UI",Roboto,Helvetica,Arial,sans-serif}
html[data-font="humanista"]{--font-ui:"Trebuchet MS","Segoe UI",Arial,sans-serif;--font-display:"Trebuchet MS","Segoe UI",Arial,sans-serif}
html[data-font="tecnica"]{--font-ui:"Arial Nova","Noto Sans",Arial,sans-serif;--font-display:"Arial Nova","Noto Sans",Arial,sans-serif}
html[data-theme="azul"]{--ink:#193044;--muted:#667b89;--line:#d7e2e9;--canvas:#f2f6f9;--navy:#102b46;--navy2:#1b4568;--amber:#337fca;--amber2:#66a9ea;--green:#16856f;--soft-amber:#e8f2fc;--soft-blue:#e6f1fa}
html[data-theme="grafito"]{--ink:#252e34;--muted:#6d787e;--line:#dce1e4;--canvas:#f2f3f4;--navy:#20262b;--navy2:#353e45;--amber:#e16f32;--amber2:#f2955f;--green:#20876e}
html[data-theme="claro"]{--ink:#243437;--muted:#6d7d80;--line:#dbe4e2;--canvas:#fafbfa;--navy:#29413f;--navy2:#3f5d59;--amber:#e56f2a;--amber2:#f39450;--green:#18836b}
html,body,.app-page{max-width:100%;overflow-x:hidden}body,button,input,select,textarea{font-family:var(--font-ui)}h1,h2,h3,.page-title h1,.dashboard-intro h2,.actionbar h2,.dispatch-head h2,.hse-head h2,.audit-head h2,.metric strong,.finance-summary b,.project-hero h2,.inspection-hero h2,.modal h2,.drawer-layer h2{font-family:var(--font-display);font-weight:610;letter-spacing:-.012em}
b,strong,.content b,.content strong,#drawerBody b,#drawerBody strong{font-weight:610}.button,.mini-button,.text-button,.link-button{border-radius:10px;font-family:var(--font-ui);font-stretch:normal;font-weight:560;letter-spacing:.005em;line-height:1.35}.button{font-size:12px;min-height:41px;padding:9px 15px}.mini-button{font-size:11px;min-height:35px;padding:7px 10px}.text-button,.link-button{font-size:12px}.status,.priority{font-weight:580}.top-actions .button{min-height:39px}.login-brand{flex-wrap:wrap}.login-brand>small{color:#a9bdbe;font-size:12px;letter-spacing:.05em;width:100%}
.dashboard-grid{grid-template-columns:minmax(0,1fr) minmax(235px,285px)}.dashboard-grid>*{min-width:0}.dashboard-grid .table-wrap{max-width:100%;overflow-x:hidden}.compact-dashboard-table{min-width:0;table-layout:fixed}.compact-dashboard-table th,.compact-dashboard-table td{padding-left:10px;padding-right:10px;white-space:normal}.compact-dashboard-table th:nth-child(2),.compact-dashboard-table td:nth-child(2),.compact-dashboard-table th:nth-child(6),.compact-dashboard-table td:nth-child(6),.compact-dashboard-table th:nth-child(8),.compact-dashboard-table td:nth-child(8){display:none}.compact-dashboard-table th:nth-child(1){width:18%}.compact-dashboard-table th:nth-child(3){width:25%}.compact-dashboard-table th:nth-child(4){width:23%}.compact-dashboard-table th:nth-child(5){width:19%}.compact-dashboard-table th:nth-child(7){width:15%}.finance-summary{padding:12px}.finance-summary span{gap:8px;padding:11px 3px}.finance-summary small{font-size:10px!important}
.template-hero,.appearance-hero{align-items:center;background:linear-gradient(125deg,var(--navy2),var(--navy));border-radius:var(--radius);color:#fff;display:flex;gap:24px;justify-content:space-between;margin-bottom:16px;padding:25px 28px}.template-hero h2,.appearance-hero h2{font-size:26px;margin:0 0 5px}.template-hero p:not(.kicker),.appearance-hero p:not(.kicker){color:#bbcdca;margin:0;max-width:780px}.template-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.template-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.template-card.inactive{opacity:.72}.template-card header,.template-card footer{align-items:center;display:flex;gap:12px;justify-content:space-between}.template-card header small{color:var(--amber);display:block;font-size:10px!important}.template-card h3{font-size:18px;margin:3px 0}.template-card>p{color:var(--muted);margin:12px 0}.template-steps{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.template-steps span{align-items:center;background:#f3f6f5;border:1px solid var(--line);border-radius:999px;display:flex;font-size:11px;gap:6px;padding:6px 9px}.template-steps b{color:var(--amber)}.template-card footer{border-top:1px solid var(--line);padding-top:13px}.template-card footer>div{display:flex;gap:6px}.template-builder{border:1px solid var(--line);border-radius:12px;margin-top:18px;padding:14px}.template-builder>header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.template-builder header b,.template-builder header small{display:block}.template-builder header small{color:var(--muted);margin-top:2px}.template-step-row{align-items:end;background:#f7f9f8;border:1px solid #e2e9e7;border-radius:10px;display:grid;gap:9px;grid-template-columns:28px minmax(180px,1fr) 100px 150px 32px;margin-top:8px;padding:10px}.template-step-row label{display:grid;gap:5px}.template-step-row label>span{color:var(--muted);font-size:10px}.template-step-row input,.template-step-row select{background:#fff;border:1px solid #cad7d5;border-radius:8px;height:39px;min-width:0;padding:0 10px;width:100%}.step-order{align-items:center;background:var(--soft-amber);border-radius:50%;color:var(--amber);display:flex;font-size:11px;font-weight:700;height:27px;justify-content:center;margin-bottom:6px;width:27px}
.progress-history{border-top:1px solid var(--line);margin-top:18px;padding-top:15px}.progress-history>header{display:flex;justify-content:space-between}.progress-history>header small{color:var(--amber)}.progress-history article{align-items:start;border-bottom:1px solid #e9efed;display:grid;gap:10px;grid-template-columns:45px 1fr;padding:11px 0}.progress-history article>span{background:var(--soft-amber);border-radius:8px;color:var(--amber);font-size:11px;font-weight:650;padding:7px;text-align:center}.progress-history article small{color:var(--muted);display:block}.progress-history article p{margin:3px 0 0}
.appearance-section{background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:14px;padding:20px}.appearance-section>h3{font-size:17px;margin:0 0 14px}.theme-options,.font-options{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.theme-option,.font-option{background:#fff;border:1px solid var(--line);border-radius:12px;cursor:pointer;display:grid;gap:5px;min-height:120px;padding:14px;text-align:left}.theme-option:hover,.font-option:hover,.theme-option.selected,.font-option.selected{border-color:var(--amber);box-shadow:0 0 0 3px color-mix(in srgb,var(--amber) 13%,transparent)}.theme-option>i{background:#f4f6f5;border-radius:8px;display:flex;height:45px;overflow:hidden}.theme-option>i span:first-child{background:#142625;width:30%}.theme-option>i span:nth-child(2){background:#ed7128;width:12%}.theme-option>i span:last-child{background:#f4f6f4;flex:1}.theme-preview-azul>i span:first-child{background:#102b46}.theme-preview-azul>i span:nth-child(2){background:#337fca}.theme-preview-grafito>i span:first-child{background:#20262b}.theme-preview-grafito>i span:nth-child(2){background:#e16f32}.theme-preview-claro>i span:first-child{background:#29413f}.theme-preview-claro>i span:nth-child(2){background:#e56f2a}.theme-option b,.font-option b{font-size:13px}.theme-option small,.font-option small{color:var(--muted)}.font-options{grid-template-columns:repeat(3,minmax(0,1fr))}.font-option{align-items:center;grid-template-columns:55px 1fr;min-height:95px}.font-option strong{font-size:27px}.font-preview-humanista{font-family:"Trebuchet MS","Segoe UI",sans-serif}.font-preview-tecnica{font-family:"Arial Nova","Noto Sans",Arial,sans-serif}.font-option span b,.font-option span small{display:block}
@media(max-width:1180px){.dashboard-grid{grid-template-columns:1fr}.dashboard-grid .compact-dashboard-table th:nth-child(2),.dashboard-grid .compact-dashboard-table td:nth-child(2){display:table-cell}.compact-dashboard-table th:nth-child(1){width:16%}.compact-dashboard-table th:nth-child(2){width:18%}.compact-dashboard-table th:nth-child(3){width:22%}.compact-dashboard-table th:nth-child(4){width:20%}.compact-dashboard-table th:nth-child(5){width:14%}.compact-dashboard-table th:nth-child(7){width:10%}.template-step-row{grid-template-columns:28px minmax(150px,1fr) 90px 130px 32px}}
@media(max-width:820px){.template-grid,.theme-options,.font-options{grid-template-columns:1fr 1fr}.template-step-row{align-items:stretch;grid-template-columns:28px 1fr 32px}.template-step-row label{grid-column:2}.template-step-row .step-percent{grid-column:2}.template-step-row .icon-button{grid-column:3;grid-row:1}.template-hero,.appearance-hero{align-items:flex-start;flex-direction:column}.compact-dashboard-table th:nth-child(2),.compact-dashboard-table td:nth-child(2),.compact-dashboard-table th:nth-child(5),.compact-dashboard-table td:nth-child(5){display:none}.compact-dashboard-table th:nth-child(1){width:22%}.compact-dashboard-table th:nth-child(3){width:32%}.compact-dashboard-table th:nth-child(4){width:28%}.compact-dashboard-table th:nth-child(7){width:18%}}
@media(max-width:560px){.template-grid,.theme-options,.font-options{grid-template-columns:1fr}.compact-dashboard-table th:nth-child(3),.compact-dashboard-table td:nth-child(3){display:none}.compact-dashboard-table th:nth-child(1){width:32%}.compact-dashboard-table th:nth-child(4){width:43%}.compact-dashboard-table th:nth-child(7){width:25%}}
