body { font-family: Arial, sans-serif; margin: 0; background: #f7f7f8; color: #1a1a1a; }
.sandbox-banner { background: #b91c1c; color: #fff; text-align: center; padding: 6px; font-size: 13px; font-weight: 600; }
header { display: flex; align-items: center; gap: 12px; padding: 14px 24px; background: #1F3B57; color: #fff; }
.brand { font-weight: 700; letter-spacing: 1px; }
.tagline { opacity: .8; font-size: 13px; }
main { max-width: 760px; margin: 24px auto; padding: 0 16px; }
h1 { font-size: 20px; }
.card { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; padding: 16px; margin-bottom: 16px; }
.auth-card { max-width: 360px; margin: 60px auto; }
.field { margin-bottom: 12px; }
.field label { display: block; font-size: 12px; color: #555; margin-bottom: 4px; }
.field input { width: 100%; padding: 8px; border: 1px solid #ccc; border-radius: 4px; box-sizing: border-box; }
.btn { background: #C08A3E; color: #fff; border: none; padding: 10px 16px; border-radius: 6px; cursor: pointer; font-size: 14px; }
.btn.small { padding: 6px 12px; font-size: 13px; }
.btn:disabled { background: #d1d5db; cursor: not-allowed; }
.error { color: #b91c1c; font-size: 13px; margin-bottom: 12px; }
.meta { color: #6b7280; font-size: 12px; margin-top: 6px; }
.empty { color: #9ca3af; padding: 30px 0; text-align: center; }
.status { background: #dbeafe; color: #1d4ed8; padding: 2px 10px; border-radius: 999px; font-size: 11px; font-weight: 600; }
a.link { color: #C08A3E; text-decoration: none; }
table { width: 100%; margin-top: 8px; border-collapse: collapse; font-size: 14px; }
td { padding: 4px 0; }
td.num { text-align: right; font-weight: 600; }
.low-qty-row td { background: #fff3cd; }
.low-qty-warning { color: #92400e; font-size: 12px; font-style: italic; padding: 4px 0 8px; }
.group-title { font-weight: 700; font-size: 13px; margin-bottom: 6px; }

.item-card { display: flex; gap: 14px; padding: 10px 0; border-top: 1px solid #eee; }
.item-card:first-of-type { border-top: none; }
.item-card.low-qty { background: #fffaf0; margin: 0 -10px; padding: 10px; border-radius: 6px; border-top: none; }
.item-photo { width: 110px; height: 110px; object-fit: contain; background: #fafafa; border: 1px solid #eee; border-radius: 6px; flex-shrink: 0; }
.item-body { flex: 1; min-width: 0; }
.item-title { font-weight: 700; font-size: 14px; }
.item-qty { font-weight: 600; color: #1F3B57; font-size: 13px; margin-top: 2px; }
.item-desc { color: #4b5563; font-size: 12px; font-style: italic; margin-top: 4px; }
.item-spec { color: #374151; font-size: 12px; margin-top: 4px; line-height: 1.5; }
