:root{--navy: #1A3260;--navy-2: #24447a;--steel: #8A94A0;--bg: #f3f5f8;--card: #ffffff;--text: #16202e;--muted: #6b7686;--green: #2e7d4f;--amber: #b7791f;--red: #b23b3b}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);font-size:16px}.app{display:flex;flex-direction:column;min-height:100%}.top{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:10px;padding:10px 14px;padding-top:calc(10px + env(safe-area-inset-top));background:var(--navy);color:#fff}.toplogo{height:30px;background:#fff;border-radius:6px;padding:2px 4px}.brand{font-weight:700;flex:1;letter-spacing:.3px}.top .link{color:#cfd8e6}.main{flex:1;padding:14px 14px 90px;max-width:760px;width:100%;margin:0 auto}h1{color:var(--navy);margin:8px 0 18px}h2{margin:4px 0 12px;font-size:20px;color:var(--navy)}h3{margin:0 0 8px;font-size:16px;display:flex;align-items:center;gap:8px}h4{margin:12px 0 6px;font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:var(--steel)}.card{background:var(--card);border-radius:12px;padding:14px;margin-bottom:12px;box-shadow:0 1px 3px #14285014}.card.faded{opacity:.75}.card.warn{border-left:4px solid var(--red)}.count{background:var(--navy);color:#fff;border-radius:10px;font-size:12px;padding:1px 8px;font-weight:600}.muted{color:var(--muted)}.small{font-size:14px;margin:3px 0}.note{background:#f6f8fb;border-radius:8px;padding:8px 10px;font-size:14px}.error{color:var(--red)}.center{display:flex;align-items:center;justify-content:center;min-height:100%;padding:24px}.center.col{flex-direction:column}.splash{width:220px;max-width:70vw}button{font:inherit;cursor:pointer}.primary{background:var(--navy);color:#fff;border:0;border-radius:10px;padding:12px 16px;font-weight:600}.primary.big{padding:14px 24px;font-size:17px}.link{background:none;border:0;color:var(--navy-2);padding:6px 0;text-decoration:underline}input,select{font:inherit;padding:11px 12px;border:1px solid #cdd5df;border-radius:9px;width:100%;background:#fff}.addform{display:flex;flex-direction:column;gap:8px}.row{display:flex;gap:8px}.row .qty{width:30%}.rowspread{display:flex;justify-content:space-between;align-items:center}.check{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-top:1px solid #eef1f5}.check:first-of-type{border-top:0}.check input{width:22px;height:22px;margin-top:1px;flex:none}.check.done span{text-decoration:line-through;color:var(--muted)}.jobhead{display:flex;justify-content:space-between;align-items:center;width:100%;background:none;border:0;text-align:left;padding:0;color:inherit}.part{display:flex;gap:10px;align-items:center;padding:8px 0;border-top:1px solid #eef1f5}.partinfo{flex:1;min-width:0}.status{width:150px;flex:none;padding:8px;font-size:14px}.pill{font-size:12px;padding:1px 8px;border-radius:9px;background:#e8ecf2}.s-delivered,.s-installed{background:#e3f3e8;color:var(--green)}.s-shipped,.s-out-for-delivery{background:#e6eefb;color:var(--navy-2)}.s-delayed{background:#f9e6e6;color:var(--red)}.s-ordered{background:#fdf3e1;color:var(--amber)}.tabs{position:fixed;bottom:0;left:0;right:0;display:flex;background:#fff;border-top:1px solid #dde3ea;padding-bottom:env(safe-area-inset-bottom)}.tab{flex:1;padding:14px 0;background:none;border:0;color:var(--muted);font-weight:600}.tab.on{color:var(--navy);box-shadow:inset 0 3px 0 var(--navy)}
