:root{--ink: #1B2A4A;--paper: #F3F4F1;--card: #FFFFFF;--teal: #0F6B5C;--brass: #B08D57;--muted: #5B6472;--hairline: #DADDD6;--safe-bg: #E6F4EA;--safe-fg: #1E7E34;--safe-border: #1E7E34;--warn-bg: #FFF8E1;--warn-fg: #9A6B00;--warn-border: #9A6B00;--danger-bg: #FDECEA;--danger-fg: #C62828;--danger-border: #C62828;--font-display: "Fraunces", "Georgia", serif;--font-body: "IBM Plex Sans", -apple-system, sans-serif;--font-mono: "IBM Plex Mono", "Courier New", monospace;--radius: 4px;--page-max-width: 640px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}#root{min-height:100vh}a{color:var(--teal)}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.passport-page{max-width:var(--page-max-width);margin:0 auto;padding:2rem 1.25rem 4rem}.passport-card{background:var(--card);border:1px solid var(--hairline);border-radius:8px;padding:1.75rem 1.5rem 2rem;position:relative}.passport-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--hairline);padding-bottom:1rem;margin-bottom:1.25rem}.passport-wordmark{font-family:var(--font-display);font-weight:600;font-size:1.15rem;letter-spacing:.02em;color:var(--ink);margin:0}.passport-tagline{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:.15rem 0 0}.field-label{font-family:var(--font-body);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--teal);margin:0 0 .4rem}.section{margin-bottom:1.75rem}.section:last-child{margin-bottom:0}.section-divider{border:none;border-top:1px solid var(--hairline);margin:1.75rem 0}.mrz-strip{font-family:var(--font-mono);font-size:.85rem;letter-spacing:.06em;color:var(--muted);background:var(--paper);border:1px dashed var(--hairline);border-radius:var(--radius);padding:.6rem .85rem;margin-bottom:1.5rem;overflow-x:auto;white-space:nowrap}.product-name{font-family:var(--font-display);font-weight:600;font-size:1.55rem;line-height:1.2;margin:0 0 .2rem}.product-subline{color:var(--muted);margin:0 0 1rem;font-size:.95rem}.pill-row{display:flex;gap:.5rem;flex-wrap:wrap}.pill{display:inline-block;border-radius:999px;padding:.22rem .75rem;font-size:.8rem;font-weight:600;border:1px solid transparent}.pill--danger{background:var(--danger-bg);color:var(--danger-fg);border-color:var(--danger-border)}.pill--safe{background:var(--safe-bg);color:var(--safe-fg);border-color:var(--safe-border)}.image-row{display:flex;gap:.65rem;flex-wrap:wrap;margin:1rem 0}.image-row img{width:110px;height:110px;object-fit:cover;border-radius:var(--radius);border:1px solid var(--hairline)}.field-grid{display:grid;grid-template-columns:auto 1fr;column-gap:.9rem;row-gap:.4rem;margin:0}.field-grid dt{font-weight:600;color:var(--muted);font-size:.9rem}.field-grid dd{margin:0;font-size:.9rem}.nutrition-table{border-collapse:collapse;width:100%;max-width:340px;font-size:.9rem}.nutrition-table td{padding:.4rem .5rem .4rem 0;border-bottom:1px solid var(--hairline)}.nutrition-table td:first-child{color:var(--muted);text-transform:capitalize}.nutrition-table td:last-child{font-weight:600;text-align:right}.recall-banner{display:flex;align-items:center;gap:.6rem;background:var(--danger-fg);color:#fff;padding:.9rem 1.1rem;border-radius:var(--radius);font-weight:700;font-size:.95rem;margin-bottom:1rem}@media (max-width: 400px){.passport-page{padding:1rem .75rem 3rem}.passport-card{padding:1.25rem 1rem 1.5rem;border-radius:6px}.product-name{font-size:1.3rem}}.seal{--seal-color: var(--teal);width:60px;height:60px;min-width:60px;border-radius:50%;border:2px solid var(--seal-color);color:var(--seal-color);display:flex;align-items:center;justify-content:center;position:relative;transform:rotate(-6deg)}.seal:before{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border:1px solid var(--seal-color);border-radius:50%}.seal--safe{--seal-color: var(--teal)}.seal--warn{--seal-color: var(--warn-fg)}.seal--danger{--seal-color: var(--danger-fg)}.seal-text{font-family:var(--font-display);font-weight:700;font-size:.55rem;text-transform:uppercase;letter-spacing:.03em;text-align:center;line-height:1.15}
