.scan-wrap{max-width:640px;}
.dropzone{
  border:2px dashed var(--glass-border);border-radius:var(--radius-l);
  padding:40px 24px;text-align:center;cursor:pointer;transition:all var(--dur-fast) var(--ease);
  background:var(--bg-1);
}
.dropzone:hover, .dropzone.dragover{border-color:var(--lime);background:rgba(200,255,77,0.05);}
.dropzone .icon{font-size:38px;margin-bottom:10px;}
.dropzone p{color:var(--text-1);font-size:14px;}
.dropzone input{display:none;}

.preview-wrap{position:relative;border-radius:var(--radius-l);overflow:hidden;margin-bottom:18px;}
.preview-wrap img{width:100%;display:block;max-height:340px;object-fit:cover;}
.preview-wrap .remove-btn{
  position:absolute;top:10px;right:10px;background:rgba(10,21,18,0.7);
  color:#fff;border:none;border-radius:999px;width:32px;height:32px;font-size:16px;
}

.scan-loading{display:flex;flex-direction:column;align-items:center;gap:14px;padding:40px 0;}
.spinner{
  width:40px;height:40px;border-radius:50%;
  border:3px solid var(--glass-border);border-top-color:var(--lime);
  animation:spin 800ms linear infinite;
}
@keyframes spin{to{transform:rotate(360deg);}}

.food-item{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--glass-border);}
.food-item:last-child{border-bottom:none;}
.food-item .name{font-weight:600;font-size:14.5px;}
.food-item .grams{font-size:12.5px;color:var(--text-2);}
.food-item .kcal{font-family:var(--font-data);color:var(--lime);font-weight:600;}
.confidence-tag{font-size:11px;padding:2px 8px;border-radius:999px;margin-left:6px;}
.confidence-tag.low{background:rgba(255,92,92,0.15);color:var(--danger);}
.confidence-tag.medium{background:rgba(183,156,255,0.15);color:var(--violet);}
.confidence-tag.high{background:rgba(92,255,161,0.15);color:var(--success);}

.totals-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0;}
.totals-bar .t-card{text-align:center;padding:14px 8px;}
.totals-bar .t-card .v{font-family:var(--font-data);font-weight:600;font-size:17px;}
.totals-bar .t-card .l{font-size:10.5px;color:var(--text-2);text-transform:uppercase;margin-top:2px;}

.note-field textarea{min-height:70px;resize:vertical;}
.clarify-box{padding:16px;border-radius:var(--radius-m);background:rgba(183,156,255,0.08);border:1px solid rgba(183,156,255,0.25);margin-bottom:18px;font-size:14px;}
