:root{--navy:#172957;--blue:#334ac0;--ink:#1c2942;--muted:#778398;--line:#e7eaf0;--canvas:#f4f6f9;--green:#1b8d78;--orange:#e69b3e;--red:#d95757;--violet:#8255b7;--shadow:0 10px 30px #182a5012}*{box-sizing:border-box}html{background:var(--canvas)}body{color:var(--ink);background:var(--canvas);margin:0;font-family:Segoe UI,Arial,sans-serif;font-size:14px}button,input{font:inherit}button{cursor:pointer}h1,h2,p{margin:0}h1,h2,.metric strong,.leader-card>strong{font-family:Segoe UI,Arial,sans-serif}.app-shell{min-height:100vh;padding-top:68px;transition:padding-right .25s}.app-shell.rail-visible{padding-right:326px}.topbar{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#fffffff0;align-items:center;gap:30px;height:68px;padding:0 26px;display:flex;position:fixed;top:0;left:0;right:0}.brand{align-items:center;gap:11px;min-width:190px;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg,#263e79,#14234c);border-radius:11px;place-items:center;width:38px;height:38px;display:grid;box-shadow:0 8px 18px #192b5838}.brand>div:last-child{flex-direction:column;display:flex}.brand b{letter-spacing:.12em;font:800 17px/1 Segoe UI,Arial,sans-serif}.brand span{color:var(--muted);letter-spacing:.04em;margin-top:4px;font-size:10px}.topbar nav{flex:1;gap:2px;height:100%;display:flex}.topbar nav button{color:#778297;background:0 0;border:0;align-items:center;gap:7px;padding:0 14px;font-size:12px;font-weight:600;display:flex;position:relative}.topbar nav button:after{content:"";background:0 0;border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:0;left:13px;right:13px}.topbar nav button:hover,.topbar nav button.active{color:var(--navy)}.topbar nav button.active:after{background:var(--blue)}.top-actions{align-items:center;gap:8px;display:flex}.icon-button{border:1px solid var(--line);color:#60708a;background:#fff;border-radius:11px;place-items:center;width:38px;height:38px;display:grid}.icon-button:hover{color:var(--blue);background:#f4f6fb}.notification-button{position:relative}.notification-button i{background:#e15c5c;border:1.5px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:8px;right:8px}.voice.listening{color:#fff;background:var(--red);animation:1.3s infinite pulse}.avatar{width:36px;height:36px;color:var(--navy);background:#e9ecf7;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.mobile-menu{display:none}.content{max-width:1420px;margin:0 auto;padding:32px 30px 54px}.page-head{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.eyebrow,.kicker{letter-spacing:.13em;color:#8390a5;text-transform:uppercase;font-size:9px;font-weight:700}.eyebrow{align-items:center;gap:7px;margin-bottom:8px;display:flex}.live-dot{background:#25a585;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #25a5851f}.page-head h1{letter-spacing:-.04em;color:#14234a;font-size:29px}.page-head>div>p{color:var(--muted);margin-top:6px}.head-actions{gap:9px;display:flex}.button{border:1px solid var(--line);border-radius:10px;justify-content:center;align-items:center;gap:7px;height:40px;padding:0 14px;font-size:12px;font-weight:700;display:inline-flex}.button.primary{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 7px 16px #17295729}.button.primary:hover{background:#223b79}.button.secondary{color:#536079;background:#fff}.button.secondary:hover{background:#fafbfc;border-color:#cbd1dd}.metrics-grid{grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:16px;display:grid}.metric{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:15px;padding:18px 19px 16px;position:relative;overflow:hidden}.metric:before{content:"";background:var(--accent);opacity:.05;border-radius:50%;width:90px;height:90px;position:absolute;top:-30px;right:-20px}.metric-head{color:#758197;align-items:center;gap:9px;font-size:11px;font-weight:600;display:flex}.metric-icon{background:color-mix(in srgb,var(--accent) 11%,white);width:33px;height:33px;color:var(--accent);border-radius:9px;place-items:center;display:grid}.metric strong{letter-spacing:-.04em;margin:15px 0 3px;font-size:27px;display:block}.metric p{color:#9099aa;font-size:10px}.metric-blue,.metric-navy{--accent:#334ac0}.metric-green{--accent:#1b8d78}.metric-violet{--accent:#8255b7}.metric-orange{--accent:#e69b3e}.metric-red{--accent:#d95757}.progress{background:#eef0f5;border-radius:3px;height:3px;margin-top:13px;overflow:hidden}.progress i{background:var(--accent);border-radius:3px;height:100%;display:block}.dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:16px;margin-bottom:16px;display:grid}.dashboard-grid.lower{grid-template-columns:1fr 1.05fr}.card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:15px}.card-head{justify-content:space-between;align-items:flex-start;padding:20px 21px 0;display:flex}.card-head h2,.table-toolbar h2{color:#1b2947;margin-top:5px;font-size:15px}.period{border:1px solid var(--line);color:#7c8798;border-radius:7px;padding:6px 8px;font-size:10px}.chart-wrap{height:260px;padding:14px 12px 0}.legend{color:#7b8799;gap:18px;padding:4px 22px 18px;font-size:10px;display:flex}.legend i,.dot{border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.legend .green,.dot.healthy{background:var(--green)}.legend .blue{background:var(--blue)}.health-content{align-items:center;padding:7px 16px 20px;display:flex}.donut{width:190px;height:205px;position:relative}.donut>div:last-child{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.donut strong{font:800 24px Segoe UI,Arial,sans-serif}.donut span{color:var(--muted);font-size:9px}.health-list{flex-direction:column;flex:1;gap:15px;display:flex}.health-list span{color:#7c8799;align-items:center;font-size:10px;display:flex}.health-list b{color:#293650;margin-left:auto}.dot.low{background:var(--orange)}.dot.out{background:var(--red)}.area-card,.products-card{min-height:275px}.text-button{color:var(--blue);background:0 0;border:0;align-items:center;font-size:10px;font-weight:700;display:flex}.area-bars{padding:18px 22px}.area-row{grid-template-columns:38px 1fr;align-items:center;gap:12px;margin-bottom:18px;display:grid}.area-icon{border-radius:9px;place-items:center;width:36px;height:36px;display:grid}.area-row p{justify-content:space-between;margin-bottom:7px;font-size:10px;display:flex}.area-row p strong{color:#526078}.bar{background:#eef0f5;border-radius:4px;height:5px;overflow:hidden}.bar i{border-radius:4px;height:100%;display:block}.rank-list{padding:11px 21px 15px}.rank-item{border-bottom:1px solid #f0f1f4;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 0;display:grid}.rank-item:last-child{border:0}.rank{color:#9ba4b3;font:700 10px Segoe UI,Arial,sans-serif}.rank-item div{min-width:0}.rank-item b{font-size:11px}.rank-item p{white-space:nowrap;text-overflow:ellipsis;color:#8a94a6;margin-top:2px;font-size:9px;overflow:hidden}.rank-item>strong{color:var(--blue);font-size:11px}.right-rail{z-index:25;border-left:1px solid var(--line);background:#fff;width:326px;padding:24px 18px;transition:width .25s,transform .25s;position:fixed;top:68px;bottom:0;right:0;overflow:auto}.right-rail.closed{width:0;padding:0;overflow:visible}.rail-toggle{border:1px solid var(--line);color:#78859a;background:#fff;border-radius:50%;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:18px;left:-16px;box-shadow:0 4px 12px #1423461a}.rail-head{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.rail-head h2{margin-top:5px;font-size:17px}.alert-count{width:25px;height:25px;color:var(--blue);background:#f0f2f8;border-radius:8px;place-items:center;font-size:11px;font-weight:700;display:grid}.alert-list{flex-direction:column;gap:8px;display:flex}.alert{text-align:left;background:#fbfcfd;border:1px solid #edf0f4;border-radius:11px;grid-template-columns:31px 1fr;gap:10px;width:100%;padding:11px;display:grid}.alert>span{border-radius:8px;place-items:center;width:29px;height:29px;display:grid}.alert.critical>span{color:var(--red);background:#fdeeee}.alert.warning>span{color:var(--orange);background:#fff4e4}.alert.info>span{color:var(--blue);background:#edf0ff}.alert.success>span{color:var(--green);background:#eaf7f4}.alert b{font-size:10px}.alert p{color:#808b9d;margin:4px 0;font-size:9px;line-height:1.4}.alert small{color:#acb3bf;font-size:8px}.quick-section{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.quick-section>.kicker{margin-bottom:8px;display:block}.quick-section button{text-align:left;background:#fff;border:0;grid-template-columns:32px 1fr 16px;align-items:center;gap:9px;width:100%;padding:8px 2px;display:grid}.quick-section button>span{width:30px;height:30px;color:var(--blue);background:#eff1f7;border-radius:8px;place-items:center;display:grid}.quick-section button b{font-size:10px}.quick-section button small{color:#919aaa;margin-top:2px;font-size:8px;display:block}.quick-section button>svg{color:#a5adba}.sync-card{background:#f5f7fa;border-radius:11px;grid-template-columns:31px 1fr;gap:9px;margin-top:18px;padding:12px;display:grid}.sync-card>span{width:29px;height:29px;color:var(--green);background:#fff;border-radius:8px;place-items:center;display:grid}.sync-card b{font-size:9px}.sync-card p{color:#657087;white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.sync-card small{color:#9ca5b4;font-size:8px}.metrics-grid.compact .metric{padding-bottom:17px}.table-card{overflow:hidden}.table-toolbar{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:70px;padding:14px 18px;display:flex}.search-box{border:1px solid var(--line);color:#98a1b1;border-radius:9px;flex:1;align-items:center;gap:8px;min-width:290px;max-width:440px;height:39px;padding:0 11px;display:flex}.search-box input{color:#344054;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:11px}.search-box button{color:#9ca5b3;background:0 0;border:0;padding:0}.segmented{border:1px solid var(--line);background:#f7f8fa;border-radius:9px;padding:3px;display:flex}.segmented button{color:#798598;background:0 0;border:0;border-radius:6px;padding:7px 10px;font-size:9px;font-weight:600}.segmented button.active{color:var(--navy);background:#fff;box-shadow:0 2px 6px #14213e14}.result-count{color:#8a94a5;white-space:nowrap;margin-left:auto;font-size:9px}.table-scroll{overflow:auto}table{border-collapse:collapse;white-space:nowrap;width:100%}th{text-align:left;color:#8c96a7;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--line);background:#f8f9fb;padding:11px 16px;font-size:8px}td{color:#627086;border-bottom:1px solid #f0f2f5;padding:11px 16px;font-size:10px}tbody tr:hover{background:#fafbfe}.product-cell{grid-template-columns:35px minmax(150px,1fr);align-items:center;gap:9px;max-width:350px;display:grid}.product-cell>span{width:34px;height:34px;color:var(--navy);background:#edf0f7;border-radius:8px;place-items:center;font-size:8px;font-weight:800;display:grid}.product-cell b{color:#26334e;font-size:10px}.product-cell p{text-overflow:ellipsis;white-space:nowrap;color:#929baa;margin-top:2px;font-size:8px;overflow:hidden}.compact-cell{max-width:280px}.stock-number{color:#28354e}.coverage{background:#edf0f4;border-radius:4px;width:76px;height:4px}.coverage i{background:var(--green);border-radius:4px;height:100%;display:block}.status{border-radius:20px;align-items:center;padding:5px 8px;font-size:8px;font-weight:700;display:inline-flex}.status i{border-radius:50%;width:5px;height:5px;margin-right:5px}.status-saludable,.status-recibido{color:#177963;background:#eaf7f4}.status-saludable i,.status-recibido i{background:var(--green)}.status-bajo,.status-en-tránsito{color:#b8751f;background:#fff4e5}.status-bajo i,.status-en-tránsito i{background:var(--orange)}.status-agotado{color:#bf4949;background:#fdeeee}.status-agotado i{background:var(--red)}.pagination{color:#8b95a6;justify-content:space-between;align-items:center;padding:12px 18px;font-size:9px;display:flex}.pagination>div{align-items:center;gap:7px;display:flex}.pagination button{border:1px solid var(--line);color:#667389;background:#fff;border-radius:7px;place-items:center;width:28px;height:28px;display:grid}.pagination button:disabled{opacity:.35}.pagination b{color:var(--navy)}.empty{color:#8a95a7;place-items:center;gap:6px;padding:35px;display:grid}.reason-strip{grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:15px;display:grid}.reason-strip button{border:1px solid var(--line);text-align:left;box-shadow:var(--shadow);background:#fff;border-radius:12px;align-items:center;gap:10px;padding:13px;display:flex}.reason-strip button>span{width:34px;height:34px;color:var(--blue);background:#eef1f8;border-radius:9px;place-items:center;display:grid}.reason-strip button b{color:#24314d;font:700 15px Segoe UI,Arial,sans-serif;display:block}.reason-strip button small{color:#8792a4;font-size:8px}.reason-strip button.active{border-color:#8795df;box-shadow:0 0 0 2px #eaecfb}.move-type{align-items:center;gap:4px;font-weight:700;display:inline-flex}.move-type.entrada{color:var(--green)}.move-type.salida{color:var(--violet)}.reason-tag{color:#627087;background:#f1f3f7;border-radius:6px;padding:5px 8px;font-size:8px}.supplier-layout{grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr);gap:16px;display:grid}.supplier-chart{min-height:430px}.bar-chart{height:360px;padding:18px 14px}.leader-card{text-align:center;color:#fff;background:linear-gradient(145deg,#1a2c5e,#263e79);padding:25px;position:relative;overflow:hidden}.leader-card:before{content:"";background:#ffffff0a;border-radius:50%;width:260px;height:260px;position:absolute;top:-130px;right:-100px}.leader-card .kicker{color:#aebade}.crown{color:#f1c36b;background:#ffffff1c;border-radius:15px;place-items:center;width:50px;height:50px;margin:20px auto 27px;display:grid}.leader-card h2{margin:9px 0 25px;font-size:23px}.leader-card>strong{font-size:35px}.leader-card>p{color:#b7c1dc;font-size:10px}.leader-stats{border-top:1px solid #ffffff21;grid-template-columns:1fr 1fr;margin-top:38px;padding-top:20px;display:grid}.leader-stats span{flex-direction:column;display:flex}.leader-stats span+span{border-left:1px solid #ffffff21}.leader-stats small{color:#aeb9d5;font-size:8px}.leader-stats b{margin-top:5px;font-size:12px}.supplier-table{grid-column:1/-1}.position{width:23px;height:23px;color:var(--navy);background:#edf0f7;border-radius:7px;place-items:center;font-weight:700;display:grid}.rotation{align-items:center;gap:8px;display:flex}.rotation>div{background:#edf0f4;border-radius:4px;width:110px;height:5px}.rotation i{background:var(--blue);border-radius:4px;height:100%;display:block}.transfer-summary{color:#fff;background:linear-gradient(135deg,#192d60,#243f7e);border-radius:16px;grid-template-columns:1fr minmax(230px,.8fr) 1fr;align-items:center;min-height:150px;margin-bottom:16px;padding:28px 38px;display:grid;box-shadow:0 14px 35px #1427532e}.warehouse{align-items:center;gap:15px;display:flex}.warehouse>span{background:#ffffff17;border:1px solid #ffffff2e;border-radius:16px;place-items:center;width:62px;height:62px;font:800 28px Segoe UI,Arial,sans-serif;display:grid}.warehouse small{color:#aab7d5;letter-spacing:.12em;font-size:8px}.warehouse b{margin:5px 0;font:700 15px Segoe UI,Arial,sans-serif;display:block}.warehouse p{color:#aab7d5;font-size:9px}.warehouse.destination{justify-content:flex-end}.route{text-align:center;grid-template-columns:1fr 42px 1fr;align-items:center;display:grid}.route i{background:#ffffff47;height:1px}.route span{width:42px;height:42px;color:var(--blue);background:#fff;border-radius:50%;place-items:center;display:grid}.route b{color:#b5c0da;grid-column:1/-1;margin-top:10px;font-size:8px}.direction{color:var(--blue);align-items:center;gap:5px;font-weight:700;display:inline-flex}.modal-backdrop{z-index:70;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c16308c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:18px;width:min(630px,100%);padding:24px;box-shadow:0 30px 80px #0a142d4d}.modal-head{justify-content:space-between;align-items:flex-start;display:flex}.modal-head h2{margin-top:5px;font-size:20px}.direction-select{grid-template-columns:1fr 1fr;gap:10px;margin:22px 0;display:grid}.direction-select button{border:1px solid var(--line);color:#6e7a8f;background:#fafbfc;border-radius:11px;grid-template-columns:28px 22px 28px;justify-content:center;align-items:center;padding:12px;display:grid}.direction-select button span{grid-column:1/-1;margin-top:7px;font-size:8px}.direction-select button.active{color:var(--blue);background:#f2f4ff;border-color:#7383d4;box-shadow:0 0 0 2px #e7eafa}.direction-select button b{background:#fff;border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-grid label span{color:#536079;margin-bottom:6px;font-size:9px;font-weight:700;display:block}.form-grid input{border:1px solid var(--line);color:#354158;border-radius:9px;outline:0;width:100%;height:42px;padding:0 11px}.form-grid input:focus{border-color:#8a98dd;box-shadow:0 0 0 3px #eff1fb}.modal-note{color:#708097;background:#f5f7fa;border-radius:9px;align-items:center;gap:8px;margin-top:16px;padding:10px;font-size:9px;display:flex}.modal-actions{justify-content:flex-end;gap:9px;margin-top:18px;display:flex}.toast{z-index:90;color:#fff;background:#162853;border-radius:11px;align-items:center;gap:9px;padding:12px 17px;font-size:11px;animation:.25s slideUp;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 16px 40px #101d3e47}.loading{color:#7b879b;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:100vh;display:flex}.loading-line{background:#e4e7ee;border-radius:4px;width:160px;height:4px;overflow:hidden}.loading-line:after{content:"";background:var(--blue);border-radius:4px;width:60px;height:100%;animation:1.2s infinite load;display:block}.loading p{font-size:11px}.spin{animation:1s linear infinite spin}@keyframes pulse{50%{box-shadow:0 0 0 8px #d957571f}}@keyframes load{0%{transform:translate(-60px)}to{transform:translate(170px)}}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,12px)}}@keyframes spin{to{transform:rotate(360deg)}}.history-tabs{gap:8px;margin-bottom:15px;padding:2px;display:flex;overflow:auto}.history-tabs button{white-space:nowrap;border:1px solid var(--line);color:#738096;background:#fff;border-radius:10px;align-items:center;gap:7px;height:42px;padding:0 13px;font-size:10px;font-weight:700;display:flex;box-shadow:0 5px 15px #182a500a}.history-tabs button.active{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 8px 18px #17295729}.folio{min-width:43px;height:25px;color:var(--blue);background:#edf0fb;border-radius:7px;place-items:center;padding:0 7px;display:inline-grid}.source-grid{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:0;display:grid}.source-grid article{border-bottom:1px solid #f0f2f5;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:82px;padding:14px 18px;display:grid;position:relative}.source-grid article:nth-child(odd){border-right:1px solid #f0f2f5}.source-icon{width:36px;height:36px;color:var(--blue);background:#eef1f8;border-radius:9px;place-items:center;display:grid}.source-historico{color:var(--green);background:#eaf7f4}.source-auditoria{color:var(--violet);background:#f2edfa}.source-formato{color:var(--orange);background:#fff3e4}.source-grid b{color:#26334e;font-size:10px}.source-grid p{color:#7e899b;margin:3px 0;font-size:9px}.source-grid small{color:#a0a8b5;font-size:8px}.source-type{text-transform:uppercase;letter-spacing:.08em;color:#7d899c;background:#f2f4f7;border-radius:5px;padding:4px 6px;font-size:7px}.readonly-card{color:var(--green);background:#eff8f5;border:1px solid #d9eee8;border-radius:11px;grid-template-columns:31px 1fr;gap:9px;margin-top:18px;padding:12px;display:grid}.readonly-card b{font-size:9px}.readonly-card p{color:#68847d;margin-top:2px;font-size:8px}.diff-zero{color:#6d798e}.diff-up{color:var(--green)}.diff-down{color:var(--red)}.shortage-number{color:var(--red);font-size:11px}.status-histórico,.status-ajustado{color:var(--blue);background:#edf0fb}.status-histórico i,.status-ajustado i{background:var(--blue)}.status-con-cobertura{color:#177963;background:#eaf7f4}.status-con-cobertura i{background:var(--green)}.status-sin-venta,.status-sin-mínimo{color:#778398;background:#f0f2f5}.status-sin-venta i,.status-sin-mínimo i{background:#9aa4b4}@media (width<=1250px){.app-shell.rail-visible{padding-right:285px}.right-rail{width:285px}.topbar{gap:15px;padding:0 18px}.topbar nav button{padding:0 9px}.topbar nav button span{display:none}.content{padding:28px 22px}.metrics-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.app-shell,.app-shell.rail-visible{padding-right:0}.right-rail{width:min(326px,88vw);box-shadow:-15px 0 40px #0f1e4124}.right-rail.closed{width:min(326px,88vw);padding:24px 18px;transform:translate(100%)}.rail-toggle{left:-16px}.brand{min-width:0}.topbar nav{border:1px solid var(--line);height:auto;box-shadow:var(--shadow);background:#fff;border-radius:13px;padding:7px;display:none;position:absolute;top:61px;left:12px;right:12px}.topbar nav.nav-open{grid-template-columns:1fr 1fr;display:grid}.topbar nav button{border-radius:8px;height:40px}.topbar nav button span{display:block}.topbar nav button.active{background:#f0f2f9}.topbar nav button:after{display:none}.mobile-menu{color:#657187;background:0 0;border:0;place-items:center;margin-left:auto;display:grid}.top-actions{margin-left:0}.dashboard-grid,.dashboard-grid.lower,.supplier-layout{grid-template-columns:1fr}.supplier-table{grid-column:auto}.reason-strip{grid-template-columns:repeat(3,1fr)}.transfer-summary{grid-template-columns:1fr;gap:24px}.warehouse.destination{justify-content:flex-start}.route{order:3}.page-head{flex-direction:column;align-items:flex-start}.head-actions{flex-wrap:wrap;width:100%}.head-actions .button{flex:1}.segmented{order:3;width:100%;overflow:auto}.table-toolbar{flex-wrap:wrap}}@media (width<=600px){.topbar{height:61px;padding:0 12px}.app-shell{padding-top:61px}.brand span,.top-actions .notification-button,.avatar{display:none}.content{padding:22px 12px 40px}.page-head{margin-bottom:19px}.page-head h1{font-size:24px}.page-head>div>p{font-size:11px}.head-actions .button{padding:0 10px;font-size:10px}.metrics-grid{grid-template-columns:1fr 1fr;gap:9px}.metric{padding:14px}.metric strong{margin-top:11px;font-size:21px}.metric-head>span:last-child{font-size:9px}.metric p{font-size:8px}.dashboard-grid{gap:10px}.chart-wrap{height:230px}.health-content{flex-direction:column}.health-list{width:100%;padding:0 24px}.reason-strip{padding-bottom:4px;display:flex;overflow:auto}.reason-strip button{min-width:150px}.table-toolbar{padding:12px}.search-box{min-width:100%;max-width:none}.result-count{margin-left:0}.pagination>span{display:none}.pagination{justify-content:flex-end}.supplier-layout{gap:10px}.source-grid{grid-template-columns:1fr}.source-grid article:nth-child(odd){border-right:0}.toast{bottom:12px;left:12px;right:12px;transform:none}.product-cell{max-width:235px}.card-head{padding:17px 16px 0}}.shortage-card{overflow:hidden}.shortage-head{border-bottom:1px solid #eef0f4;padding-bottom:15px}.shortage-head p{color:#8791a4;margin-top:4px;font-size:9px}.critical-row{background:linear-gradient(90deg,#df5f5f0b,#0000 35%)}.critical-row:hover{background:#fff7f7}.app-shell{padding-left:238px;padding-right:0;transition:padding-left .25s}.app-shell.sidebar-collapsed{padding-left:78px}.topbar{justify-content:space-between;padding:0 26px;transition:left .25s;left:238px}.sidebar-collapsed .topbar{left:78px}.side-menu{z-index:45;color:#fff;background:linear-gradient(#172957 0%,#102044 100%);flex-direction:column;width:238px;padding:18px 14px;transition:width .25s,transform .25s;display:flex;position:fixed;inset:0 auto 0 0;box-shadow:8px 0 30px #1120451f}.side-brand{align-items:center;gap:11px;height:48px;padding:0 7px;display:flex;overflow:hidden}.side-brand .brand-mark{box-shadow:none;background:#ffffff1f;flex:0 0 38px}.side-brand>div:last-child{white-space:nowrap;flex-direction:column;display:flex}.side-brand b{letter-spacing:.13em;font-size:16px}.side-brand span{color:#aeb9d6;margin-top:4px;font-size:9px}.sidebar-toggle{color:#65728a;background:#fff;border:1px solid #dfe3ec;border-radius:50%;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:25px;right:-15px;box-shadow:0 5px 15px #121f4226}.side-label{letter-spacing:.15em;color:#8191b8;white-space:nowrap;margin:25px 12px 9px;font-size:8px}.side-menu nav{flex-direction:column;gap:5px;display:flex}.side-menu nav button{color:#b7c2dc;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;width:100%;height:43px;padding:0 13px;font-size:11px;font-weight:650;display:flex;overflow:hidden}.side-menu nav button:hover{color:#fff;background:#ffffff12}.side-menu nav button.active{color:#fff;background:#ffffff21;box-shadow:inset 3px 0 #7f92ff}.side-menu nav button svg{flex:0 0 18px}.side-footer{background:#ffffff0d;border:1px solid #ffffff17;border-radius:11px;align-items:center;gap:10px;margin-top:auto;padding:12px;display:flex;overflow:hidden}.side-footer svg{color:#71d1b7;flex:0 0 18px}.side-footer div{white-space:nowrap;flex-direction:column;display:flex}.side-footer b{font-size:9px}.side-footer span{color:#8f9fc2;margin-top:3px;font-size:8px}.sidebar-collapsed .side-menu{width:78px}.sidebar-collapsed .side-brand>div:last-child,.sidebar-collapsed .side-label,.sidebar-collapsed .side-menu nav button span,.sidebar-collapsed .side-footer div{display:none}.sidebar-collapsed .side-brand{padding-left:6px}.sidebar-collapsed .side-menu nav button{justify-content:center;padding:0}.sidebar-collapsed .side-footer{justify-content:center;padding:12px 0}.top-context{flex-direction:column;display:flex}.top-context span{letter-spacing:.12em;color:#9aa3b2;font-size:8px}.top-context b{color:#26334f;margin-top:3px;font-size:13px}.notification-button.active{color:var(--blue);background:#eef1fb;border-color:#d8def2}.notification-button em{background:var(--red);color:#fff;border:2px solid #fff;border-radius:9px;place-items:center;min-width:16px;height:16px;padding:0 4px;font-size:8px;font-style:normal;font-weight:800;display:grid;position:absolute;top:-6px;right:-6px}.notification-button i{display:none}.notifications-popover{z-index:60;border:1px solid var(--line);background:#fff;border-radius:15px;width:360px;max-height:calc(100vh - 78px);padding:17px;animation:.18s ease-out notificationIn;position:absolute;top:58px;right:24px;overflow:auto;box-shadow:0 22px 60px #121f4233}.notification-head{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.notification-head h2{margin-top:4px;font-size:17px}.notification-foot{color:#518071;background:#eff8f5;border-radius:9px;align-items:center;gap:7px;margin-top:12px;padding:10px;font-size:9px;display:flex}.menu-backdrop{display:none}@keyframes notificationIn{0%{opacity:0;transform:translateY(-8px)scale(.98)}}@media (width<=900px){.app-shell,.app-shell.sidebar-collapsed{padding-left:0}.topbar,.sidebar-collapsed .topbar{left:0}.side-menu,.sidebar-collapsed .side-menu{width:238px;transform:translate(-105%)}.side-menu.mobile-open{transform:translate(0)}.sidebar-collapsed .side-brand>div:last-child,.sidebar-collapsed .side-label,.sidebar-collapsed .side-menu nav button span,.sidebar-collapsed .side-footer div{display:flex}.sidebar-collapsed .side-label{display:block}.sidebar-collapsed .side-menu nav button{justify-content:flex-start;padding:0 13px}.sidebar-collapsed .side-footer{justify-content:flex-start;padding:12px}.sidebar-toggle{display:none}.menu-backdrop{z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a142b73;border:0;display:block;position:fixed;inset:0}.top-context{margin-right:auto}.mobile-menu{place-items:center;display:grid}.notifications-popover{width:auto;max-height:calc(100vh - 70px);position:fixed;top:57px;left:10px;right:10px}}@media (width<=600px){.topbar .notification-button{display:grid}.topbar{padding:0 12px}.top-context span{display:none}.top-context b{font-size:11px}.notifications-popover{padding:13px;top:54px}.notifications-popover .alert{padding:9px}.top-actions{gap:6px}}.report-button{flex:none}.package-request{min-width:52px;height:28px;color:var(--blue);background:#edf0ff;border-radius:8px;place-items:center;padding:0 9px;font-size:10px;font-weight:800;display:inline-grid;box-shadow:inset 0 0 0 1px #dfe4fb}@media (width<=700px){.shortage-head{flex-direction:column;gap:14px}.report-button{width:100%}}.side-menu nav{flex:1;min-height:0;padding-right:2px;overflow:hidden auto}.side-menu nav::-webkit-scrollbar{width:4px}.side-menu nav::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:4px}.global-search{border:1px solid var(--line);color:#8994a7;background:#f8f9fb;border-radius:11px;flex:1;align-items:center;gap:9px;max-width:620px;height:40px;margin:0 24px;padding:0 10px 0 12px;display:flex}.global-search:focus-within{background:#fff;border-color:#aab5e3;box-shadow:0 0 0 3px #eef0fb}.global-search input{color:#344054;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:11px}.global-search button{color:#8994a7;background:0 0;border:0;place-items:center;padding:0;display:grid}.global-search kbd{color:#8993a4;letter-spacing:.08em;background:#e9ecf3;border:0;border-radius:5px;padding:4px 6px;font:700 7px Segoe UI,Arial,sans-serif}.universal-card{overflow:hidden}.universal-intro{border-bottom:1px solid var(--line);background:linear-gradient(135deg,#fff,#f8f9fd);grid-template-columns:minmax(250px,.7fr) minmax(360px,1.3fr);align-items:center;gap:28px;padding:20px 21px;display:grid}.universal-intro h2{margin-top:5px;font-size:17px}.universal-intro p{color:#8691a3;margin-top:4px;font-size:9px}.universal-query{height:45px;color:var(--blue);background:#fff;border:1px solid #dce1ec;border-radius:11px;align-items:center;gap:10px;padding:0 13px;display:flex;box-shadow:0 7px 20px #1729570f}.universal-query input{color:#2f3e5a;border:0;outline:0;flex:1;min-width:0;font-size:11px}.universal-query button{color:#8d97a8;background:0 0;border:0;place-items:center;display:grid}.source-toolbar{min-height:58px}.source-badge{letter-spacing:.04em;border-radius:7px;justify-content:center;align-items:center;min-width:72px;padding:5px 8px;font-size:8px;font-weight:800;display:inline-flex}.source-movimientos{color:#177963;background:#eaf7f4}.source-h-c{color:#334ac0;background:#edf0ff}.source-tsta{color:#b8751f;background:#fff3e4}.source-h-g{color:#7950a7;background:#f2edfa}.detail-cell{text-overflow:ellipsis;max-width:310px;overflow:hidden}.top-context,.top-actions{flex:none}@media (width<=1150px){.global-search{margin:0 12px}.global-search kbd,.top-context span{display:none}}@media (width<=760px){.top-context{display:none}.global-search{height:37px;margin:0 8px}.global-search input{font-size:9px}.global-search input::placeholder{color:#0000}.universal-intro{grid-template-columns:1fr;gap:13px}.source-toolbar .segmented{overflow:auto}.source-toolbar .segmented button{white-space:nowrap}}.kardex-selector{z-index:4;grid-template-columns:minmax(240px,.7fr) minmax(360px,1.3fr);align-items:center;gap:30px;margin-bottom:16px;padding:21px;display:grid;position:relative}.kardex-selector h2{margin-top:5px;font-size:17px}.kardex-selector p{color:#8792a4;margin-top:4px;font-size:9px}.kardex-search{border:1px solid var(--line);height:44px;color:var(--blue);background:#f9fafc;border-radius:10px;align-items:center;gap:9px;padding:0 12px;display:flex;position:relative}.kardex-search input{color:#344054;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:11px}.kardex-search>button{color:#8c96a7;background:0 0;border:0}.kardex-suggestions{z-index:10;border:1px solid var(--line);background:#fff;border-radius:11px;padding:6px;position:absolute;top:50px;left:0;right:0;box-shadow:0 18px 45px #1422462b}.kardex-suggestions button{text-align:left;background:#fff;border:0;border-radius:7px;grid-template-columns:65px 1fr 55px;align-items:center;gap:8px;width:100%;height:42px;padding:0 9px;display:grid}.kardex-suggestions button:hover{background:#f5f7fb}.kardex-suggestions b{color:var(--navy);font-size:9px}.kardex-suggestions span{color:#778398;white-space:nowrap;text-overflow:ellipsis;font-size:8px;overflow:hidden}.kardex-suggestions em{text-align:right;color:var(--green);font-size:8px;font-style:normal}.comparison-head{padding-bottom:18px}.reports-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.report-card{grid-template-columns:46px 1fr auto;align-items:center;gap:13px;padding:18px;display:grid}.report-card>span{width:44px;height:44px;color:var(--blue);background:#edf0fb;border-radius:11px;place-items:center;display:grid}.report-card h2{font-size:13px}.report-card p{color:#8791a3;margin-top:4px;font-size:9px}.report-actions{align-items:center;gap:7px;display:flex}.report-actions .button{white-space:nowrap;padding:0 11px}@media (width<=760px){.kardex-selector{grid-template-columns:1fr;gap:14px}.reports-grid{grid-template-columns:1fr}.report-card{grid-template-columns:40px 1fr}.report-actions{grid-column:1/-1}.report-actions .button{flex:1}}.brand-mark{background:0 0;padding:0;overflow:hidden}.brand-mark img{object-fit:cover;width:100%;height:100%;display:block}.side-brand .brand-mark{background:0 0;box-shadow:0 8px 22px #050e2352}.mobile-brand{display:none}.install-button{color:#263e79;white-space:nowrap;background:linear-gradient(135deg,#f4f6ff,#edf7f6);border:1px solid #dce2f2;border-radius:11px;align-items:center;gap:7px;height:38px;padding:0 12px;font-size:10px;font-weight:800;display:flex}.install-button:hover{border-color:#aeb9e8;transform:translateY(-1px);box-shadow:0 7px 18px #2036701f}.side-install{color:#dce5ff;text-align:left;background:linear-gradient(135deg,#7aa2ff21,#55d5bd14);border:1px solid #7aa2ff33;border-radius:12px;align-items:center;gap:10px;width:100%;min-height:50px;margin:10px 0 8px;padding:9px 11px;display:flex;overflow:hidden}.side-install>svg{color:#73d7c2;flex:0 0 18px}.side-install>span{white-space:nowrap;flex-direction:column;min-width:0;display:flex}.side-install b{font-size:9px}.side-install small{color:#91a1c7;margin-top:3px;font-size:8px}.sidebar-collapsed .side-install{justify-content:center;padding:9px 0}.sidebar-collapsed .side-install span{display:none}.card,.metric,.reason-strip button,.report-card{transition:transform .2s,border-color .2s,box-shadow .2s}.metric:hover,.dashboard-grid>.card:hover,.report-card:hover{border-color:#d9dfec;transform:translateY(-2px);box-shadow:0 16px 38px #182a501a}.table-scroll{scrollbar-width:thin;scrollbar-color:#c9d0df transparent}.table-scroll thead{z-index:2;position:sticky;top:0}.icon-button,.install-button,.button,.side-menu button{transition:background .18s,color .18s,border-color .18s,transform .18s,box-shadow .18s}button:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #7aa2ff73}.app-shell{min-height:100dvh}.content{animation:.28s ease-out contentEnter}@keyframes contentEnter{0%{opacity:.45;transform:translateY(5px)}to{opacity:1;transform:none}}html[data-theme=dark]{--navy:#8fa9ff;--blue:#8099ff;--ink:#edf2ff;--muted:#9aa8c2;--line:#24314d;--canvas:#0b1428;--green:#54cdb3;--orange:#f2b760;--red:#f17b7b;--violet:#b38ae4;--shadow:0 12px 36px #00000038;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0b1428}html[data-theme=dark] body{color:var(--ink);background:radial-gradient(circle at 78% -10%,#4b60b529,transparent 34%),radial-gradient(circle at 12% 110%,#2a96821a,transparent 28%),var(--canvas)}html[data-theme=dark] .topbar{border-color:var(--line);background:#0c162be6;box-shadow:0 10px 35px #00000024}html[data-theme=dark] .side-menu{background:linear-gradient(#101d3b 0%,#091328 100%);box-shadow:10px 0 35px #0000003d}html[data-theme=dark] .card,html[data-theme=dark] .metric,html[data-theme=dark] .notifications-popover,html[data-theme=dark] .modal,html[data-theme=dark] .history-tabs button,html[data-theme=dark] .reason-strip button,html[data-theme=dark] .report-card{border-color:var(--line);box-shadow:var(--shadow);background:#111d35}html[data-theme=dark] .metric:before{opacity:.12}html[data-theme=dark] .metric-icon{background:color-mix(in srgb,var(--accent) 18%,#101c33)}html[data-theme=dark] .top-context b,html[data-theme=dark] .page-head h1,html[data-theme=dark] .card-head h2,html[data-theme=dark] .table-toolbar h2,html[data-theme=dark] .product-cell b,html[data-theme=dark] .rank-item b,html[data-theme=dark] .health-list b,html[data-theme=dark] .reason-strip button b,html[data-theme=dark] .source-grid b{color:#eef3ff}html[data-theme=dark] .global-search,html[data-theme=dark] .search-box,html[data-theme=dark] .kardex-search,html[data-theme=dark] .universal-query{color:#91a7ff;background:#0d182e;border-color:#2a3856}html[data-theme=dark] input,html[data-theme=dark] .global-search input,html[data-theme=dark] .search-box input,html[data-theme=dark] .kardex-search input,html[data-theme=dark] .universal-query input{color:#eef3ff}html[data-theme=dark] input::placeholder{color:#70809d}html[data-theme=dark] .icon-button,html[data-theme=dark] .button.secondary,html[data-theme=dark] .pagination button,html[data-theme=dark] .sidebar-toggle,html[data-theme=dark] .kardex-suggestions,html[data-theme=dark] .kardex-suggestions button{color:#a8b6d1;background:#14213a;border-color:#2a3856}html[data-theme=dark] .icon-button:hover,html[data-theme=dark] .button.secondary:hover,html[data-theme=dark] .kardex-suggestions button:hover{color:#fff;background:#1a2946}html[data-theme=dark] .install-button{color:#dfe8ff;background:linear-gradient(135deg,#1d2c50,#153839);border-color:#304567}html[data-theme=dark] .notification-button.active{color:#a8bbff;background:#203155;border-color:#3d5180}html[data-theme=dark] .notification-button em{border-color:#0d182e}html[data-theme=dark] .alert,html[data-theme=dark] .table-toolbar{background:#0f1a30;border-color:#202d48}html[data-theme=dark] .alert:hover{background:#14223c}html[data-theme=dark] .alert b{color:#eaf0ff}html[data-theme=dark] .notification-foot,html[data-theme=dark] .readonly-card{color:#78d8c3;background:#12302e;border-color:#20504a}html[data-theme=dark] .segmented{background:#0d182d;border-color:#273550}html[data-theme=dark] .segmented button.active{color:#fff;box-shadow:none;background:#263653}html[data-theme=dark] .universal-intro{border-color:var(--line);background:linear-gradient(135deg,#111d35,#0d182e)}html[data-theme=dark] th{color:#93a2bd;background:#16233c;border-color:#263550}html[data-theme=dark] td{color:#abb8ce;border-color:#1e2b45}html[data-theme=dark] tbody tr:hover{background:#15213a}html[data-theme=dark] .critical-row{background:linear-gradient(90deg,#f17b7b14,#0000 38%)}html[data-theme=dark] .critical-row:hover{background:#271d2b}html[data-theme=dark] .product-cell>span,html[data-theme=dark] .position,html[data-theme=dark] .source-icon,html[data-theme=dark] .folio{color:#b7c6ff;background:#223252}html[data-theme=dark] .progress,html[data-theme=dark] .bar,html[data-theme=dark] .coverage,html[data-theme=dark] .rotation>div{background:#25324c}html[data-theme=dark] .period,html[data-theme=dark] .source-grid,html[data-theme=dark] .source-grid article,html[data-theme=dark] .rank-item,html[data-theme=dark] .shortage-head{border-color:#24314b}html[data-theme=dark] .reason-tag,html[data-theme=dark] .source-type{color:#aab7cc;background:#22304a}html[data-theme=dark] .modal-note,html[data-theme=dark] .sync-card{color:#a6b2c7;background:#18243b}html[data-theme=dark] .toast{color:#111d35;background:#eef3ff;box-shadow:0 18px 44px #00000061}html[data-theme=dark] .recharts-cartesian-grid line{stroke:#273550}html[data-theme=dark] .recharts-default-tooltip{color:#edf2ff!important;background:#111d35!important;border-color:#2b3b5b!important}@media (width<=900px){.sidebar-collapsed .side-install span{display:flex}.sidebar-collapsed .side-install{justify-content:flex-start;padding:9px 11px}}@media (width<=680px){.topbar{grid-template-rows:48px 43px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:5px 9px;height:112px;padding:6px 12px 9px;display:grid}.app-shell{padding-top:112px}.mobile-menu{border:1px solid var(--line);background:#fff;border-radius:11px;grid-area:1/1;width:38px;height:38px}.mobile-brand{grid-area:1/2;align-items:center;gap:8px;min-width:0;display:flex}.mobile-brand img{border-radius:10px;width:34px;height:34px;box-shadow:0 7px 16px #12244c33}.mobile-brand span{flex-direction:column;min-width:0;display:flex}.mobile-brand b{letter-spacing:.12em;color:var(--navy);font-size:13px}.mobile-brand small{color:var(--muted);margin-top:2px;font-size:8px}.top-actions{grid-area:1/3;gap:5px}.top-actions .install-button,.top-actions .avatar{display:none}.icon-button{width:36px;height:36px}.global-search{border-radius:12px;grid-area:2/1/auto/-1;width:100%;max-width:none;height:42px;margin:0;padding:0 12px}.global-search input{font-size:10px}.global-search input::placeholder{color:#8490a4}.global-search kbd{display:none}.side-menu,.sidebar-collapsed .side-menu{width:min(318px,88vw);padding-bottom:calc(14px + env(safe-area-inset-bottom));border-radius:0 22px 22px 0}.side-menu nav button{height:45px}.content{padding:20px 12px calc(42px + env(safe-area-inset-bottom))}.page-head{margin-bottom:18px}.page-head h1{font-size:26px}.page-head>div>p{line-height:1.5}.metrics-grid{gap:10px}.metric{border-radius:14px}.card{border-radius:15px}.chart-wrap{height:245px}.notifications-popover{border-radius:17px;top:58px;box-shadow:0 24px 70px #0c193740}html[data-theme=dark] .mobile-menu{color:#c7d2e9;background:#14213a}}@media (width<=390px){.mobile-brand small{display:none}.metrics-grid{grid-template-columns:1fr 1fr}.metric{padding:13px}.metric strong{font-size:20px}.metric-head{align-items:flex-start}.metric-head>span:last-child{line-height:1.25}.page-head h1{font-size:24px}}@media (display-mode:standalone){.topbar{height:calc(68px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}.app-shell{padding-top:calc(68px + env(safe-area-inset-top))}.side-menu{padding-top:calc(18px + env(safe-area-inset-top))}}@media (display-mode:standalone) and (width<=680px){.topbar{height:calc(112px + env(safe-area-inset-top));padding-top:calc(6px + env(safe-area-inset-top))}.app-shell{padding-top:calc(112px + env(safe-area-inset-top))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
