*{box-sizing:border-box}body{margin:0;background:#0b0f14;color:#e6f0ff;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial}
.top{padding:32px 16px;text-align:center}
.logo{font-size:28px;opacity:.9;margin-right:8px}
h1{display:inline;font-weight:800;letter-spacing:.4px}
.subtitle{opacity:.8;margin:8px 0 0}
.card{max-width:860px;margin:0 auto 24px;background:#0f1620;border:1px solid #1b2636;border-radius:14px;padding:22px}
.actions{display:flex;align-items:center;gap:10px;justify-content:center;margin-bottom:12px}
.ou{opacity:.6}
.btn{background:#162234;border:1px solid #223149;color:#cfe3ff;padding:10px 16px;border-radius:10px;cursor:pointer}
.btn:hover{background:#1a2a41}
.btn.primary{background:#00c2a8;border-color:#00a997;color:#001b17;font-weight:700}
.btn.block{display:block;width:100%;margin-top:12px}
.form label{display:block;margin:10px 0 6px;opacity:.85}
textarea{width:100%;background:#0b121b;border:1px solid #1b2636;color:#dff2ff;border-radius:10px;padding:12px}
input[type=file]{display:block;width:100%;background:#0b121b;border:1px dashed #1b2636;color:#9fb6d1;border-radius:10px;padding:12px}
.hidden{display:none}
.error{background:#311117;color:#ffb9c4;border:1px solid #5c1f2a;padding:12px;border-radius:10px;margin-top:10px;white-space:pre-wrap}
.results{margin-top:16px;display:grid;gap:12px}
.recipe{background:#0b121b;border:1px solid #203049;border-radius:12px;padding:14px}
.recipe h3{margin:0 0 8px}
.recipe .kcal{opacity:.8;margin:0 0 8px}
.recipe ul{margin:0 0 8px 18px}
.foot{padding:20px;text-align:center;opacity:.7}
