@font-face{font-family:Assistant;src:url(/fonts/Assistant-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Assistant;src:url(/fonts/Assistant-SemiBold.ttf) format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Assistant;src:url(/fonts/Assistant-Bold.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Suez One;src:url(/fonts/SuezOne-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Regular.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Medium.ttf) format("truetype");font-weight:500;font-display:swap}:root{--ink: #16181a;--ink-soft: #565b57;--field: #f2f4f1;--paper: #ffffff;--surface: #e4e8e2;--line: #cdd3cb;--clay: #d85a30;--clay-deep: #a8401d;--font-he-display: "Suez One", Georgia, serif;--font-he-sans: "Assistant", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--text-title: 34px;--text-subhead: 21px;--text-body: 18px;--text-caption: 14px;--text-eyebrow: 13px;--radius-card: 8px;--leading-body: 1.6;--blocking: #a8401d;--blocking-bg: rgba(168, 64, 29, .08);--warning: #8a6d27;--warning-bg: rgba(200, 162, 74, .14);--info: #4a5a6a;--info-bg: rgba(74, 90, 106, .08);--ok: #2f6b4f;--ok-bg: rgba(47, 107, 79, .1)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--field);color:var(--ink);font-family:var(--font-he-sans);font-size:16px;line-height:var(--leading-body);-webkit-text-size-adjust:100%}#root{min-height:100vh}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.01em}.eyebrow{font-family:var(--font-mono);font-weight:500;font-size:var(--text-eyebrow);letter-spacing:.12em;color:var(--ink-soft);text-transform:uppercase}h1,h2,h3{font-family:var(--font-he-display);font-weight:400;line-height:1.2;margin:0}h1{font-size:var(--text-subhead)}a{color:var(--clay-deep)}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-card);padding:20px}.stack{display:flex;flex-direction:column;gap:16px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.grow{flex:1}.sub{color:var(--ink-soft);font-size:var(--text-caption);margin:6px 0 0}.dash-div{border:0;border-top:1px dashed var(--line);margin:16px 0}button,input,select,textarea{font:inherit;color:inherit}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:6px;border:1px solid var(--line);background:var(--paper);cursor:pointer;transition:background .12s ease,border-color .12s ease}.btn:hover:not(:disabled){background:var(--surface)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--ink);border-color:var(--ink);color:var(--field)}.btn.primary:hover:not(:disabled){background:#000}.btn.danger{color:var(--clay-deep);border-color:var(--clay-deep);background:transparent}.btn.small{padding:6px 12px;font-size:var(--text-caption)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-size:var(--text-caption);color:var(--ink-soft)}.field input,.field select,.field textarea{padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--paper);width:100%}.field input:focus,.field select:focus,.field textarea:focus,.btn:focus-visible{outline:2px solid var(--clay);outline-offset:1px}.field.invalid input{border-color:var(--blocking);background:var(--blocking-bg)}.frow{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stepper{display:inline-flex;align-items:stretch;border:1px solid var(--line);border-radius:6px;overflow:hidden;width:fit-content}.stepper button{width:42px;border:0;background:var(--surface);cursor:pointer;font-size:20px}.stepper input{width:64px;border:0;text-align:center;padding:10px 0}.pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:var(--text-caption);border:1px solid var(--line);background:var(--surface)}.pill.processing{background:var(--info-bg);border-color:transparent;color:var(--info)}.pill.labeled{background:var(--warning-bg);border-color:transparent;color:var(--warning)}.pill.closed{background:var(--ok-bg);border-color:transparent;color:var(--ok)}.pill.cancelled,.pill.label_unknown{background:var(--blocking-bg);border-color:transparent;color:var(--blocking)}.check{display:flex;gap:10px;padding:10px 12px;border-radius:6px;font-size:var(--text-caption);margin-bottom:8px;border-inline-start:3px solid transparent}.check.blocking{background:var(--blocking-bg);border-inline-start-color:var(--blocking);color:var(--blocking)}.check.warning{background:var(--warning-bg);border-inline-start-color:var(--warning);color:var(--warning)}.check.info{background:var(--info-bg);border-inline-start-color:var(--info);color:var(--info)}.banner{padding:12px 14px;border-radius:6px;background:var(--surface);border-inline-start:3px solid var(--ink-soft);margin-bottom:16px;font-size:var(--text-caption)}.banner.blocking{background:var(--blocking-bg);border-inline-start-color:var(--blocking);color:var(--blocking)}table.ui{width:100%;border-collapse:collapse;font-size:var(--text-caption)}table.ui th{text-align:start;font-weight:600;color:var(--ink-soft);border-bottom:1px solid var(--line);padding:10px 8px;white-space:nowrap}table.ui td{padding:12px 8px;border-bottom:1px solid var(--line)}table.ui tbody tr{cursor:pointer}table.ui tbody tr:hover{background:var(--field)}.overflow{overflow-x:auto}.topbar{position:sticky;top:0;z-index:5;background:var(--paper);border-bottom:1px solid var(--line)}.topbar-in{max-width:1400px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.wordmark-row{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}.wordmark{font-family:var(--font-en-sans, "Inter", system-ui, sans-serif);font-weight:700;letter-spacing:-.02em;font-size:1.05rem}.wordmark-row small{color:var(--ink-soft);border-inline-start:1px solid var(--line);padding-inline-start:10px;font-size:var(--text-caption)}.tabs{display:flex;gap:4px;margin-inline-end:auto}.tabs button,.subtabs button{background:transparent;border:0;border-bottom:2px solid transparent;padding:8px 14px;cursor:pointer;color:var(--ink-soft)}.tabs button.active,.subtabs button.active{color:var(--ink);border-bottom-color:var(--clay)}.subtabs{display:flex;gap:4px;border-bottom:1px solid var(--line)}.topbar select{padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--paper)}main{max-width:1400px;margin:0 auto;padding:20px}.login-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:min(420px,100%)}.gate{text-align:center}.worker-grid{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:20px}.worker-choice{min-width:140px;padding:18px 24px;font-size:var(--text-body)}.workspace{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}@media(max-width:1100px){.workspace{grid-template-columns:1fr}}.paper{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-card);padding:24px}.sapdoc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.sapdoc-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px}.address-frame{border:1px solid var(--line);border-radius:6px;padding:10px 12px;margin-top:8px}.sapdoc-lines td,.sapdoc-lines th{font-size:var(--text-caption)}.sapdoc-lines tbody tr{cursor:default}.sapdoc-lines tbody tr:hover{background:transparent}.labels-stack{display:flex;flex-direction:column;gap:16px}.label-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-card);padding:12px}.label-preview{width:100%;aspect-ratio:2 / 3;max-height:460px;border:1px solid var(--line);border-radius:4px;margin-top:10px;background:#fff}.label-preview.placeholder{display:flex;align-items:center;justify-content:center;color:var(--ink-soft);font-size:var(--text-caption)}@page{size:100mm 150mm;margin:0}@media print{.topbar,.btn,.subtabs,.validation{display:none!important}}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}@media(max-width:1100px){.admin-grid{grid-template-columns:1fr}}.admin-grid table.ui tbody tr{cursor:default}
