/* CEOS Sales (tablet). Marka CEOS: granat #0b1530, fiolet #8b5cf6, turkus #00e5ff. Jasne tło treści — czytelne w słońcu u klienta. */
:root{--navy:#0b1530;--navy2:#16224a;--violet:#7c4dff;--cyan:#00bcd4;--ink:#0b1530;--muted:#5b6478;--line:#d5d9e4;--bg:#eef1f7;--panel:#fff;
 --ok:#0f7b4f;--warn:#9a5b00;--err:#b42318;--radius:14px;--tap:60px;color-scheme:light}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:19px/1.4 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;min-height:100vh}
.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:16px;padding:10px max(16px,env(safe-area-inset-right)) 10px max(16px,env(safe-area-inset-left));
 background:var(--navy);color:#fff;box-shadow:0 2px 10px rgb(0 0 0/.25);padding-top:max(10px,env(safe-area-inset-top))}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:700;font-size:22px;letter-spacing:.06em}
.brand img{height:34px;width:auto}
.brand span{padding-left:10px;border-left:2px solid var(--violet)}
.save{margin-left:auto;font-size:16px;color:#c9d2ea}
.save.ok{color:#7ee2b8}.save.pending{color:#ffd88a}.save.error{color:#fff;background:var(--err);padding:4px 10px;border-radius:8px}
.net{font-size:15px;background:#ffd88a;color:var(--navy);padding:4px 10px;border-radius:999px}
.help{display:grid;place-items:center;min-width:44px;height:44px;border-radius:50%;border:2px solid #4b5a86;color:#fff;text-decoration:none;font-weight:700}
.update{background:var(--violet);color:#fff;padding:10px 16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.update[hidden]{display:none}
.update button{background:#fff;color:var(--navy);min-height:48px}
main{max-width:1500px;margin:0 auto;padding:16px max(16px,env(safe-area-inset-right)) 48px max(16px,env(safe-area-inset-left))}
h1{font-size:28px;margin:0}h2{font-size:23px;margin:0 0 12px}h3{font-size:19px;margin:18px 0 8px;color:var(--muted)}
p{margin:6px 0}
.muted{color:var(--muted);font-size:17px}
.ok{color:var(--ok)}.alert{color:var(--err);font-weight:600}
.empty{color:var(--muted);text-align:center;padding:40px 0}
button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--tap);padding:0 22px;border-radius:var(--radius);
 border:2px solid var(--navy);background:#fff;color:var(--navy);font:inherit;font-weight:650;text-decoration:none;cursor:pointer;touch-action:manipulation}
button:disabled{opacity:.45;cursor:not-allowed}
button.primary,.button.primary{background:linear-gradient(100deg,var(--violet),#3d7bff 60%,var(--cyan));border-color:transparent;color:#fff}
.button.attention{border-color:var(--violet);box-shadow:0 0 0 3px rgb(124 77 255/.25)}
button.danger{border-color:var(--err);color:var(--err)}
button.small{min-height:44px;padding:0 14px;font-size:16px}
button:focus-visible,.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin:14px 0}
.actions.big>*{flex:1 1 280px;min-height:72px;font-size:21px}
.search{width:100%;min-height:var(--tap);font:inherit;padding:0 18px;border:2px solid var(--line);border-radius:var(--radius);margin:4px 0 14px;background:#fff}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
.card{display:flex;flex-direction:column;gap:6px;padding:18px;background:var(--panel);border:2px solid var(--line);border-radius:var(--radius);color:inherit;text-decoration:none;min-height:150px}
.card strong{font-size:22px}
.card.unsent{border-left:8px solid var(--violet)}
.tag{align-self:flex-start;font-size:15px;font-weight:650;padding:3px 10px;border-radius:999px;background:#e7ecf7;color:var(--navy)}
.tag.warn{background:#efe7ff;color:#4b2bb3}.tag.ok{background:#dff5ea;color:var(--ok)}
.card-head{display:flex;align-items:center;gap:14px;margin:4px 0 12px;flex-wrap:wrap}
.card-head .back{min-height:52px;padding:0 16px}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin:0 0 16px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px 16px}
.field{display:flex;flex-direction:column;gap:6px;font-size:17px;font-weight:600;color:var(--muted)}
.field.full{grid-column:1/-1}
.panel>.field{margin-top:12px}
input,select,textarea{width:100%;min-height:var(--tap);font:inherit;font-weight:500;color:var(--ink);padding:10px 14px;border:2px solid var(--line);border-radius:12px;background:#fbfcff}
textarea{min-height:120px;resize:vertical}
select{appearance:auto}
.row{margin:10px 0}
.choice{display:flex;flex-wrap:wrap;gap:10px}
.choice button{flex:1 1 120px;border-color:var(--line);font-weight:600}
.choice button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.missing{position:sticky;top:64px;z-index:4;background:#fff7e6;border:2px solid #f1c56b;border-radius:var(--radius);padding:10px 16px;margin:0 0 16px;font-size:17px;color:var(--warn)}
.missing.done{background:#e9f8f0;border-color:#9bd8b9;color:var(--ok)}
.missing .ok{color:var(--ok)}
.missing summary{cursor:pointer;font-weight:650;min-height:36px;display:flex;align-items:center}
.missing details p{margin:6px 0 4px}
.photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-top:12px}
.photos figure{margin:0;display:flex;flex-direction:column;gap:6px}
.photos img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;border:1px solid var(--line)}
.log{margin-top:12px}
@media (orientation:landscape) and (min-width:1100px){.grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){body{font-size:18px}.brand img{height:26px}.save{font-size:14px}.actions.big>*{flex-basis:100%}.cards{grid-template-columns:1fr}}
