:root{--bg:#0d1117;--panel:#161b22;--panel-hi:#1c2330;--panel-2:#11161d;--line:#2d3340;--line-hi:#3d4654;--line-hi2:#566273;--text:#e6edf3;--text-dim:#8b97a6;--text-faint:#5a6573;--make:#388bfd;--buy:#db8a47;--subcon:#c95ec9;--win:#3fb950;--late:#f85149;--warn:#d29922;--accent:#a371f7;--link:#a371f7;--state-done:#3fb950;--state-progress:#58a6ff;--state-confirmed:#a371f7;--state-waiting:#d29922;--state-late:#f85149;--co-joma:#388bfd;--co-iberica:#c95ec9;--co-normo:#3fb950;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Code", Menlo, monospace;--fs-eyebrow:10px;--fs-meta:11px;--fs-body:12px;--fs-strong:13px;--fs-title:15px;--fs-h1:21px;--fs-kpi:28px;--r-sm:4px;--r:7px;--r-md:9px;--r-lg:12px;--r-pill:14px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--ring-accent:0 0 0 2px var(--accent);--ring-accent-strong:0 0 0 3px var(--accent);--shadow-modal:0 20px 60px #000c;--shimmer:#2d3340aa;--replenish:#e0a500;--no-bom:#39c5cf;--consumer-done:#f778ba;--draft-signal:#5b8aa6;--no-std-time:#a8c437;--self-vendor:#a33b6e}*{box-sizing:border-box}html,body,#root{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-sans);margin:0}button{font-family:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@keyframes jpp-spin{to{transform:rotate(360deg)}}.jpp-spin{border:2px solid;border-right-color:#0000;border-radius:50%;animation:.6s linear infinite jpp-spin;display:inline-block}@keyframes jpp-pulse{0%,to{opacity:1}50%{opacity:.35}}.jpp-pulse{animation:1.1s ease-in-out infinite jpp-pulse}@keyframes jpp-shimmer{to{transform:translate(100%)}}.jpp-skeleton{background:var(--panel-hi);position:relative;overflow:hidden}.jpp-skeleton:after{content:"";background:linear-gradient(90deg, transparent, var(--shimmer), transparent);animation:1.4s infinite jpp-shimmer;position:absolute;inset:0;transform:translate(-100%)}.jpp-note img{background:#fff;border-radius:8px;max-width:100%;height:auto}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
