:root{--honey: #f5a300;--honey-dark: #d98e00;--dark: #1c1710;--dark-2: #2a2318;--cream: #fdf8ee;--line: #3d3423;--muted: #9a8f7c;--ok: #4caf6a;--bad: #e05548}*{margin:0;padding:0;box-sizing:border-box}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--dark);color:var(--cream);line-height:1.45;-webkit-tap-highlight-color:transparent}.app{max-width:560px;margin:0 auto;padding:16px 14px 90px}h1{font-size:22px;margin-bottom:4px}h2{font-size:17px;margin:14px 0 8px}.muted{color:var(--muted);font-size:13px}.card{background:var(--dark-2);border:1px solid var(--line);border-radius:16px;padding:16px;margin:10px 0}.card.tap{cursor:pointer;transition:border-color .15s}.card.tap:active{border-color:var(--honey)}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.grow{flex:1}input,select,textarea{padding:12px 14px;border-radius:12px;border:1.5px solid var(--line);background:#221c12;color:var(--cream);font-size:16px;width:100%}input:focus{outline:2px solid var(--honey)}button.primary{background:var(--honey);color:var(--dark);border:0;border-radius:14px;font-size:17px;font-weight:700;padding:15px 18px;width:100%;cursor:pointer}button.primary:disabled{opacity:.45}button.ghost{background:none;border:1.5px solid var(--line);color:var(--cream);border-radius:14px;font-size:15px;padding:12px 16px;width:100%;cursor:pointer}button.small{width:auto;padding:8px 14px;font-size:14px;border-radius:10px}.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:700}.badge.risk{background:#4a1512;color:#ff9d94}.badge.ok{background:#143d1f;color:#8fe3a5}.badge.warn{background:#4a3a00;color:#ffd561}.counter{font-size:30px;font-weight:800;text-align:center}.counter small{font-size:15px;color:var(--muted);font-weight:400}.progress{height:8px;background:#17120b;border-radius:99px;overflow:hidden;margin:8px 0}.progress>div{height:100%;background:var(--honey);transition:width .25s}.error{color:var(--bad);font-size:14px;margin:8px 0}.success{color:var(--ok);font-size:14px;margin:8px 0}.list-item{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}.list-item:last-child{border-bottom:0}.check{width:26px;height:26px;border-radius:50%;border:2px solid var(--line);display:flex;align-items:center;justify-content:center;flex-shrink:0}.check.on{background:var(--ok);border-color:var(--ok);color:#fff}.photos{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.photos .ph{width:64px;height:64px;border-radius:10px;background:#221c12;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:24px}.tabbar{position:fixed;bottom:0;left:0;right:0;background:var(--dark-2);border-top:1px solid var(--line);display:flex;justify-content:space-around;padding:8px 0 max(10px,env(safe-area-inset-bottom))}.tabbar a{text-decoration:none;color:var(--muted);font-size:11px;text-align:center}.tabbar a.active{color:var(--honey)}.tabbar .ico{font-size:22px;display:block}.scanner-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;z-index:50;display:flex;flex-direction:column}.scanner-overlay video{flex:1;object-fit:cover;width:100%}.scanner-frame{position:absolute;top:20%;left:10%;right:10%;height:30%;border:3px solid var(--honey);border-radius:18px;pointer-events:none;box-shadow:0 0 0 100vmax #00000073}.scanner-bottom{padding:14px;display:grid;gap:10px;background:var(--dark)}.scanner-bottom .row{flex-wrap:nowrap}.scanner-bottom button.primary{width:auto;padding:12px 18px}.center{text-align:center;padding:60px 20px}.big-scan{position:sticky;bottom:74px;width:100%;font-size:19px;padding:18px;box-shadow:0 6px 24px #00000080}
