:root{--bg: #f5f6f8;--card: #fff;--border: #e3e6ea;--text: #1f2430;--muted: #8a92a3;--primary: #2563eb;--good: #15a34a;--danger: #dc2626}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}button{cursor:pointer;border:1px solid var(--border);background:var(--primary);color:#fff;border-radius:8px;padding:.5rem .9rem;font-size:.9rem}button:disabled{opacity:.6;cursor:default}button.ghost{background:transparent;color:var(--text)}button.danger{background:transparent;color:var(--danger);border-color:transparent}input,textarea{width:100%;padding:.55rem .7rem;border:1px solid var(--border);border-radius:8px;font-size:.95rem;font-family:inherit}label{display:block;font-size:.85rem;color:var(--muted);margin-bottom:.9rem}label input,label textarea{margin-top:.3rem;color:var(--text)}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1.5rem}.muted{color:var(--muted)}.good{color:var(--good)}.error{color:var(--danger);font-size:.85rem;margin:.4rem 0}.error.small{font-size:.75rem}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}.login-card{width:100%;max-width:340px}.login-card h1{margin:0;font-size:1.5rem}.login-card p{margin:.2rem 0 1.2rem}.login-card button{width:100%;margin-top:.4rem}.app{max-width:1080px;margin:0 auto;padding:1.2rem}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.2rem}.topbar h1{font-size:1.4rem;margin:0}.topbar-actions{display:flex;gap:.5rem}.add-form{display:flex;gap:.6rem;margin-bottom:1.2rem;flex-wrap:wrap}.add-form input{flex:1;min-width:240px}.add-form button{white-space:nowrap}.add-error{flex-basis:100%}.empty{text-align:center;padding:3rem 1rem}table.products{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden}.products th{text-align:left;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);padding:.7rem .6rem;border-bottom:1px solid var(--border)}.products td{padding:.6rem;border-bottom:1px solid var(--border);vertical-align:middle;font-size:.92rem}.row-busy{opacity:.5}.cell-img img,.img-ph{width:48px;height:48px;object-fit:cover;border-radius:8px;background:var(--bg)}.cell-title{max-width:320px}.cell-title a{color:var(--text);text-decoration:none}.cell-title a:hover{color:var(--primary)}.cell-price{font-weight:600;white-space:nowrap}.cell-price.good{color:var(--good)}.cell-time{white-space:nowrap;color:var(--muted);font-size:.82rem}.target-view{cursor:pointer;border-bottom:1px dashed var(--muted);color:var(--muted)}.target-edit{display:inline-flex;gap:.2rem;align-items:center}.target-edit input{width:90px}.target-edit button{padding:.3rem .5rem}.cell-actions{white-space:nowrap}.cell-actions button{padding:.35rem .5rem;margin-left:.2rem;background:transparent;color:var(--text)}.chart-row td{background:#fafbfc}.modal-backdrop{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;padding:1rem}.modal{width:100%;max-width:460px}.modal h2{margin-top:0}.modal-actions{display:flex;gap:.6rem;margin-top:.5rem}.tg-status{font-size:.88rem;margin:.8rem 0}.loading{padding:3rem;text-align:center;color:var(--muted)}
