:root{font-family:system-ui,sans-serif;color:#1b2430;background:#f4f6f9;--surface:#ffffff;--text:#1b2430;--muted:#66717f;--line:#dde3ea;--accent:#1f4e8c;--ok:#1f8a4c;--warn:#b7791f;--bad:#c23b3b;--soft:#eef2f7}body{margin:0;background:#f4f6f9}button,input,textarea,select{font:inherit}main{max-width:760px;margin:0 auto;padding:12px 16px 96px}p{line-height:1.6;color:var(--muted)}.bar{display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 16px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface);z-index:2}.brand{font-weight:700;color:var(--accent)}.tabs{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--surface);border-top:1px solid var(--line);padding:6px 8px calc(6px + env(safe-area-inset-bottom))}.tabs button{flex:1;background:none;border:0;color:var(--muted);padding:10px;border-radius:10px;font-weight:500;display:flex;gap:6px;justify-content:center;align-items:center}.tabs button.on{color:var(--accent);background:var(--soft)}.tabs b{background:var(--bad);color:#fff;border-radius:10px;padding:0 7px;font-size:12px;line-height:18px}h2{font-size:20px;font-weight:650;margin:16px 0 8px}h3{font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin:22px 0 8px;display:flex;align-items:center;gap:8px}.group h2{display:flex;align-items:center;gap:8px;font-size:14px;letter-spacing:.5px;text-transform:uppercase;color:var(--muted)}.count{background:var(--soft);color:var(--muted);border-radius:10px;padding:0 8px;font-size:12px;line-height:20px;font-weight:500;text-transform:none;letter-spacing:0}.file-row{display:flex;flex-direction:column;gap:4px;width:100%;text-align:left;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:8px;color:var(--text)}.file-row.s-needs_fix{border-left-color:var(--bad)}.file-row.s-ready{border-left-color:var(--ok)}.file-row.s-pulling{border-left-color:var(--warn)}.file-row.s-preparing{border-left-color:var(--accent)}.file-row .top,.file-row .bottom{display:flex;justify-content:space-between;align-items:center;gap:8px}.progress{font-variant-numeric:tabular-nums;font-weight:650;color:var(--text)}.title{font-size:16px;color:var(--text)}.sub,.holdup{font-size:13px;color:var(--muted)}.holdup.bad{color:var(--bad)}.pill{font-size:12px;border-radius:10px;padding:2px 8px;background:var(--soft);color:var(--muted);white-space:nowrap}.pill.ready{background:#e3f4ea;color:var(--ok)}.pill.needs_fix{background:#fbe5e5;color:var(--bad)}.pill.printed{background:#e8ecf1;color:#4b5563}.pill.pulling{background:#fdf1dc;color:var(--warn)}.pill.preparing{background:#e4ecf8;color:var(--accent)}.item{display:flex;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin-bottom:6px;flex-wrap:wrap}.item>input{width:22px;height:22px;accent-color:var(--ok);flex:none}.item-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left;background:none;border:0;color:inherit;padding:0}.item.done .title{color:var(--muted)}.item.doc.flagged{border-color:#f1c1c1;background:#fff7f7}.item.doc.flagged .sub{color:var(--bad)}.item.doc.proofed .title{color:var(--muted)}.tag{font-size:12px;color:var(--muted);background:var(--soft);border-radius:8px;padding:3px 8px;white-space:nowrap}.tag.ok{background:#e3f4ea;color:var(--ok)}.doc-actions{display:flex;gap:6px;align-items:center}.doc-actions button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;padding:6px 10px;font-size:13px}.doc-actions .warn{color:var(--bad)}.doc-actions .quiet{border:0;color:var(--muted)}.flag{flex-basis:100%;display:flex;flex-direction:column;gap:8px;padding-top:4px}.banner{border-radius:12px;padding:12px 14px;margin:8px 0}.banner.bad{background:#fbe5e5;color:var(--bad)}.primary{background:var(--accent);color:#fff;border:0;border-radius:10px;padding:12px 18px;font-weight:600}.primary.disabled,.primary:disabled{background:#c8d2de;color:#fff}.wide{width:100%;margin:8px 0 12px}.actions{display:flex;gap:8px;margin-top:8px}.actions button{border:0;border-radius:10px;padding:12px 16px;background:var(--soft);color:var(--text)}.actions .primary{background:var(--accent);color:#fff}.sheet{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:12px;margin-top:12px}.sheet label,.edit{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}.edit{margin:8px 0;gap:8px}.edit .danger{align-self:flex-start;background:none;border:1px solid #f1c1c1;color:var(--bad);border-radius:8px;padding:8px 12px}input[type=text],input:not([type]),input[type=date]{background:var(--surface);border:1px solid var(--line);border-radius:10px;color:var(--text);padding:11px 12px;font-size:16px;width:100%;box-sizing:border-box}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.seg{display:flex;gap:6px;margin-bottom:12px;flex-wrap:wrap}.seg button{flex:1;background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:10px;padding:9px 6px;font-size:14px;white-space:nowrap}.seg button.on{border-color:var(--accent);color:var(--accent);background:var(--soft)}.hint{font-size:13px}.error{color:var(--bad)}.detail-head .back{background:none;border:0;color:var(--accent);padding:4px 0}.detail-head h2{margin:6px 0 2px}.add-link{background:none;border:0;color:var(--accent);padding:8px 2px;text-align:left}.print{margin-top:24px}.close-tx{margin-top:24px;background:none;border:1px solid var(--line);color:var(--muted);border-radius:10px;padding:10px 14px}.empty{margin:14vh auto;max-width:460px;text-align:center}@media(min-width:860px){.tabs{position:sticky;top:52px;bottom:auto;border-top:0;border-bottom:1px solid var(--line);justify-content:center}.tabs button{flex:0 0 auto;padding:10px 20px}main{padding-bottom:40px}}
