:root{--brand:#2f6fd0;--brand-strong:#1f57ad;--brand-soft:#e7effb;--ground:#f3f5f9;--panel:#fff;--panel-2:#eef1f7;--line:#d7dde8;--ink:#161c26;--ink-2:#4a5568;--ink-3:#7b8697;--good:#1f9d57;--good-bg:#e4f4ea;--warn:#c67f12;--warn-bg:#faf0da;--crit:#cf3b3b;--crit-bg:#fbe6e6;--mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;--disp:"Barlow Semi Condensed",system-ui,sans-serif;--body:"Barlow",system-ui,sans-serif;--r:14px;--shadow:0 1px 0 #141c260a,0 6px 22px -12px #141c2638}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#0c1016;--panel:#141b25;--panel-2:#1b2431;--line:#27313f;--ink:#eef2f8;--ink-2:#a9b4c4;--ink-3:#6f7c8e;--brand:#5b9bf0;--brand-strong:#3f83e0;--brand-soft:#16283f;--good:#3fbf74;--good-bg:#10241a;--warn:#e0a63a;--warn-bg:#2a2010;--crit:#f0665f;--crit-bg:#2c1414;--shadow:0 1px 0 #0006,0 10px 26px -14px #000000b3}}:root[data-theme=dark]{--ground:#0c1016;--panel:#141b25;--panel-2:#1b2431;--line:#27313f;--ink:#eef2f8;--ink-2:#a9b4c4;--ink-3:#6f7c8e;--brand:#5b9bf0;--brand-strong:#3f83e0;--brand-soft:#16283f;--good:#3fbf74;--good-bg:#10241a;--warn:#e0a63a;--warn-bg:#2a2010;--crit:#f0665f;--crit-bg:#2c1414;--shadow:0 1px 0 #0006,0 10px 26px -14px #000000b3}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--ground);color:var(--ink);font-family:var(--body);-webkit-text-size-adjust:100%;font-size:15px}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.wrap{flex-direction:column;gap:12px;max-width:1240px;min-height:100vh;margin:0 auto;padding:14px;display:flex}.top{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);flex-wrap:wrap;align-items:center;gap:16px;padding:12px 16px;display:flex}.mach{align-items:center;gap:13px;min-width:0;display:flex}.mid{background:var(--brand);color:#fff;width:52px;height:52px;font-family:var(--disp);letter-spacing:.5px;border-radius:12px;flex:none;place-items:center;font-size:19px;font-weight:700;display:grid}.mach h1{font-family:var(--disp);letter-spacing:.2px;margin:0;font-size:21px;font-weight:700;line-height:1.05}.mach .sub{color:var(--ink-3);text-transform:uppercase;letter-spacing:.8px;margin-top:2px;font-size:12.5px}.top .spacer{flex:1}.chipset{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.chip{background:var(--panel-2);border:1px solid var(--line);color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:6px 12px;font-size:13px;display:inline-flex}.chip b{color:var(--ink);font-weight:600}.led{background:var(--good);width:9px;height:9px;box-shadow:0 0 0 3px color-mix(in srgb,var(--good) 22%,transparent);border-radius:50%}.led.run{animation:2.4s ease-in-out infinite pulse}.led.off{background:var(--ink-3);box-shadow:0 0 0 3px color-mix(in srgb,var(--ink-3) 22%,transparent)}@keyframes pulse{50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--good) 6%,transparent)}}.tbtn{appearance:none;border:1px solid var(--line);background:var(--panel-2);color:var(--ink-2);cursor:pointer;border-radius:9px;width:38px;height:38px;font-size:16px}.tbtn:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.machsel{appearance:none;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);font-family:var(--mono);cursor:pointer;border-radius:9px;max-width:220px;padding:8px 10px;font-size:13px}.grid{flex:1;grid-template-columns:1.55fr .9fr;gap:12px;display:grid}@media (max-width:900px){.grid{grid-template-columns:1fr}}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}.phead{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;display:flex}.phead .ey{font-family:var(--disp);text-transform:uppercase;letter-spacing:1.4px;color:var(--ink-3);font-size:12.5px;font-weight:600}.phead .spacer{flex:1}.ord{padding:16px}.ordtop{flex-wrap:wrap;align-items:flex-start;gap:14px;display:flex}.folio{font-family:var(--mono);background:var(--brand-soft);color:var(--brand-strong);border:1px solid color-mix(in srgb,var(--brand) 30%,transparent);border-radius:8px;padding:5px 11px;font-size:15px;font-weight:600}.ord h2{font-family:var(--disp);margin:8px 0 2px;font-size:20px;font-weight:600;line-height:1.1}.ord .artcode{color:var(--ink-3);font-family:var(--mono);font-size:13px}.pill{font-size:12px;font-weight:600;font-family:var(--disp);letter-spacing:.4px;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.pill.run{background:var(--good-bg);color:var(--good)}.pill.warn{background:var(--warn-bg);color:var(--warn)}.prog{grid-template-columns:1fr auto;align-items:end;gap:6px 18px;margin-top:18px;display:grid}.big{font-family:var(--mono);letter-spacing:-1px;font-size:44px;font-weight:600;line-height:.95}.big small{color:var(--ink-3);margin-left:6px;font-size:17px;font-weight:500}.goal{text-align:right;color:var(--ink-2);font-size:13px}.goal b{font-family:var(--mono);color:var(--ink);font-size:19px;font-weight:600;display:block}.bar{background:var(--panel-2);border:1px solid var(--line);border-radius:8px;grid-column:1/-1;height:12px;margin-top:6px;overflow:hidden}.bar>span{background:linear-gradient(90deg,var(--brand),var(--brand-strong));height:100%;display:block}.metaline{color:var(--ink-2);flex-wrap:wrap;grid-column:1/-1;gap:18px;margin-top:9px;font-size:13px;display:flex}.metaline b{color:var(--ink);font-family:var(--mono)}.rate.low{color:var(--crit)}.hours{flex-wrap:wrap;gap:5px;padding:0 16px 15px;display:flex}.hr{text-align:center;flex:42px;min-width:42px}.hr .dot{border:1px solid var(--line);background:var(--panel-2);height:30px;color:var(--ink-3);font-size:11px;font-family:var(--mono);border-radius:7px;place-items:center;display:grid}.hr.done .dot{background:var(--good-bg);color:var(--good);border-color:#0000;font-weight:600}.hr.now .dot{background:var(--brand);color:#fff;border-color:#0000;font-weight:600}.hr.miss .dot{background:var(--crit-bg);color:var(--crit);border-color:#0000}.hr .t{color:var(--ink-3);font-size:10px;font-family:var(--mono);margin-top:4px}.acts{grid-template-columns:repeat(3,1fr);gap:10px;padding:0 16px 16px;display:grid}.acts.n4{grid-template-columns:repeat(2,1fr)}@media (max-width:480px){.acts.n4{grid-template-columns:1fr}}.act{appearance:none;cursor:pointer;font-family:var(--disp);letter-spacing:.3px;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);border-radius:11px;flex-direction:column;align-items:center;gap:7px;padding:15px 10px;font-size:15px;font-weight:600;transition:transform 60ms,border-color .15s;display:flex}.act:active{transform:translateY(1px)scale(.99)}.act:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.act:disabled{opacity:.55;cursor:not-allowed}.act .ic{font-size:21px;line-height:1}.act .lb{font-size:14px}.act.primary{background:var(--brand);border-color:var(--brand);color:#fff}.act.close{background:var(--good);border-color:var(--good);color:#fff;grid-column:1/-1}.rolls{padding:6px 16px 16px}.roll{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;padding:11px 0;display:grid}.roll:last-child{border-bottom:0}.roll .rc{font-family:var(--mono);font-size:14px;font-weight:600}.roll .seq{background:var(--brand-soft);width:30px;height:30px;color:var(--brand-strong);font-family:var(--mono);border-radius:8px;place-items:center;font-size:13px;font-weight:600;display:grid}.roll .w{font-family:var(--mono);text-align:right;font-size:14px}.roll .w small{color:var(--ink-3)}.roll .qc{font-size:11px;font-weight:600;font-family:var(--disp);text-transform:uppercase;letter-spacing:.4px;border-radius:6px;padding:3px 8px}.qc.ok{background:var(--good-bg);color:var(--good)}.qc.hold{background:var(--warn-bg);color:var(--warn)}.qc.pendiente{background:var(--panel-2);color:var(--ink-2)}.empty{color:var(--ink-3);text-align:center;padding:22px 16px;font-size:13px}.q{flex-direction:column;display:flex}.qsearch{border-bottom:1px solid var(--line);padding:10px 16px}.qsearch input{appearance:none;border:1px solid var(--line);background:var(--panel-2);width:100%;color:var(--ink);font-family:var(--body);border-radius:9px;padding:9px 11px;font-size:13.5px}.qsearch input:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.qi{border-bottom:1px solid var(--line);cursor:pointer;text-align:left;width:100%;color:inherit;font:inherit;background:0 0;border-top:0;border-left:0;border-right:0;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:13px 16px;display:grid}.qi:last-child{border-bottom:0}.qi:hover{background:var(--panel-2)}.qi.sel{background:var(--brand-soft)}.qi:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}.prio{width:26px;height:26px;font-family:var(--mono);background:var(--panel-2);color:var(--ink-2);border:1px solid var(--line);border-radius:7px;place-items:center;font-size:13px;font-weight:600;display:grid}.qi .qf{font-family:var(--mono);font-size:13.5px;font-weight:600}.qi .qn{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:1px;font-size:12.5px;overflow:hidden}.qi .qm{text-align:right;font-family:var(--mono);color:var(--ink-3);font-size:12.5px}.qwar{color:var(--warn);font-size:11px;font-family:var(--disp);text-transform:uppercase;letter-spacing:.5px;background:var(--warn-bg);border-bottom:1px solid var(--line);padding:8px 16px}#toast{background:var(--ink);color:var(--ground);box-shadow:var(--shadow);opacity:0;pointer-events:none;z-index:40;text-align:center;border-radius:10px;max-width:92vw;padding:12px 20px;font-weight:500;transition:all .25s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(20px)}#toast.on{opacity:1;transform:translate(-50%)translateY(0)}#toast.err{background:var(--crit);color:#fff}.ov{z-index:30;background:#060a108c;place-items:center;padding:16px;display:none;position:fixed;inset:0}.ov.on{display:grid}.modal{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;width:min(440px,94vw);max-height:92vh;padding:0;overflow:hidden auto}.modal h3{font-family:var(--disp);border-bottom:1px solid var(--line);background:var(--panel);align-items:center;gap:10px;margin:0;padding:16px 20px;font-size:20px;display:flex;position:sticky;top:0}.modal .body{padding:20px}.field{margin-bottom:14px}.field label{font-family:var(--disp);text-transform:uppercase;letter-spacing:.6px;color:var(--ink-3);margin-bottom:6px;font-size:12px;display:block}.field input,.field select,.field textarea{appearance:none;border:1px solid var(--line);background:var(--panel-2);width:100%;color:var(--ink);font-family:var(--mono);border-radius:9px;padding:10px 11px;font-size:14px}.field textarea{font-family:var(--body);resize:vertical;min-height:60px}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.checkrow{color:var(--ink-2);align-items:center;gap:8px;margin-bottom:14px;font-size:13.5px;display:flex}.scanbox{border:2px dashed color-mix(in srgb,var(--brand) 45%,var(--line));text-align:center;background:var(--brand-soft);border-radius:12px;padding:22px}.scanbox .code{font-family:var(--mono);color:var(--brand-strong);letter-spacing:1px;word-break:break-all;margin-top:8px;font-size:26px;font-weight:600}.scanbox .hint{color:var(--ink-2);margin-top:8px;font-size:13px}.mrow{gap:10px;margin-top:16px;display:flex}.mrow .act{flex:1}.foot{color:var(--ink-3);text-align:center;font-size:11.5px;font-family:var(--disp);letter-spacing:.6px;text-transform:uppercase;padding:4px 0 2px}.legend{color:var(--ink-3);flex-wrap:wrap;gap:14px;padding:0 16px 14px;font-size:11px;display:flex}.legend span{align-items:center;gap:5px;display:inline-flex}.sw{border-radius:3px;width:10px;height:10px;display:inline-block}.errbanner{background:var(--crit-bg);color:var(--crit);border:1px solid color-mix(in srgb,var(--crit) 30%,transparent);border-radius:10px;margin-bottom:12px;padding:10px 14px;font-size:13px}.hours-wrap{padding:0 16px 8px}.hours-head{font-family:var(--disp);text-transform:uppercase;letter-spacing:1px;color:var(--ink-3);margin:2px 0 8px;font-size:11.5px;font-weight:600}.hours-wrap .hours{padding:0}.shell{min-height:100vh;display:flex}.sidebar{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;flex:none;gap:2px;width:232px;padding:18px 12px;display:flex}.sidebar .brand{align-items:center;gap:10px;padding:4px 10px 20px;display:flex}.sidebar .brand .mk{background:var(--brand);color:#fff;width:36px;height:36px;font-family:var(--disp);border-radius:10px;flex:none;place-items:center;font-size:15px;font-weight:700;display:grid}.sidebar .brand .bt{font-family:var(--disp);font-size:17px;font-weight:700;line-height:1.1}.sidebar .brand .bt small{color:var(--ink-3);text-transform:uppercase;letter-spacing:.6px;font-size:11px;font-weight:500;display:block}.navlink{color:var(--ink-2);font-family:var(--disp);letter-spacing:.2px;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;font-size:15px;font-weight:600;text-decoration:none;display:flex}.navlink .ic{text-align:center;flex:none;width:22px;font-size:19px}.navlink:hover{background:var(--panel-2);color:var(--ink)}.navlink.active{background:var(--brand-soft);color:var(--brand-strong)}.navlink:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.sidebar .foot2{color:var(--ink-3);font-size:11px;font-family:var(--disp);text-transform:uppercase;letter-spacing:.6px;margin-top:auto;padding:10px}.content{flex-direction:column;flex:1;min-width:0;display:flex}.shellheader{border-bottom:1px solid var(--line);background:var(--panel);z-index:5;align-items:center;gap:14px;padding:14px 22px;display:flex;position:sticky;top:0}.shellheader h1{font-family:var(--disp);letter-spacing:.2px;margin:0;font-size:19px;font-weight:700}.shellheader .spacer{flex:1}.mobilenav{display:none}@media (max-width:860px){.sidebar{display:none}.mobilenav{background:var(--panel);border-bottom:1px solid var(--line);gap:6px;padding:10px 12px;display:flex;overflow-x:auto}.mobilenav .navlink{white-space:nowrap;flex:none;padding:9px 13px;font-size:13.5px}}.shellmain{flex-direction:column;flex:1;gap:18px;width:100%;max-width:1280px;margin:0 auto;padding:22px;display:flex}@media (max-width:640px){.shellmain{padding:14px}}.kpis{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}@media (max-width:900px){.kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.kpis{grid-template-columns:1fr}}.kpi{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:16px 18px}.kpi .kl{font-family:var(--disp);text-transform:uppercase;letter-spacing:1px;color:var(--ink-3);font-size:12px;font-weight:600}.kpi .kv{font-family:var(--mono);letter-spacing:-.5px;margin-top:6px;font-size:32px;font-weight:600}.kpi .kv small{color:var(--ink-3);letter-spacing:0;margin-top:4px;font-size:12.5px;font-weight:500;display:block}.section-title{font-family:var(--disp);margin:0;font-size:16px;font-weight:700}.section-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.section-head .spacer{flex:1}.linkbtn{font-family:var(--disp);color:var(--brand-strong);background:var(--brand-soft);border:1px solid #0000;border-radius:9px;padding:8px 14px;font-size:13.5px;font-weight:600;text-decoration:none}.linkbtn:hover{border-color:color-mix(in srgb,var(--brand) 30%,transparent)}.shortcuts{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}@media (max-width:900px){.shortcuts{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.shortcuts{grid-template-columns:1fr}}.shortcut{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);color:var(--ink);flex-direction:column;gap:8px;padding:18px;text-decoration:none;transition:transform 60ms,border-color .15s;display:flex}.shortcut:hover{border-color:color-mix(in srgb,var(--brand) 35%,transparent);transform:translateY(-1px)}.shortcut .ic{font-size:26px}.shortcut .lb{font-family:var(--disp);font-size:16px;font-weight:700}.shortcut .ds{color:var(--ink-3);font-size:12.5px}.searchbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.searchbar input[type=search],.searchbar input[type=text]{appearance:none;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);font-family:var(--body);border-radius:9px;flex:1;min-width:220px;padding:11px 14px;font-size:14.5px}.searchbar input:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.searchbar select{appearance:none;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);font-family:var(--body);border-radius:9px;padding:11px 14px;font-size:14.5px}.searchbar button{appearance:none;border:1px solid var(--brand);background:var(--brand);color:#fff;font-family:var(--disp);cursor:pointer;border-radius:9px;padding:11px 18px;font-size:14.5px;font-weight:600}.searchbar button:focus-visible{outline:2px solid var(--brand-strong);outline-offset:2px}.table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden}.table-scroll{overflow-x:auto}table.dtable{border-collapse:collapse;width:100%;font-size:14px}table.dtable th{text-align:left;font-family:var(--disp);text-transform:uppercase;letter-spacing:.6px;color:var(--ink-3);border-bottom:1px solid var(--line);white-space:nowrap;background:var(--panel-2);padding:12px 16px;font-size:11.5px;font-weight:600}table.dtable td{border-bottom:1px solid var(--line);vertical-align:middle;padding:13px 16px}table.dtable tbody tr:last-child td{border-bottom:0}table.dtable tbody tr.rowlink:hover{background:var(--panel-2);cursor:pointer}table.dtable td.num,table.dtable th.num{text-align:right;font-family:var(--mono)}table.dtable .code{font-family:var(--mono);font-weight:600}table.dtable .desc{color:var(--ink-2)}table.dtable a.rowa{color:inherit;text-decoration:none;display:block}.rowlink-cell{padding:0}.rowlink-cell a{color:inherit;padding:13px 16px;text-decoration:none;display:block}.emptytable{text-align:center;color:var(--ink-3);padding:36px 16px;font-size:14px}.pill.info{background:var(--brand-soft);color:var(--brand-strong)}.pill.gray{background:var(--panel-2);color:var(--ink-2)}.pager{flex-wrap:wrap;align-items:center;gap:10px;padding:14px 16px;display:flex}.pager .pspacer{flex:1}.pager .pinfo{color:var(--ink-3);font-size:13px}.pager a.pbtn,.pager span.pbtn{border:1px solid var(--line);background:var(--panel-2);min-width:38px;height:38px;color:var(--ink);font-family:var(--mono);border-radius:9px;justify-content:center;align-items:center;padding:0 10px;font-size:13.5px;text-decoration:none;display:inline-flex}.pager a.pbtn:hover{border-color:color-mix(in srgb,var(--brand) 35%,transparent)}.pager span.pbtn.dis{color:var(--ink-3);opacity:.5;pointer-events:none}.procgroups{flex-direction:column;gap:18px;display:flex}.procgroup h2{font-family:var(--disp);align-items:center;gap:8px;margin:0 0 10px;font-size:15px;font-weight:700;display:flex}.procgroup h2 .cnt{font-family:var(--mono);color:var(--ink-3);font-size:12px;font-weight:500}.machgrid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;display:grid}.machbtn{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--ink);border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px;text-decoration:none;transition:transform 60ms,border-color .15s;display:flex}.machbtn:hover{border-color:color-mix(in srgb,var(--brand) 40%,transparent);transform:translateY(-1px)}.machbtn .mc{font-family:var(--mono);color:var(--brand-strong);font-size:15px;font-weight:700}.machbtn .md{color:var(--ink-2);font-size:12.5px;line-height:1.25}.togglewrap{text-align:center;padding:6px 0}.ficha{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:20px}.ficha h1{font-family:var(--disp);margin:0 0 2px;font-size:22px}.ficha .fcode{font-family:var(--mono);color:var(--ink-3);font-size:13.5px}.fgrid{grid-template-columns:repeat(4,1fr);gap:16px;margin-top:18px;display:grid}@media (max-width:760px){.fgrid{grid-template-columns:repeat(2,1fr)}}.fitem .fl{font-family:var(--disp);text-transform:uppercase;letter-spacing:.8px;color:var(--ink-3);font-size:11px;font-weight:600}.fitem .fv{margin-top:4px;font-size:15px;font-weight:500}.backlink{color:var(--ink-2);font-family:var(--disp);align-items:center;gap:6px;font-size:13.5px;font-weight:600;text-decoration:none;display:inline-flex}.backlink:hover{color:var(--ink)}.opsel{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:8px;max-width:200px;padding:4px 8px;font-size:13px;font-weight:600}.opsel:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.hub-hero{padding:2px 2px 0}.hub-hero h2{font-family:var(--disp);letter-spacing:-.2px;margin:0 0 4px;font-size:23px;font-weight:800}.hub-hero p{color:var(--ink-3);margin:0;font-size:13.5px}.shortcut.soon{opacity:.6;cursor:default;position:relative}.shortcut.soon:hover{border-color:var(--line);transform:none}.soon-badge{font-family:var(--disp);text-transform:uppercase;letter-spacing:.6px;color:var(--ink-3);background:var(--panel-2);border:1px solid var(--line);border-radius:999px;align-self:flex-start;margin-top:2px;padding:3px 9px;font-size:10px;font-weight:700}.plantacards{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;display:grid}.plantacard{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);color:var(--ink);flex-direction:column;gap:5px;padding:20px;text-decoration:none;transition:transform 60ms,border-color .15s;display:flex}.plantacard:hover{border-color:color-mix(in srgb,var(--brand) 40%,transparent);transform:translateY(-2px)}.plantacard.alt{background:var(--panel-2)}.plantacard .pcic{font-size:26px;line-height:1}.plantacard .pcname{font-family:var(--disp);font-size:17px;font-weight:700}.plantacard .pccount{color:var(--ink-3);font-size:12.5px;font-family:var(--mono)}.widgets-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}@media (max-width:1080px){.widgets-grid{grid-template-columns:1fr 1fr}}@media (max-width:700px){.widgets-grid{grid-template-columns:1fr}}.widget-body{padding:14px 16px 18px}.widget-body svg{width:100%;height:auto;display:block}.chart-empty{text-align:center;color:var(--ink-3);padding:34px 10px;font-size:13px}.breadcrumb{font-family:var(--disp);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.breadcrumb .crumb{align-items:center;gap:6px;display:inline-flex}.breadcrumb a{color:var(--ink-2);font-weight:600;text-decoration:none}.breadcrumb a:hover{color:var(--brand-strong)}.breadcrumb .here{color:var(--ink);font-weight:700}.breadcrumb .sep{color:var(--ink-3)}.machbtn.lg{padding:22px 18px}.machbtn.lg .mc{font-size:19px}.machbtn.lg .md{font-size:14px}.machgrid.lg{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.scanstage{justify-content:center;padding:4px 0 2px;display:flex}.bobina-svg{width:100%;max-width:220px;height:auto}.scan-beam{animation:2.4s ease-in-out infinite scanmove}@keyframes scanmove{0%,to{transform:translateY(0)}50%{transform:translateY(96px)}}@media (prefers-reduced-motion:reduce){.scan-beam{opacity:.55;animation:none}}.ticket{background:var(--panel);border-top:2px dashed var(--line);border-bottom:2px dashed var(--line);border-left:1px solid var(--line);border-right:1px solid var(--line);text-align:center;box-shadow:var(--shadow);border-radius:6px;margin-top:12px;padding:14px 16px}.ticket-top{font-family:var(--disp);letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-3);font-size:10.5px;font-weight:700}.ticket-code{font-family:var(--mono);letter-spacing:.5px;color:var(--ink);word-break:break-all;margin-top:6px;font-size:23px;font-weight:700}.ticket-code .ph{color:var(--ink-3);opacity:.55}.ticket-hint{color:var(--ink-3);margin-top:6px;font-size:11.5px;line-height:1.35}.formcard{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);max-width:680px;padding:22px}.formgrid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.formgrid .full{grid-column:1/-1}@media (max-width:560px){.formgrid{grid-template-columns:1fr}}.okbanner{background:var(--good-bg);color:var(--good);border:1px solid color-mix(in srgb,var(--good) 30%,transparent);border-radius:10px;margin-bottom:12px;padding:10px 14px;font-size:13px}.autocomplete{position:relative}.autocomplete .aclist{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);z-index:20;border-radius:10px;max-height:260px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.autocomplete .acitem{text-align:left;width:100%;color:inherit;font:inherit;cursor:pointer;border:0;border-bottom:1px solid var(--line);background:0 0;padding:10px 12px;display:block}.autocomplete .acitem:last-child{border-bottom:0}.autocomplete .acitem:hover,.autocomplete .acitem:focus-visible{background:var(--panel-2)}.autocomplete .acitem .acc{font-family:var(--mono);font-size:13.5px;font-weight:600}.autocomplete .acitem .acd{color:var(--ink-2);margin-top:1px;font-size:12.5px}.pickedchip{background:var(--brand-soft);color:var(--brand-strong);border:1px solid color-mix(in srgb,var(--brand) 30%,transparent);border-radius:9px;align-items:center;gap:8px;margin-top:6px;padding:9px 12px;font-size:13.5px;display:inline-flex}.pickedchip button{appearance:none;color:inherit;cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:15px;font-weight:700;line-height:1}.rowacts{flex-wrap:wrap;gap:6px;display:flex}.minibtn{appearance:none;border:1px solid var(--line);background:var(--panel-2);color:var(--ink-2);font-family:var(--disp);cursor:pointer;white-space:nowrap;border-radius:7px;padding:6px 10px;font-size:12px;font-weight:600}.minibtn:hover{border-color:color-mix(in srgb,var(--brand) 35%,transparent);color:var(--ink)}.minibtn:disabled{opacity:.5;cursor:not-allowed}.minibtn.warn{color:var(--warn)}.minibtn.crit{color:var(--crit)}.ruta-list{flex-direction:column;gap:8px;padding:14px 16px;display:flex}.ruta-step{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;align-items:center;gap:12px;padding:10px 14px;display:flex}.ruta-step .seqn{background:var(--brand-soft);width:28px;height:28px;color:var(--brand-strong);font-family:var(--mono);border-radius:8px;flex:none;place-items:center;font-size:13px;font-weight:700;display:grid}.ruta-step .procn{font-family:var(--mono);font-weight:600}.ruta-step .maqn{color:var(--ink-2);font-size:13px}.ruta-step .maqn.na{color:var(--ink-3);font-style:italic}.fieldrow-big{gap:12px;margin-top:14px;display:flex}.fieldbig{flex:1}.fieldbig label{font-family:var(--disp);text-transform:uppercase;letter-spacing:.6px;color:var(--ink-3);text-align:center;margin-bottom:6px;font-size:11.5px;display:block}.fieldbig input{text-align:center;appearance:none;width:100%;font-family:var(--mono);border:1px solid var(--line);background:var(--panel-2);color:var(--ink);border-radius:12px;padding:12px 6px;font-size:27px;font-weight:700}.fieldbig input:focus-visible{outline:2px solid var(--brand);outline-offset:1px}.crumbs{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:8px;padding:2px 4px 0;font-size:13px;display:flex}.crumbs a{color:var(--brand);border-radius:6px;padding:4px 6px;font-weight:600;text-decoration:none}.crumbs a:hover,.crumbs a:focus-visible{background:var(--brand-soft);outline:none}.crumbs span{color:var(--line)}.crumbs b{color:var(--ink);font-family:var(--mono)}.pill.crit{background:var(--crit-bg);color:var(--crit)}.subtabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:6px;padding-bottom:0;display:flex}.subtab{appearance:none;cursor:pointer;font-family:var(--disp);color:var(--ink-2);background:0 0;border:1px solid #0000;border-bottom-width:2px;margin-bottom:-1px;padding:10px 14px;font-size:13.5px;font-weight:600;text-decoration:none}.subtab:hover{color:var(--ink)}.subtab.active{color:var(--brand-strong);border-bottom-color:var(--brand-strong)}.almselect{flex-wrap:wrap;gap:8px;display:flex}.almbtn{appearance:none;cursor:pointer;background:var(--panel);border:1px solid var(--line);color:var(--ink);border-radius:11px;flex-direction:column;align-items:flex-start;gap:2px;min-width:108px;padding:9px 13px;text-decoration:none;display:flex}.almbtn:hover{border-color:color-mix(in srgb,var(--brand) 40%,transparent)}.almbtn.active{background:var(--brand-soft);border-color:var(--brand);color:var(--brand-strong)}.almbtn .ac{font-family:var(--mono);font-size:14.5px;font-weight:700}.almbtn .an{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;max-width:130px;font-size:11px;overflow:hidden}.almbtn.active .an{color:var(--brand-strong);opacity:.8}.almbtn .aq{color:var(--ink-3);font-size:11px;font-family:var(--mono)}.almbtn.active .aq{color:var(--brand-strong)}.ubicchips{flex-wrap:wrap;gap:7px;display:flex}.ubicchip{appearance:none;cursor:pointer;background:var(--panel-2);border:1px solid var(--line);color:var(--ink-2);font-size:12.5px;font-family:var(--mono);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;text-decoration:none;display:inline-flex}.ubicchip:hover{border-color:color-mix(in srgb,var(--brand) 35%,transparent);color:var(--ink)}.ubicchip.active{background:var(--brand-soft);border-color:var(--brand);color:var(--brand-strong)}.pagetitle{font-family:var(--disp);margin:6px 0 2px;font-size:24px;font-weight:700}.pagelead{color:var(--ink-2);margin:0 0 14px}.tras{max-width:820px}.tras-pasos{gap:8px;margin:0 0 14px;padding:0;list-style:none;display:flex}.tras-pasos li{text-align:center;background:var(--panel-2);color:var(--ink-3);font-family:var(--disp);border:1px solid var(--line);border-radius:10px;flex:1;padding:10px;font-weight:600}.tras-pasos li.on{background:var(--brand-soft);color:var(--brand-strong);border-color:color-mix(in srgb,var(--brand) 35%,transparent)}.tras-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);flex-direction:column;gap:14px;padding:18px;display:flex}.tras .field label{font-family:var(--disp);text-transform:uppercase;letter-spacing:.8px;color:var(--ink-3);margin-bottom:6px;font-size:12px;display:block}.tras .big{border:1px solid var(--line);background:var(--panel);width:100%;color:var(--ink);border-radius:10px;padding:14px 12px;font-size:18px}.tras-lista{flex-direction:column;gap:6px;max-height:340px;display:flex;overflow:auto}.tras-item{text-align:left;border:1px solid var(--line);background:var(--panel-2);color:var(--ink);font:inherit;cursor:pointer;border-radius:10px;grid-template-columns:150px 1fr 140px 90px;align-items:center;gap:10px;padding:12px;display:grid}.tras-item:hover{border-color:var(--brand)}.tras-item.sel{background:var(--brand-soft);border-color:var(--brand)}.tras-art{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tras-resumen{background:var(--panel-2);color:var(--ink-2);border-radius:10px;padding:10px 12px}.tras-confirm{gap:8px;display:grid}.tras-confirm div{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:8px 0;display:flex}.banner{border-radius:10px;padding:12px 14px;font-weight:600}.banner.ok{background:var(--good-bg);color:var(--good)}.banner.err{background:var(--crit-bg);color:var(--crit)}.muted{color:var(--ink-3)}@media (max-width:700px){.tras-item{grid-template-columns:1fr 1fr}}.etiqueta-page{background:var(--ground);flex-direction:column;align-items:center;gap:16px;min-height:100vh;padding:24px 14px;display:flex}.etiqueta-toolbar{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.etiqueta-toolbar .back{color:var(--ink-2);font-family:var(--disp);font-size:13.5px;font-weight:600;text-decoration:none}.etiqueta{color:#000;width:340px;font-family:var(--mono);box-shadow:var(--shadow);background:#fff;border:1px solid #000;padding:14px}.etiqueta .eti-header{border-bottom:2px solid #000;justify-content:space-between;align-items:baseline;margin-bottom:8px;padding-bottom:6px;display:flex}.etiqueta .eti-brand{font-family:var(--disp);letter-spacing:.5px;font-size:15px;font-weight:800}.etiqueta .eti-tipo{text-transform:uppercase;letter-spacing:1px;font-size:11px}.etiqueta .eti-codigo{text-align:center;letter-spacing:.5px;word-break:break-all;border:2px solid #000;border-radius:4px;margin:4px 0 8px;padding:6px 4px;font-size:24px;font-weight:700}.etiqueta .eti-row{border-bottom:1px dotted #999;justify-content:space-between;gap:10px;padding:3px 0;font-size:12px;display:flex}.etiqueta .eti-row b{text-align:right;font-weight:700}.etiqueta .eti-barcode{text-align:center;margin-top:10px}.etiqueta .eti-barcode svg{width:100%;height:48px;display:block}.etiqueta .eti-barcode .txt{letter-spacing:1px;margin-top:2px;font-size:11px}.etiqueta .eti-foot{text-align:center;color:#333;margin-top:8px;font-size:9.5px}.etiqueta .eti-obs{border-top:1px dashed #999;margin-top:8px;padding-top:6px;font-size:11px}.eti-historial{width:340px;color:var(--ink-2);font-size:12px}.eti-historial .hline{border-bottom:1px solid var(--line);justify-content:space-between;padding:4px 0;display:flex}@media print{@page{size:101.6mm 152.4mm;margin:3mm}body *{visibility:hidden}.etiqueta,.etiqueta *{visibility:visible}.etiqueta{box-shadow:none;border:none;width:100%;position:absolute;top:0;left:0}.no-print{display:none!important}}
