
.feo-portal{--feo-navy:#07182d;--feo-blue:#0878d1;--feo-cyan:#19b9e6;--feo-line:#dbe8f1;--feo-muted:#60738a;--feo-green:#1d9b63;max-width:1220px;margin:0 auto;padding:34px 0 56px;color:#10233d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.feo-portal *{box-sizing:border-box}.feo-portal-head{display:flex;justify-content:space-between;gap:22px;align-items:flex-end;margin-bottom:22px}.feo-portal-head h2,.feo-portal-card h3{margin:4px 0 6px;color:var(--feo-navy);line-height:1.05;letter-spacing:-.03em}.feo-portal-head h2{font-size:36px}.feo-portal-head p{margin:0;color:var(--feo-muted)}.feo-portal-kicker{font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:var(--feo-blue)}.feo-portal-link{font-size:13px;font-weight:800;color:var(--feo-blue)}.feo-portal-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:start}.feo-portal-card{background:#fff;border:1px solid var(--feo-line);border-radius:24px;padding:24px;box-shadow:0 16px 38px rgba(6,37,67,.06);min-width:0}.feo-portal-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:18px}.feo-portal-card h3{font-size:27px}.feo-portal-badge{font-size:11px;font-weight:800;color:#21674c;background:#eaf8f2;border:1px solid #d3eee3;padding:7px 10px;border-radius:999px;white-space:nowrap}.feo-portal-products{display:grid;gap:10px;max-height:520px;overflow:auto;padding-right:4px}.feo-portal-product{display:grid;grid-template-columns:56px minmax(0,1fr) 82px;gap:12px;align-items:center;border:1px solid #e1ebf2;border-radius:16px;padding:10px;background:#fbfeff}.feo-portal-product-img{width:56px;height:56px;border-radius:12px;background:#f1f8fc;display:grid;place-items:center;overflow:hidden}.feo-portal-product-img img{width:100%;height:100%;object-fit:contain}.feo-portal-product-copy{min-width:0}.feo-portal-product-copy strong{display:block;font-size:13px;color:var(--feo-navy);line-height:1.3}.feo-portal-product-copy small{display:block;margin-top:4px;color:var(--feo-blue);font-weight:800}.feo-portal-product label{font-size:10px;font-weight:800;color:var(--feo-muted)}.feo-portal-product input{width:100%;margin-top:3px;border:1px solid #d2e0e9;border-radius:10px;padding:8px;text-align:center;background:#fff}.feo-portal-note{display:block;margin-top:16px;font-size:12px;font-weight:800;color:var(--feo-navy)}.feo-portal-note textarea{display:block;width:100%;margin-top:7px;border:1px solid #d2e0e9;border-radius:14px;padding:12px;resize:vertical}.feo-portal-order-footer{display:flex;gap:18px;align-items:center;justify-content:space-between;margin-top:16px}.feo-portal-order-footer p{font-size:11px;color:var(--feo-muted);margin:0;max-width:500px}.feo-portal-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:13px;padding:13px 18px;background:linear-gradient(135deg,var(--feo-blue),#086ab7);color:#fff!important;font-weight:850;text-decoration:none;cursor:pointer;box-shadow:0 10px 24px rgba(8,120,209,.18)}.feo-portal-orders{display:grid;gap:12px}.feo-portal-order{border:1px solid #e1ebf2;border-radius:17px;padding:15px;background:#fbfeff}.feo-portal-order-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.feo-portal-order-top strong{display:block;color:var(--feo-navy);font-size:14px}.feo-portal-order-top small{display:block;color:var(--feo-muted);font-size:11px;margin-top:3px}.feo-portal-status{font-size:10px;font-weight:900;padding:7px 9px;border-radius:999px;white-space:nowrap}.feo-portal-status.is-pending{background:#fff7df;color:#9a6b00}.feo-portal-status.is-planned{background:#eaf2ff;color:#1c5fba}.feo-portal-status.is-route{background:#e8f7ff;color:#0878d1}.feo-portal-status.is-delivered{background:#eaf8f2;color:#1d7a54}.feo-portal-status.is-failed{background:#fff0f0;color:#b33b3b}.feo-portal-order-meta{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;margin-top:12px;font-size:11px;color:var(--feo-muted)}.feo-portal-order details{margin-top:12px;font-size:11px;color:var(--feo-muted)}.feo-portal-order summary{cursor:pointer;font-weight:800;color:var(--feo-blue)}.feo-portal-order ul{margin:8px 0 0 18px}.feo-portal-empty{padding:30px 18px;text-align:center;color:var(--feo-muted);background:#f8fbfd;border-radius:16px}.feo-portal-notice{margin:0 0 18px;border-radius:15px;padding:13px 15px;font-size:13px;font-weight:750}.feo-portal-notice.is-success{background:#eaf8f2;border:1px solid #cfeade;color:#176344}.feo-portal-notice.is-error{background:#fff0f0;border:1px solid #f2d1d1;color:#9b3333}.feo-portal-login{padding:60px 0}.feo-portal-login-card{max-width:580px;margin:0 auto;background:#fff;border:1px solid var(--feo-line);border-radius:25px;padding:34px;text-align:center;box-shadow:0 18px 44px rgba(6,37,67,.07)}.feo-portal-login-card h2{font-size:34px;line-height:1.04;color:var(--feo-navy);margin:10px 0}.feo-portal-login-card p{color:var(--feo-muted);margin:0 0 22px}@media(max-width:980px){.feo-portal-grid{grid-template-columns:1fr}.feo-portal-products{max-height:none}}@media(max-width:640px){.feo-portal{padding:24px 0 44px}.feo-portal-head,.feo-portal-card-head,.feo-portal-order-footer{display:block}.feo-portal-head h2{font-size:30px}.feo-portal-link{display:inline-block;margin-top:12px}.feo-portal-card{padding:18px;border-radius:20px}.feo-portal-badge{display:inline-block;margin-top:8px}.feo-portal-product{grid-template-columns:50px minmax(0,1fr) 68px}.feo-portal-product-img{width:50px;height:50px}.feo-portal-order-footer .feo-portal-btn{width:100%;margin-top:12px}.feo-portal-order-meta{grid-template-columns:1fr}.feo-portal-order-top{display:block}.feo-portal-status{display:inline-block;margin-top:8px}}

/* V3 workflow status additions */
.feo-portal-status.is-route{background:#eaf4ff;color:#1768a7}.feo-portal-status.is-planned{background:#edf8ef;color:#287c43}.feo-portal-status.is-pending{background:#fff7df;color:#8b6507}


/* V3.3 Portal Transportista / POD */
.feo-driver-routes{display:grid;gap:20px}.feo-driver-stops{display:grid;gap:14px;margin-top:18px}.feo-driver-stop{border:1px solid #dfeaf1;border-radius:18px;padding:16px;background:#fbfeff}.feo-driver-stop.is-done{background:#f5fcf8;border-color:#cfe9dc}.feo-driver-stop-head{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:start}.feo-driver-seq{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#0b78c8;color:#fff;font-weight:900}.feo-driver-stop-head strong{display:block;color:#07182d;font-size:14px}.feo-driver-stop-head small{display:block;color:#60738a;font-size:12px;margin-top:4px;line-height:1.45}.feo-driver-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.feo-driver-secondary,.feo-driver-danger{display:inline-flex;align-items:center;justify-content:center;border-radius:12px;padding:11px 14px;font-weight:800;text-decoration:none;border:1px solid #d5e4ed;background:#fff;color:#173752;cursor:pointer}.feo-driver-danger{border-color:#efcccc;color:#a83232;background:#fff8f8}.feo-driver-delivery-form{display:grid;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid #e4edf3}.feo-driver-delivery-form label{font-size:12px;font-weight:800;color:#16344d}.feo-driver-delivery-form textarea,.feo-driver-delivery-form input[type=file]{display:block;width:100%;margin-top:6px;border:1px solid #d4e2eb;border-radius:12px;padding:10px;background:#fff}.feo-driver-photo{padding:12px;border:1px dashed #b9d2e1;border-radius:14px;background:#f6fbfe}.feo-driver-confirm{display:flex;gap:10px;flex-wrap:wrap}.feo-driver-proof{margin-top:14px;max-width:360px}.feo-driver-proof img,.feo-portal-proof img{display:block;width:100%;max-width:360px;border-radius:14px;border:1px solid #d9e7ef;margin-top:7px}.feo-driver-proof small,.feo-portal-proof b{display:block;margin-top:6px;color:#60738a;font-size:11px}.feo-portal-proof{margin-top:12px}.feo-portal-proof b{color:#07182d;font-size:12px}.feo-driver-route>form{margin-bottom:14px}@media(max-width:640px){.feo-driver-stop-head{grid-template-columns:34px minmax(0,1fr)}.feo-driver-stop-head>.feo-portal-status{grid-column:2}.feo-driver-actions>*{width:100%}.feo-driver-confirm>*{width:100%}.feo-driver-stop{padding:14px}.feo-driver-seq{width:34px;height:34px}.feo-driver-proof{max-width:none}}


/* V3.4 KPIs cliente + tracking visual */
.feo-client-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0 0 22px}
.feo-client-kpi{position:relative;overflow:hidden;border-radius:20px;padding:18px 18px 16px;border:1px solid transparent;box-shadow:0 12px 30px rgba(6,37,67,.05)}
.feo-client-kpi:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;right:-28px;bottom:-42px;background:currentColor;opacity:.07}
.feo-client-kpi span{display:block;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;opacity:.85}
.feo-client-kpi strong{display:block;font-size:32px;line-height:1;margin:9px 0 6px;color:inherit}
.feo-client-kpi small{display:block;font-size:10px;line-height:1.35;opacity:.76}
.feo-client-kpi.is-received{background:#f4f8fc;border-color:#dce8f1;color:#49677f}
.feo-client-kpi.is-preparation{background:#edf6ff;border-color:#d3e7fb;color:#1768a7}
.feo-client-kpi.is-production{background:#fff6df;border-color:#f2dfab;color:#8a6508}
.feo-client-kpi.is-dispatch{background:#eaf7ff;border-color:#cae9f8;color:#0878d1}
.feo-client-kpi.is-delivered{background:#eaf8f2;border-color:#cfeade;color:#1d7a54}

.feo-order-progress{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;margin:15px 0 13px;padding:4px 2px 0}
.feo-order-step{position:relative;text-align:center;min-width:0;color:#8aa0b2}
.feo-order-step:not(:last-child):after{content:"";position:absolute;top:13px;left:calc(50% + 14px);right:calc(-50% + 14px);height:3px;background:#dfe8ee;z-index:0}
.feo-order-step-dot{position:relative;z-index:1;display:grid;place-items:center;width:28px;height:28px;margin:0 auto 7px;border-radius:50%;background:#eef3f6;border:2px solid #d6e1e8;color:#7c93a5;font-size:10px;font-weight:900}
.feo-order-step small{display:block;font-size:9px;line-height:1.25;font-weight:800;padding:0 3px;white-space:normal}
.feo-order-step.is-complete{color:#1d7a54}.feo-order-step.is-complete .feo-order-step-dot{background:#1d9b63;border-color:#1d9b63;color:#fff}.feo-order-step.is-complete:not(:last-child):after{background:#74c7a4}
.feo-order-step.is-current{color:#0878d1}.feo-order-step.is-current .feo-order-step-dot{background:#0878d1;border-color:#0878d1;color:#fff;box-shadow:0 0 0 5px rgba(8,120,209,.10)}
.feo-order-step.is-failed{color:#b33b3b}.feo-order-step.is-failed .feo-order-step-dot{background:#c94b4b;border-color:#c94b4b;color:#fff;box-shadow:0 0 0 5px rgba(201,75,75,.10)}

@media(max-width:980px){.feo-client-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.feo-order-progress{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:16px}.feo-order-step:nth-child(4):after{display:none}}
@media(max-width:640px){.feo-client-kpis{grid-template-columns:1fr 1fr;gap:10px}.feo-client-kpi{padding:15px}.feo-client-kpi strong{font-size:27px}.feo-order-progress{display:flex;overflow-x:auto;gap:8px;padding:5px 2px 10px;scrollbar-width:none}.feo-order-progress::-webkit-scrollbar{display:none}.feo-order-step{flex:0 0 92px;border:1px solid #e2ebf1;border-radius:14px;padding:10px 6px;background:#fbfdfe}.feo-order-step:not(:last-child):after{display:none}.feo-order-step small{font-size:9px}.feo-order-step-dot{margin-bottom:6px}}


/* V3.6 OC adjunta + cantidades sin tope de stock */
.feo-portal-upload{display:grid;gap:7px;margin-top:14px;padding:16px;border:1px dashed #c9dce8;border-radius:16px;background:#f8fcfe;color:#173752;font-size:12px;font-weight:800}
.feo-portal-upload span{display:block}.feo-portal-upload em{font-style:normal;font-weight:600;color:#71869a}
.feo-portal-upload input[type=file]{width:100%;border:1px solid #d6e4ed;border-radius:12px;padding:10px;background:#fff;color:#516a7e;font-weight:500}
.feo-portal-upload small{font-size:10px;line-height:1.45;color:#758b9d;font-weight:500}
.feo-portal-order-meta a{color:#0878d1;font-weight:800;text-decoration:none}.feo-portal-order-meta a:hover{text-decoration:underline}


/* V3.7 login transportista mobile-first */
.feo-driver-login-page{padding:46px 0 60px}.feo-driver-login-shell{display:grid;grid-template-columns:1.05fr .95fr;gap:22px;align-items:stretch}.feo-driver-login-intro,.feo-driver-login-formcard{border:1px solid var(--feo-line);border-radius:26px;padding:30px;background:#fff;box-shadow:0 18px 44px rgba(6,37,67,.07)}.feo-driver-login-intro{background:linear-gradient(135deg,#07182d,#0b3357 68%,#0878d1 145%);color:#fff}.feo-driver-login-intro .feo-portal-kicker{color:#88e8f4}.feo-driver-login-intro h2{font-size:38px;line-height:1.03;letter-spacing:-.04em;margin:10px 0 12px}.feo-driver-login-intro p{color:#d5e6f1;margin:0;line-height:1.6}.feo-driver-login-features{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.feo-driver-login-features span{padding:11px 12px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(255,255,255,.07);font-size:12px;font-weight:750}.feo-driver-login-formcard h3{margin:7px 0 6px;color:var(--feo-navy);font-size:28px;letter-spacing:-.03em}.feo-driver-login-formcard>p{margin:0 0 18px;color:var(--feo-muted);font-size:13px}.feo-driver-login-formcard #loginform{display:grid;gap:14px}.feo-driver-login-formcard #loginform p{margin:0}.feo-driver-login-formcard #loginform label{display:block;color:var(--feo-navy);font-size:12px;font-weight:850}.feo-driver-login-formcard #loginform input[type=text],.feo-driver-login-formcard #loginform input[type=password]{display:block;width:100%;margin-top:6px;border:1px solid #d1e0e9;border-radius:14px;padding:13px 14px;background:#fbfeff;font-size:16px;outline:none}.feo-driver-login-formcard #loginform input[type=text]:focus,.feo-driver-login-formcard #loginform input[type=password]:focus{border-color:var(--feo-blue);box-shadow:0 0 0 4px rgba(8,120,209,.10)}.feo-driver-login-formcard #loginform .login-remember label{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--feo-muted)}.feo-driver-login-formcard #wp-submit{width:100%;border:0;border-radius:14px;padding:14px 18px;background:linear-gradient(135deg,var(--feo-blue),#086ab7);color:#fff;font-weight:900;cursor:pointer;box-shadow:0 10px 24px rgba(8,120,209,.18)}.feo-driver-login-help{display:block;margin-top:14px;color:#73899b;font-size:11px;line-height:1.5}@media(max-width:820px){.feo-driver-login-shell{grid-template-columns:1fr}.feo-driver-login-intro,.feo-driver-login-formcard{padding:24px;border-radius:22px}.feo-driver-login-features{grid-template-columns:1fr 1fr}}@media(max-width:520px){.feo-driver-login-page{padding:24px 0 44px}.feo-driver-login-features{grid-template-columns:1fr}.feo-driver-login-intro h2{font-size:31px}.feo-driver-login-formcard h3{font-size:25px}.feo-driver-login-intro,.feo-driver-login-formcard{padding:20px}}
