:root{--bg: #161b21;--bg-2: #1d242b;--card: #222a32;--card-2: #2b343d;--border: #37414b;--text: #eef2f5;--muted: #a3adb5;--green: #609c13;--green-700: #4d7c0f;--red: #ef4444;--amber: #f59e0b;--blue: #3b82f6;--chrome: #1b2025;--chrome-text: #f4f6f5;--chrome-muted: #9aa3ab;--chrome-akcent: #a3e635;--radius: 14px;--tap: 52px}:root[data-theme=light]{--bg: #f1eee7;--bg-2: #e8e4da;--card: #fbf9f4;--card-2: #f1ede3;--border: #ded9cc;--text: #26292b;--muted: #6c7176;--green: #4d7c0f;--green-700: #3f6212;--red: #c02222;--amber: #b45309;--blue: #1d4ed8;--chrome: #23282d;--chrome-text: #f4f6f5;--chrome-muted: #9aa3ab;--chrome-akcent: #a3e635}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);font-size:16px;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}h1,h2,h3{margin:0 0 .5rem;line-height:1.2}h1{font-size:1.35rem}h2{font-size:1.1rem}.app{max-width:760px;margin:0 auto;min-height:100%;display:flex;flex-direction:column;padding-bottom:calc(76px + env(safe-area-inset-bottom))}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:max(env(safe-area-inset-top),.6rem) 1rem .6rem;background:var(--chrome);color:var(--chrome-text)}.topbar .brand{font-weight:700;font-size:1.05rem;display:flex;align-items:center;gap:.5rem}.topbar .user{font-size:.8rem;opacity:.9}.topbar .btn.secondary.topbar-btn{background:#ffffff1f;color:var(--chrome-text)}.btn .btn-etykieta{font-size:.82rem;font-weight:700}.content{padding:1rem;flex:1}.tabbar{position:fixed;bottom:0;left:0;right:0;z-index:30;display:flex;background:var(--chrome);border-top:1px solid rgba(255,255,255,.07);padding-bottom:env(safe-area-inset-bottom);max-width:760px;margin:0 auto}.tabbar button{flex:1;background:none;border:none;color:var(--chrome-muted);padding:.55rem 0 .5rem;font-size:.72rem;display:flex;flex-direction:column;align-items:center;gap:3px;cursor:pointer}.tabbar button .ico{font-size:1.4rem;line-height:1;display:flex}.tabbar button.active{color:var(--chrome-akcent);font-weight:600}.segment{display:flex;gap:.4rem;background:var(--bg-2);padding:.3rem;border-radius:var(--radius);margin-bottom:1rem;overflow-x:auto}.segment button{flex:1 0 auto;white-space:nowrap;background:none;border:none;color:var(--muted);padding:.6rem .9rem;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer}.segment button.active{background:var(--card-2);color:var(--text)}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;margin-bottom:.9rem}.card.tight{padding:.8rem 1rem}.row{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.row-wrap{display:flex;flex-wrap:wrap;gap:.5rem}.muted{color:var(--muted)}.small{font-size:.8rem}.big-num{font-size:1.5rem;font-weight:700}.spacer{flex:1}.badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.72rem;font-weight:700;background:var(--card-2);color:var(--muted)}.badge.zboze{background:#14532d33;color:#86efac}.badge.olej{background:#78350f33;color:#fcd34d}.badge.dodatek{background:#1e3a8a33;color:#93c5fd}.badge.premiks{background:#581c8733;color:#d8b4fe}.badge.inne{background:#37415133;color:#cbd5e1}.badge.low{background:#7f1d1d55;color:#fca5a5}.badge.in{background:#14532d55;color:#86efac}.badge.out{background:#7f1d1d55;color:#fca5a5}label{display:block;font-size:.82rem;color:var(--muted);margin:.7rem 0 .3rem;font-weight:600}input,select,textarea{width:100%;min-height:var(--tap);background:var(--bg-2);border:1px solid var(--border);color:var(--text);border-radius:10px;padding:.7rem .8rem;font-size:1rem;font-family:inherit}textarea{min-height:80px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--green);border-color:var(--green)}.field-row{display:flex;gap:.6rem}.field-row>*{flex:1}.btn{min-height:var(--tap);width:100%;border:none;border-radius:12px;background:var(--green);color:#fff;font-size:1.05rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:0 1rem}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5}.btn.secondary{background:var(--card-2);color:var(--text)}.btn.danger{background:var(--red)}.btn.blue{background:var(--blue)}.btn.auto{width:auto}.btn.sm{min-height:40px;font-size:.9rem;border-radius:10px}.fab{position:fixed;right:16px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:25;width:60px;height:60px;border-radius:50%;background:var(--green);color:#fff;border:none;font-size:2rem;box-shadow:0 6px 20px #00000073;cursor:pointer}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0000008c;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:760px;max-height:90vh;overflow-y:auto;background:var(--bg-2);border-radius:18px 18px 0 0;padding:1.1rem 1.1rem calc(1.4rem + env(safe-area-inset-bottom));border-top:1px solid var(--border)}.sheet h2{margin-bottom:1rem}.sheet-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}.sheet-head button{background:none;border:none;color:var(--muted);font-size:1.6rem;cursor:pointer;line-height:1}.list-item{padding:.85rem 0;border-bottom:1px solid var(--border)}.list-item:last-child{border-bottom:none}.empty{text-align:center;color:var(--muted);padding:2rem 1rem}.toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(94px + env(safe-area-inset-bottom));z-index:60;background:var(--card-2);border:1px solid var(--border);color:var(--text);padding:.7rem 1.1rem;border-radius:12px;font-size:.9rem;box-shadow:0 6px 20px #0006;max-width:90%}.toast.ok{border-color:var(--green)}.toast.err{border-color:var(--red)}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:1.2rem}.dialog{width:100%;max-width:420px;background:var(--bg-2);border:1px solid var(--border);border-radius:16px;padding:1.2rem;box-shadow:0 12px 40px #00000080}.dialog-title{margin:0 0 .5rem;font-size:1.05rem}.dialog-msg{margin:0 0 .3rem;color:var(--text);white-space:pre-wrap;line-height:1.45}.dialog input,.dialog textarea{margin-top:.7rem;margin-bottom:0}.dialog-akcje{display:flex;gap:.6rem;margin-top:1.1rem}.dialog-akcje .btn{flex:1}.center-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.2rem}.auth-box{width:100%;max-width:380px}.auth-box .logo{text-align:center;font-size:3rem;margin-bottom:.4rem}.zamazane{filter:blur(6px);-webkit-filter:blur(6px);-webkit-user-select:none;user-select:none;pointer-events:none;transition:filter .15s ease;display:inline-block}.spin{display:inline-block;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}code.inline{background:var(--bg-2);padding:.1rem .4rem;border-radius:6px;font-size:.85rem}.linkbtn{background:none;border:none;color:var(--muted);font-size:.82rem;padding:.4rem .2rem;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.linkbtn.danger{color:#b45454}.linkbtn:active{opacity:.7}.fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:var(--bg);display:flex;flex-direction:column}.fullscreen .fs-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:.6rem;padding:max(env(safe-area-inset-top),.7rem) 1rem .7rem;background:var(--chrome);color:var(--chrome-text)}.fullscreen .fs-head h1{margin:0;font-size:1.1rem}.fullscreen .fs-head button{background:#ffffff26;border:none;color:#fff;width:40px;height:40px;border-radius:10px;font-size:1.4rem;cursor:pointer}.fullscreen .fs-body{flex:1;overflow-y:auto;padding:1rem calc(1rem + env(safe-area-inset-right)) calc(2rem + env(safe-area-inset-bottom)) calc(1rem + env(safe-area-inset-left));max-width:760px;width:100%;margin:0 auto}.section-title{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:1.4rem .2rem .5rem;font-weight:700}.section-title:first-child{margin-top:0}.perm-row{display:flex;align-items:flex-start;gap:.7rem;padding:.5rem 0;border-bottom:1px solid var(--border)}.perm-row:last-child{border-bottom:none}.perm-row input{width:24px;height:24px;min-height:auto;flex:0 0 auto;margin-top:2px}.perm-row .lbl{font-weight:600;font-size:.92rem}.karuzela-reklam{scrollbar-width:none;-webkit-overflow-scrolling:touch}.karuzela-reklam::-webkit-scrollbar{display:none}
