:root{--bg:#f5f7fb;--card:#fff;--text:#182033;--muted:#667085;--primary:#155eef;--border:#d0d5dd;--ok:#067647;--warn:#b54708}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{max-width:1180px;margin:0 auto;padding:24px}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.brand h1{margin:0;font-size:28px}.brand p{color:var(--muted);margin:4px 0 0}.nav{flex-wrap:wrap;gap:8px;display:flex}.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:18px;box-shadow:0 8px 24px #1018280d}.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.product{flex-direction:column;gap:12px;display:flex}.product img{object-fit:cover;background:#eef2f6;border-radius:12px;width:100%;height:170px}.muted{color:var(--muted)}.row{align-items:center;gap:12px;display:flex}.between{justify-content:space-between}.btn{background:var(--primary);color:#fff;border:0;border-radius:10px;padding:10px 14px;font-weight:700}.btn.secondary{color:#155eef;background:#eef4ff}.btn.danger{color:#c01048;background:#fff1f3}.field{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.field input,.field select,.field textarea{border:1px solid var(--border);background:#fff;border-radius:10px;width:100%;padding:10px}.badge{color:var(--ok);background:#ecfdf3;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:700}.badge.warn{color:var(--warn);background:#fffaeb}.layout{grid-template-columns:1fr 360px;gap:16px;display:grid}.table{border-collapse:collapse;width:100%}.table th,.table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:10px}.login{max-width:440px;margin:10vh auto}.notice{color:#1849a9;background:#eef4ff;border-radius:10px;margin-bottom:12px;padding:12px}.error{color:#c01048;background:#fff1f3}.empty{text-align:center;color:var(--muted);padding:24px}@media (max-width:900px){.layout{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:flex-start}}
