:root{--text:#d4d4d8;--text-h:#f4f4f5;--bg:#18181b;--surface:#27272a;--border:#3f3f46;--accent:#3b82f6;--accent-text:#fff;--danger:#b91c1c;--header-bg:#1f1f23;--tooltip-bg:#1f1f23;--logo-ink:#e3e3e3;--logo-subtitle:#9a9a9a;--warn-text:#ffb44a;--ok-text:#4ade80;--bad-text:#f87171;--urgent-high:#ef4444;--urgent-medium:#fb923c;--up-text:#60ff4a;--down-text:#ff6b6b;--muted-text:#a1a1aa;--wash:#ffffff04;--wash-strong:#ffffff05;--login-card-bg:#27272a40;--login-loader-bg:#27272a59;--fam-text-S:#facc15;--fam-text-C:#4ade80;--fam-text-P:#3b82f6;--donut-ring:transparent;--field-bg:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);font:16px/1.5 system-ui,Segoe UI,Roboto,sans-serif}:root[data-theme=light]{--text:#3f3f46;--text-h:#18181b;--bg:#ececee;--surface:#fff;--border:#a1a1aa;--header-bg:#fff;--tooltip-bg:#fff;--logo-ink:#52525b;--logo-subtitle:#71717a;--warn-text:#92400e;--ok-text:#15803d;--bad-text:#b91c1c;--urgent-high:#dc2626;--urgent-medium:#ea580c;--up-text:#15803d;--down-text:#b91c1c;--muted-text:#5f5f68;--wash:#00000004;--wash-strong:#00000008;--login-card-bg:#fff6;--login-loader-bg:#ffffff80;--fam-text-S:#a16207;--fam-text-C:#15803d;--fam-text-P:#1d4ed8;--donut-ring:#0003;--field-bg:#fff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=light] :is(.customer-type-badge,.movement-type-badge,.need-status-badge,.presence-badge,.quality-status-badge,.quote-status-badge,.mnt-badge,.incomplete-badge,.tab-count,.gantt-bar,.gantt-swatch,.legend-dot,.legend-line,.kg-chart-tooltip-row i,.heat-badge,.heat-dot){border-color:#0000;box-shadow:inset 0 0 0 1px #0003}:root[data-theme=light] .gantt-bar-hover{box-shadow:0 0 0 2px var(--text-h)}*{box-sizing:border-box}body{margin:0}input[type=number]{appearance:textfield}input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}h1,h2{color:var(--text-h);margin:0 0 8px}button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--accent);color:var(--accent-text);border-radius:6px;padding:8px 16px}button:disabled{opacity:.6;cursor:not-allowed}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex;position:relative}.login-background{pointer-events:none;width:100%;height:100%;display:block;position:fixed;inset:0}.login-card{background:var(--login-card-bg);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:16px;width:100%;max-width:360px;padding:32px;display:flex;position:relative}.login-logo{align-self:center}.subtitle{text-align:center;margin-bottom:8px}.login-card label{text-align:left;flex-direction:column;gap:4px;font-size:14px;display:flex}.login-card input{font:inherit;border:1px solid var(--border);background:var(--field-bg);color:var(--text-h);border-radius:6px;padding:8px 10px}.password-field{display:flex;position:relative}.password-field input,.card .password-field input{flex:1;padding-right:38px}.password-field input::-ms-reveal{display:none}.password-toggle{color:var(--text);background:0 0;border:none;padding:6px;position:absolute;top:50%;right:2px;transform:translateY(-50%)}.password-toggle:hover{color:var(--text-h)}.error{color:var(--danger);font-size:14px}.update-banner{z-index:40;background:var(--accent);color:#fff;text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;padding:8px 16px;font-size:14px;font-weight:600;animation:.25s ease-out update-banner-in;display:flex;position:relative}.update-banner button{color:#1d4ed8;background:#fff;border-color:#fff;padding:4px 14px;font-weight:700}.update-banner button:hover{background:#dbeafe}@keyframes update-banner-in{0%{opacity:0;transform:translateY(-100%)}}@media (prefers-reduced-motion:reduce){.update-banner{animation:none}}.loading-screen{text-align:center;justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.logo-loader{--logo-loader-turn:1.6s}.logo-loader-dot{animation:logo-loader-orbit var(--logo-loader-turn) infinite}@keyframes logo-loader-orbit{0%,5%{animation-timing-function:ease-in-out;transform:translate(0)}12.5%,17.5%{animation-timing-function:ease-in-out;transform:translate(62px)}25%,30%{animation-timing-function:ease-in-out;transform:translate(124px)}37.5%,42.5%{animation-timing-function:ease-in-out;transform:translate(124px,62px)}50%,55%{animation-timing-function:ease-in-out;transform:translate(124px,124px)}62.5%,67.5%{animation-timing-function:ease-in-out;transform:translate(62px,124px)}75%,80%{animation-timing-function:ease-in-out;transform:translateY(124px)}87.5%,92.5%{animation-timing-function:ease-in-out;transform:translateY(62px)}to{transform:translate(0)}}.login-card-leaving{pointer-events:none;animation:.35s ease-in forwards login-card-leave}@keyframes login-card-leave{to{opacity:0;transform:scale(.96)}}.login-loader-card{background:var(--login-loader-bg);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border:1px solid var(--border);border-radius:12px;flex-direction:column;align-items:center;gap:10px;padding:16px 20px;animation:.35s ease-out login-loader-enter;display:flex;position:relative}.login-loader-card .sign-in-intro-text{font-size:14px}@keyframes login-loader-enter{0%{opacity:0;transform:scale(.96)}}.login-page-leaving{animation:.35s ease-in forwards login-page-leave}@keyframes login-page-leave{to{opacity:0}}.dashboard-enter{animation:.5s ease-out dashboard-enter}@keyframes dashboard-enter{0%{opacity:0;transform:translateY(8px)}}@media (prefers-reduced-motion:reduce){.login-card-leaving,.login-loader-card,.login-page-leaving,.dashboard-enter{animation:none}}.sign-in-intro-text{color:var(--logo-ink);margin:0;font-family:Arial Black,Arial,sans-serif;font-size:18px;font-weight:900}@media (prefers-reduced-motion:reduce){.logo-loader-dot{animation:none}}.dashboard-shell{flex-direction:column;min-height:100vh;display:flex}.dashboard-header{background:var(--header-bg);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.header-brand{align-items:center;gap:12px;display:flex}.logo-button{background:0 0;border:none;border-radius:6px;padding:0;line-height:0;transition:opacity .15s}.logo-button:hover{opacity:.8}.icon-button{justify-content:center;align-items:center;padding:8px;line-height:0;display:inline-flex}.icon-button-sm{padding:6px}.back-button{margin-bottom:8px}.sort-header{align-items:center;gap:6px;display:inline-flex}.sort-button{border:1px solid var(--border);color:var(--text-h);background:0 0;padding:3px;line-height:0;display:inline-flex}.sort-button:hover{border-color:var(--accent);background:0 0}.sort-button-inactive{opacity:.5}.sort-button-inactive:hover{opacity:1}.header-logo{width:auto;height:44px;padding:4px 14px;display:block}.role-badge{background:var(--accent);color:var(--accent-text);border-radius:999px;margin-left:12px;padding:2px 10px;font-size:13px;font-weight:700}.dashboard-content{flex:1;width:100%;max-width:1048px;margin:0 auto;padding:24px 24px 112px}.screen-narrow{max-width:852px;margin:0 auto}.mascot{z-index:18;color:var(--logo-ink);pointer-events:none;flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:fixed;bottom:8px;right:12px}.mascot-stage{width:88px;height:88px;position:relative}.mascot-svg{width:100%;height:100%;display:block;position:absolute;inset:0}.mascot-in{animation:.45s ease-out both mascot-fade-in}.mascot-out{animation:.45s ease-in both mascot-fade-out}@keyframes mascot-fade-in{0%{opacity:0}}@keyframes mascot-fade-out{0%,30%{opacity:1}to{opacity:0}}.mascot .tdo-root[aria-label=Reposo] .tdo-blink{animation:2.6s infinite mascot-blink}@keyframes mascot-blink{0%,88%,to{transform:scaleY(1)}93%{transform:scaleY(.1)}}.mascot .tdo-root .tdo-enter{animation:none}.mascot-bubble{background:var(--surface);border:1px solid var(--border);max-width:min(260px,100vw - 32px);color:var(--text-h);border-radius:12px;margin-right:18px;padding:8px 12px;font-size:13px;font-weight:700;line-height:1.4;animation:.25s cubic-bezier(.2,.8,.2,1) mascot-bubble-in;position:relative;box-shadow:0 8px 20px #0000004d}.mascot-bubble:after{content:"";background:var(--surface);border-right:1px solid var(--border);border-bottom:1px solid var(--border);width:12px;height:12px;position:absolute;bottom:-7px;right:24px;transform:rotate(45deg)}@keyframes mascot-bubble-in{0%{opacity:0;transform:translateY(6px)scale(.96)}}.mascot-button{pointer-events:auto;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:50%;padding:0;transition:transform .15s}.mascot-button:hover{transform:scale(1.06)}.mascot-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tubin-chat{pointer-events:auto;background:var(--surface);border:1px solid var(--border);width:min(360px,100vw - 24px);height:min(460px,100vh - 150px);color:var(--text);transform-origin:100% 100%;border-radius:14px;flex-direction:column;animation:.2s cubic-bezier(.2,.8,.2,1) mascot-bubble-in;display:flex;overflow:hidden;box-shadow:0 12px 32px #00000059}.tubin-chat-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:10px 10px 10px 14px;display:flex}.tubin-chat-header strong{color:var(--text-h);font-size:15px;display:block}.tubin-icon{border:1px solid var(--border);width:32px;height:32px;color:var(--text);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex}.tubin-icon:hover:not(:disabled){color:var(--text-h);border-color:var(--accent)}.tubin-chat-messages{flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow-y:auto}.tubin-chat-empty p{margin:0 0 8px;font-size:13px}.tubin-chat-examples{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.tubin-chat-examples button{border:1px solid var(--border);color:var(--accent);cursor:pointer;text-align:left;background:0 0;border-radius:999px;padding:6px 10px;font-size:13px}.tubin-chat-examples button:hover{border-color:var(--accent)}.tubin-msg{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:12px;max-width:85%;padding:8px 11px;font-size:13px;line-height:1.45}.tubin-msg-user{background:var(--accent);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.tubin-msg-assistant{background:var(--bg);color:var(--text-h);border:1px solid var(--border);border-bottom-left-radius:4px;align-self:flex-start}.tubin-msg-error{color:var(--bad-text)}.tubin-msg-waiting{gap:4px;padding:12px 14px;display:flex}.tubin-msg-waiting span{background:var(--muted-text);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite tubin-dot}.tubin-msg-waiting span:nth-child(2){animation-delay:.15s}.tubin-msg-waiting span:nth-child(3){animation-delay:.3s}@keyframes tubin-dot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.tubin-chat-input{border-top:1px solid var(--border);gap:6px;padding:10px;display:flex}.tubin-chat-input input{flex:1;min-width:0;font-size:14px}.tubin-send{padding:0 12px}.tubin-chat-notice{color:var(--muted-text);margin:0;padding:0 12px 10px;font-size:11px;line-height:1.35}@media (width<=480px){.mascot-stage{width:64px;height:64px}.dashboard-content{padding-bottom:88px}}@media (prefers-reduced-motion:reduce){.mascot-bubble,.mascot-in,.mascot-out,.tubin-chat,.tubin-msg-waiting span{animation:none}}.dashboard-content ul{padding-left:20px}.pending{opacity:.7;margin-top:16px;font-style:italic}.card{background:var(--surface);border:1px solid var(--border);text-align:left;border-radius:8px;margin-bottom:16px;padding:16px}.card.nested{background:var(--bg);margin-top:12px}.header-row{flex-wrap:wrap;align-items:stretch;gap:16px;margin-bottom:16px;display:flex}.header-row .card.compact{flex-direction:column;flex:260px;justify-content:center;max-width:380px;margin-bottom:0;padding:12px 16px;display:flex}.customer-type-badge{border:1px solid var(--border);opacity:.85;border-radius:999px;margin-left:8px;padding:2px 8px;font-size:12px;display:inline-block}.customer-type-ferretero{color:#1a1a1a;opacity:1;background:#fcff80;border-color:#0000}.customer-type-especializado{color:#fff;opacity:1;background:#ff4747;border-color:#0000}.customer-type-distribuidor{color:#1a1a1a;opacity:1;background:#83ff63;border-color:#0000}.movement-type-badge{color:#1a1a1a;white-space:nowrap;border-color:#0000;border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.movement-type-entrada{background:#60ff4a}.movement-type-correccion{background:#ffb44a}.movement-type-baja{color:#fff;background:#ff3838}.movement-type-venta{background:#59e8ff}.movement-type-produccion{background:#a78bfa}.movement-type-inventario_inicial{background:#ffe74a}.movement-type-consumo{background:#fda4af}.movement-type-cambio_cajon{background:#d4d4d8}.movement-type-terminacion{background:#5eead4}.cajon-code{white-space:nowrap}.popover-backdrop{z-index:19;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000073;position:fixed;inset:0}.schedule-popover{z-index:20;width:min(520px,100vw - 32px);max-height:calc(100vh - 48px);position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 12px 32px #00000080}.tubin-sleeping{text-align:center;max-width:420px;color:var(--logo-ink);flex-direction:column;align-items:center;gap:12px;margin:40px auto 0;display:flex}.tubin-sleeping p{color:var(--text);margin:0;font-size:16px}.schedule-shift-preview{border:1px solid var(--warn-text);border-radius:8px;margin:12px 0 4px;padding:10px 12px;font-size:14px}.schedule-shift-preview p{color:var(--warn-text);margin:0 0 6px}.schedule-shift-preview ul{max-height:180px;margin:0;padding-left:18px;overflow:auto}.need-unfinished{white-space:nowrap;display:block}.need-status-badge{white-space:nowrap;color:#1a1a1a;border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.need-status-programada{background:#ffb44a}.need-status-no-programada{color:#fff;background:#ff3838}.presence-badge{white-space:nowrap;color:#1a1a1a;border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.presence-en_linea{background:#60ff4a}.presence-ausente{background:#ffb44a}.presence-desconectado{color:#fff;background:#ff3838}.login-notice{color:var(--warn-text);text-align:center;margin:0;font-size:13px;font-weight:700}.login-notice+.subtitle{margin-top:0}.quote-status-badge{border:1px solid var(--border);color:var(--text);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.quote-status-pendiente_produccion{color:#1a1a1a;background:#ffb44a;border-color:#0000}.quote-status-pendiente_despacho{color:#1a1a1a;background:#59e8ff;border-color:#0000}.quote-status-despachada{color:#1a1a1a;background:#60ff4a;border-color:#0000}.quote-status-despachada_novedad{color:#fff;background:#1b7a3e;border-color:#0000}.approval-badge{border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.approval-por_aprobar{border-color:var(--warn-text);color:var(--warn-text)}.approval-aprobada{border-color:var(--ok-text);color:var(--ok-text)}.po-status-por_aprobar{border-color:var(--warn-text);color:var(--warn-text)}.po-status-aprobada{border-color:var(--accent);color:var(--accent)}.po-status-recibida{border-color:var(--ok-text);color:var(--ok-text)}.po-status-rechazada{border-color:var(--bad-text);color:var(--bad-text)}.quote-lines td.po-materials div+div{margin-top:2px}.po-header-fields{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 16px;display:grid}.po-row{grid-template-columns:18px minmax(0,1fr) minmax(0,1.2fr) minmax(0,1.4fr) 90px 110px 130px 24px;align-items:center;gap:8px;display:grid}.po-row input,.po-row select{min-width:0;margin:0}.mp-ref-picker{flex-direction:column;gap:6px;min-width:0;display:flex}.mp-ref-new{grid-template-columns:minmax(0,1fr);gap:8px;margin-top:6px;display:grid}.mp-ref-picker .mp-ref-new{margin-top:0}.mp-ref-new-k{grid-template-columns:minmax(0,1fr) 72px}.mp-ref-new input{margin:0}.mp-class-cell{vertical-align:middle;font-weight:600}.mp-k-groups>li+li{margin-top:6px}.po-row-head{opacity:.75;margin-bottom:4px;font-size:13px}.po-line{margin-bottom:8px}.po-row-total{text-align:right;white-space:nowrap}.po-total{text-align:right;flex-direction:column;align-items:flex-end;gap:2px;margin:8px 32px 12px 0;display:flex}.po-total-final{border-top:1px solid var(--border);margin-top:2px;padding-top:4px;font-size:1.1em}@media (width<=760px){.po-row{grid-template-columns:18px minmax(0,1fr) minmax(0,1fr) 24px}.po-row-head{display:none}.po-row-total{grid-column:2/4}}.po-receive-table td{vertical-align:middle}.po-receive-qty{white-space:nowrap;align-items:center;gap:8px;display:flex}.po-receive-qty input[type=number]{width:110px;margin:0}.card .po-receive-qty label{flex-direction:row;align-items:center;gap:4px;margin:0;font-size:13px;display:inline-flex}.card .po-receive-qty label input{width:auto;margin:0}.quote-view-side .actions{flex-wrap:wrap;align-items:center;gap:8px}.quote-view-side .actions+.actions{margin-top:8px}.quote-view-side .approval-reason{align-self:stretch;width:auto}.approval-col{white-space:nowrap}.confirmed-table-wrap{margin-bottom:16px;overflow-x:auto}.confirmed-table-wrap .confirmed-table{margin-bottom:0}.confirmed-table .col-cliente{min-width:150px}.confirmed-table .col-fecha{white-space:nowrap}.quote-lines.confirmed-table th,.quote-lines.confirmed-table td{padding-left:7px;padding-right:7px}.approval-confirm{border:1px solid var(--border);background:var(--surface);text-align:right;border-radius:8px;width:fit-content;max-width:100%;margin-left:auto;padding:10px 12px}.approval-confirm-title{color:var(--text-h);margin:0;font-size:14px;font-weight:600}.approval-confirm-reason{color:var(--muted-text);margin:2px 0 10px;font-size:13px}.approval-confirm-buttons{justify-content:flex-end;gap:8px;display:flex}.approval-confirm .approval-cancel{color:var(--text-h);background:0 0}.quote-view-side .approval-actions button,.quote-view-side .approval-actions .approval-reason{padding:6px 12px;font-size:14px}.status-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.qty-differs{color:var(--warn-text);font-weight:600}.quote-view-header{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.quote-view-header .card.compact{justify-content:flex-start;gap:2px;max-width:none}.quote-view-header .approval-line{margin-top:4px}.quote-view-header .approval-detail{font-size:12px}.quote-view-header .approval-detail .nowrap{white-space:nowrap}.quote-view-header .customer-name-line{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.quote-view-header .customer-name-line .customer-type-badge{margin-left:0}.quote-view-header .card.compact{font-size:15px}.header-row .selected-customer{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.customer-meta{opacity:.75}:root[data-theme=light] .customer-meta{opacity:.9}.kardex-mp-lote{white-space:nowrap}.card label{flex-direction:column;gap:4px;margin-bottom:12px;font-size:14px;display:flex}.card input,.card select,.quote-lines select,.quote-view-side .approval-reason,.qty-input{font:inherit;border:1px solid var(--border);background:var(--field-bg);color:var(--text-h);border-radius:6px;padding:6px 8px}.result-list{border:1px solid var(--border);border-radius:6px;max-height:340px;margin:8px 0;padding:0;list-style:none;overflow-y:auto}.result-list li+li{border-top:1px solid var(--border)}.result-list button{text-align:left;width:100%;color:var(--text-h);background:0 0;border:none;border-radius:0;padding:8px 12px}.result-list button:hover{background:var(--bg)}.result-stock{color:var(--text);font-size:.85em}.link-button{color:var(--accent);background:0 0;border:none;padding:4px 0;text-decoration:underline}.quote-lines{border-collapse:collapse;width:100%;margin-bottom:16px;font-size:14px}@media (width<=700px){.quote-lines{max-width:100%;display:block;overflow-x:auto}.count-table-wrap .quote-lines{display:table;overflow:visible}}.quote-lines th,.quote-lines td{text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;padding:8px 10px}.quote-lines td.nowrap-cell{white-space:nowrap}.quote-lines td small:not(.customer-meta){min-width:10em;font-size:13px;line-height:1.35;display:inline-block}.quote-lines .empty{text-align:center;opacity:.7}.qty-input{width:70px}.quote-weight-summary{color:var(--muted-text);text-align:left;margin:6px 0 0;font-size:13px}.quote-weight-warning{border:1px solid var(--warn-text);color:var(--warn-text);border-radius:8px;margin-top:6px;padding:6px 10px}.view-toggle{border:1px solid var(--border);border-radius:8px;margin:-4px 0 16px;display:inline-flex;overflow:hidden}.view-toggle button{background:var(--surface);color:var(--text);border:none;border-radius:0;padding:6px 16px;font-size:14px}.view-toggle button+button{border-left:1px solid var(--border)}.view-toggle button[aria-pressed=true]{background:var(--accent);color:#fff}.pipe-origin-toggle{margin:0 0 12px}.kardex-grid-viewport{border:1px solid var(--border);border-radius:8px;width:calc(100vw - 32px);max-height:75vh;margin-left:calc(50% - 50vw + 16px);overflow:auto}.kardex-grid{border-collapse:separate;border-spacing:0;min-width:100%;font-size:13px}.kardex-grid th,.kardex-grid td{border-bottom:1px solid var(--border);background:var(--bg);text-align:left;vertical-align:top;padding:6px 10px}.kardex-grid thead th{z-index:2;background:var(--surface);color:var(--text-h);vertical-align:bottom;white-space:nowrap;font-weight:600;position:sticky;top:0}.kardex-grid th small{opacity:.7;font-weight:400;display:block}.kardex-grid .num{text-align:right;white-space:nowrap}.kardex-grid .kardex-grid-sticky{z-index:1;position:sticky}.kardex-grid thead .kardex-grid-sticky{z-index:3}.kardex-grid .kardex-grid-cajon{box-sizing:border-box;border-right:1px solid var(--border);width:90px;min-width:90px;font-weight:600;left:0}.kardex-grid .kardex-grid-ref{border-right:1px solid var(--border);min-width:240px;max-width:300px;left:90px}.item-kardex-wrap{border:1px solid var(--border);border-radius:8px;margin-top:12px;overflow-x:auto}.kardex-grid .item-kardex-total td{border-top:2px solid var(--border);color:var(--text-h);border-bottom:none;font-weight:700}.date-range{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.date-range label{flex:0 180px}.kardex-grid tr.kardex-grid-group-start td{border-top:2px solid var(--border)}.kardex-grid .kardex-grid-final{border-left:1px solid var(--border);color:var(--text-h);font-weight:600}.entry-row{grid-template-columns:18px minmax(0,1fr) 90px 170px 24px;align-items:center;gap:8px;display:grid}.entry-row-head{opacity:.75;margin-bottom:4px;font-size:13px}.entry-line{margin-bottom:8px}.entry-row input,.entry-row select{min-width:0}.entry-row-location{gap:6px;display:flex}.entry-row-location select{flex:1;min-width:0}.entry-row-number{opacity:.5;text-align:right;font-size:12px}.entry-line-repeated .entry-row-number{color:var(--warn-text);opacity:1}.entry-row-remove{color:var(--text);opacity:.6;background:0 0;border:none;padding:0;font-size:20px;line-height:1}.entry-row-remove:hover{color:var(--danger);opacity:1}.entry-line-warning{color:var(--warn-text);margin:2px 0 0 26px;font-size:13px}.entry-line-warning.entry-line-error{color:var(--danger)}.entry-line .result-list{margin-left:26px}@media (width<=600px){.entry-row{grid-template-columns:18px minmax(0,1fr) 70px 24px}.entry-row-head{display:none}.entry-row-location{grid-area:2/2/auto/4}}.duplicate-warning{background:#ffb44a14;border:1px solid #ffb44a;border-radius:8px;margin:4px 0 12px;padding:12px 14px;font-size:14px}.duplicate-warning ul{margin:8px 0;padding:0;list-style:none}.duplicate-warning li{flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:4px 0;display:flex}.duplicate-warning small{color:var(--text);opacity:.8}.duplicate-warning p{margin:0 0 10px}.duplicate-warning .similar-pick{padding:2px 10px;font-size:13px}.extra-toggle{cursor:pointer;white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.extra-toggle input{accent-color:var(--accent);cursor:pointer;margin:0}.quote-lines th.extra-col-capped{padding-top:2px;padding-bottom:2px}.extra-head{flex-direction:column;line-height:1.1;display:inline-flex}.extra-cap{color:var(--muted-text);white-space:nowrap;font-size:11px;font-weight:400;line-height:1.1}.totals{text-align:right;flex-direction:column;gap:4px;margin-bottom:16px;display:flex}.actions{justify-content:flex-end;display:flex}.row-actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.confirm-text{opacity:.85;font-size:13px}.danger-button{background:var(--surface);color:var(--danger);border-color:var(--danger)}.row-leave-confirm td{--leave-color:#16a34a47;--pending-color:#16a34a1a;--leave-x:28px}.row-leave-delete td{--leave-color:#b91c1c52;--pending-color:#b91c1c1a;--leave-x:-28px}.row-pending td{animation:.8s ease-in-out infinite alternate row-pending}@keyframes row-pending{0%{background:var(--pending-color)}to{background:color-mix(in srgb, var(--leave-color) 70%, transparent)}}.row-leave td{animation:.95s forwards row-leave}@keyframes row-leave{0%{background:var(--pending-color);animation-timing-function:ease-out}15%{background:var(--leave-color)}45%{background:var(--leave-color);opacity:1;animation-timing-function:cubic-bezier(.4,0,.2,1);transform:none}to{background:var(--leave-color);opacity:0;transform:translateX(var(--leave-x))}}.row-leave-label{white-space:nowrap;font-size:13px;font-weight:700}.row-leave-confirm .row-leave-label{color:var(--ok-text)}.row-leave-delete .row-leave-label{color:var(--bad-text)}@media (prefers-reduced-motion:reduce){.row-pending td{background:var(--pending-color);animation:none}.row-leave td{animation-name:row-leave-still}@keyframes row-leave-still{0%,to{background:var(--leave-color)}}}.success-button{color:#fff;background:#16a34a;border-color:#16a34a}.list-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.list-header>button{white-space:nowrap;flex-shrink:0}.title-with-search{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.title-with-search h2{margin:0}.search-box{align-items:center;display:inline-flex;position:relative}.search-box svg{opacity:.6;pointer-events:none;position:absolute;left:9px}.search-box input{font:inherit;border:1px solid var(--border);background:var(--field-bg);width:190px;color:var(--text-h);border-radius:6px;padding:5px 8px 5px 30px;font-size:13px}.new-quote{text-align:left}.customer-doc-row{grid-template-columns:minmax(170px,1fr) minmax(150px,1fr);gap:12px;display:grid}.customer-doc-row.with-dv{grid-template-columns:minmax(170px,1fr) minmax(150px,1fr) 90px}@media (width<=560px){.customer-doc-row,.customer-doc-row.with-dv{grid-template-columns:1fr}}.schedule-popover.customer-form-dialog{width:min(720px,100vw - 32px)}.customer-form-dialog h3{margin-top:0}.customer-city-row{grid-template-columns:minmax(140px,1fr) minmax(200px,2fr);gap:12px;display:grid}@media (width<=560px){.customer-city-row{grid-template-columns:1fr}}.customer-retentions{border:1px solid var(--border);border-radius:8px;margin:4px 0 12px;padding:8px 12px 4px}.customer-retentions legend{padding:0 6px;font-weight:600}.customer-retention-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;display:flex}.customer-retention-row small{color:var(--muted-text)}.customer-retention-row .view-toggle{margin:4px 0}.customer-retention-row .view-toggle button{padding:4px 14px}.occasional-name{color:var(--text-h);font-size:20px;font-weight:700;line-height:1.25}.occasional-tag{color:var(--muted-text);text-transform:lowercase;margin-right:8px;font-size:12px}.occasional-actions{flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:10px;display:flex}.customer-search{position:relative}.result-list.customer-dropdown{z-index:15;background:var(--surface);max-height:280px;margin:4px 0 0;position:absolute;top:100%;left:0;right:0;box-shadow:0 10px 24px #00000059}.assign-title{margin:0 0 8px}.assign-title small{margin-top:2px;display:block}.schedule-popover.assign-dialog{width:min(720px,100vw - 32px);max-height:calc(100vh - 48px);overflow-y:auto}.assign-diff-wrap{margin:8px 0}.assign-diff tr.assign-changed td{background:var(--wash)}.assign-total{text-align:right;margin:8px 0 12px}.assign-up{color:var(--up-text)}.assign-down{color:var(--down-text)}.customer-incomplete-note{color:var(--warn-text);margin-top:4px;display:block}.customer-notice{color:var(--ok-text)}.customer-archived-date{color:var(--muted-text)}.incomplete-badge{color:#1a1a1a;white-space:nowrap;background:#ffb44a;border-radius:999px;margin-top:4px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.tab-count{color:#1a1a1a;background:#ffb44a;border-radius:999px;min-width:18px;margin-left:6px;padding:0 6px;font-size:12px;font-weight:700;line-height:18px;display:inline-block}.quote-notes{flex-direction:column;gap:4px;max-width:560px;margin-bottom:16px;font-size:14px;display:flex}.quote-notes textarea{font:inherit;border:1px solid var(--border);background:var(--field-bg);color:var(--text-h);resize:vertical;border-radius:6px;padding:6px 8px;font-size:14px}.quote-notes-count{align-self:flex-end}.quote-bottom{flex-wrap:wrap;align-items:flex-start;gap:16px 32px;margin-bottom:16px;display:flex}.quote-bottom .quote-notes{margin-bottom:0}.quote-view-bottom{flex-wrap:wrap;align-items:flex-start;gap:16px 32px;margin-bottom:16px;display:flex}.quote-view-summary{flex:0 340px;min-width:0}.quote-view-summary .price-per-kg{margin:12px 0 0}.quote-view-side{flex:auto;margin:6px 0 0 auto}.quote-view-side .totals{margin-bottom:16px}.dispatch-hint{color:var(--muted-text);text-align:right;margin:6px 0 0;font-size:12px}.price-per-kg{flex:0 340px;margin-left:auto}.price-per-kg-title{color:var(--text-h);margin:0 0 6px;font-size:13px;font-weight:600}.price-per-kg-title small{color:var(--muted-text);font-weight:400}.price-per-kg-families{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.price-per-kg-tile{--fam:var(--border);border:1px solid color-mix(in srgb, var(--fam) 55%, transparent);background:color-mix(in srgb, var(--fam) 13%, transparent);border-radius:8px;flex-direction:column;gap:0;padding:4px 9px;font-size:11px;display:flex}.price-per-kg-S{--fam:#facc15;--fam-ink:var(--fam-text-S)}.price-per-kg-C{--fam:#4ade80;--fam-ink:var(--fam-text-C)}.price-per-kg-P{--fam:#3b82f6;--fam-ink:var(--fam-text-P)}.price-per-kg-name{color:var(--fam-ink);font-weight:600}.price-per-kg-value{color:var(--text-h);white-space:nowrap;font-size:13px}.price-per-kg-empty{opacity:.45}.price-per-kg-general{border:1px solid var(--border);background:var(--surface);color:var(--text-h);border-radius:8px;justify-content:space-between;align-items:baseline;gap:12px;margin-top:6px;padding:4px 9px;font-size:13px;font-weight:600;display:flex}.price-per-kg-general strong{white-space:nowrap;font-size:14px}@media (width<=480px){.price-per-kg-families{grid-template-columns:1fr}}.quote-notes-view p{white-space:pre-wrap;margin:6px 0 0}.screen-enter{animation:.22s ease-out screen-enter}@keyframes screen-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.screen-enter{animation:none}}.indicators-grid{grid-template-columns:repeat(auto-fit,minmax(max(230px,33.3333% - 9.33333px),1fr));gap:14px;margin:16px 0;display:grid}.indicator-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px 18px}.indicator-card h3{color:var(--text);margin:0 0 10px;font-size:14px;font-weight:600}@media (width>=720px){.indicator-card-wide{grid-column:span 2}}.progress-bar{background:var(--border);border-radius:999px;height:10px;margin-top:14px;overflow:hidden}.progress-fill{border-radius:inherit;background:var(--accent);transform-origin:0;height:100%;animation:.6s cubic-bezier(.2,.8,.2,1) progress-fill-in}@keyframes progress-fill-in{0%{transform:scaleX(0)}}@media (prefers-reduced-motion:reduce){.progress-fill{animation:none}}.progress-caption{margin:6px 0 0}.indicator-card-full{grid-column:1/-1}.indicator-value{color:var(--text-h);font-size:42px;font-weight:700;line-height:1.1}.indicator-unit{color:var(--text);margin-left:4px;font-size:18px;font-weight:600}.indicator-bar{background:var(--border);border-radius:999px;height:8px;margin:10px 0 8px;overflow:hidden}.indicator-bar>div{background:var(--accent);height:100%}.donut-row{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.donut-wrap{flex:none;width:150px;position:relative}.donut{width:150px;height:150px;display:block}.donut-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.donut-center strong{color:var(--text-h);font-size:20px}.donut-center span{font-size:12px}.donut-legend,.price-list{flex:1;min-width:150px;margin:0;padding:0;list-style:none}.donut-legend li,.price-list li{align-items:center;gap:8px;padding:5px 0;display:flex}.legend-dot{border-radius:50%;flex:none;width:10px;height:10px}.legend-label{flex:1}.legend-pct{color:var(--text-h);font-weight:700}.donut-legend small{text-align:right;white-space:nowrap;opacity:.8;min-width:92px}.price-list strong{color:var(--text-h)}.kg-chart{width:100%;height:auto;display:block}.kg-chart-tick{fill:var(--text);opacity:.75;font-size:12px}.kg-chart-wrap{position:relative}.kg-chart-wrap .kg-chart{cursor:crosshair;touch-action:pan-y}.kg-chart-guide{stroke:var(--text);stroke-width:1px;stroke-dasharray:4 4;opacity:.6;pointer-events:none}.kg-chart-tooltip{background:var(--tooltip-bg);border:1px solid var(--border);white-space:nowrap;pointer-events:none;z-index:2;border-radius:8px;flex-direction:column;gap:3px;padding:8px 10px;font-size:12px;display:flex;position:absolute;top:4px;transform:translate(10px);box-shadow:0 8px 20px #00000073}.kg-chart-tooltip-left{transform:translate(calc(-100% - 10px))}.kg-chart-tooltip strong{color:var(--text-h);font-size:13px}.kg-chart-tooltip-row{align-items:center;gap:6px;display:flex}.kg-chart-tooltip-row i{border-radius:2px;flex:none;width:10px;height:3px}.kg-chart-tooltip-row b{color:var(--text-h)}.chart-legend{flex-wrap:wrap;gap:16px;margin:0 0 8px;padding:0;font-size:13px;list-style:none;display:flex}.chart-legend li{align-items:center;gap:6px;display:flex}.legend-line{border-radius:2px;width:16px;height:3px;display:inline-block}.home-tiles{flex-wrap:wrap;justify-content:center;gap:24px;padding:40px 0;display:flex}.home-tiles-dense{gap:16px}.home-tile{background:var(--surface);border:1px solid var(--border);width:200px;height:200px;color:var(--text-h);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:16px;transition:transform .15s,box-shadow .15s;display:flex}.home-tile:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 20px #0000001f}.home-tile{position:relative}.home-tile-badge{color:#fff;text-align:center;min-width:28px;height:28px;box-shadow:0 0 0 2px var(--bg);background:#ef4444;border-radius:14px;padding:0 7px;font-size:14px;font-weight:700;line-height:28px;position:absolute;top:-8px;right:-8px}.home-tile-lg{gap:20px;width:260px;height:260px}.home-tile-lg .home-tile-icon{width:88px;height:88px}.home-tile-lg .home-tile-label{font-size:20px}.home-tile-icon{width:64px;height:64px;color:var(--accent)}.home-tile-icon svg{width:100%;height:100%}.home-tile-label{text-align:center;padding:0 12px;font-size:17px;font-weight:600}.month-nav{align-items:center;gap:16px;margin-bottom:16px;display:flex}.month-nav strong{text-align:center;min-width:160px;color:var(--text-h)}.inline-field{gap:8px;display:flex}.inline-field input{flex:1}.board-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.board-toolbar .month-nav{margin-bottom:0}.month-search-row{flex-wrap:wrap;align-items:center;gap:12px 24px;margin-bottom:16px;display:flex}.month-search-row .month-nav{margin-bottom:0}.gantt-legend{gap:16px;margin-bottom:12px;font-size:13px;display:flex}.board-toolbar .gantt-legend{margin-bottom:0}.gantt-swatch{vertical-align:middle;border-radius:3px;width:12px;height:12px;display:inline-block}.gantt{margin-bottom:16px}.gantt-days{grid-template-columns:repeat(var(--days), 1fr);text-align:center;opacity:.7;font-size:10px;display:grid}.gantt-track{border:1px solid var(--border);background-color:var(--bg);background-image:linear-gradient(to right, var(--border) 1px, transparent 1px);background-size:calc(100% / var(--days)) 100%;border-radius:6px;height:44px;position:relative;overflow:hidden}.gantt-track-wrap{position:relative}.gantt-tooltip{z-index:2;border:1px solid var(--border);background:var(--surface);color:var(--text-h);white-space:nowrap;pointer-events:none;border-radius:6px;padding:4px 8px;font-size:12px;position:absolute;top:calc(100% + 4px)}.gantt-bar{white-space:nowrap;text-overflow:ellipsis;color:#fff;border-radius:4px;min-width:3px;font-size:11px;line-height:30px;position:absolute;top:6px;bottom:6px;overflow:hidden}.gantt-bar-labeled{padding:0 6px}.gantt-bar-hover{z-index:2;box-shadow:0 0 0 2px var(--text-h)}.gantt-bar-S{color:#1a1a1a;background:#facc15}.gantt-bar-C{color:#1a1a1a;background:#4ade80}.gantt-bar-P{background:#3b82f6}.gantt-bar-none{background:#71717a}.gantt-today{background:var(--danger);z-index:1;width:2px;position:absolute;top:0;bottom:0}.rack-toolbar{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:10px;font-size:13px;display:flex}.rack-zoom{align-items:center;gap:6px;display:flex}.rack-zoom-level{text-align:center;min-width:46px;color:var(--text-h);font-variant-numeric:tabular-nums}.rack-summary{color:var(--text)}.rack-legend{margin:0}.rack-viewport{border:1px solid var(--border);background:var(--wash);border-radius:8px;width:calc(100vw - 32px);margin-left:calc(50% - 50vw + 16px);padding:10px;overflow:auto}.rack-canvas{align-items:flex-start;gap:18px;width:max-content;display:flex}.rack-block-title{letter-spacing:.04em;color:var(--text-h);text-transform:uppercase;background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:4px;margin-bottom:4px;padding:3px 0;font-size:12px;font-weight:700}.rack-map{border-collapse:collapse;table-layout:fixed}.rack-map th{color:var(--text-h);padding:2px;font-size:12px;font-weight:700}.rack-corner,.rack-row-label{text-align:center;width:26px}.rack-map td{border:1px solid var(--border);vertical-align:top;width:96px;height:44px;padding:2px 4px}.rack-empty{background:var(--wash-strong)}.rack-filled{cursor:default}.rack-map-grid{width:calc(26px + 5 * var(--rack-cell-w));--rack-cell-w:140px}.rack-map-grid td{vertical-align:middle;width:var(--rack-cell-w);height:calc(var(--rack-lines,2) * 14px + 6px)}.rack-ref{white-space:nowrap;gap:.25em;font-size:11px;line-height:14px;display:flex}.rack-sku{text-overflow:ellipsis;min-width:0;font-weight:600;overflow:hidden}.rack-qty{color:var(--text-h);flex-shrink:0}.rack-popover{z-index:40;border:1px solid var(--border);background:var(--surface);pointer-events:none;border-radius:8px;width:320px;padding:8px 10px;font-size:12px;position:fixed;box-shadow:0 8px 24px #00000080}.rack-popover-above{transform:translateY(-100%)}.rack-popover ul{margin:4px 0 0;padding-left:16px}.rack-popover li{line-height:1.45}.param-dialog{z-index:20;text-align:left;width:min(760px,100vw - 32px);max-height:calc(100vh - 48px);margin:0;padding:24px 28px;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 12px 32px #00000080}.param-dialog-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.param-dialog-header h3{color:var(--text-h);margin:0;font-size:18px}.param-dialog-close{padding:0 4px;font-size:26px;line-height:1;text-decoration:none}.param-dialog-meta{color:var(--muted-text);margin:6px 0 0;font-size:14px}.param-dialog-label{margin:16px 0 0}.param-dialog-tests{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:20px;display:grid}.param-dialog-test{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:4px;padding:12px 14px;font-size:14px;display:flex}.param-dialog-test strong{color:var(--text-h);margin-bottom:2px}.header-actions{align-items:center;gap:8px;display:flex}.settings-menu-wrap{position:relative}@media (width<=480px){.dashboard-header{padding:12px}.header-logo{padding:4px}.role-badge{margin-left:0}.dashboard-header{position:relative}.settings-menu-wrap{position:static}.dashboard-header .settings-menu{top:calc(100% + 4px);right:16px}}.settings-button{background:var(--surface);border-color:var(--border);color:var(--text-h)}.settings-button:hover,.settings-button[aria-expanded=true]{background:var(--border)}.settings-menu{z-index:30;background:var(--surface);border:1px solid var(--border);text-align:left;transform-origin:100% 0;border-radius:8px;width:min(360px,100vw - 32px);padding:12px 16px;animation:.2s cubic-bezier(.2,.8,.2,1) settings-menu-in;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px #00000080}.settings-menu-leaving{pointer-events:none;animation:.15s ease-in forwards settings-menu-out}@keyframes settings-menu-in{0%{opacity:0;transform:translateY(-6px)scale(.97)}}@keyframes settings-menu-out{to{opacity:0;transform:translateY(-6px)scale(.97)}}@media (prefers-reduced-motion:reduce){.settings-menu,.settings-menu-leaving{animation:none}}.settings-menu-section{border-bottom:1px solid var(--border);margin-bottom:8px;padding-bottom:12px}.settings-menu-section .switch-row{padding:12px 0}.settings-theme .switch-row{border-top:none;padding-top:4px}.settings-menu-section .settings-note{margin-top:0}.settings-menu-error{margin:8px 0;font-size:13px}.settings-menu-item{width:100%;color:var(--text-h);text-align:left;background:0 0;border-color:#0000;align-items:center;gap:10px;padding:8px 10px;display:flex}.settings-menu-item:hover{background:var(--border)}.settings-menu-item-value{text-overflow:ellipsis;white-space:nowrap;max-width:50%;color:var(--muted-text);margin-left:auto;font-size:13px;overflow:hidden}.password-dialog{width:min(380px,100vw - 32px)}.password-dialog h3{margin-top:0}.password-dialog .password-dialog-hint{border-top:none;margin:0 0 12px;padding-top:0}.password-dialog-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.settings-title{margin:0 0 4px;font-size:15px}.card .switch-row,.switch-row{border-top:1px solid var(--border);cursor:pointer;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:20px;padding:14px 0;display:flex}.switch-text{flex-direction:column;gap:4px;display:flex}.switch-text small{color:var(--text);opacity:.8;line-height:1.45}.card input.switch,.switch{appearance:none;background:var(--border);border:1px solid var(--border);cursor:pointer;border-radius:13px;flex:none;width:46px;height:26px;margin:2px 0 0;transition:background .15s;position:relative}.card input.switch:after,.switch:after{content:"";background:var(--text-h);border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:2px;left:2px}.card input.switch:checked,.switch:checked{background:var(--accent);border-color:var(--accent)}.card input.switch:checked:after,.switch:checked:after{background:#fff;transform:translate(20px)}.switch:disabled{opacity:.5;cursor:default}.settings-note{border-top:1px solid var(--border);color:var(--text);opacity:.85;margin:14px 0 0;padding-top:12px;font-size:13px}.count-banner{border:1px solid var(--accent);border-left:4px solid var(--accent);color:var(--text-h);background:#3b82f61f;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 0 20px;padding:12px 16px;font-size:14px;display:flex}.count-banner-cost{background:#ffb44a21;border-color:#ffb44a}.count-banner-ok{background:#60ff4a1f;border-color:#60ff4a}.count-banner button{flex:none}.count-modal{z-index:50;border:1px solid var(--border);background:var(--surface);border-radius:10px;width:min(760px,100vw - 32px);max-height:calc(100vh - 64px);padding:18px 20px;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 16px 48px #0009}.count-modal h3{margin:0 0 4px}.count-modal-cost{background:#ffb44a21;border:1px solid #ffb44a;border-radius:6px;margin:0 0 8px;padding:8px 10px;font-size:13px}.count-steps{margin:12px 0;padding-left:20px}.count-steps li{margin-bottom:12px}.count-steps small{color:var(--text);opacity:.8;margin-top:4px;display:block}.count-download{background:var(--accent);color:#fff;border-radius:6px;padding:7px 14px;font-size:14px;text-decoration:none;display:inline-block}.count-summary{margin:0 0 10px;font-size:14px}.count-up{color:var(--up-text)}.count-down{color:var(--down-text)}.count-missing{color:var(--warn-text);font-size:12px;display:block}.count-missing-inline{color:var(--warn-text)}.count-table-wrap{border:1px solid var(--border);border-radius:8px;max-height:320px;overflow:auto}.count-table-wrap table{margin:0}.count-table-wrap.schedule-runs-wrap{max-height:340px;margin-bottom:16px}.count-table-wrap thead th{background:var(--surface);z-index:1;position:sticky;top:0}.switch-row-off .switch-text>strong,.switch-row-off .switch-text>small:first-of-type{opacity:.55}.switch-warn{color:var(--warn-text)}.count-report-header{margin-bottom:16px;font-size:13px}.count-report-header p{margin:0 0 6px}.count-report-header p:last-child{margin-bottom:0}.count-report-block{margin-bottom:24px}.count-report-block h3{margin:0 0 4px;font-size:15px}.quality-status-badge{white-space:nowrap;color:#1a1a1a;border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.quality-status-en_proceso{background:#d4d4d8}.quality-status-incompleta{background:#ffb44a}.quality-status-conforme{background:#60ff4a}.quality-status-no_conforme,.quality-status-no_conforme_visual{color:#fff;background:#ff3838}.quality-status-informativo{border:1px solid var(--border);color:var(--text);background:0 0}.quality-filter{flex-wrap:wrap;margin:0 0 12px}.summary-filters{flex-direction:column;align-items:stretch;gap:8px;margin-bottom:12px;display:flex}.summary-filters .quality-filter{margin:0}.summary-filters .view-toggle button{padding:4px 12px;font-size:13px}.summary-filters-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.summary-filters>.view-toggle{align-self:flex-start}.summary-download{white-space:nowrap;padding:5px 12px;font-size:13px}.summary-filters .pill-filter{border:none;border-radius:0;gap:8px;overflow:visible}.summary-filters .pill-filter button,.summary-filters .pill-filter button+button{border:1px solid var(--border);border-radius:999px;padding:4px 14px}.summary-filters .pill-filter button[aria-pressed=true]{border-color:var(--accent)}.quality-tests-cell{min-width:160px;max-width:260px;font-size:13px}.quality-edited{color:var(--warn-text);white-space:nowrap;font-weight:600}.quality-form .actions{flex-wrap:wrap;gap:12px;margin-top:12px}.quality-item-chosen{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.quality-header-fields{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 16px;display:grid}.quality-test-card h3,.quality-test-list h3{color:var(--text-h);margin:0 0 8px;font-size:16px}.quality-test-item+.quality-test-item{border-top:1px solid var(--border)}.card .quality-test-toggle{cursor:pointer;flex-direction:row;align-items:center;gap:12px;margin:0;padding:12px 0;font-size:15px}.card .quality-test-toggle input{width:22px;height:22px;accent-color:var(--accent);cursor:pointer;flex:none;margin:0}.quality-test-toggle small{text-align:right;margin-left:auto}.quality-test-item-on .quality-test-toggle>span{color:var(--text-h);font-weight:600}.quality-test-body{padding:0 0 14px 34px}.quality-test-body>p{margin:0 0 8px}.quality-test-condition{color:var(--text-h);font-size:13px}@media (width<=480px){.quality-test-body{padding-left:0}}.quality-test-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.quality-probes{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:10px;display:grid}.card .quality-probe{color:var(--muted-text);gap:2px;margin:0;font-size:12px}.card .quality-probe input{text-align:center;width:100%;padding:10px 6px;font-size:16px}.quality-probes-pf{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.pf-probe{align-items:center;gap:8px;display:flex}.pf-probe>span{text-align:right;min-width:18px;color:var(--muted-text);font-size:12px}.pf-toggle{border:1px solid var(--border);border-radius:8px;display:inline-flex;overflow:hidden}.pf-toggle button{background:var(--bg);color:var(--text);border:none;border-radius:0;padding:10px 12px;font-size:14px}.pf-toggle button+button{border-left:1px solid var(--border)}.pf-toggle button[aria-pressed=true]{background:var(--accent);color:#fff}.quality-reasons{flex-wrap:wrap;gap:8px 20px;display:flex}.card .quality-reasons label{cursor:pointer;flex-direction:row;align-items:center;gap:8px;margin:0}.card .quality-reasons input{accent-color:var(--accent);width:18px;height:18px}.quality-detail-head dl{grid-template-columns:max-content 1fr;gap:6px 16px;margin:12px 0 0;font-size:14px;display:grid}.quality-detail-head dt{color:var(--muted-text)}.quality-detail-head dd{margin:0}.quality-dl-row{display:contents}.quality-label-text{margin:12px 0 0;font-size:13px}.quality-values{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.quality-value{border:1px solid var(--border);border-radius:6px;align-items:baseline;gap:6px;padding:4px 10px;font-size:14px;display:inline-flex}.quality-value small{color:var(--muted-text);font-size:11px}.quality-value-out{color:var(--bad-text);border-color:var(--bad-text);font-weight:600}p.quality-value-out{border:none}.quality-edits{margin:0;padding-left:18px;font-size:14px}.quality-edits ul{margin:4px 0 10px;padding-left:18px}.urgency-mark{margin-right:6px;font-size:1.1em;font-weight:900;line-height:1;display:inline-block}.with-urgency{white-space:nowrap;position:relative}.with-urgency .urgency-mark{margin-right:2px;font-size:20px;position:absolute;top:50%;right:100%;transform:translateY(-50%)}.urgency-alta{color:var(--urgent-high)}.urgency-media{color:var(--urgent-medium)}.freight-tag{color:var(--muted-text);vertical-align:middle;white-space:nowrap;margin-left:10px;font-size:13px;font-weight:400;display:inline-block}.urgency-tag{vertical-align:middle;white-space:nowrap;margin-left:10px;font-size:14px;font-weight:600;display:inline-block}.urgency-tag-alta{color:var(--urgent-high)}.urgency-tag-media{color:var(--urgent-medium)}.quote-notes-col{flex-direction:column;flex:300px;gap:0;max-width:560px;display:flex}.quote-notes-footer{justify-content:space-between;align-items:flex-start;gap:12px;margin-top:4px;display:flex}.quote-notes-footer .quote-notes-count{order:2;align-self:flex-start}.quote-urgency{flex-direction:column;gap:6px;font-size:14px;display:flex}.quote-urgency-option{cursor:pointer;align-items:center;gap:6px;width:fit-content;display:inline-flex}.quote-urgency-option .urgency-mark{margin-right:0}.quote-urgency-levels{flex-wrap:wrap;gap:6px 20px;padding-left:22px;display:flex}.quote-urgency-levels-hidden{visibility:hidden}.flash-popover{z-index:40;border:1px solid var(--border);background:color-mix(in srgb, var(--tooltip-bg) 72%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:max-content;max-width:min(320px,100vw - 32px);color:var(--bad-text);pointer-events:none;border-radius:8px;margin:0;padding:10px 12px;font-size:13px;font-weight:700;line-height:1.35;animation:5s both flash-popover;position:fixed;box-shadow:0 8px 24px #00000059}.flash-popover-above{--flash-from:6px}.flash-popover-below{--flash-from:-6px}@keyframes flash-popover{0%{opacity:0;translate:0 var(--flash-from)}8%,86%{opacity:1;translate:0}to{opacity:0;translate:0}}@media (prefers-reduced-motion:reduce){.flash-popover{animation:none}}.mnt-al_dia{color:#1a1a1a;background:#60ff4a}.mnt-por_vencer{color:#1a1a1a;background:#ffb44a}.mnt-vencida{color:#fff;background:#ff3838}.mnt-sin_reglas{background:var(--border);color:var(--text)}.mnt-badge{white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.mnt-legend{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.mnt-legend .customer-meta{margin:0}.mnt-popover{z-index:40;background:var(--surface);border:1px solid var(--border);text-align:left;pointer-events:none;border-radius:8px;padding:10px 12px;font-size:12px;position:fixed;box-shadow:0 8px 24px #00000080}.mnt-popover ul{margin:4px 0 0;padding-left:16px}.mnt-popover li{line-height:1.45}.mnt-popover .mnt-popover-tasks{padding-left:0;list-style:none}.mnt-popover p{margin:4px 0 0}.mnt-popover-section{color:var(--text-h);margin-top:8px;font-weight:700}.mnt-dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;display:inline-block}.mnt-title-area{color:var(--muted-text);font-size:15px;font-weight:400}.mnt-form{flex-direction:column;gap:12px;max-width:640px;margin:20px 0;display:flex}.mnt-form h3{margin:0}.mnt-form .view-toggle{align-self:flex-start}.mnt-form .customer-meta{margin:0}.mnt-form>button{align-self:flex-start}.mnt-form label{margin-bottom:0}.mnt-form textarea{font:inherit;border:1px solid var(--border);background:var(--field-bg);color:var(--text-h);resize:vertical;border-radius:6px;padding:6px 8px;font-size:14px}.mnt-task-picker{border:1px solid var(--border);border-radius:8px;margin:0;padding:8px 12px}.mnt-task-picker legend{padding:0 4px;font-size:14px}.card .mnt-task-option{text-align:left;flex-direction:row;align-items:center;gap:8px;margin-bottom:0;padding:4px 0;font-weight:400;display:flex}.card .mnt-task-option input{width:auto;margin:0}.mnt-task-due{color:var(--muted-text);font-size:13px}.mnt-record-tasks{color:var(--text-h);font-size:13px;font-weight:700}.mnt-show-retired{align-items:center;gap:6px;margin-bottom:12px;display:inline-flex}.mnt-show-retired input{width:auto;margin:0}.mnt-rules-area{margin-bottom:16px}.mnt-rules-area-head,.mnt-rules-machine-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.mnt-rules-area-head h3{margin:0}.mnt-rules-machine{border-top:1px solid var(--border);padding:12px 0}.mnt-rules-area-head+.mnt-rules-machine{margin-top:12px}.mnt-rules-machine .quote-lines{margin-top:8px}.mnt-retired{opacity:.55}.mnt-dialog{flex-direction:column;gap:12px;display:flex}.mnt-dialog h3,.mnt-dialog .customer-meta{margin:0}.mnt-period{grid-template-columns:1fr 1fr;gap:12px;display:grid}.mnt-changes ul{margin:4px 0 0;padding-left:18px;font-size:13px}:root{--mnt-metal:#6b7280;--mnt-metal-2:#4b5563;--mnt-metal-3:#a1a1aa;--mnt-ink:#18181b;--mnt-pipe:#e4e4e7;--mnt-window:#3f3f46;--mnt-floor:#52525b}:root[data-theme=light]{--mnt-metal:#9ca3af;--mnt-metal-2:#6b7280;--mnt-metal-3:#d4d4d8;--mnt-ink:#374151;--mnt-pipe:#f4f4f5;--mnt-window:#e5e7eb;--mnt-floor:#a1a1aa}.mnt-line-card{margin:0 0 16px}.mnt-line-card h3{margin:0 0 8px}.mnt-line-scroll{overflow-x:auto}.mnt-line-svg{width:100%;min-width:760px;height:auto;display:block}.mnt-line-svg .mnt-metal{fill:var(--mnt-metal);stroke:var(--mnt-ink);stroke-width:1.5px}.mnt-line-svg .mnt-metal-2{fill:var(--mnt-metal-2)}.mnt-line-svg .mnt-metal-3{fill:var(--mnt-metal-3);stroke:var(--mnt-ink);stroke-width:1px}.mnt-line-svg .mnt-barrel{fill:var(--mnt-metal-3);stroke:var(--mnt-ink);stroke-width:2px}.mnt-line-svg .mnt-window{fill:var(--mnt-window)}.mnt-line-svg .mnt-guard{fill:var(--mnt-metal-2);fill-opacity:.35;stroke:var(--mnt-metal-3);stroke-width:2px}.mnt-line-svg .mnt-belt{fill:#111114;stroke:var(--mnt-metal-3);stroke-width:1.5px}.mnt-line-svg .mnt-arm{fill:none;stroke:var(--mnt-metal-2);stroke-width:10px;stroke-linecap:round}.mnt-line-svg .mnt-fin{stroke:var(--mnt-metal-2);stroke-width:2.5px}.mnt-line-svg .mnt-fin-light{stroke:var(--mnt-metal);stroke-width:3px;stroke-linecap:round}.mnt-line-svg .mnt-shaft{stroke:var(--mnt-ink);stroke-width:3px}.mnt-line-svg .mnt-ink-fill{fill:var(--mnt-ink)}.mnt-line-svg .mnt-outline{stroke:var(--mnt-ink);stroke-width:1.5px}.mnt-line-svg .mnt-pipe{fill:var(--mnt-pipe);stroke:var(--mnt-ink);stroke-width:1px}.mnt-line-svg .mnt-kick{stroke:var(--mnt-metal-3);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:5 4}.mnt-line-svg .mnt-axis{stroke:var(--mnt-ink);stroke-width:1px;stroke-dasharray:6 3 2 3;opacity:.6}.mnt-line-svg .mnt-airflow{fill:none;stroke:var(--mnt-metal-3);stroke-width:2px;stroke-linecap:round}.mnt-line-svg .mnt-duct{stroke:var(--mnt-metal-2);stroke-width:9px;stroke-linecap:round;stroke-linejoin:round}.mnt-line-svg .mnt-pipe-fill{fill:var(--mnt-pipe)}.mnt-line-svg .mnt-pipe-edge{stroke:var(--mnt-ink);stroke-width:1px}.mnt-line-svg .mnt-floor{stroke:var(--mnt-floor);stroke-width:3px}.mnt-svg-machine{cursor:pointer;outline:none}.mnt-svg-hit{fill:#0000;stroke:#0000;stroke-width:2px;transition:stroke .12s,fill .12s}.mnt-svg-machine:hover .mnt-svg-hit,.mnt-svg-machine:focus-visible .mnt-svg-hit{stroke:var(--text-h);fill:#ffffff08}.mnt-bar-al_dia{fill:#60ff4a}.mnt-bar-por_vencer{fill:#ffb44a}.mnt-bar-vencida{fill:#ff3838}.mnt-bar-sin_reglas{fill:var(--mnt-floor)}.mnt-svg-label{fill:var(--text-h);text-anchor:middle;font-size:19px;font-weight:700}.card .checkbox-row{cursor:pointer;flex-direction:row;align-items:center;gap:8px;width:fit-content}.card .test-toggle{margin-bottom:8px;font-size:13px}.test-formula{border:1px solid var(--border);border-radius:8px;margin:0 0 12px;padding:10px 12px}.test-formula>.customer-meta{margin:0 0 8px}.test-formula-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(var(--test-rows,1), auto);grid-auto-flow:column;column-gap:28px;display:grid}.test-formula-row{grid-template-columns:minmax(0,1fr) 80px 120px;align-items:center;gap:8px;margin-bottom:6px;display:grid}.card .test-formula-row .checkbox-row{width:auto;margin:0;font-size:13px}.card .test-formula-row input[type=number]{box-sizing:border-box;width:100%;padding:4px 6px;font-size:13px}.card .test-formula-row input[type=number]:disabled{opacity:.55}.test-formula-row>.customer-meta{white-space:nowrap}.test-formula-total{margin:8px 0 0}@media (width<=760px){.test-formula-grid{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-auto-flow:row}.test-formula-row{grid-template-columns:minmax(0,1fr) 64px 72px}.test-formula-row>.customer-meta{white-space:normal}}.complaint-button{color:#fff;background:#ea580c;border-color:#ea580c}.complaint-button:hover:not(:disabled){background:#c2410c;border-color:#c2410c}.complaint-reply-cta{align-items:center;gap:6px;display:inline-flex}.icon-button.reply-button{color:#fff;background:#ea580c;border-color:#ea580c}.icon-button.reply-button:hover{background:#c2410c;border-color:#c2410c}.complaint-saved{color:var(--ok-text)}.complaint-status-pendiente{border-color:var(--warn-text);color:var(--warn-text)}.complaint-status-resuelta{border-color:var(--ok-text);color:var(--ok-text)}.complaint-dialog{width:min(760px,100vw - 32px)}.complaint-dialog textarea,.complaint-response-dialog textarea{font:inherit;border:1px solid var(--border);background:var(--field-bg);color:var(--text-h);resize:vertical;border-radius:6px;padding:6px 8px}.complaint-items{margin-bottom:12px}.complaint-item-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) 150px 170px auto;align-items:start;gap:10px;padding:10px 0;display:grid}.card .complaint-item-row label{margin-bottom:4px}.card .complaint-item-row .checkbox-row{margin:0;font-size:12px}.complaint-item-row input[type=number],.complaint-item-row input[type=text]{box-sizing:border-box;width:100%}.complaint-item-remove{margin-top:26px}@media (width<=640px){.complaint-item-row{grid-template-columns:1fr 1fr}.complaint-item-ref{grid-column:1/-1}.complaint-item-remove{margin-top:0}}.complaint-response-context{margin:0 0 12px}.complaint-responses-title{margin:20px 0 8px}.complaint-response{margin-bottom:10px}.complaint-response p{white-space:pre-wrap;margin:6px 0 0}.complaint-response-head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.complaint-edits summary{cursor:pointer;margin-top:6px;font-size:13px}.complaint-actions{align-items:center;gap:20px}.complaint-actions .back-button{margin-bottom:0}.complaint-detail-dialog{width:min(720px,100vw - 32px)}.complaint-detail-dialog h3{margin-top:0}.complaint-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px;margin-bottom:12px;font-size:14px;display:grid}@media (width<=560px){.complaint-detail-grid{grid-template-columns:minmax(0,1fr)}}.complaint-response-edit{flex-direction:column;gap:4px;margin-top:6px;display:flex}.complaint-response-edit textarea{font:inherit;border:1px solid var(--border);background:var(--field-bg);color:var(--text-h);resize:vertical;border-radius:6px;padding:6px 8px}.complaint-edit-button{margin-top:8px;padding:4px 12px;font-size:13px}.complaint-detail-dialog .param-dialog-header{margin-bottom:12px}.quote-lines td small.draft-expiry{min-width:0;color:var(--warn-text);white-space:nowrap;font-size:12px;font-weight:600;line-height:1.3;display:block}.month-search-row .month-search-download{margin-left:auto}.quote-status-despacho_parcial{color:#1a1a1a;background:#a5b4fc;border-color:#0000}.trip-status-en_cargue{border-color:var(--warn-text);color:var(--warn-text)}.trip-status-despachado{border-color:var(--ok-text);color:var(--ok-text)}.dispatch-form .card+.card{margin-top:16px}.dispatch-carrier-fields{margin-top:12px}.dispatch-carrier-fields .link-button{align-self:flex-start;margin-top:4px;font-size:13px}.dispatch-quick-add{margin:8px 0 12px}.dispatch-add-quote{max-width:520px}.dispatch-lines-wrap{margin-top:12px;overflow-x:auto}.quote-lines.dispatch-lines select{min-width:120px}.quote-lines tr.dispatch-quote-row td{background:var(--wash-strong);padding-top:10px}.dispatch-quote-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.dispatch-quote-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:16px;display:flex}.quote-lines.dispatch-lines select.dispatch-add-line{width:auto;max-width:320px;padding:4px 8px;font-size:13px}.dispatch-save-hint{text-align:right;font-size:13px}.dispatch-quote-block{margin-top:16px}.dispatch-quote-block h3{margin-bottom:6px}.dispatch-confirm{max-width:560px;margin-top:12px}.dispatch-leftovers{text-align:left;margin-bottom:10px}.dispatch-leftover{border-top:1px solid var(--border);padding:8px 0;font-size:14px}.dispatch-leftover input:not([type=checkbox]){width:100%;margin-top:4px}.dispatch-notice{color:var(--ok-text);font-weight:600}.dispatch-missing-list{margin:4px 0 12px;padding-left:20px;font-size:14px}.dispatch-catalog{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:16px;display:grid}@media (width<=760px){.dispatch-catalog{grid-template-columns:1fr}}.quote-lines tr.row-archived td{opacity:.6}.dispatch-load-head{align-items:center;gap:16px;margin-top:16px;display:flex}.dispatch-load-head h3,.dispatch-quote-block .dispatch-quote-head h3{margin:0}.dispatch-quote-block .dispatch-quote-head{margin-bottom:6px}.trip-evidence{margin-top:16px}.trip-evidence-block{padding:10px 0}.trip-evidence-row{grid-template-columns:1fr 1fr;gap:24px;display:grid}.trip-evidence-row .trip-evidence-block+.trip-evidence-block{border-left:1px solid var(--border);padding-left:24px}@media (width<=700px){.trip-evidence-row{grid-template-columns:1fr;gap:0}.trip-evidence-row .trip-evidence-block+.trip-evidence-block{border-left:none;border-top:1px solid var(--border);padding-left:0}}.trip-downloads{margin-top:16px}.trip-downloads-buttons{flex-wrap:wrap;gap:8px 12px;display:flex}.trip-downloads-buttons .error{flex-basis:100%;margin:0}.trip-evidence-head{align-items:center;gap:10px;margin-bottom:6px;display:flex}.trip-ev-ok{border-color:var(--ok-text);color:var(--ok-text)}.trip-ev-falta,.trip-ev-vencida{border-color:var(--warn-text);color:var(--warn-text)}.trip-ev-text-ok{color:var(--ok-text)}.trip-ev-text-falta,.trip-ev-text-vencida{color:var(--warn-text)}.trip-ev-line{font-size:13px}.trip-signature-img{border:1px solid var(--border);background:#fff;border-radius:6px;width:260px;max-width:100%;margin-bottom:4px;display:block}.trip-photos{flex-wrap:wrap;gap:12px;margin-bottom:8px;display:flex}.trip-photo{width:calc(50% - 6px);max-width:190px;margin:0}.trip-photo img,.trip-photo-loading{object-fit:cover;border:1px solid var(--border);cursor:zoom-in;border-radius:6px;width:100%;height:125px;display:block}.trip-photo-loading{cursor:default;color:var(--muted-text);justify-content:center;align-items:center;display:flex}.trip-photo figcaption{color:var(--muted-text);margin-top:3px;font-size:12px}.trip-photo figcaption .link-button{margin-left:8px;font-size:12px}.trip-photo-zoom{z-index:60;cursor:zoom-out;justify-content:center;align-items:center;display:flex;position:fixed;inset:16px}.trip-photo-zoom img{border-radius:8px;max-width:100%;max-height:100%}.trip-override-note{font-size:14px}.schedule-popover.signature-dialog{width:min(680px,100vw - 24px)}.schedule-popover.signature-dialog-doc{width:min(760px,100vw - 24px)}.trip-contract{border:1px solid var(--border);background:var(--field-bg);border-radius:8px;margin:12px 0 16px;padding:16px 18px;font-size:14px;line-height:1.55}.trip-contract h4{text-align:center;margin:0 0 10px;font-size:15px}.trip-contract h5{margin:16px 0 6px;font-size:14px}.trip-contract p{text-align:justify;margin:0 0 8px}.trip-contract-annex{font-size:13px}@media (width<=600px){.trip-contract{padding:12px}.trip-contract p{text-align:left}}.trip-contract-annex .trip-contract-num{text-align:right}.trip-contract p.trip-contract-total{text-align:right;margin-top:6px;font-weight:600}.my-signature-preview{aspect-ratio:800/300;border:1px solid var(--border);background:#fff;border-radius:8px;width:100%;display:block}.signature-canvas{aspect-ratio:800/300;border:2px dashed var(--border);touch-action:none;cursor:crosshair;background:#fff;border-radius:8px;width:100%;display:block}.trip-evidence-block>small{display:block}.trip-evidence-block>button{margin-top:8px}.icon-button.confirm-gray:disabled,.icon-button.confirm-blocked{color:#fff;opacity:.55;background:#6b7280;border-color:#6b7280}.occasional-mark{border:1px solid var(--warn-text);color:var(--warn-text);vertical-align:1px;border-radius:999px;margin-left:6px;padding:0 7px;font-size:11px;font-weight:600;display:inline-block}.actions.dispatch-trip-actions{gap:20px}.sheet-status-completa{border-color:var(--ok-text);color:var(--ok-text)}.sheet-status-incompleta{border-color:var(--warn-text);color:var(--warn-text)}.sheet-status-sin_llenar{color:var(--muted-text)}.process-sheet-filters{margin-bottom:4px}.process-sheet-meta{color:var(--muted-text);margin:-8px 0 4px;font-size:14px}.process-sheet-updated{color:var(--muted-text);margin:0 0 16px;font-size:13px}.process-sheet-card h3{margin:0 0 4px}.process-sheet-hint{color:var(--muted-text);margin:0 0 12px;font-size:13px}.process-sheet-subtitle{color:var(--text-h);margin:16px 0 8px;font-size:14px}.formulation-table select{width:100%;min-width:190px}.formulation-table .phr-input{width:90px}.formulation-num{color:var(--muted-text);width:24px}.formulation-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:10px;display:flex}.formulation-footer .process-sheet-hint{margin:0}.formulation-total{color:var(--text-h);font-size:14px;font-weight:600}.card .process-field{flex-direction:column;gap:4px;margin:0;font-size:14px;display:flex}.card .process-field>span{color:var(--text-h);font-weight:600}.card .process-field input[type=number],.card .mixing-input{box-sizing:border-box;width:100%;max-width:140px}.card .process-field input:disabled{opacity:.6}.card .process-field.is-na input[type=number]{background:var(--border);color:var(--muted-text);opacity:1}.card .na-check{color:var(--muted-text);cursor:pointer;flex-direction:row;align-items:center;gap:6px;width:fit-content;margin:0;font-size:12px}.card .na-check input{margin:0;padding:0}.temp-grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:14px 16px;display:grid}.machine-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-top:8px;display:grid}.load-options{gap:14px;display:flex}.process-sheet-actions{align-items:center;gap:12px;display:flex}.process-sheet-actions .process-sheet-hint{margin:0}.process-sheet-saved{color:var(--ok-text);font-weight:600}.process-edits{flex-direction:column;gap:12px;margin-top:16px;display:flex}.process-edit{border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:3px;padding:10px 12px;font-size:14px;display:flex}.process-edit strong{color:var(--text-h);margin-bottom:2px}.sheet-tab-row{flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:16px;display:flex}.sheet-tab-row .view-toggle{margin:0}.cartera-header-actions{flex-wrap:wrap;gap:8px;display:flex}.cartera-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0 0 16px;display:grid}.cartera-stats>div{border:1px solid var(--border);background:var(--surface);background:var(--bg);border-radius:8px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.cartera-stats small{color:var(--muted-text);font-size:12px}.cartera-stats strong{color:var(--text-h);font-size:17px}.cartera-stats strong small{font-size:12px}.cartera-total-overdue strong,.cartera-overdue{color:var(--bad-text);font-weight:700}.cartera-title{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:2px;display:flex}.cartera-title .approval-badge{font-size:13px}.cartera-summary .cartera-stats{margin-bottom:10px}.cartera-retentions{margin:0 0 12px;font-size:14px}.cartera-actions{flex-wrap:wrap;gap:8px;display:flex}.cartera-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:20px;display:flex}.cartera-section-head .view-toggle{margin:0}.cartera-table td{padding-left:7px;padding-right:7px}tr.cartera-voided td{opacity:.55}tr.cartera-voided td:not(:last-child){text-decoration:line-through}.cartera-void-note{color:var(--muted-text);font-size:12px;display:block}.cartera-credit-note{color:var(--ok-text);font-size:12px;display:block}.cartera-changes{color:var(--muted-text);margin:0;padding-left:18px;font-size:13px}.cartera-state-al_dia,.cartera-ob-pagada_total{border-color:var(--ok-text);color:var(--ok-text)}.cartera-state-mora,.cartera-state-cupo,.cartera-ob-vencida{border-color:var(--bad-text);color:var(--bad-text)}.cartera-state-sin_configurar,.cartera-ob-pagada_parcial{border-color:var(--warn-text);color:var(--warn-text)}.cartera-ob-anulada{color:var(--muted-text)}.schedule-popover.cartera-dialog{width:min(520px,100vw - 32px)}.cartera-dialog h3{margin-top:0}.cartera-dialog-customer{color:var(--text-h);margin:0 0 10px;font-weight:700}.cartera-dialog-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=560px){.cartera-dialog-row{grid-template-columns:1fr}}.cartera-state-sin_cartera{color:var(--muted-text)}.cartera-remove-confirm{flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;display:inline-flex}:is(.schedule-popover.cartera-dialog:has(.enroll-picker),.schedule-popover.cartera-dialog:has(.enroll-chosen)){width:min(640px,100vw - 32px)}.enroll-picker .result-list{max-height:200px;margin-top:0}.enroll-empty{color:var(--muted-text);padding:8px 12px;font-size:13px}.enroll-chosen{border:1px solid var(--accent);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;display:flex}.enroll-chosen small{display:block}.enroll-balance-question{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:4px 0 10px;display:flex}.enroll-balance-question .view-toggle{margin:0}.enroll-invoices{margin-bottom:10px}.enroll-invoice-row{grid-template-columns:20px 1fr 150px 140px 24px;align-items:end;gap:8px;display:grid}.enroll-invoice-n{color:var(--muted-text);padding-bottom:14px;font-size:13px}.enroll-invoice-remove{padding-bottom:12px;font-size:18px}.enroll-invoices-foot{justify-content:space-between;align-items:center;margin:2px 0 6px;display:flex}@media (width<=560px){.enroll-invoice-row{grid-template-columns:20px 1fr 24px}.enroll-invoice-row label:nth-of-type(2),.enroll-invoice-row label:nth-of-type(3){grid-column:2/3}}.cartera-block{border:1px solid var(--bad-text);border-radius:8px;margin:8px 0;padding:10px 12px;font-size:13px}.quote-view-side .cartera-block{box-sizing:border-box;text-align:left;width:0;min-width:100%}.cartera-block strong{color:var(--bad-text)}.cartera-block p{margin:4px 0}.cartera-block ul{margin:4px 0 0;padding-left:18px}.approval-override{text-align:left;flex-direction:column;gap:4px;margin:6px 0;font-size:13px;display:flex}.complaint-credit-note{margin:4px 0 8px}.complaint-credit-note-line{color:var(--ok-text);margin:4px 0 0;font-size:13px;font-weight:600}.heat-badge{white-space:nowrap;color:#1a1a1a;border-radius:999px;padding:2px 10px;font-size:13px;font-weight:700;display:inline-block}.heat-dot{vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.heat-reciente{background:#60ff4a}.heat-medio{background:#ffe74a}.heat-alto{background:#ffb44a}.heat-critico{color:#fff;background:#ff3838}.heat-nunca{background:#d4d4d8}.heat-value-col{text-align:right}.heat-row{cursor:pointer}.heat-row:hover td{background:var(--wash)}.heat-row-contacted td{opacity:.55}.heat-contact-note{color:var(--muted-text);white-space:nowrap;margin-top:4px;font-size:12px;display:block}.schedule-popover.contact-dialog{width:min(520px,100vw - 32px)}.contact-dialog h3{margin:0 0 2px}.contact-dialog-meta{color:var(--muted-text);margin:0 0 12px;font-size:14px}.contact-dialog textarea{resize:vertical;background:var(--field-bg);width:100%}.contact-dialog-counter{text-align:right;color:var(--muted-text);font-size:12px;display:block}.contact-history-title{margin:18px 0 8px;font-size:15px}.contact-history-empty{color:var(--muted-text);margin:0;font-size:14px}.contact-dialog .contact-history{max-height:240px;margin:0;padding:0;list-style:none;overflow-y:auto}.contact-dialog .contact-history li{border-top:1px solid var(--border);padding:8px 0;font-size:14px}.contact-history-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.contact-history-note{color:var(--text);margin:4px 0 0}.contact-undo-confirm{align-items:center;gap:8px;display:inline-flex}.dvi-toolbar{flex-wrap:wrap;align-items:center;gap:8px 20px;display:flex}.dvi-fetched{color:var(--muted-text);align-items:center;gap:8px;font-size:13px;display:inline-flex}.dvi-fetched .nowrap{white-space:nowrap}.dvi-body h3{margin:28px 0 8px}.dvi-loading{opacity:.55}.dvi-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:16px 0 8px;display:grid}.dvi-stat{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 14px}.dvi-stat strong{color:var(--text-h);font-size:24px;display:block}.dvi-stat span{color:var(--muted-text);font-size:13px}.dvi-note{color:var(--muted-text);margin:4px 0 0;font-size:13px}.quote-lines.dvi-table td small{min-width:0;color:var(--muted-text);font-size:12px;display:block}.dvi-table .num{text-align:right;white-space:nowrap}.dvi-invoice+.dvi-invoice{margin-top:4px}.dvi-lines{white-space:nowrap;font-size:13px}.dvi-facturado{border-color:var(--ok-text);color:var(--ok-text)}.dvi-de_menos,.dvi-precio_distinto,.dvi-de_mas{border-color:var(--warn-text);color:var(--warn-text)}.dvi-probable{border-color:var(--accent);color:var(--accent)}.dvi-sin_factura,.dvi-sin_despacho,.dvi-not-reinvoiced{border-color:var(--bad-text);color:var(--bad-text)}.dvi-refacturacion{color:var(--muted-text)}:root{--pf-gris-b:#a1a1aa;--pf-gris-f:#3f3f46;--pf-azul-b:#3b82f6;--pf-azul-f:#1e3a5f;--pf-verde-b:#22c55e;--pf-verde-f:#14532d;--pf-amarillo-b:#eab308;--pf-amarillo-f:#4a3d0a;--pf-naranja-b:#f97316;--pf-naranja-f:#5a2d0c;--pf-rojo-b:#ef4444;--pf-rojo-f:#5c1a1a;--pf-morado-b:#a855f7;--pf-morado-f:#3b2160;--pf-turquesa-b:#14b8a6;--pf-turquesa-f:#134e4a;--pf-edge:#a1a1aa;--pf-conector-f:#f4f4f5;--pf-conector-t:#18181b}:root[data-theme=light]{--pf-gris-f:#f4f4f5;--pf-azul-f:#dbeafe;--pf-verde-f:#dcfce7;--pf-amarillo-f:#fef9c3;--pf-naranja-f:#ffedd5;--pf-rojo-f:#fee2e2;--pf-morado-f:#f3e8ff;--pf-turquesa-f:#ccfbf1;--pf-edge:#52525b;--pf-conector-f:#18181b;--pf-conector-t:#fff}.pf-color-gris{--pf-b:var(--pf-gris-b);--pf-f:var(--pf-gris-f)}.pf-color-azul{--pf-b:var(--pf-azul-b);--pf-f:var(--pf-azul-f)}.pf-color-verde{--pf-b:var(--pf-verde-b);--pf-f:var(--pf-verde-f)}.pf-color-amarillo{--pf-b:var(--pf-amarillo-b);--pf-f:var(--pf-amarillo-f)}.pf-color-naranja{--pf-b:var(--pf-naranja-b);--pf-f:var(--pf-naranja-f)}.pf-color-rojo{--pf-b:var(--pf-rojo-b);--pf-f:var(--pf-rojo-f)}.pf-color-morado{--pf-b:var(--pf-morado-b);--pf-f:var(--pf-morado-f)}.pf-color-turquesa{--pf-b:var(--pf-turquesa-b);--pf-f:var(--pf-turquesa-f)}.pf-title-sub{color:var(--muted-text);font-weight:400}.pf-canvas{border:1px solid var(--border);background:var(--surface);border-radius:8px;min-width:0;position:relative;overflow:hidden}.pf-canvas div.react-flow{--xy-background-color:transparent;--xy-background-pattern-color:var(--border);--xy-edge-stroke-default:var(--pf-edge);--xy-edge-stroke-width-default:3;--xy-connectionline-stroke-width-default:3;--xy-edge-stroke-selected-default:var(--accent);--xy-connectionline-stroke-default:var(--accent);--xy-edge-label-background-color-default:var(--surface);--xy-edge-label-color-default:var(--text-h);--xy-controls-button-background-color-default:var(--surface);--xy-controls-button-background-color-hover-default:var(--bg);--xy-controls-button-color-default:var(--text-h);--xy-controls-button-color-hover-default:var(--text-h);--xy-controls-button-border-color-default:var(--border);--xy-handle-background-color-default:var(--accent);--xy-handle-border-color-default:var(--surface)}.pf-canvas .react-flow__edge-text{font-size:12px;font-weight:700}.pf-canvas .react-flow__edge-textbg{stroke:var(--border);stroke-width:1px}.pf-canvas .react-flow__edge-textwrapper{pointer-events:all;cursor:pointer}.pf-canvas .react-flow__controls button{border-radius:0;padding:0}.pf-canvas-view{height:min(70vh,640px);min-height:360px}.pf-node{box-sizing:border-box;text-align:center;color:var(--text-h);border:2px solid var(--pf-b);background:var(--pf-f);justify-content:center;align-items:center;display:flex;position:relative}.pf-kind-inicio,.pf-kind-fin{border-radius:999px;width:140px;min-height:56px;padding:8px 20px}.pf-kind-actividad{border-radius:6px;width:180px;min-height:72px;padding:8px 10px}.pf-kind-decision{background:0 0;border:none;width:190px}.pf-kind-documento{background:0 0;border:none;width:200px;min-height:72px;padding:12px 52px}.pf-kind-conector{border:2px solid var(--pf-conector-f);background:var(--pf-conector-f);width:44px;height:44px;color:var(--pf-conector-t);box-shadow:0 0 0 2px var(--bg);border-radius:50%}.pf-kind-conector.pf-selected{box-shadow:0 0 0 3px var(--accent)}.pf-conector-number{font-size:17px;font-weight:800;line-height:1}.pf-shape-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.pf-shape-svg polygon{fill:var(--pf-f);stroke:var(--pf-b);stroke-width:2px}.pf-kind-documento .react-flow__handle-left{left:11%}.pf-kind-documento .react-flow__handle-right{left:89%}.pf-node-text{overflow-wrap:anywhere;flex-direction:column;gap:2px;font-size:12.5px;line-height:1.25;display:flex;position:relative}.pf-kind-decision .pf-node-text{width:55%}.pf-node-main{font-weight:600}.pf-node-area{color:var(--muted-text);font-size:10px}.pf-selected{box-shadow:0 0 0 3px var(--accent)}.pf-kind-decision.pf-selected,.pf-kind-documento.pf-selected{box-shadow:none}.pf-selected .pf-shape-svg polygon{stroke:var(--accent);stroke-width:3px}.pf-note-mark{width:17px;height:17px;color:var(--surface);background:var(--text-h);border:1.5px solid var(--surface);border-radius:50%;justify-content:center;align-items:center;font:italic 700 11px/1 Georgia,serif;display:flex;position:absolute;top:-8px;right:-8px}.pf-kind-decision .pf-note-mark{top:14%;right:14%}.pf-note-bubble{border:1px solid var(--border);background:var(--tooltip-bg);width:240px;color:var(--text-h);text-align:left;white-space:pre-wrap;pointer-events:none;border-radius:8px;padding:8px 10px;font-size:13px;line-height:1.35;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 8px 20px #00000059}.react-flow__node:has(.pf-note-open){z-index:1000!important}.pf-handle{opacity:.45;width:9px;height:9px}.pf-node:hover .pf-handle,.pf-selected .pf-handle{opacity:1}.pf-canvas-view .pf-handle,.pf-canvas-view .pf-node:hover .pf-handle{opacity:0}.pf-canvas-view .react-flow__node:has(.pf-note-mark){cursor:pointer}.pf-leave-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.pf-leave-confirm{align-items:center;gap:8px;display:inline-flex}.pf-meta-fields{grid-template-columns:minmax(0,1fr) 200px 240px;align-items:start;gap:12px;margin-bottom:12px;display:grid}.pf-meta-fields label,.process-roles-field{flex-direction:column;gap:4px;font-size:14px;display:flex}.pf-meta-fields input,.pf-meta-fields select{font:inherit;border:1px solid var(--border);background:var(--field-bg);color:var(--text-h);border-radius:6px;padding:6px 8px}.pf-editor{grid-template-columns:92px minmax(0,1fr) 240px;gap:10px;height:max(440px,62vh);margin-bottom:12px;display:grid}.pf-toolbox{flex-direction:column;gap:8px;display:flex}.pf-tool{background:var(--surface);color:var(--text-h);cursor:grab;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;font-size:12px;display:flex}.pf-tool:hover{border-color:var(--accent)}.pf-tool-label{text-align:center;overflow-wrap:anywhere;max-width:100%}.pf-tool-shape{border:2px solid var(--muted-text);width:40px;height:22px;display:block}.pf-tool-inicio,.pf-tool-fin{border-radius:999px}.pf-tool-actividad{border-radius:3px}.pf-tool-decision{width:20px;height:20px;margin:1px 0;transform:rotate(45deg)}.pf-tool-conector{border-color:var(--pf-conector-f);background:var(--pf-conector-f);width:22px;height:22px;color:var(--pf-conector-t);text-align:center;border-radius:50%;font-size:12px;font-weight:800;line-height:18px}.pf-tool-documento{border:none}.pf-tool-documento svg{width:100%;height:100%;display:block;overflow:visible}.pf-panel{margin:0;font-size:14px;overflow-y:auto}.pf-panel h4{margin:0 0 10px}.pf-panel textarea,.pf-legend-row input{font:inherit;border:1px solid var(--border);background:var(--field-bg);color:var(--text-h);resize:vertical;border-radius:6px;padding:6px 8px}.pf-field{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.pf-help p{color:var(--muted-text);margin:0 0 10px;font-size:13px}.pf-swatches{flex-wrap:wrap;gap:6px;display:flex}.pf-swatch{border:2px solid var(--pf-b);background:var(--pf-f);border-radius:50%;width:24px;height:24px;padding:0}.pf-swatch[aria-checked=true]{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--text-h)}.pf-swatch-static{border-radius:4px;flex:none;width:16px;height:16px;display:inline-block}.pf-legend-editor h4{margin:0 0 10px}.card .pf-legend-row{flex-direction:row;align-items:center;gap:10px;margin-bottom:8px}.pf-legend-row input{flex:1}.pf-view-actions{gap:8px;display:flex}.pf-view-actions button{white-space:nowrap}@media (width<=480px){.pf-view-header{flex-wrap:wrap}.pf-view-header h2{flex:100%}}.pf-view-meta{margin:-4px 0 12px}.pf-legend{flex-wrap:wrap;gap:8px 18px;margin-top:12px;font-size:14px;display:flex}.pf-legend-item{align-items:center;gap:6px;display:inline-flex}.pf-note-hint{margin-top:8px}.role-multiselect{position:relative}.role-multiselect-button{background:var(--field-bg);width:100%;color:var(--text-h);text-align:left;justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;display:flex}.role-multiselect-empty{color:var(--muted-text)}.role-multiselect-menu{z-index:30;border:1px solid var(--border);background:var(--surface);border-radius:8px;min-width:220px;max-height:300px;padding:6px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 10px 24px #00000059}.role-multiselect-all{border-bottom:1px solid var(--border);gap:12px;margin-bottom:4px;padding:2px 6px 6px;display:flex}.card .role-multiselect-option,.role-multiselect-option{cursor:pointer;border-radius:4px;flex-direction:row;align-items:center;gap:8px;margin:0;padding:5px 6px;font-size:14px;display:flex}.role-multiselect-option:hover{background:var(--bg)}.process-new-dialog h3{margin-top:0}.process-new-dialog .process-roles-field{margin-bottom:12px}.process-new-dialog .role-multiselect-menu{max-height:none;box-shadow:none;margin-top:4px;position:static}@media (width<=760px){.pf-meta-fields{grid-template-columns:1fr}.pf-editor{grid-template-columns:1fr;height:auto}.pf-toolbox{flex-flow:wrap}.pf-canvas:not(.pf-canvas-view){height:60vh}}.plan-table .num{text-align:right}.plan-table-wrap{overflow-x:auto}.plan-row{cursor:pointer}.plan-row:hover td{background:var(--wash)}.plan-chevron{width:1em;color:var(--muted-text)}.plan-chain-row td{background:var(--wash)}.plan-chain{white-space:normal;max-width:min(940px,100vw - 96px);margin:0;padding-left:18px;font-size:13px;line-height:1.55;position:sticky;left:12px}.plan-base{color:var(--muted-text);margin:-8px 0 16px;font-size:13px}.plan-controls{margin-bottom:16px}.card .plan-controls-row{flex-wrap:wrap;align-items:flex-end;gap:12px 20px;display:flex}.card .plan-controls-row label{max-width:180px;margin:0}.plan-controls-actions{flex-wrap:wrap;align-items:center;margin-left:auto}.plan-settings-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px 16px;margin-top:14px;display:grid}.card .plan-settings-grid label{margin:0}.plan-settings-grid small{color:var(--muted-text);margin-top:2px;font-weight:400;display:block}.schedule-popover.plan-settings-dialog{width:min(720px,100vw - 32px)}.plan-hint{color:var(--warn-text);margin:10px 0 0;font-size:13px}.plan-busy{color:var(--muted-text)}.plan-summary{margin-bottom:20px}.plan-big{color:var(--text-h);font-size:26px;font-weight:700;line-height:1.15}.plan-big small{color:var(--muted-text);font-size:14px;font-weight:400}.progress-fill.plan-over-fill{background:var(--danger)}.plan-over-text{color:var(--bad-text);margin:8px 0 0;font-size:13px}.plan-min-value{vertical-align:top;text-align:center;display:inline-block}.plan-min-value+.plan-min-edit{vertical-align:top;padding-top:2px}.quote-lines td small.plan-fixed{color:var(--muted-text);margin-top:-2px;font-size:11px;line-height:1.2;display:block}.plan-line-tag{color:var(--muted-text);white-space:nowrap;margin-left:4px}.quote-lines td small.plan-fixed,.quote-lines td small.plan-line-tag,.quote-lines td small.plan-nohistory,.quote-lines td small.plan-sub{min-width:0}.quote-lines td small.plan-nohistory{color:var(--muted-text);margin-top:2px;font-size:11px;line-height:1.2;display:block}.plan-min-edit{color:var(--muted-text);vertical-align:middle;cursor:pointer;background:0 0;border:none;padding:0 0 0 6px}.plan-min-edit:hover{color:var(--text-h)}.plan-last-sale{margin-bottom:12px}.plan-dec-producir,.plan-dec-meta{border-color:var(--accent);color:var(--accent)}.plan-dec-meta{border-style:dashed}.plan-dec-corrida_minima{border-color:var(--warn-text);color:var(--warn-text)}.plan-dec-no_necesita,.plan-status-aprobado{border-color:var(--ok-text);color:var(--ok-text)}.plan-dec-diferir,.plan-dec-sin_venta,.plan-status-borrador,.plan-status-reemplazado{color:var(--muted-text)}.plan-dec-sin_datos{border-color:var(--bad-text);color:var(--bad-text)}.plan-status-vista_previa{border-style:dashed;border-color:var(--warn-text);color:var(--warn-text)}.plan-status-por_aprobar{border-color:var(--warn-text);color:var(--warn-text)}h2 .approval-badge{vertical-align:middle;font-size:13px}.plan-returned{color:var(--warn-text);margin:-8px 0 16px;font-size:14px}.plan-return{margin-top:10px}.card .plan-return label{margin:0 0 8px}.plan-return textarea{background:var(--field-bg);width:100%;max-width:560px}.plan-flow-links{gap:16px;margin:-8px 0 16px;display:flex}.plan-materials .plan-flow-links{margin:16px 0 8px}.plan-history{color:var(--muted-text);margin:-8px 0 16px;padding-left:18px;font-size:13px}.plan-diff{margin:-8px 0 16px}.plan-row-adjusted td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.quote-lines td .plan-min-value small.plan-sub{display:block}.plan-materials h3{margin:24px 0 8px}.plan-materials .indicators-grid h3{margin:0}.quote-lines td small.plan-mp-class{letter-spacing:.02em;text-transform:uppercase;min-width:0;color:var(--accent);margin-bottom:2px;font-size:11px;font-weight:700;display:block}.quote-lines td.num small.plan-sub{display:block}.plan-group-table td{height:44px;padding-top:0;padding-bottom:0}.plan-group-table select{margin:0;padding-top:4px;padding-bottom:4px}.plan-total-row td{color:var(--text-h);font-weight:700}.plan-settings-subtitle{margin:20px 0 4px}.quote-lines td small.plan-adjusted-tag{color:var(--accent);white-space:nowrap}.quote-lines td small.plan-adjust-warn,p.plan-adjust-warn{min-width:0;color:var(--warn-text);white-space:nowrap;font-size:11px;line-height:1.2;display:block}p.plan-adjust-warn{white-space:normal;margin:0;font-size:13px}.po-approve{margin-right:32px}.count-view-toggle{margin:0 0 10px}.count-view-toggle button{padding:4px 12px;font-size:13px}.success-text{color:var(--ok-text);font-weight:600}.approval-badge.param-ok{border-color:var(--ok-text);color:var(--ok-text)}.approval-badge.param-out{border-color:var(--bad-text);color:var(--bad-text)}.line-params-now h3{margin-top:0}.line-params-now-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.line-params-now-line{border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:12px 14px;display:flex}.line-params-now-line>strong{color:var(--text-h);flex-basis:100%}.line-params-register{padding:10px 22px;font-size:16px}.line-params-filters{flex-wrap:wrap;align-items:center;gap:8px 20px;margin:8px 0 4px;display:flex}.line-params-filters .view-toggle{margin:0}.line-params-subtitle{margin:20px 0 8px}.line-params-item-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.line-params-group h3{margin-top:0}.line-params-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:16px;display:grid}.card .line-param input[type=number]{max-width:none;padding:10px 12px;font-size:20px}.card .line-param.line-param-out input[type=number]{border-color:var(--bad-text);color:var(--bad-text);box-shadow:inset 0 0 0 1px var(--bad-text)}.line-param .load-options .na-check{white-space:nowrap}.line-param-sheet{color:var(--muted-text);font-size:12px}.line-param-out .line-param-sheet{color:var(--bad-text);font-weight:600}.line-params-warning{color:var(--bad-text);margin:0 0 8px;font-weight:600}.line-params textarea{box-sizing:border-box;width:100%}.line-params-actions{justify-content:flex-end;margin-top:8px;display:flex}.line-params-actions button{padding:12px 26px;font-size:17px}.line-param-table{border-collapse:collapse;width:100%}.line-param-table td{padding:3px 6px 3px 0}.line-param-value{color:var(--text-h);text-align:right;white-space:nowrap;font-weight:600}.line-param-out-row td,.line-param-out-row .line-param-value{color:var(--bad-text)}.failure-form h3{margin:18px 0 8px}.failure-form h3:first-child{margin-top:0}.failure-areas{flex-wrap:wrap;margin:0 0 8px}.failure-areas button{padding:8px 16px;font-size:15px}.mnt-svg-machine.mnt-svg-selected .mnt-svg-hit{stroke:var(--accent);stroke-width:4px;fill:#3b82f61f}.failure-chosen{color:var(--text-h);margin:6px 0 0;font-weight:600}.failure-recent{border:1px solid var(--warn-text);border-radius:8px;margin-top:10px;padding:10px 14px}.failure-recent strong{color:var(--warn-text)}.failure-recent ul{margin:6px 0 0;padding:0;list-style:none}.failure-recent li+li{margin-top:8px}.failure-recent .failure-description{white-space:pre-wrap;margin-top:2px}.failure-stopped{flex-wrap:wrap;gap:10px;display:flex}.failure-stopped button{background:var(--surface);color:var(--text);border:1px solid var(--border);padding:10px 18px;font-size:16px}.failure-stopped .failure-yes.active{background:var(--danger);border-color:var(--danger);color:#fff}.failure-stopped .failure-no.active{color:#fff;background:#16a34a;border-color:#16a34a}.failure-form textarea,.line-params textarea{box-sizing:border-box;width:100%;font:inherit;font-size:16px}.failure-actions{align-items:center;gap:20px;margin-top:12px;display:flex}.failure-actions button:last-child{padding:10px 22px;font-size:16px}.quote-lines td.failure-description{white-space:pre-wrap;min-width:220px}
