body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; background: #f4f7f6; margin: 0; padding: 0; color: #333; }
nav { background: #2E7D32; color: white; padding: 15px; text-align: center; font-size: 1.2rem; font-weight: bold; }
nav a { color: white; text-decoration: none; }
.container { padding: 20px; max-width: 600px; margin: 0 auto; }
.card { background: white; padding: 20px; border-radius: 12px; box-shadow: 0 2px 5px rgba(0,0,0,0.1); margin-bottom: 20px; }
.btn { display: block; width: 100%; padding: 12px; border: none; border-radius: 8px; font-size: 1rem; cursor: pointer; margin-top: 10px; }
.primary { background: #333; color: white; }
.secondary { background: #eee; color: #333; }
.water-btn { background: #2196F3; color: white; }
.item-list { display: flex; flex-direction: column; gap: 10px; }
.item-row { background: white; padding: 15px; border-radius: 8px; text-decoration: none; color: #333; display: flex; justify-content: space-between; align-items: center; box-shadow: 0 1px 3px rgba(0,0,0,0.1); }
.qr-img { max-width: 200px; display: block; margin: 0 auto; }
input[type="number"] { width: 100%; padding: 10px; box-sizing: border-box; border: 1px solid #ddd; border-radius: 8px; font-size: 1.2rem; margin-bottom: 10px; }
.print-only { display: none; }
.flash-message { padding: 12px 16px; border-radius: 8px; margin-bottom: 15px; font-weight: 500; animation: fadeIn 0.3s ease; }
.flash-success { background: #E8F5E9; color: #2E7D32; border: 1px solid #A5D6A7; }
.flash-error { background: #FFEBEE; color: #C62828; border: 1px solid #EF9A9A; }
.flash-message:not(.flash-success):not(.flash-error) { background: #E3F2FD; color: #1565C0; border: 1px solid #90CAF9; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }

@media print {
    body * { visibility: hidden; }
    #printable-qr, #printable-qr * { visibility: visible; }
    #printable-qr { position: absolute; left: 0; top: 0; width: 100%; text-align: center; }
    .print-only { display: block; font-size: 24px; font-weight: bold; margin-top: 10px; }
}