.pv{background:#fff;max-width:460px;min-height:100vh;margin:0 auto;padding:0 18px 40px;box-shadow:0 0 60px -30px #0003}.pv .topbar{z-index:5;background:#fff;justify-content:space-between;align-items:center;padding:12px 0;display:flex;position:sticky;top:0}.pv .topbar-title{color:#6b7280;font-size:15px;font-weight:700}.pv .icon-btn{color:#1f2933;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;text-decoration:none;display:inline-flex}.pv .icon-btn:hover{background:#f3f4f6}.pv .icon-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.pv .loading{text-align:center;color:#6b7280;opacity:0;padding:80px 10px;animation:0s linear .2s forwards pv-appear}@keyframes pv-appear{to{opacity:1}}.pv .spinner{border:4px solid #e5f4ea;border-top-color:#16a34a;border-radius:50%;width:42px;height:42px;margin:0 auto 16px;animation:.8s linear infinite pv-spin}@keyframes pv-spin{to{transform:rotate(360deg)}}.pv .notfound{text-align:center;color:#6b7280;padding:60px 10px}.pv .notfound svg{fill:none;stroke:#cbd5e1;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.pv .notfound h1{color:#1f2933;margin:16px 0 6px;font-size:22px}.pv .notfound p{margin:0 0 22px}.pv .btn{color:#fff;background:#16a34a;border-radius:12px;padding:12px 22px;font-weight:700;text-decoration:none;display:inline-block}.pv .head{align-items:center;gap:18px;padding:8px 0 20px;display:flex}.pv .pimg{background:#f6f7f9;border:1px solid #eef1f4;border-radius:14px;flex:none;justify-content:center;align-items:center;width:116px;height:116px;display:flex;overflow:hidden}.pv .pimg img{object-fit:contain;width:100%;height:100%}.pv .noimg{color:#9ca3af;font-size:12px}.pv .pmeta h1{letter-spacing:-.5px;color:#111827;margin:0;font-size:22px;font-weight:800}.pv .brand{color:#6b7280;margin:3px 0 0;font-size:15px}.pv .fmt{color:#9ca3af;margin:3px 0 0;font-size:13px}.pv .incomplete-note{background:#fffbeb;border:1px solid #fde68a;border-radius:14px;align-items:flex-start;gap:12px;margin-bottom:20px;padding:14px 16px;display:flex}.pv .incomplete-note svg{fill:none;stroke:#d97706;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;margin-top:1px}.pv .incomplete-note strong{color:#92400e;margin-bottom:3px;font-size:15px;display:block}.pv .incomplete-note p{color:#b45309;margin:0;font-size:13.5px;line-height:1.5}html[data-theme=dark] .pv .incomplete-note{background:#d977061a;border-color:#d977064d}html[data-theme=dark] .pv .incomplete-note strong{color:#fcd34d}html[data-theme=dark] .pv .incomplete-note p{color:#fbbf24}.pv .scorecard{border:1px solid #eceff2;border-radius:18px;align-items:center;gap:18px;margin-bottom:26px;padding:18px;display:flex}.pv .ring{flex:none;width:104px;height:104px}.pv .ring svg{width:100%;height:100%}.pv .ring-bg{fill:none;stroke:#eef1f4;stroke-width:12px}.pv .ring-fg{fill:none;stroke-width:12px;stroke-linecap:round}.pv .ring-num{text-anchor:middle;font-size:34px;font-weight:800}.pv .ring-den{fill:#9ca3af;text-anchor:middle;font-size:13px;font-weight:600}.pv .scoreinfo{min-width:0}.pv .scoreinfo strong{font-size:22px;font-weight:800;display:block}.pv .score-sub{color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;font-size:12px}.pv .subgrades{flex-direction:column;gap:8px;margin-top:12px;display:flex}.pv .ns-row{color:#4b5563;align-items:center;gap:8px;font-size:13px;line-height:1.2;display:flex}.pv .ns{color:#fff;border-radius:5px;flex:none;justify-content:center;align-items:center;width:24px;height:26px;font-size:13px;font-weight:800;line-height:1;display:flex;overflow:hidden}.pv .nova{color:#fff;background:#e63e11;border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;font-weight:800;display:flex}.pv .nova.missing{background:#9ca3af}.pv .traffic-light{background:#1f2937;border-radius:17px;flex-direction:column;flex:none;align-items:center;gap:5px;width:52px;padding:7px;display:flex;box-shadow:inset 0 0 0 2px #ffffff14,0 4px 14px #0f172a33}.pv .traffic-dot{opacity:.18;border-radius:50%;width:29px;height:29px;transition:opacity .15s,transform .15s;transform:scale(.88)}.pv .traffic-dot.red{background:#ef4444}.pv .traffic-dot.yellow{background:#f59e0b}.pv .traffic-dot.green{background:#22c55e}.pv .traffic-dot.active{opacity:1;box-shadow:0 0 15px 3px color-mix(in srgb, var(--sc) 65%, transparent);transform:scale(1)}.pv .neutral-mark{color:#64748b;background:#f1f5f9;border-radius:50%;flex:none;justify-content:center;align-items:center;width:72px;height:72px;display:flex}.pv .neutral-mark svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:34px;height:34px}.pv .neutral-card .scoreinfo strong{color:#475569}.pv .flags{border:1px solid #eceff2;border-radius:18px;margin-bottom:26px;overflow:hidden}.pv .flag{border-bottom:1px solid #eceff2;align-items:center;gap:14px;padding:14px 16px;display:flex}.pv .flag:last-child{border-bottom:none}.pv .flag.warn{background:#fdf6e3}.pv .flag-icon{border-radius:50%;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.pv .flag.warn .flag-icon{background:#f5a623}.pv .flag.ok .flag-icon{background:#22c55e}.pv .flag-icon svg{fill:none;stroke:#fff;color:#fff;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.pv .flag-info{flex-direction:column;flex:1;display:flex}.pv .flag-name{color:#1f2933;font-size:16px;font-weight:700}.pv .flag-detail{color:#6b7280;font-size:13px}.pv .flag-more{color:#6b7280;border-radius:50%;flex:none;justify-content:center;align-items:center;width:34px;height:34px;margin-left:4px;text-decoration:none;display:inline-flex}.pv .flag-more:hover,.pv .flag-more:focus-visible{color:#15803d;background:#0000000f}.pv .flag-more svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.pv .mark{fill:none;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:24px;height:24px}.pv .mark.ok{stroke:#22c55e}.pv .mark.warn{stroke:#e0a100;color:#e0a100}.pv .block{margin-bottom:26px}.pv .block-head{border-bottom:1px solid #eceff2;align-items:center;gap:10px;padding:6px 2px 12px;display:flex}.pv .block-head h2{color:#1f2933;margin:0;font-size:20px;font-weight:700}.pv .count{color:#4b5563;background:#f1f5f9;border-radius:999px;padding:2px 10px;font-size:13px;font-weight:700}.pv .count.ok{color:#16a34a;background:#dcfce7}.pv .per{color:#9ca3af;margin-left:auto;font-size:14px}.pv .empty{color:#6b7280;margin:12px 2px;font-size:14px}.pv .additive-row{border-bottom:1px solid #f1f5f9;align-items:center;gap:12px;padding:14px 2px;text-decoration:none;display:flex}.pv .additive-code{color:#374151;white-space:nowrap;text-overflow:ellipsis;border:1.5px solid #d1d5db;border-radius:9px;flex:none;justify-content:center;align-items:center;min-width:52px;max-width:96px;height:34px;padding:0 8px;font-size:13px;font-weight:800;display:flex;overflow:hidden}.pv .additive-code.ico{width:40px;min-width:40px;padding:0}.pv .additive-code.ico svg{fill:none;stroke:#6b7280;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.pv .additive-info{flex-direction:column;flex:1;min-width:0;display:flex}.pv .additive-name{color:#1f2933;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;overflow:hidden}.pv .additive-fn{color:#6b7280;font-size:13px}.pv .tier{flex:none;align-items:center;gap:5px;font-size:12px;font-weight:700;display:flex}.pv .tier-dot{border-radius:50%;width:9px;height:9px}.pv .chev{fill:none;stroke:#cbd5e1;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.pv .nutri{margin-bottom:26px}.pv .nutri-head{border-bottom:1px solid #eceff2;justify-content:space-between;align-items:center;padding:6px 2px 10px;display:flex}.pv .nutri-head h2{color:#1f2933;margin:0;font-size:20px;font-weight:700}.pv .nutri-row{border-bottom:1px solid #f1f5f9;align-items:center;gap:14px;padding:14px 2px;display:flex}.pv .nutri-icon{color:#4b5563;flex:none}.pv .nutri-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.pv .nutri-info{flex-direction:column;flex:1;display:flex}.pv .nutri-name{color:#1f2933;font-size:16px;font-weight:700}.pv .nutri-detail{color:#6b7280;font-size:13px}.pv .nutri-value{color:#374151;font-size:16px;font-weight:600}.pv .nutri-dot{border-radius:50%;flex:none;width:14px;height:14px}.pv .ntable{border-collapse:collapse;width:100%}.pv .ntable td{color:#374151;border-bottom:1px solid #f1f5f9;padding:11px 2px;font-size:15px}.pv .ntable td.val{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.pv .ingredients{color:#4b5563;margin:6px 0 0;font-size:14px;line-height:1.6}.pv .scan-again{color:#fff;background:linear-gradient(135deg,#16a34a,#22c55e);border-radius:14px;justify-content:center;align-items:center;gap:10px;width:100%;padding:15px;font-size:16px;font-weight:700;text-decoration:none;display:flex;box-shadow:0 12px 24px -12px #16a34a99}.pv .scan-again svg{fill:none;stroke:#fff;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.pv .src{text-align:center;color:#b6bfc9;margin-top:16px;font-size:11px}html[data-theme=dark] .pv{background:var(--bg);box-shadow:none}html[data-theme=dark] .pv .topbar{background:var(--bg)}html[data-theme=dark] .pv .topbar-title{color:var(--muted)}html[data-theme=dark] .pv .icon-btn{color:var(--text)}html[data-theme=dark] .pv .icon-btn:hover{background:var(--border-soft)}html[data-theme=dark] .pv .loading,html[data-theme=dark] .pv .notfound,html[data-theme=dark] .pv .empty{color:var(--muted-2)}html[data-theme=dark] .pv .spinner{border-color:var(--border-soft);border-top-color:#22c55e}html[data-theme=dark] .pv .notfound h1{color:var(--heading)}html[data-theme=dark] .pv .pimg{background:var(--card);border-color:var(--card-border)}html[data-theme=dark] .pv .pmeta h1{color:var(--heading)}html[data-theme=dark] .pv .brand{color:var(--muted-2)}html[data-theme=dark] .pv .fmt,html[data-theme=dark] .pv .noimg,html[data-theme=dark] .pv .score-sub,html[data-theme=dark] .pv .per{color:var(--faint)}html[data-theme=dark] .pv .scorecard,html[data-theme=dark] .pv .flags{border-color:var(--card-border)}html[data-theme=dark] .pv .ring-bg{stroke:var(--border-soft)}html[data-theme=dark] .pv .ring-den{fill:var(--faint)}html[data-theme=dark] .pv .ns-row{color:var(--muted)}html[data-theme=dark] .pv .neutral-mark{background:var(--border-soft);color:var(--muted)}html[data-theme=dark] .pv .neutral-card .scoreinfo strong{color:var(--heading)}html[data-theme=dark] .pv .flag{border-bottom-color:var(--card-border)}html[data-theme=dark] .pv .flag.warn{background:#f5a62314}html[data-theme=dark] .pv .flag-name{color:var(--text)}html[data-theme=dark] .pv .flag-detail,html[data-theme=dark] .pv .nutri-detail,html[data-theme=dark] .pv .additive-fn,html[data-theme=dark] .pv .flag-more{color:var(--muted-2)}html[data-theme=dark] .pv .flag-more:hover,html[data-theme=dark] .pv .flag-more:focus-visible{color:#4ade80;background:#ffffff14}html[data-theme=dark] .pv .block-head,html[data-theme=dark] .pv .nutri-head{border-bottom-color:var(--card-border)}html[data-theme=dark] .pv .block-head h2,html[data-theme=dark] .pv .nutri-head h2{color:var(--heading)}html[data-theme=dark] .pv .count{background:var(--border-soft);color:var(--muted)}html[data-theme=dark] .pv .count.ok{color:#4ade80;background:#22c55e26}html[data-theme=dark] .pv .additive-row,html[data-theme=dark] .pv .nutri-row,html[data-theme=dark] .pv .ntable td{border-bottom-color:var(--border-soft)}html[data-theme=dark] .pv .additive-code{color:var(--text);border-color:#3a4a41}html[data-theme=dark] .pv .additive-name,html[data-theme=dark] .pv .nutri-name{color:var(--text)}html[data-theme=dark] .pv .nutri-icon{color:var(--muted)}html[data-theme=dark] .pv .nutri-value,html[data-theme=dark] .pv .ntable td{color:var(--text)}html[data-theme=dark] .pv .chev{stroke:var(--faint)}html[data-theme=dark] .pv .ingredients{color:var(--muted)}html[data-theme=dark] .pv .src{color:var(--faint)}.pv .additive-summary{flex-wrap:wrap;gap:7px;padding:12px 2px 2px;display:none}.pv .rsum{color:#374151;background:#f4f6f8;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:12.5px;font-weight:700;display:inline-flex}.pv .rsum-dot{background:var(--rc);border-radius:50%;flex:none;width:9px;height:9px}.pv .additive-row .tier-stripe{display:none}html[data-design=vivo] .pv .additive-summary{display:flex}html[data-design=vivo] .pv .additive-row{padding-left:14px;position:relative}html[data-design=vivo] .pv .additive-row .tier-stripe{background:var(--rc);border-radius:4px;width:4px;display:block;position:absolute;top:8px;bottom:8px;left:0}html[data-design=vivo] .pv .additive-code{border-color:var(--rc);color:var(--rc);background:color-mix(in srgb, var(--rc) 12%, transparent)}html[data-design=vivo] .pv .additive-code.ico{color:var(--muted-2,#6b7280);background:0 0;border-color:#d1d5db}html[data-design=vivo] .pv .scorecard{background:color-mix(in srgb, var(--sc) 9%, transparent);border-color:color-mix(in srgb, var(--sc) 26%, transparent)}html[data-design=vivo] .pv .block-head h2,html[data-design=vivo] .pv .nutri-head h2{align-items:center;gap:9px;display:inline-flex}html[data-design=vivo] .pv .block-head h2:before,html[data-design=vivo] .pv .nutri-head h2:before{content:"";background:#16a34a;border-radius:3px;flex:none;width:4px;height:18px}html[data-theme=dark] .pv .rsum{background:var(--border-soft);color:var(--text)}html[data-theme=dark][data-design=vivo] .pv .additive-code.ico{color:var(--text);border-color:#3a4a41}
