/* Local scope to Nutrition. The existing mobile layout, safe areas and nav are unchanged. */
.sf319-library-banner{font-size:.82rem;color:var(--muted,#b9b9c3);border-left:3px solid #ef4157;padding:11px 13px;background:rgba(224,38,63,.07);border-radius:8px}
.sf319-extra-filters{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.sf319-extra-filters label{display:grid;gap:5px;font-size:.76rem;flex:1 1 135px;min-width:0}.sf319-extra-filters select{background:#17191f;color:#fafafa;border:1px solid #41424a;border-radius:10px;padding:10px;min-width:0;width:100%;max-width:100%}
.sf318-item[hidden]{display:none!important}.sf319-cuts{margin-top:20px;border:1px solid #383039;padding:14px;border-radius:14px}.sf319-cuts summary{cursor:pointer;font-weight:700}.sf319-cuts p{font-size:.82rem;color:#bbb}.sf319-cuts>div{display:flex;gap:6px;flex-wrap:wrap}.sf319-cuts span{font-size:.75rem;border:1px solid #49404b;border-radius:7px;padding:5px 8px;color:#c7b8c0}
.sf319-overlay{position:fixed;inset:0;z-index:20001;background:rgba(0,0,0,.78);display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) 12px max(16px,env(safe-area-inset-bottom));overflow:auto}.sf319-dialog{background:#13151b;border:1px solid #4c3139;border-radius:20px;width:min(100%,560px);padding:18px;max-height:min(88dvh,850px);overflow:auto;box-shadow:0 24px 80px rgba(0,0,0,.6)}.sf319-modal-top{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#fe5365;font-size:.7rem;font-weight:750;letter-spacing:.04em}.sf319-modal-top button{border:1px solid #555;border-radius:9px;padding:9px 12px;color:white;background:#26252b;min-width:40px;min-height:40px}.sf319-dialog h2{font-size:1.24rem;line-height:1.3;margin:12px 0 6px}.sf319-dialog p{color:#bfc0c7;font-size:.82rem;line-height:1.5}.sf319-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:18px 0 8px}.sf319-facts>div{padding:12px 7px;border:1px solid #343640;background:#1b1c24;border-radius:12px;text-align:center;display:grid;gap:4px;min-width:0}.sf319-facts small{font-size:.57rem;color:#b8bac2;letter-spacing:.01em;overflow-wrap:anywhere}.sf319-facts strong{font-size:1.15rem;color:#fff;font-variant-numeric:tabular-nums}.sf319-facts span{font-size:.65rem;color:#afadb6}.sf319-labels{display:flex;flex-wrap:wrap;gap:6px}.sf319-labels span{border-radius:30px;background:#282029;padding:5px 10px;font-size:.71rem}.sf319-source{border:1px solid #353943;padding:12px;border-radius:12px;background:#181b22;margin:12px 0}.sf319-source p{margin:6px 0}.sf319-source small{color:#aeb0be;display:block;line-height:1.5}.sf319-source a{display:inline-block;color:#8cdaa2;margin-top:10px;text-decoration:underline;word-break:break-word}.sf319-amount{display:grid;gap:7px;font-size:.85rem;font-weight:600}.sf319-amount input{width:100%;border:1px solid #515260;border-radius:10px;background:#1b1b23;color:white;padding:12px;font-size:1rem}.sf319-total{background:#1f2822;color:#bdedd0;border-radius:10px;padding:12px;font-size:.79rem;margin:11px 0}.sf319-buttons{display:flex;gap:9px;flex-wrap:wrap}.sf319-buttons button{flex:1 1 155px;min-height:44px}
@media(max-width:420px){.sf319-dialog{border-radius:16px;padding:13px}.sf319-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.sf319-dialog h2{font-size:1.08rem}}
@media(prefers-reduced-motion:reduce){.sf319-overlay,.sf319-dialog{animation:none!important;transition:none!important}}
