:root{--navy:#1c3d5a;--navy2:#122e45;--blue:#1a78a8;--sky:#50cafc;--orange:#e79e4f;--bg:#f2f5f7;--ink:#172b3a;--muted:#667985;--line:#dce5ea;--danger:#a52e2e}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif}a{color:inherit}.brand{display:inline-block;color:#fff;font-size:36px;font-weight:800;text-decoration:none;letter-spacing:-2px}.brand span{color:var(--orange)}.brand.small{font-size:25px;margin-right:18px}.eyebrow{font-weight:800;letter-spacing:2px;color:var(--orange);font-size:11px}.login-page{min-height:100vh;background:linear-gradient(130deg,#112f47 0,#1e5574 52%,#eef4f7 52%)}.login-shell{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:8vw;max-width:1160px;min-height:100vh;margin:auto;padding:48px}.login-brand{color:#fff}.login-brand h1{font-size:clamp(38px,5vw,68px);line-height:1.04;max-width:680px;margin:25px 0}.login-brand>p:not(.eyebrow){font-size:18px;line-height:1.7;max-width:620px;color:#d9e7ef}.login-brand li{margin:14px 0}.login-card{background:#fff;border-radius:22px;padding:42px;box-shadow:0 30px 70px #0d2b3f42}.login-card h2{font-size:30px;margin:30px 0 5px}.muted,.help,.page-head p{color:var(--muted)}.back{color:var(--blue);text-decoration:none;font-weight:700}.login-card label{display:block;font-weight:700;margin:20px 0 7px}.login-card input{width:100%;height:50px;border:1px solid #cbd8df;border-radius:9px;padding:0 14px;font-size:16px}.login-card input:focus{outline:3px solid #4dc8f43b;border-color:var(--blue)}button{width:100%;height:52px;border:0;border-radius:9px;background:var(--navy);color:#fff;font-size:16px;font-weight:800;margin-top:26px;cursor:pointer}button:hover{background:#205476}.alert,.notice{padding:13px 15px;border-radius:8px;margin:18px 0}.alert{background:#fff0f0;color:var(--danger);border:1px solid #efc8c8}.notice{background:#eef8fd;color:#17648b;border:1px solid #cae7f5}.help{text-align:center;font-size:13px;margin:22px 0 0}.topbar{height:70px;background:linear-gradient(90deg,var(--navy2),var(--navy));color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:3;box-shadow:0 3px 14px #0c2b3d38}.topbar>div{display:flex;align-items:center}.portal-name{font-weight:500;border-left:1px solid #ffffff42;padding-left:18px}.user{gap:18px}.user a{background:#ffffff18;border:1px solid #ffffff42;padding:9px 13px;border-radius:8px;text-decoration:none}.app-shell{display:grid;grid-template-columns:255px 1fr;min-height:calc(100vh - 70px)}.sidebar{background:linear-gradient(180deg,#173b57,#102f47);color:#fff;padding:25px 14px}.client-card{display:flex;gap:12px;align-items:center;background:#ffffff12;border:1px solid #ffffff1f;border-radius:10px;padding:15px;margin-bottom:24px}.client-card>i{font-size:22px;color:var(--sky)}.client-card small,.client-card b{display:block}.client-card small{color:#a9c6d7;font-size:10px;text-transform:uppercase;letter-spacing:1px}.client-card b{font-size:13px;margin-top:3px}.menu-title{font-size:10px;color:#87abc1;letter-spacing:1.5px;font-weight:800;padding:0 12px}.sidebar a{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:8px;text-decoration:none;padding:13px 14px;margin:5px 0;border-radius:8px;color:#cde0eb;font-weight:600}.sidebar a i{color:#7dccec}.sidebar a em{font-style:normal}.sidebar a:hover,.sidebar a.active{background:#ffffff18;color:#fff}.sidebar a.active{box-shadow:inset 3px 0 var(--orange)}.sidebar a span{background:#ffffff18;border-radius:20px;padding:2px 8px;font-size:11px}.content{padding:34px 38px;min-width:0;max-width:1500px;width:100%;margin:0 auto}.page-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}.page-head h1{font-size:34px;margin:4px 0}.page-head p{margin:0}.return-dashboard{background:#fff;border:1px solid var(--line);padding:10px 14px;border-radius:8px;text-decoration:none;color:var(--blue);font-weight:700}.welcome-panel{display:flex;align-items:center;justify-content:space-between;color:#fff;background:linear-gradient(120deg,var(--navy),#2479a2);border-radius:15px;padding:28px 34px;margin-bottom:24px;box-shadow:0 12px 28px #17395522;overflow:hidden}.welcome-panel h1{font-size:30px;margin:5px 0 8px}.welcome-panel p:last-child{color:#d8eaf3;margin:0;max-width:780px;line-height:1.55}.welcome-panel .eyebrow{color:#ffd39f}.welcome-mark{font-size:74px;color:#ffffff20;padding:0 22px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:34px}.stats a{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;text-decoration:none;box-shadow:0 5px 18px #1739550b;position:relative;overflow:hidden}.stats a:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--blue)}.stats .stat-deliveries:before{background:#26a99a}.stats .stat-invoices:before{background:var(--orange)}.stats .stat-pending:before{background:#925ca8}.stat-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:10px;background:#e9f5fb;color:var(--blue);font-size:19px;flex:0 0 auto}.stat-deliveries .stat-icon{background:#e7f7f4;color:#168c80}.stat-invoices .stat-icon{background:#fff3e5;color:#c87927}.stat-pending .stat-icon{background:#f3eafa;color:#7d4a91}.stats small,.stats span{display:block;color:var(--muted)}.stats small{text-transform:uppercase;letter-spacing:.6px;font-size:10px;font-weight:800}.stats strong{font-size:29px;display:block;margin:5px 0;color:var(--navy)}.stats strong.money{font-size:20px}.stats span{font-size:11px}.section-title{display:flex;justify-content:space-between;align-items:end;margin:0 0 14px}.section-title h2{margin:3px 0}.section-title p{margin:0}.section-title a{color:var(--blue);font-weight:700;text-decoration:none;font-size:13px}.table-card{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 5px 18px #1739550b}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:15px 18px;text-align:left;border-bottom:1px solid #edf1f3;white-space:nowrap}th{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);background:#f8fafb}td small{display:block;color:var(--muted);margin-top:3px}.num{text-align:right}.status{display:inline-block;background:#eaf6ef;color:#227347;border-radius:20px;padding:5px 10px;font-size:12px;font-weight:700}.empty{text-align:center;color:var(--muted);padding:60px}.pagination{display:flex;gap:6px;margin-top:20px}.pagination a{background:#fff;border:1px solid var(--line);border-radius:7px;padding:8px 12px;text-decoration:none}.pagination a.active{background:var(--navy);color:#fff}@media(max-width:1150px){.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.login-page{background:var(--navy)}.login-shell{grid-template-columns:1fr;padding:26px;gap:30px}.login-brand h1{font-size:40px}.login-brand ul{display:none}.login-card{padding:28px}.topbar{padding:0 14px}.portal-name,.topbar .user span{display:none}.app-shell{display:block}.sidebar{display:flex;overflow:auto;border-bottom:1px solid #ffffff20;padding:8px;position:sticky;top:70px;z-index:2}.client-card,.menu-title{display:none}.sidebar a{white-space:nowrap;display:flex}.sidebar a em{display:none}.content{padding:22px 14px}.welcome-panel{padding:24px}.welcome-mark{display:none}.welcome-panel h1{font-size:24px}.stats{grid-template-columns:1fr}.page-head h1{font-size:28px}.return-dashboard{font-size:0}.return-dashboard i{font-size:14px}}
/* Navegación móvil: mantiene visibles las cuatro opciones y sus etiquetas. */
@media(max-width:800px){
  .sidebar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;padding:6px}
  .sidebar a{position:relative;min-width:0;margin:0 2px;padding:8px 3px;display:flex;flex-direction:column;justify-content:center;gap:4px;text-align:center;font-size:11px;white-space:normal}
  .sidebar a i{font-size:17px}
  .sidebar a em{display:block;font-style:normal;line-height:1.15}
  .sidebar a span{position:absolute;top:3px;right:4px;padding:1px 5px;font-size:9px}
  .sidebar a.active{box-shadow:inset 0 -3px var(--orange)}
}
