/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}:root{--ink:#1e3d2f;--cream:#f7f6f2;--lime:#ddeb7a;--coral:#d86a3d;--line:#1e3d2f17;--green:#4f9d6a;--paper:#fff;--muted:#6c7067;--warn:#d86a3d;--shadow-sm:0 1px 3px #1e3d2f0f,0 4px 14px #1e3d2f0d;--shadow-md:0 8px 30px #1e3d2f1a;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--tabbar-h:64px;--topbar-h:52px;--ease:cubic-bezier(.2,.8,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}button,a{font:inherit;color:inherit}a{text-decoration:none}.hero{min-height:100svh;color:var(--cream);isolation:isolate;background:#173b2b;position:relative;overflow:hidden}.hero:before{content:"";z-index:1;background:linear-gradient(90deg,#091d15fa 0%,#091d15c2 35%,#091d1505 70%),linear-gradient(#0000 56%,#071b1380);position:absolute;inset:0}.hero.morning:before{background:linear-gradient(#ffffff6b,#0000 38%,#071b1333);transition:background 1.2s}.hero.morning .hero-copy{color:var(--ink);text-shadow:0 2px 22px #fff9}.hero.morning .eyebrow span,.hero.morning h1 b{color:#587416}.hero:after{content:"";background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);opacity:.25;z-index:2;pointer-events:none;background-size:10vw 10vw;animation:18s linear infinite gridDrift;position:absolute;inset:-12%}.hero.night:after{opacity:0}.hero.night .solar-orbit{display:none}@keyframes gridDrift{to{transform:translate(10vw,10vw)}}.nav{border-bottom:1px solid var(--line);z-index:6;text-transform:uppercase;letter-spacing:.14em;justify-content:space-between;align-items:center;height:94px;padding:0 3.5vw;font-size:11px;display:flex;position:relative}.brand{align-items:center;gap:12px;font-size:10px;font-weight:700;line-height:1.1;display:flex}.brand-mark{border:1px solid;border-radius:50%;place-items:center;width:42px;height:42px;font-size:12px;display:grid}.nav-links{gap:38px;display:flex}.nav-links a{opacity:.68;transition:all .2s}.nav-links a:hover{opacity:1}.menu{cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;display:flex}.menu span{background:var(--lime);width:8px;height:8px;box-shadow:0 0 15px var(--lime);border-radius:50%}.hero-image{z-index:0;opacity:0;transition:opacity 1.35s cubic-bezier(.45,0,.25,1),filter .9s;animation:14s ease-in-out infinite alternate cameraMove,9s ease-in-out infinite alternate breathe;position:absolute;inset:-28px}.hero-image.visible{opacity:1}.hero-night{background:url(/household-chemicals-hero.png) 50%/cover no-repeat}.hero-day{background:url(/household-chemicals-day.png) 50%/cover no-repeat}@keyframes arrive{0%{opacity:0;transform:scale(1.09)}}@keyframes cameraMove{0%{transform:translate3d(calc(var(--mx,0px) - 7px),calc(var(--my,0px) - 4px),0) scale(1.035)}50%{transform:translate3d(var(--mx,0px),calc(var(--my,0px) + 3px),0) scale(1.055)}to{transform:translate3d(calc(var(--mx,0px) + 8px),calc(var(--my,0px) - 2px),0) scale(1.075)}}@keyframes breathe{0%{filter:saturate(.92)brightness(.92)}to{filter:saturate(1.08)brightness(1.04)}}.hero-copy{z-index:4;text-align:center;width:min(900px,86vw);margin:clamp(44px,7vh,86px) auto 0;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.16em;justify-content:center;align-items:center;gap:28px;margin-bottom:22px;font-size:9px;display:flex}.eyebrow span{color:var(--lime)}.hero h1{letter-spacing:-.065em;margin:0;font-size:clamp(48px,6.2vw,100px);font-weight:400;line-height:.86}.hero h1 span{font-weight:800}.hero h1 b{color:var(--lime);font-family:Georgia,serif;font-style:italic;font-weight:400}.lede{color:#eee9dcc7;width:min(420px,85%);margin:34px 0;font-size:clamp(15px,1.25vw,20px);line-height:1.45}.round-button{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.14em;cursor:pointer;background:#0f281d52;border:1px solid #eee9dc80;border-radius:40px;align-items:center;gap:14px;padding:9px 22px 9px 9px;font-size:10px;transition:all .25s;display:flex}.round-button span{background:var(--lime);width:44px;height:44px;color:var(--ink);border-radius:50%;place-items:center;font-size:18px;display:grid}.round-button:hover{transform:translate(6px)}.solar-orbit{z-index:2;pointer-events:none;border:1px solid #d9ff522b;border-radius:50%;animation:7s ease-in-out infinite alternate orbitPulse;position:absolute}.orbit-one{width:48vw;height:48vw;top:4vh;right:-7vw}.orbit-two{width:61vw;height:61vw;animation-delay:-3.5s;top:-5vh;right:-13vw}@keyframes orbitPulse{to{opacity:.32;transform:scale(1.06)}}.scan{z-index:5;color:var(--cream);letter-spacing:.15em;pointer-events:none;align-items:center;gap:8px;font-size:8px;animation:4s ease-in-out infinite scanFloat;display:flex;position:absolute}.scan:before{content:"";border:1px solid var(--lime);width:8px;height:8px;box-shadow:0 0 12px var(--lime);border-radius:50%}.scan span{opacity:.55}.scan b{font-weight:500}.scan-a{bottom:25%;left:23%}.scan-b{animation-delay:-2s;bottom:31%;right:13%}@keyframes scanFloat{50%{transform:translateY(-8px)}}.mode-panel{z-index:6;text-align:center;width:min(620px,86vw);position:absolute;bottom:112px;left:50%;transform:translate(-50%)}.mode-switch{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#081912a3;border:1px solid #eee9dc73;border-radius:5px;grid-template-columns:1fr 1fr;padding:3px;display:inline-grid}.mode-switch button{width:110px;color:var(--cream);cursor:pointer;background:0 0;border:0;padding:8px 18px;font-size:9px}.mode-switch button.active{background:var(--cream);color:var(--ink)}.mode-panel p{letter-spacing:.04em;color:#eee9dcb3;text-shadow:0 1px 12px #000;font-size:9px;line-height:1.45}.hero-meta{border-top:1px solid var(--line);z-index:5;grid-template-columns:1fr 1fr 1fr;align-items:center;min-height:102px;margin:0 3.5vw;display:grid;position:absolute;bottom:0;left:0;right:0}.hero-meta>div{text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:20px;font-size:10px;line-height:1.35;display:flex}.hero-meta b{letter-spacing:-.03em;font-size:20px}.hero-meta span{opacity:.55}.hero-meta .edition{border-left:1px solid var(--line);justify-self:end;padding-left:40px}.ticker{background:var(--lime);border-bottom:1px solid var(--ink);white-space:nowrap;letter-spacing:.14em;padding:16px 0;font-size:12px;font-weight:700;overflow:hidden}.ticker div{width:max-content;animation:24s linear infinite ticker}@keyframes ticker{to{transform:translate(-50%)}}.intro{border-bottom:1px solid #10251d40;grid-template-columns:1fr 2.1fr 1fr;gap:5vw;padding:140px 5vw;display:grid}.section-no,.catalogue-head>p,.action-label{letter-spacing:.15em;text-transform:uppercase;font-size:10px}.intro h2,.catalogue h2{letter-spacing:-.065em;text-transform:uppercase;margin:0;font-size:clamp(60px,7.4vw,126px);line-height:.78}.intro h2 i,.catalogue h2 i{text-transform:none;font-family:Georgia,serif;font-weight:400}.intro-note{align-self:end;max-width:320px;font-size:14px;line-height:1.55}.intro-note p:last-child{opacity:.56;margin-top:30px}.catalogue{background:#d9d2c1;padding:120px 3.5vw 80px}.catalogue-head{grid-template-columns:1fr 2fr 1fr;align-items:start;gap:2vw;margin-bottom:80px;display:grid}.catalogue-head h2{font-size:clamp(66px,8vw,130px)}.catalogue-head>span{letter-spacing:.14em;justify-self:end;font-size:11px;line-height:1.5}.carousel-controls{justify-content:space-between;align-items:center;margin:0 0 18px;display:flex}.carousel-controls p{letter-spacing:.14em;font-size:10px}.carousel-controls p b{font-size:24px}.carousel-controls div{display:flex}.carousel-controls button{border:1px solid var(--ink);cursor:pointer;background:0 0;width:52px;height:52px;font-size:20px;transition:all .2s}.carousel-controls button+button{border-left:0}.carousel-controls button:hover{background:var(--ink);color:var(--cream)}.carousel-window{border-left:1px solid var(--ink);border-top:1px solid var(--ink);overflow:hidden}.product-grid{will-change:transform;width:max-content;animation:34s linear infinite productLoop;display:flex}.product-grid.paused,.carousel-window:hover .product-grid{animation-play-state:paused}@keyframes productLoop{to{transform:translate(-50%)}}.product-card{border:0;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);text-align:left;cursor:pointer;opacity:.62;background:0 0;flex-direction:column;width:clamp(300px,27vw,390px);min-height:570px;padding:20px;transition:background .35s,opacity .35s,transform .7s;display:flex;position:relative;overflow:hidden}.product-card:hover,.product-card.active{background:var(--cream);opacity:1}.product-card.active{transform:translateY(-10px)}.product-top{letter-spacing:.14em;justify-content:space-between;font-size:9px;display:flex}.product-top i{font-style:normal}.carousel-dots{justify-content:center;gap:8px;margin-top:28px;display:flex}.carousel-dots button{cursor:pointer;background:#10251d40;border:0;width:28px;height:3px;padding:0;transition:all .3s}.carousel-dots button.active{background:var(--ink);width:62px}.bottle{background:#eee9dc;border-radius:18px 18px 34px 34px;align-self:center;place-items:center;width:52%;height:260px;margin:auto;transition:all .35s;display:grid;position:relative;box-shadow:inset -16px -12px 30px #10251d21,12px 18px 20px #10251d1f}.product-card:hover .bottle,.product-card.active .bottle{transform:translateY(-10px)rotate(-2deg)}.bottle>i{background:var(--ink);border-radius:5px 5px 0 0;height:42px;position:absolute;top:-39px;left:28%;right:28%}.bottle>b{width:64%;height:44%;color:var(--coral);background:#173b2b;place-items:center;font-size:28px;font-weight:400;display:grid}.bottle-1{height:230px}.bottle-2{background:#f4f0dfa3;border-radius:24px 60px 30px 30px;width:64%}.bottle-3{background:#222;border-radius:60px 18px 24px 24px;height:300px}.bottle-3>b{background:var(--coral);color:var(--ink)}.bottle-4{background:#b4cf4c;border-radius:28px;width:45%;height:290px}.bottle-4>i{border-radius:18px 18px 2px 2px;height:55px;top:-52px}.lime b{color:var(--lime)}.amber{background:#9a5f2d}.amber b{color:#dfb763}.product-name{letter-spacing:-.05em;margin:12px 0 22px;font-size:36px;font-weight:700;line-height:.9}.product-name small{letter-spacing:.12em;margin-bottom:8px;font-size:10px;font-weight:400;display:block}.risk{border-top:1px solid #10251d59;min-height:62px;padding-top:15px;display:block}.risk i{letter-spacing:.12em;text-transform:uppercase;opacity:.6;margin-bottom:8px;font-size:9px;font-style:normal;display:block}.risk b{font-size:12px;font-weight:500;line-height:1.35;display:block}.photo-stage{background:#ece8dd;place-items:center;height:310px;margin:26px -20px 12px;display:grid;overflow:hidden}.photo-stage img{object-fit:contain;mix-blend-mode:multiply;filter:saturate(.76)contrast(1.04);width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.product-card:hover .photo-stage img,.product-card.active .photo-stage img{transform:scale(1.055)}.action{background:var(--ink);color:var(--cream);grid-template-columns:1fr repeat(3,1.25fr);gap:4vw;padding:120px 5vw;display:grid}.action-copy{border-top:1px solid #eee9dc4d;padding-top:18px}.action-copy p{color:var(--lime);font-size:10px}.action-copy h2{letter-spacing:-.06em;margin:50px 0 24px;font-size:clamp(42px,5vw,78px)}.action-copy span{color:#eee9dc99;max-width:230px;font-size:13px;line-height:1.5;display:block}footer{background:var(--ink);color:var(--cream);border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:40px 5vw;display:flex}footer p{opacity:.5;text-transform:uppercase;letter-spacing:.1em;font-size:10px;line-height:1.5}.back{letter-spacing:.14em;font-size:10px}@media (max-width:800px){.nav{height:74px}.nav-links{display:none}.hero{min-height:900px}.hero-image{background-position:55%}.hero:before{background:linear-gradient(#091d1559,#091d15d1 75%)}.hero-copy{width:auto;margin:70px 7vw 0}.hero h1{font-size:58px}.mode-panel{bottom:118px}.hero-meta{grid-template-columns:1fr 1fr}.hero-meta>div:nth-child(2){display:none}.intro,.catalogue-head{grid-template-columns:1fr}.intro{padding:90px 6vw}.intro-note{max-width:100%}.product-card{width:78vw}.action{grid-template-columns:1fr}.action-copy h2{margin:30px 0 16px}.catalogue-head>span{justify-self:start}.catalogue{padding:80px 4vw}.product-card{min-height:500px}.photo-stage{height:270px}footer{flex-wrap:wrap;align-items:flex-start;gap:24px}}@media (max-width:520px){.hero-copy{margin-top:58px}.hero h1{font-size:46px}.eyebrow{display:block}.eyebrow span{margin-bottom:10px;display:block}.mode-switch button{width:92px}.mode-panel p{font-size:8px}.hero-meta .edition{display:none}.product-card{min-height:520px}.catalogue-head h2,.intro h2{font-size:58px}.action{padding:80px 6vw}footer p{order:3;width:100%}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.scan-page{background:var(--cream);min-height:100svh}.scan-head{border-bottom:1px solid #10251d40;padding:90px 5vw 40px}.scan-head h1{letter-spacing:-.065em;text-transform:uppercase;margin:18px 0 26px;font-size:clamp(54px,7vw,120px);line-height:.8}.scan-head h1 i{text-transform:none;font-family:Georgia,serif;font-weight:400}.scan-sub{max-width:640px;font-size:15px;line-height:1.6}.scan-status{letter-spacing:.14em;text-transform:uppercase;border:1px solid #10251d66;margin-top:22px;padding:8px 14px;font-size:10px;display:inline-block}.scan-status.status-ready{color:var(--lime);background:#173b2b;border-color:#173b2b}.scan-status.status-loading,.scan-status.status-checking{background:#d9ff5259}.scan-status.status-error,.scan-status.status-offline{background:var(--coral);color:var(--ink)}.scan-workbench{border-bottom:1px solid #10251d40;grid-template-columns:minmax(300px,1fr) 1.6fr;gap:4vw;padding:70px 5vw;display:grid}.drop-zone{aspect-ratio:4/5;cursor:pointer;background:#ece8dd;border:1px dashed #10251d8c;place-items:center;width:100%;padding:0;transition:all .25s;display:grid;overflow:hidden}.drop-zone:hover{border-color:var(--ink);background:#e4dfd0}.drop-zone img{object-fit:contain;width:100%;height:100%}.drop-zone span{letter-spacing:.14em;text-transform:uppercase;opacity:.6;font-size:12px;line-height:2}.scan-actions{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.sample-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.sample-label{letter-spacing:.12em;text-transform:uppercase;opacity:.55;font-size:11px}.sample-btns{flex-wrap:wrap;gap:6px;display:flex}.sample-btn{color:var(--ink);cursor:pointer;background:#fffdf8;border:1px dashed #10251d80;border-radius:100px;padding:6px 12px;font-size:12px;transition:all .18s}.sample-btn:hover:not(:disabled){color:#2f8f70;border-color:#2f8f70}.sample-btn:disabled{opacity:.45;cursor:not-allowed}.sample-hint{opacity:.5;width:100%;font-size:11px}.unknown-note{color:#5a625e;background:#f1efe8;border-left:3px solid #8d938f;border-radius:0 6px 6px 0;margin-top:8px;padding:8px 12px;font-size:13px}.confidence-note{color:#8d938f;margin-top:6px;font-size:12px;font-style:italic}.rules-block{background:#fff;border:1px solid #1e3d2f14;border-radius:14px;margin-top:18px;padding:14px;box-shadow:0 2px 8px #1e3d2f0a}.rules-block h3{margin-bottom:8px;font-size:14px}.rules-meta{color:var(--ink3);margin-bottom:10px;font-size:12px}.rule-finding{background:#fafaf8;border-left:3px solid;border-radius:0 8px 8px 0;margin-bottom:8px;padding:10px 12px}.rule-finding.sev-critical{background:#fbe9e5;border-color:#c0503f}.rule-finding.sev-high{background:#fdf3f0;border-color:#c0503f}.rule-finding.sev-medium{background:#fbf0dd;border-color:#c8842f}.rule-finding b{font-size:13.5px;display:block}.rule-finding p{color:var(--ink2);margin:4px 0;font-size:12.5px}.rule-action{color:var(--jade-d);font-weight:600}.evidence-btn{border:1px solid var(--jade);color:var(--jade-d);cursor:pointer;background:0 0;border-radius:100px;margin-top:8px;padding:6px 14px;font-size:12px}.evidence-btn:hover{background:var(--jade-l)}.expiring-note{color:#c8842f;background:#fbf0dd;border-radius:8px;margin-top:10px;padding:8px 12px;font-size:12px}.mix-alert{background:#fef2f0;border:1px solid #c0503f26;border-radius:14px;margin-top:18px;padding:14px}.mix-alert h3{color:#c0503f;font-size:15px}.mix-rule-tag{color:#8d938f;margin:2px 0 10px;font-size:11px}.mix-pair{background:#fffdf8;border-radius:8px;margin-bottom:8px;padding:10px 12px;font-size:13px}.mix-pair b{color:#c0503f}.mix-pair p{color:var(--ink2);margin:4px 0;font-size:12.5px}.mix-action{color:#c0503f;font-weight:600}.mix-more{color:var(--jade-d);font-size:12px}.evidence-drawer{z-index:100;background:#1d211f80;justify-content:flex-end;display:flex;position:fixed;inset:0}.evidence-panel{background:#fff;width:min(480px,90vw);height:100%;padding:20px;overflow-y:auto;box-shadow:-4px 0 24px #00000014}.evidence-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.evidence-head h3{font-size:17px}.evidence-head button{cursor:pointer;color:var(--ink2);background:0 0;border:none;font-size:18px}.evidence-item{border:1px solid var(--line);border-radius:10px;margin-bottom:12px;padding:14px}.evidence-title{margin-bottom:6px;font-size:14px;font-weight:600}.ev-no{background:var(--jade-l);color:var(--jade-d);border-radius:100px;margin-left:8px;padding:2px 8px;font-family:ui-monospace,monospace;font-size:11px}.ev-level{border-radius:100px;margin-bottom:8px;padding:2px 8px;font-size:10.5px;display:inline-block}.ev-A{color:#1d6650;background:#e6f2ec}.ev-B{color:#3d6f9e;background:#e7eef6}.ev-C{color:#c8842f;background:#fbf0dd}.ev-clause{color:var(--ink);margin:6px 0;font-size:12.5px}.ev-summary{color:var(--ink2);font-size:12.5px}.ev-note{color:#c8842f;margin-top:4px;font-size:11.5px;font-style:italic}.ev-dates{color:var(--ink3);margin-top:8px;font-family:ui-monospace,monospace;font-size:11px}.ev-url{color:var(--jade-d);font-size:12px;text-decoration:underline}.feedback-bar{background:#f0f7f2;border:1px solid #2f8f701f;border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;padding:12px 16px;display:flex}.feedback-q{color:var(--jade-d);font-size:13px}.fb-btn{border:1px solid var(--line2);cursor:pointer;background:#fffdf8;border-radius:8px;padding:4px 12px;font-size:18px}.fb-btn:hover{border-color:var(--jade)}.fb-form{flex-wrap:wrap;gap:8px;width:100%;margin-top:8px;display:flex}.fb-form input{border:1px solid var(--line2);border-radius:8px;flex:1;min-width:160px;padding:8px 10px;font-size:12.5px}.fb-submit{border:1px solid var(--jade);background:var(--jade);color:#fff;cursor:pointer;border-radius:8px;padding:8px 16px;font-size:12.5px}.feedback-done{color:var(--jade-d);background:#f0f7f2;border:1px solid #2f8f701f;border-radius:14px;margin-top:18px;padding:12px 16px;font-size:13px}.chat-history{flex-direction:column;gap:8px;margin-top:14px;display:flex}.chat-msg{border-radius:10px;gap:10px;padding:10px 12px;font-size:13px;display:flex}.chat-user{background:var(--jade-l);align-self:flex-end}.chat-assistant{border:1px solid var(--line);background:#fffdf8}.chat-role{color:var(--jade-d);white-space:nowrap;font-size:12px;font-weight:600}.chat-msg p{margin:0;line-height:1.6}.analyze-btn,.save-btn{border:1px solid var(--ink);background:var(--ink);color:var(--cream);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;padding:14px 26px;font-size:11px;transition:all .2s}.analyze-btn:hover:not(:disabled),.save-btn:hover:not(:disabled){background:#173b2b}.analyze-btn:disabled,.save-btn:disabled{opacity:.45;cursor:not-allowed}.save-btn{color:var(--ink);background:0 0}.save-btn:hover:not(:disabled){background:var(--ink);color:var(--cream)}.scan-error{color:#a3341d;margin-top:16px;font-size:13px;line-height:1.5}.scan-result h2{letter-spacing:-.04em;margin:14px 0 8px;font-size:clamp(34px,3.4vw,58px);line-height:.95}.risk-badge{letter-spacing:.16em;border:1px solid var(--ink);padding:7px 16px;font-size:10px;display:inline-block}.risk-low{background:#cfe3b8}.risk-medium{background:#e8d27a}.risk-high{background:var(--coral)}.risk-critical{background:var(--ink);color:var(--coral)}.risk-unknown{background:0 0}.result-meta{letter-spacing:.12em;text-transform:uppercase;opacity:.6;margin:6px 0 18px;font-size:11px}.result-summary{max-width:640px;margin-bottom:26px;font-size:15px;line-height:1.6}.result-block{border-top:1px solid #10251d40;padding:16px 0}.result-block h3{letter-spacing:.15em;text-transform:uppercase;opacity:.65;margin:0 0 10px;font-size:10px}.result-block p{margin:6px 0;font-size:14px;line-height:1.5}.result-block ul{margin:0;padding-left:20px;font-size:14px;line-height:1.7}.result-block i{opacity:.5;font-size:12px;font-style:normal}.result-block.block-danger{border-left:3px solid var(--coral);background:#f07d631a;padding-left:12px}.result-block.block-danger h3{color:#c0301c;opacity:1}.result-block.block-uncertain h3{color:#9a7b1f;opacity:1}.result-block.block-retake{background:#d9ff5224;border-left:3px solid #9db83a;padding-left:12px}.result-block.block-retake h3{color:#5c7a1f;opacity:1}.result-block.block-retake li,.result-block.block-uncertain li{line-height:1.6}.result-grid{grid-template-columns:1fr 1fr;gap:3vw;display:grid}.sev{letter-spacing:.1em;border:1px solid var(--ink);margin-right:8px;padding:3px 8px;font-size:9px}.sev-low{background:#cfe3b8}.sev-medium{background:#e8d27a}.sev-high{background:var(--coral)}.sev-critical{background:var(--ink);color:var(--cream)}.db-match{letter-spacing:.1em;color:#173b2b;margin-top:18px;font-size:12px;font-weight:700}.household-archive{background:#d9d2c1;padding:80px 5vw}.household-archive h2{letter-spacing:-.05em;text-transform:uppercase;margin:14px 0 30px;font-size:clamp(40px,4.5vw,72px)}.household-archive ul{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none}.household-archive li{border-bottom:1px solid #10251d66;justify-content:space-between;align-items:center;padding:14px 4px;font-size:14px;display:flex}.household-archive li button{border:1px solid var(--ink);letter-spacing:.12em;cursor:pointer;background:0 0;padding:6px 14px;font-size:10px;transition:all .2s}.household-archive li button:hover{background:var(--coral)}.archive-empty{opacity:.6;font-size:14px}@media (max-width:800px){.scan-workbench,.result-grid{grid-template-columns:1fr}}.hero .nav,.hero .brand,.hero .menu,.hero .scan,.hero .hero-meta,.hero .mode-panel p{transition:color .9s,text-shadow .9s}.hero .hero-meta span,.hero .nav-links a{transition:opacity .9s}.hero.morning .nav,.hero.morning .brand,.hero.morning .menu{color:var(--ink)}.hero.morning .nav-links a{opacity:.72}.hero.morning .nav-links a:hover{opacity:1}.hero.morning .scan,.hero.morning .hero-meta{color:var(--ink)}.hero.morning .hero-meta span{opacity:.62}.hero.morning .hero-meta .edition{border-left-color:#10251d59}.hero.morning .mode-panel p{color:#10251dc7;text-shadow:0 1px 10px #ffffffa6}.scan-head{padding:64px 5vw 32px}.scan-head h1{font-size:clamp(44px,5vw,84px)}.scan-workbench{grid-template-columns:minmax(280px,440px) minmax(0,1fr);align-items:start;gap:3vw;padding:56px 5vw}.drop-zone{max-height:540px}.scan-placeholder{background:#ece8dd99;border:1px dashed #10251d66;min-height:420px;padding:34px}.scan-placeholder h3{letter-spacing:-.02em;margin:10px 0 18px;font-size:22px}.scan-placeholder ul{opacity:.75;margin:0 0 22px;padding-left:18px;font-size:13px;line-height:1.9}.scan-placeholder>p:last-child{letter-spacing:.12em;text-transform:uppercase;opacity:.5;font-size:10px}.scan-error{background:#f07d6324;border:1px solid #a3341d66;padding:12px 14px}.nav-right{align-items:center;gap:18px;display:flex}.lang-toggle{letter-spacing:.14em;cursor:pointer;opacity:.8;background:0 0;border:1px solid;border-radius:20px;padding:7px 16px;font-size:10px;transition:all .2s}.lang-toggle:hover{opacity:1}.scan-top{border-bottom:1px solid #10251d40;justify-content:space-between;align-items:flex-end;gap:2vw;padding:26px 5vw 20px;display:flex}.scan-top h1{letter-spacing:-.05em;text-transform:uppercase;margin:10px 0 0;font-size:clamp(30px,3.2vw,54px);line-height:.9}.scan-top h1 i{text-transform:none;font-family:Georgia,serif;font-weight:400}.scan-top .scan-status{margin:0 0 6px}.scan-workbench{padding:30px 5vw 44px}.scan-page .scan-sub{opacity:.75;max-width:760px;margin:0;padding:0 5vw 46px;font-size:14px;line-height:1.6}.lang-zh{font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif}.lang-zh .hero h1{letter-spacing:-.02em;line-height:.98}.lang-zh .intro h2,.lang-zh .catalogue h2{letter-spacing:-.01em;font-size:clamp(46px,5.8vw,100px);line-height:1.06}.lang-zh .catalogue-head h2{font-size:clamp(50px,6vw,96px)}.lang-zh .intro h2 i,.lang-zh .catalogue h2 i{font-family:Songti SC,STSong,Noto Serif CJK SC,SimSun,serif;font-style:italic;font-weight:600}.lang-zh .action-copy h2{letter-spacing:0}.lang-zh .scan-top h1{letter-spacing:0;line-height:1}.lang-zh .product-name{letter-spacing:-.02em}.lang-zh .ticker{font-weight:600}@media (max-width:800px){.lang-zh .intro h2,.lang-zh .catalogue-head h2,.lang-zh .catalogue h2{font-size:clamp(42px,11vw,58px)}}.assistant-section{background:var(--ink);color:var(--cream);padding:80px 5vw 40px}.assistant-section h2{letter-spacing:-.05em;text-transform:uppercase;margin:14px 0 12px;font-size:clamp(40px,4.5vw,72px)}.assistant-hint{opacity:.65;max-width:560px;font-size:14px;line-height:1.6}.ask-bar{flex-wrap:wrap;gap:12px;margin:28px 0 18px;display:flex}.ask-bar input{min-width:220px;color:var(--cream);background:#eee9dc14;border:1px solid #eee9dc66;outline:none;flex:1;padding:12px 16px;font-size:15px}.ask-bar input:focus{border-color:var(--lime)}.mic-btn{color:var(--cream);cursor:pointer;letter-spacing:.1em;background:0 0;border:1px solid #eee9dc80;border-radius:40px;align-items:center;gap:10px;padding:10px 20px;font-size:12px;transition:all .25s;display:flex}.mic-btn i{background:var(--coral);border-radius:50%;width:10px;height:10px}.mic-btn.listening{border-color:var(--coral);background:#f07d632e;animation:1.1s ease-in-out infinite micPulse}@keyframes micPulse{50%{transform:scale(1.05)}}.ask-btn{border:1px solid var(--lime);background:var(--lime);color:var(--ink);letter-spacing:.1em;cursor:pointer;padding:12px 22px;font-size:12px}.ask-btn:disabled{opacity:.4;cursor:default}.chip-rows{flex-wrap:wrap;gap:10px 22px;margin-bottom:22px;display:flex}.chip-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chip-group em{letter-spacing:.14em;text-transform:uppercase;opacity:.55;font-size:10px;font-style:normal}.chip-group button{color:var(--cream);cursor:pointer;background:0 0;border:1px solid #eee9dc59;border-radius:30px;padding:6px 14px;font-size:12px;transition:all .2s}.chip-group button:hover{background:var(--cream);color:var(--ink)}.ask-result{gap:14px;display:grid}.ask-bubble{border-left:3px solid var(--lime);background:#eee9dc1a;max-width:720px;padding:18px 22px;font-size:15px;line-height:1.75;position:relative}.ask-bubble.skeleton{opacity:.5;animation:1.2s infinite micPulse}.speak-btn{color:var(--cream);cursor:pointer;background:0 0;border:1px solid #eee9dc66;border-radius:20px;margin-top:12px;padding:5px 14px;font-size:11px}.speak-btn:hover{border-color:var(--lime);color:var(--lime)}.related-box h4,.kg-details summary{letter-spacing:.14em;text-transform:uppercase;opacity:.6;margin-bottom:8px;font-size:10px}.related-box ul{margin:0;padding:0;list-style:none}.related-box li{border-bottom:1px solid #eee9dc1f;padding:6px 0;font-size:13px}.related-box li small{opacity:.5;font-size:11px;display:block}.kg-details{font-size:13px;line-height:1.7}.kg-details summary{cursor:pointer}.kg-details ul{opacity:.8;margin:8px 0 0;padding-left:18px}.risk-dot{margin-right:4px;font-size:11px}.risk-dot.risk-high,.risk-dot.risk-critical{color:var(--coral)}.risk-dot.risk-medium{color:#e2b93b}.risk-dot.risk-low{color:#7fb069}.report-section{background:#d9d2c1;border-top:1px solid #10251d40;padding:80px 5vw 40px}.report-section h2{letter-spacing:-.05em;text-transform:uppercase;margin:14px 0 12px;font-size:clamp(40px,4.5vw,72px)}.report-section .assistant-hint{color:#10251da6}.gen-report-btn{border:1px solid var(--ink);background:var(--ink);color:var(--cream);letter-spacing:.08em;cursor:pointer;margin:10px 0 26px;padding:14px 26px;font-size:13px;transition:all .2s}.gen-report-btn:hover:not(:disabled){background:var(--coral);border-color:var(--coral)}.gen-report-btn:disabled{opacity:.45;cursor:default}.report-card{background:#fff;border:1px solid #1e3d2f14;border-radius:18px;max-width:980px;padding:34px 38px;box-shadow:0 4px 20px #1e3d2f0f}.report-card.risk-border-critical{box-shadow:8px 8px 0 var(--coral)}.report-card.risk-border-high{box-shadow:8px 8px #f07d638c}.report-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.overall-badge{letter-spacing:-.02em;border:2px solid;margin:10px 0 6px;padding:2px 14px;font-size:34px;font-weight:800;display:inline-block}.overall-badge.risk-low{color:#4c7a3f}.overall-badge.risk-medium{color:#a07d1c}.overall-badge.risk-high{color:#c2542e}.overall-badge.risk-critical{color:#b3261e;background:#f07d6326}.overall-text{opacity:.75;font-size:14px}.print-btn{border:1px solid var(--ink);letter-spacing:.1em;cursor:pointer;background:0 0;padding:8px 16px;font-size:11px}.print-btn:hover{background:var(--ink);color:var(--cream)}.trend-line{margin:6px 0 0;font-size:13px;font-weight:700}.trend-line.good{color:#4c7a3f}.trend-line.bad{color:#c2542e}.report-overview{max-width:760px;margin:22px 0;font-size:16px;line-height:1.8}.report-grid{grid-template-columns:1fr 1.4fr;gap:34px;margin:10px 0 24px;display:grid}.report-grid h4{letter-spacing:.14em;text-transform:uppercase;opacity:.6;margin:0 0 10px;font-size:10px}.radar-svg{width:100%;max-width:320px}.cross-box ul{margin:0;padding:0;list-style:none}.cross-pair{border-left:3px solid var(--coral);background:#f07d631a;margin-bottom:10px;padding:10px 14px;font-size:13px}.cross-pair b{margin-bottom:4px;display:block}.cross-pair span{opacity:.8;line-height:1.55}.cross-empty{opacity:.6;font-size:13px}.cross-list{margin:0;padding:0;list-style:none}.cross-pair.sev-critical{background:#c0301c1f;border-left-color:#c0301c;animation:2.2s ease-in-out infinite crossPulse}.cross-pair.sev-high{background:#e0721f1a;border-left-color:#e0721f}@keyframes crossPulse{0%,to{background:#c0301c1a}50%{background:#c0301c33}}.cross-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.cross-head b{margin:0;display:inline}.cross-x{color:#c0301c;padding:0 2px;font-weight:700}.cross-sev-tag{letter-spacing:.08em;border-radius:3px;padding:2px 7px;font-size:10px;font-weight:700}.sev-tag-critical{color:#fff;background:#c0301c}.sev-tag-high{color:#fff;background:#e0721f}.sev-tag-medium{color:var(--ink);background:#10251d2e}.cross-reason{opacity:.82;font-size:12.5px;line-height:1.55;display:block}.cross-alert-banner{background:#c0301c1a;border:1px solid #c0301c66;border-radius:8px;align-items:flex-start;gap:12px;margin:14px 0;padding:12px 14px;display:flex}.cross-alert-icon{flex:none;font-size:22px;line-height:1}.cross-alert-banner b{letter-spacing:.1em;text-transform:uppercase;color:#c0301c;font-size:11px}.cross-alert-banner p{margin:4px 0 0;font-size:13px;line-height:1.5}.disposal-block.is-hazard{background:#d9ff5214}.disposal-drain{font-weight:700;margin:0 0 8px!important;font-size:13px!important}.drain-no{color:#c0301c}.drain-diluted{color:#c07800}.drain-yes{color:#4a7c34}.disposal-summary{border-top:2px solid #9db83a;margin-top:26px;padding-top:18px}.disposal-summary h4{letter-spacing:.12em;text-transform:uppercase;color:#5c7a1f;margin:0 0 8px;font-size:12px}.disposal-summary .green-note{background:#d9ff5247;border-radius:6px;margin:0 0 14px;padding:10px 14px;font-size:14px;line-height:1.6}.disposal-group{margin-bottom:12px;font-size:13px}.disposal-group b{margin-bottom:5px;font-size:12px;display:block}.disposal-group.is-hazard b,.disposal-group.is-nodrain b{color:#c0301c}.disposal-group.is-eco b{color:#5c7a1f}.disposal-group ul{margin:0;padding-left:18px;line-height:1.7}.disposal-group li small{opacity:.62;font-size:11.5px;display:block}.disposal-none{color:#4a7c34;font-size:13px}.high-list{border-top:1px solid #10251d4d;margin:0 0 24px;padding:0;list-style:none}.high-list li{border-bottom:1px solid #10251d33;padding:10px 4px;font-size:14px}.high-list li small{opacity:.6;margin-top:2px;font-size:12px;display:block}.report-actions{grid-template-columns:1.3fr 1fr;gap:30px;display:grid}.report-actions h4{letter-spacing:.14em;text-transform:uppercase;opacity:.6;margin:0 0 10px;font-size:10px}.report-actions ol,.report-actions ul{margin:0;padding-left:20px;font-size:14px;line-height:1.9}.reassure{background:#d9ff5259;border-left:3px solid #9db83a;margin-top:26px;padding:12px 16px;font-size:14px}.report-footer{opacity:.5;margin-top:20px;font-size:11px;line-height:1.5}.timeline-section{background:var(--cream);padding:70px 5vw 90px}.timeline-section h2{letter-spacing:-.05em;text-transform:uppercase;margin:14px 0 24px;font-size:clamp(40px,4.5vw,72px)}.reminder-banner{background:#e2b93b40;border-left:3px solid #a07d1c;margin:0 0 24px;padding:14px 20px;font-size:14px;line-height:1.9;list-style:none}.timeline{max-width:760px;margin:0;padding:0;list-style:none}.timeline li{border-bottom:1px solid #10251d33;align-items:center;gap:16px;padding:16px 6px;font-size:14px;display:flex}.tl-dot{border-radius:50%;flex:none;width:14px;height:14px}.tl-dot.risk-bg-low{background:#4c7a3f}.tl-dot.risk-bg-medium{background:#e2b93b}.tl-dot.risk-bg-high{background:#c2542e}.tl-dot.risk-bg-critical{background:#b3261e}.tl-dot.risk-bg-unknown{background:#999}.timeline b{width:64px;font-weight:800}.tl-date{opacity:.7}.tl-count{opacity:.55}.tl-time{opacity:.6;margin-left:6px;font-size:.9em;font-style:normal}.tl-pairs{color:#c2542e;font-size:.9em;font-weight:700}.tl-delta{margin-left:4px;font-style:normal;font-weight:800}.tl-delta.up{color:#c2542e}.tl-delta.down{color:#4c7a3f}.tl-trend{font-style:normal;font-weight:700}.tl-trend.good{color:#4c7a3f}.tl-trend.bad{color:#c2542e}@media (max-width:800px){.report-grid,.report-actions{grid-template-columns:1fr}.report-card{padding:22px 18px}}@media (min-width:801px) and (max-width:1100px){.report-grid{grid-template-columns:1fr;gap:18px}.radar-box{max-width:420px}}@media print{.nav,.scan-top,.scan-workbench,.scan-sub,.assistant-section,.household-archive,.timeline-section,.gen-report-btn,footer,.app-topbar,.app-tabbar{display:none!important}body{background:#fff}.report-card{border:1px solid #333;box-shadow:none!important}}.app-shell{isolation:isolate;background:var(--cream);max-width:520px;min-height:100svh;margin:0 auto;position:relative;overflow-x:hidden}.app-shell:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(120% 80% at 12% -8%, #6fa8604d 0%, #6fa86000 55%),radial-gradient(110% 70% at 92% 6%, #d86a3d38 0%, #d86a3d00 52%),radial-gradient(130% 90% at 50% 110%, #6fa8602e 0%, #6fa86000 60%),var(--cream);max-width:520px;margin:0 auto;position:fixed;inset:0}.app-shell:after{content:"";z-index:0;pointer-events:none;background:radial-gradient(150% 110% at 50% 42%,#0000 0%,#f2f0eb6b 100%);max-width:520px;margin:0 auto;position:fixed;inset:0}.app-shell .grain{pointer-events:none;opacity:.12;z-index:0;mix-blend-mode:multiply;background-image:radial-gradient(#1e3d2f1f .7px,#0000 .7px);background-size:7px 7px;position:fixed;inset:0}.app-topbar{z-index:20;height:calc(var(--topbar-h) + var(--safe-top));padding-top:var(--safe-top);-webkit-backdrop-filter:blur(16px)saturate(1.1);border-bottom:1px solid var(--line);background:#f2f0ebb8;justify-content:space-between;align-items:center;padding-inline:16px;display:flex;position:sticky;top:0}.app-brand{letter-spacing:.02em;color:var(--ink);align-items:center;gap:8px;font-size:15px;font-weight:800;display:flex}.app-brand i{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:11px;font-style:normal;font-weight:600}.brand-dot{background:var(--green);border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 3px #6fa86040}.lang-chip{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;min-height:34px;padding:7px 13px;font-size:12px;font-weight:700}.app-body{z-index:1;padding:16px 16px calc(var(--tabbar-h) + var(--safe-bottom) + 56px);position:relative}.app-tabbar{z-index:40;width:100%;max-width:520px;height:calc(var(--tabbar-h) + var(--safe-bottom));padding-bottom:var(--safe-bottom);-webkit-backdrop-filter:blur(18px)saturate(1.15);border-top:1px solid var(--line);background:#fffdf6c7;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 28px #1e3d2f1a}.app-tabbar .tab{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:56px;font-size:11px;font-weight:700;text-decoration:none;display:flex;position:relative}.app-tabbar .tab svg{opacity:.7}.app-tabbar .tab.is-active{color:var(--ink)}.app-tabbar .tab.is-active svg{opacity:1;color:var(--green)}.app-tabbar .tab.is-active:before{content:"";z-index:-1;background:#6fa86029;border-radius:12px;width:34px;height:34px;position:absolute;top:8px}.home-hero{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:24px;overflow:hidden}.hero-media{aspect-ratio:16/10;position:relative;overflow:hidden}.hero-media img{object-fit:cover;width:100%;height:100%;display:block}.hero-badge{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--ink);background:#fffdf6e6;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:700;position:absolute;top:12px;left:12px}.home-hero .hero-copy{text-align:left;width:auto;max-width:100%;margin:0;padding:18px 18px 20px}.home-hero .hero-copy h1{letter-spacing:-.02em;overflow-wrap:break-word;word-break:break-word;margin:0 0 8px;font-size:clamp(21px,6.4vw,26px);font-weight:900;line-height:1.18}.home-hero .hero-copy p{color:#4a5a4f;overflow-wrap:break-word;margin:0 0 16px;font-size:14px;line-height:1.55}.hero-cta{text-align:center;background:var(--ink);color:var(--paper);border-radius:999px;padding:14px;font-size:15px;font-weight:800;display:block;box-shadow:0 10px 22px #1e3d2f33}.hero-cta:active{transform:scale(.98)}.cap-strip{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:8px;margin:0 -16px;padding:16px 0 6px;padding-inline:16px;display:flex;overflow-x:auto}.cap-strip::-webkit-scrollbar{display:none}.cap-chip{scroll-snap-align:start;background:var(--paper);border:1px solid var(--line);color:#3a4a40;border-radius:999px;flex:none;padding:8px 13px;font-size:12.5px;font-weight:600}.home-section{margin-top:22px}.sec-head{justify-content:space-between;align-items:baseline;margin-bottom:12px;display:flex}.sec-head h2{letter-spacing:-.01em;margin:0;font-size:19px;font-weight:800}.sec-head span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:11px}.guide-list,.rule-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.guide-card{text-align:left;background:var(--paper);border:1px solid var(--line);width:100%;box-shadow:var(--shadow-sm);transition:transform .18s var(--ease),border-color .18s;border-radius:18px;align-items:center;gap:12px;padding:10px;display:flex}.guide-card:active{transform:scale(.99)}.guide-card.is-open{border-color:var(--green);box-shadow:0 14px 30px #6fa8602e}.guide-thumb{background:#efeadd;border-radius:14px;flex:none;width:66px;height:66px;overflow:hidden}.guide-thumb img{object-fit:cover;width:100%;height:100%}.guide-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.guide-top{color:var(--muted);letter-spacing:.1em;gap:8px;font-size:10.5px;display:flex}.guide-top i{font-style:normal}.guide-main>b{font-size:16px;font-weight:800}.guide-risk{letter-spacing:.06em;text-transform:uppercase;border-radius:6px;align-self:flex-start;margin-top:2px;padding:2px 8px;font-size:10.5px;font-weight:800}.guide-risk.risk-high{color:#b8501f;background:#d86a3d29}.guide-risk.risk-low{color:#4c7a3f;background:#6fa8602e}.guide-note{color:#4a5a4f;margin-top:6px;font-size:13px;line-height:1.5}.guide-arrow{border:1px solid var(--line);width:28px;height:28px;color:var(--muted);border-radius:50%;flex:none;align-self:flex-start;place-items:center;font-size:18px;display:grid}.rule-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;align-items:flex-start;gap:14px;padding:14px;display:flex}.rule-no{color:var(--green);flex:none;width:26px;font-size:13px;font-weight:900}.rule-card b{margin-bottom:3px;font-size:15px;display:block}.rule-card p{color:#4a5a4f;margin:0;font-size:13px;line-height:1.5}.scan-cta-card{background:var(--ink);color:var(--paper);border-radius:20px;justify-content:space-between;align-items:center;gap:14px;margin-top:22px;padding:18px;display:flex}.scan-cta-card b{font-size:17px}.scan-cta-card p{color:#fffdf6cc;margin:5px 0 0;font-size:12.5px;line-height:1.5}.scan-cta-card span{background:var(--lime);width:40px;height:40px;color:var(--ink);border-radius:50%;flex:none;place-items:center;font-size:20px;font-weight:800;display:grid}.app-shell .scan-page{background:0 0;padding:0}.app-shell .scan-top{padding:8px 0 4px;display:block}.app-shell .scan-top h1{letter-spacing:-.02em;margin:6px 0;font-size:24px;line-height:1.12}.app-shell .scan-status{font-size:11px}.app-shell .scan-workbench{grid-template-columns:none;gap:0;padding:12px 0;display:block}.app-shell .scan-upload{width:100%;max-width:none}.app-shell .drop-zone{aspect-ratio:4/3;width:100%;max-width:none;min-height:220px;max-height:none}.app-shell .scan-placeholder{min-height:0;color:var(--ink);box-shadow:none;padding:18px;background:0 0;border:0;border-radius:0;margin-top:14px;padding:18px 4px}.app-shell .scan-placeholder h3{letter-spacing:-.01em;text-transform:none;margin:0 0 10px;font-size:15px;font-weight:800}.app-shell .scan-placeholder ul{color:var(--muted);margin:0;padding-left:18px;font-size:13px;line-height:1.8}.app-shell .scan-result{box-shadow:none;background:0 0;border:0;border-radius:0;margin-top:14px;padding:16px 4px}.app-shell .risk-badge{letter-spacing:.02em;border-radius:999px;padding:5px 12px;font-size:11px;font-weight:800;display:inline-flex}.app-shell .upload-card{box-shadow:none;text-align:center;background:0 0;border:0;border-radius:0;flex-direction:column;align-items:center;padding:28px 4px;display:flex}.app-shell .upload-icon{width:64px;height:64px;color:var(--green);background:#6fa86024;border-radius:20px;place-items:center;margin-bottom:14px;display:grid}.app-shell .upload-card h3{letter-spacing:-.01em;color:var(--ink);margin:0 0 6px;font-size:17px;font-weight:800}.app-shell .upload-card p{color:var(--muted);max-width:260px;margin:0 0 18px;font-size:13px;line-height:1.5}.app-shell .upload-cta{background:var(--green);color:#fff;border:0;border-radius:14px;min-width:180px;padding:14px 28px;font-size:15px;font-weight:800;box-shadow:0 10px 22px #6fa86047}.app-shell .upload-cta:active{transform:scale(.97)}.app-shell .preview-frame{width:100%;box-shadow:none;background:#1e3d2f0a;border:0;border-radius:16px;padding:0;display:block;position:relative;overflow:hidden}.app-shell .preview-frame img{object-fit:cover;width:100%;max-height:360px;display:block}.app-shell .preview-change{color:#fff;background:#1e3d2fb8;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;position:absolute;bottom:10px;right:10px}.app-shell .scan-actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.app-shell .analyze-btn{white-space:nowrap;background:var(--ink);color:var(--paper);border:0;border-radius:14px;flex:1;padding:14px;font-size:15px;font-weight:800;box-shadow:0 10px 22px #1e3d2f33}.app-shell .analyze-btn:active{transform:scale(.98)}.app-shell .save-btn{white-space:nowrap;border:1px solid var(--green);color:var(--green);background:#6fa8601f;border-radius:14px;flex:none;padding:14px 18px;font-size:14px;font-weight:800;text-decoration:none;display:inline-block}.app-shell .analyze-btn:disabled{background:var(--paper);color:var(--muted);border:1px solid var(--line);box-shadow:none}.app-shell .assistant-section h2,.app-shell .report-section h2,.app-shell .timeline-section h2{letter-spacing:-.01em;text-transform:none;margin:0 0 8px;font-size:18px;font-weight:800;line-height:1.2}.app-shell .report-section h2,.app-shell .timeline-section h2{font-size:16px}.app-shell .household-archive ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.app-shell .household-archive li{box-shadow:none;background:#1e3d2f0a;border:0;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.app-shell .household-archive li>span{color:var(--ink);font-size:14px;font-weight:600}.app-shell .household-archive li button{color:var(--warn);background:0 0;border:0;min-height:auto;padding:6px 8px;font-size:12.5px;font-weight:700}.app-shell .household-archive li button:active{opacity:.6}.app-shell .analyze-btn:disabled{color:var(--muted);border:1px dashed var(--line);box-shadow:none;background:0 0;min-height:44px;font-size:13px;font-weight:600}.app-shell .timeline{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.app-shell .timeline li{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:14px;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:11px 13px;display:flex}.app-shell .timeline .tl-dot{border-radius:50%;flex:none;width:9px;height:9px}.app-shell .timeline b{letter-spacing:0;color:#fff;background:var(--green);border-radius:999px;padding:3px 9px;font-size:11px;font-weight:800}.app-shell .timeline b.risk-high,.app-shell .timeline b.risk-critical{background:var(--warn)}.app-shell .timeline b.risk-medium{background:#c9922f}.app-shell .timeline .tl-date{color:var(--ink);font-size:12.5px;font-weight:600}.app-shell .timeline .tl-time{color:var(--muted);margin-left:5px;font-size:11.5px;font-style:normal;font-weight:400}.app-shell .timeline .tl-pairs{color:var(--warn);flex:none;font-size:11.5px;font-weight:700}.app-shell .timeline .tl-count{color:var(--muted);flex:none;margin-left:auto;font-size:12px}.app-shell .timeline .tl-delta{margin-left:4px;font-style:normal;font-weight:800}.app-shell .timeline .tl-delta.up{color:var(--warn)}.app-shell .timeline .tl-delta.down{color:var(--green)}.app-shell .scan-sub{color:var(--muted);padding:0 0 8px;font-size:12.5px;line-height:1.5}.app-shell .assistant-section,.app-shell .household-archive,.app-shell .report-section,.app-shell .timeline-section{color:var(--ink);background:0 0;padding:22px 0}.app-shell .scan-foot{color:var(--muted);border-top:1px solid var(--line);margin-top:20px;padding:16px 0 4px;font-size:11px}.app-shell footer.scan-foot{color:var(--muted);background:0 0;padding:16px 0 4px;display:block}.app-shell footer.scan-foot p{opacity:1;text-transform:none;letter-spacing:0;color:var(--muted);font-size:11px;line-height:1.5}.app-shell .assistant-hint,.assist-panel .assistant-hint{opacity:1;color:var(--muted);max-width:none;margin:0 0 12px;font-size:13px;line-height:1.6}.app-shell .ask-bar,.assist-panel .ask-bar{flex-wrap:nowrap;gap:10px;margin:0 0 14px;display:flex}.app-shell .ask-bar input,.assist-panel .ask-bar input{border:1px solid var(--line);background:var(--paper);min-width:0;color:var(--ink);border-radius:12px;flex:1;padding:12px 14px;font-size:14px}.app-shell .ask-bar input:focus,.assist-panel .ask-bar input:focus{border-color:var(--green);outline:none}.app-shell .ask-btn,.assist-panel .ask-btn{background:var(--green);color:#fff;letter-spacing:0;border:0;border-radius:12px;flex:none;padding:12px 18px;font-size:14px;font-weight:700}.app-shell .ask-btn:disabled,.assist-panel .ask-btn:disabled{opacity:.4}.app-shell .ask-bubble,.assist-panel .ask-bubble{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--green);color:var(--ink);border-radius:12px;max-width:none;padding:14px 16px;font-size:14px;line-height:1.7}.app-shell .speak-btn,.assist-panel .speak-btn{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:10px}.app-shell .speak-btn:hover,.assist-panel .speak-btn:hover{border-color:var(--green);color:var(--green)}.app-shell .mic-btn,.assist-panel .mic-btn{border:1px solid var(--green);color:var(--green);background:#6fa8601f;border-radius:12px;flex:none;align-items:center;gap:7px;padding:12px 14px;font-size:13px;font-weight:700;display:inline-flex}.app-shell .mic-btn i,.assist-panel .mic-btn i{background:var(--green);border-radius:50%;width:8px;height:8px}.app-shell .mic-btn.listening,.assist-panel .mic-btn.listening{background:var(--warn);border-color:var(--warn);color:#fff}.app-shell .mic-btn.listening i,.assist-panel .mic-btn.listening i{background:#fff;animation:1s infinite pulse}@keyframes pulse{50%{opacity:.5}}.app-shell .chip-rows,.assist-panel .chip-rows{flex-direction:column;gap:10px;margin:0 0 6px;display:flex}.app-shell .chip-group,.assist-panel .chip-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.app-shell .chip-group em,.assist-panel .chip-group em{color:var(--muted);letter-spacing:.04em;font-size:11px;font-style:normal;font-weight:700}.app-shell .chip-group button,.assist-panel .chip-group button{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;padding:7px 13px;font-size:12.5px;font-weight:600}.app-shell .chip-group button:active,.assist-panel .chip-group button:active{border-color:var(--green);background:#6fa8601f}.app-shell .related-box,.assist-panel .related-box{background:var(--paper);border:1px solid var(--line);border-radius:14px;margin-top:12px;padding:12px 14px}.app-shell .related-box h4,.assist-panel .related-box h4{margin:0 0 8px;font-size:13px;font-weight:800}.app-shell .related-box ul,.assist-panel .related-box ul{flex-direction:column;gap:6px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}@media (max-width:560px){.app-shell .report-grid,.app-shell .report-actions{grid-template-columns:1fr;gap:18px}}.page-head{border-bottom:0;margin-bottom:10px;padding:6px 0 14px}.page-head h1{letter-spacing:-.02em;margin:0 0 6px;font-size:24px;font-weight:900}.page-head p{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.page-head .scan-status{color:#3d6b33;background:#6fa86024;border-radius:999px;align-items:center;gap:6px;margin-top:10px;padding:5px 11px;font-size:11px;font-weight:700;display:inline-flex}.page-head .scan-status:before{content:"";background:var(--green);border-radius:50%;width:7px;height:7px}.page-head .scan-status.status-loading,.page-head .scan-status.status-booting{color:#8a5a1e;background:#d6984a29}.page-head .scan-status.status-loading:before,.page-head .scan-status.status-booting:before{background:#d6984a}.scan-status-bar{margin:2px 0 16px}.scan-status{color:#3d6b33;background:#6fa86024;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:11px;font-weight:700;display:inline-flex}.scan-status:before{content:"";background:var(--green);border-radius:50%;width:7px;height:7px}.scan-status.status-loading,.scan-status.status-booting{color:#8a5a1e;background:#d6984a29}.scan-status.status-loading:before,.scan-status.status-booting:before{background:#d6984a}.app-shell .arc{flex-direction:column;gap:18px;display:flex}.risk-bg-critical{color:#fff;background:#c0301c}.risk-bg-high{color:#fff;background:#e0721f}.risk-bg-medium{color:#3a2c08;background:#d6a53a}.risk-bg-low{color:#fff;background:#6fa860}.risk-bg-unknown{color:#fff;background:#9aa093}.risk-bd-critical,.risk-bd-high,.risk-bd-medium,.risk-bd-low,.risk-bd-unknown{border-color:#0000}.risk-tag{letter-spacing:.06em;white-space:nowrap;border-radius:5px;padding:2px 7px;font-size:9.5px;font-weight:800}.arc-stats{align-items:baseline;gap:20px;padding:6px 2px 2px;display:flex}.arc-stat{box-shadow:none;background:0 0;border:0;border-radius:0;flex-direction:column;align-items:center;gap:2px;padding:4px 2px;display:flex}.arc-stat b{color:var(--ink);font-size:22px;font-weight:900;line-height:1}.arc-stat span{color:var(--muted);font-size:10px;font-weight:600}.arc-stat-total b{color:var(--ink)}.arc-stat-total span{color:var(--muted)}button.arc-stat{cursor:pointer;transition:all .18s}button.arc-stat:active{transform:scale(.96)}button.arc-stat.on{box-shadow:inset 0 -2px 0 var(--ink)}.arc-stat-critical b{color:#c0301c}.arc-stat-high b{color:#e0721f}.arc-stat-medium b{color:#b8861f}.arc-stat-low b{color:#4a7c34}.arc-top{margin-top:4px}.arc-top h3{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:11px;font-weight:800}.arc-top-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.arc-top-list li{background:var(--paper);border:1px solid var(--line);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:12px;align-items:center;gap:9px;padding:11px 13px;display:flex}.arc-top-list li:active{transform:scale(.99)}.arc-top-list li span{color:var(--ink);flex:1;font-size:14px;font-weight:700}.arc-top-list li em{color:var(--muted);font-size:11px;font-style:normal;font-weight:700}.arc-tools{flex-direction:column;gap:10px;display:flex}.arc-search{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);box-shadow:var(--shadow-sm);border-radius:12px;padding:11px 14px;font-size:14px}.arc-search:focus{border-color:var(--green);outline:none}.arc-sort{gap:7px;display:flex}.arc-sort button{border:1px solid var(--line);background:var(--paper);color:var(--muted);cursor:pointer;border-radius:10px;flex:1;padding:8px;font-size:12px;font-weight:600;transition:all .15s}.arc-sort button.on{background:var(--ink);color:var(--cream);border-color:var(--ink)}.arc-items-title{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:2px 0 -4px;font-size:12px;font-weight:800}.arc-waterfall{columns:2;column-gap:10px}.arc-wf-card{break-inside:avoid;background:var(--paper);width:100%;box-shadow:var(--shadow-sm);text-align:left;cursor:pointer;-webkit-appearance:none;font:inherit;color:inherit;border:0;border-radius:16px;margin:0 0 10px;padding:0;transition:transform .15s,box-shadow .15s;display:block;overflow:hidden}.arc-wf-card:active{transform:scale(.98)}.arc-wf-media{aspect-ratio:3/4;background:#edeae2;width:100%;position:relative;overflow:hidden}.arc-wf-media img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.arc-wf-initial{color:#c3bfb4;place-items:center;font-size:40px;font-weight:900;display:grid;position:absolute;inset:0}.risk-dot-mini{vertical-align:middle;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.app-shell .page-head{display:none}.app-shell .scan-page .page-head,.app-shell .phone-mix .page-head{display:block}@media (min-width:801px){.app-shell .page-head{display:block}.app-shell:before,.app-shell:after{max-width:none}}.arc-secondary{border-top:1px solid var(--line);flex-direction:column;gap:16px;margin-top:22px;padding-top:18px;display:flex}.arc-wf-tag{-webkit-backdrop-filter:blur(12px)saturate(1.4);text-shadow:0 1px 3px #0000004d;border:1px solid #ffffff73;border-radius:100px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:8px;left:8px;box-shadow:0 3px 12px #00000024;color:#fff!important;background:#ffffff47!important}.arc-wf-body{-webkit-backdrop-filter:blur(3px);background:linear-gradient(#0000,#141e1814 20%,#141e186b 55%,#141e18b8);flex-direction:column;gap:2px;padding:26px 12px 11px;display:flex;position:absolute;bottom:0;left:0;right:0}.arc-wf-title{color:#fff;overflow-wrap:break-word;text-shadow:0 1px 4px #00000080;font-size:14px;font-weight:800;line-height:1.3}.arc-wf-cat{color:#fffffff0;text-shadow:0 1px 3px #00000073;font-size:11.5px;font-weight:600}.arc-wf-date{color:#ffffffd9;text-shadow:0 1px 3px #00000073;font-size:11px}.arc-sheet-mask{z-index:60;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#141e186b;justify-content:center;align-items:flex-end;animation:.18s arcMaskIn;display:flex;position:fixed;inset:0}@keyframes arcMaskIn{0%{opacity:0}to{opacity:1}}.arc-sheet{background:var(--paper);width:100%;max-width:520px;max-height:82vh;padding:10px 16px calc(20px + var(--safe-bottom));border-radius:22px 22px 0 0;animation:.26s cubic-bezier(.22,1,.36,1) arcSheetIn;overflow-y:auto;box-shadow:0 -14px 40px #1e3d2f38}@keyframes arcSheetIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}.arc-sheet-handle{background:#1e3d2f33;border-radius:999px;width:40px;height:4px;margin:2px auto 14px}.arc-sheet-head{align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.arc-sheet-thumb{color:#fff;border-radius:14px;flex:none;place-items:center;width:64px;height:64px;font-size:26px;font-weight:900;display:grid;overflow:hidden}.arc-sheet-thumb img{object-fit:cover;width:100%;height:100%}.arc-sheet-title{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.arc-sheet-title b{color:var(--ink);font-size:18px;font-weight:900;line-height:1.2}.arc-sheet-meta{color:var(--muted);font-size:12px;font-weight:600}.arc-sheet-title .risk-tag{align-self:flex-start}.arc-sheet-close{width:30px;height:30px;color:var(--ink);cursor:pointer;background:#1e3d2f14;border:0;border-radius:50%;flex:none;font-size:14px}.arc-sheet-body{flex-direction:column;gap:14px;display:flex}.arc-sheet-summary{color:var(--ink);background:#6fa8601a;border-radius:10px;margin:0;padding:10px 12px;font-size:14px;line-height:1.6}@keyframes arcReveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.arc-detail-block h4{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 6px;font-size:10.5px;font-weight:800}.arc-detail-block ul{flex-direction:column;gap:5px;margin:0;padding-left:2px;list-style:none;display:flex}.arc-detail-block li{color:var(--ink);align-items:flex-start;gap:7px;font-size:13px;line-height:1.5;display:flex}.arc-detail-block.is-danger{background:#c0301c12;border-radius:10px;padding:10px 12px}.arc-detail-block.is-danger h4{color:#c0301c}.arc-detail-block.is-danger p{color:#c0301c;margin:0;font-size:13px;font-weight:700}.sev-mini{border-radius:4px;flex:none;margin-top:1px;padding:1px 6px;font-size:9px;font-weight:800}.sev-bg-critical{color:#fff;background:#c0301c}.sev-bg-high{color:#fff;background:#e0721f}.sev-bg-medium{color:#3a2c08;background:#d6a53a}.sev-bg-low{color:#fff;background:#6fa860}.sev-bg-unknown{color:#fff;background:#9aa093}.arc-remove{color:#c0301c;cursor:pointer;background:0 0;border:1px solid #c0301c66;border-radius:9px;align-self:flex-start;padding:7px 16px;font-size:12px;font-weight:700}.arc-remove:active{background:#c0301c1a}.arc-report-section{margin-top:6px}.arc-report-fold{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:16px;overflow:hidden}.arc-report-fold>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:16px;list-style:none;display:flex}.arc-report-fold>summary::-webkit-details-marker{display:none}.arc-report-title{color:var(--ink);font-size:15px;font-weight:800}.arc-report-cta{color:var(--green);font-size:12px;font-weight:700}.arc-report-fold[open]>summary{border-bottom:1px solid var(--line)}.arc-report-inner{padding:4px 6px 8px}.app-topbar-end{align-items:center;gap:8px;margin-left:auto;display:flex}.desk-root{background:var(--cream);height:100svh;min-height:100svh;color:var(--ink);flex-direction:column;display:flex;overflow:hidden}.desk-root .nav{color:var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);background:#fffdf6db;flex:none;height:64px;padding:0 24px}.desk-root .nav-right{align-items:center;gap:10px;display:flex}.desk-root .desk-risk-badge{letter-spacing:.04em;white-space:nowrap;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:800}.desk-root .desk-tool-btn{background:var(--ink);color:var(--paper);cursor:pointer;white-space:nowrap;border:0;border-radius:10px;padding:8px 14px;font-size:13px;font-weight:700}.desk-root .desk-tool-btn:disabled{opacity:.4;cursor:not-allowed}.desk-root .desk-tool-btn.ghost{background:var(--paper);color:var(--ink);border:1px solid var(--line)}.desk-root .desk-bench{flex-direction:column;flex:1;gap:12px;min-height:0;padding:12px 16px 14px;display:flex}.desk-root .desk-split{flex:1;grid-template-columns:58% 42%;gap:14px;min-height:0;display:grid}.desk-root .cross-hero{border:1px solid var(--line);background:var(--paper);height:auto;min-height:150px;box-shadow:var(--shadow-sm);border-radius:18px;flex:none;align-items:center;gap:22px;padding:12px 18px;display:flex;overflow:hidden}.desk-root .cross-hero.is-hot{background:linear-gradient(90deg,#c0301c1f,#fffdf6f2 42%);border-color:#c0301c}.desk-root .cross-hero.is-hot.sev-high{background:linear-gradient(90deg,#e0721f24,#fffdf6f2 42%);border-color:#e0721f}.desk-root .cross-hero.is-clear{background:linear-gradient(90deg,#6fa86029,var(--paper) 50%);border-color:var(--green)}.desk-root .cross-hero-ok{background:var(--green);color:#fff;border-radius:50%;flex:none;place-items:center;width:48px;height:48px;font-size:24px;font-weight:800;display:grid}.desk-root .cross-hero.is-clear b{font-size:20px;font-weight:900;display:block}.desk-root .cross-hero.is-clear p{color:var(--muted);max-width:62ch;margin:4px 0 0;font-size:13px}.desk-root .cross-hero-pair{flex:none;align-items:center;gap:12px;display:flex}.desk-root .hero-thumb{flex-direction:column;gap:4px;width:92px;display:flex}.desk-root .hero-thumb img,.desk-root .hero-thumb-fallback{object-fit:cover;border:2px solid #fff;border-radius:12px;width:92px;height:110px;display:block;box-shadow:0 8px 18px #1e3d2f2e}.desk-root .hero-thumb-fallback{color:#fff;background:#c0301c;place-items:center;font-size:32px;font-weight:900;display:grid}.desk-root .hero-thumb b{text-align:center;max-height:2.6em;font-size:11px;font-weight:800;line-height:1.25;overflow:hidden}.desk-root .hero-thumb.is-text{text-align:center;background:#c0301c1a;border-radius:12px;place-items:center;width:120px;height:110px;padding:8px;display:grid}.desk-root .cross-hero-x{color:#c0301c;flex:none;font-size:42px;font-weight:900;line-height:1}.desk-root .cross-hero-copy{flex:1;min-width:0}.desk-root .cross-hero-copy em{color:#fff;letter-spacing:.12em;background:#c0301c;border-radius:6px;margin-bottom:6px;padding:3px 10px;font-size:13px;font-style:normal;font-weight:800;display:inline-block}.desk-root .cross-hero-copy b{font-size:20px;font-weight:900;line-height:1.25;display:block}.desk-root .cross-hero-action{color:#c0301c;margin:8px 0 4px;font-size:16px;font-weight:800}.desk-root .cross-hero-copy ul{color:var(--muted);gap:14px;margin:0;padding:0;font-size:12.5px;font-weight:700;list-style:none;display:flex}.desk-root .cross-hero-copy ul li:before{content:"· ";color:#c0301c}.desk-root .desk-left,.desk-root .desk-right{background:0 0;min-height:0;overflow:auto}.desk-root .arc.is-desk{gap:10px}.desk-root .arc.is-desk .arc-stats{order:1}.desk-root .arc.is-desk .arc-stat{padding:8px 4px}.desk-root .arc.is-desk .arc-stat b{font-size:18px}.desk-root .arc.is-desk .arc-secondary{border-top:0;order:2;gap:8px;margin-top:0;padding-top:0}.desk-root .arc.is-desk .arc-tools{flex-direction:row;align-items:center;gap:8px}.desk-root .arc.is-desk .arc-search{flex:1;padding:8px 12px}.desk-root .arc.is-desk .arc-sort{flex:none;width:auto}.desk-root .arc.is-desk .arc-sort button{flex:none;padding:8px 12px}.desk-root .arc.is-desk .arc-top{display:none}.desk-root .arc.is-desk .arc-waterfall{columns:3;order:3;column-gap:10px}.desk-root .cross-hero-copy b{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.desk-root .arc-wf-card.is-pair{animation:1.6s ease-in-out infinite pairPulse;box-shadow:0 0 0 2px #c0301c,0 10px 22px #c0301c47}@keyframes pairPulse{0%,to{box-shadow:0 0 0 2px #c0301c,0 8px 18px #c0301c33}50%{box-shadow:0 0 0 4px #c0301c,0 12px 26px #c0301c61}}.desk-root .arc-sheet-mask.is-desk{align-items:center}.desk-root .arc-sheet-mask.is-desk .arc-sheet{border-radius:18px;max-width:480px;max-height:80vh;animation:none}.desk-root .desk-right .report-section,.desk-root .desk-right .timeline-section{background:0 0;padding:0 8px 18px}.desk-root .desk-right .report-card{margin-top:0}.desk-root .desk-right .report-section h2,.desk-root .desk-right .timeline-section h2{font-size:15px}@media print{.desk-root .nav,.desk-root .desk-tool-btn,.desk-root .desk-left,.desk-root .lang-toggle{display:none!important}.desk-root,.desk-root .desk-bench{height:auto;overflow:visible}.desk-root .desk-split{display:block}.desk-root .cross-hero{break-inside:avoid;height:auto}}.edition-links{align-items:center;gap:18px;display:flex}.edition-links a{letter-spacing:.14em;text-transform:uppercase;opacity:.7;font-size:10px}.app-shell .phone-mix .page-head{display:block}.phone-mix-stage{flex-direction:column;align-items:stretch;gap:8px;margin:4px 0 14px;display:flex}.phone-mix-x{color:var(--coral);align-self:center;font-size:22px;font-weight:900;line-height:1}.phone-mix-slot{border:1px dashed var(--line);background:var(--paper);border-radius:16px;align-items:center;gap:12px;min-height:72px;padding:10px 12px;display:flex}.phone-mix-slot.is-filled{box-shadow:var(--shadow-sm);border-style:solid}.phone-mix-slot img,.phone-mix-fallback{object-fit:cover;background:#edeae2;border-radius:12px;flex:none;width:52px;height:52px}.phone-mix-fallback{color:#c3bfb4;place-items:center;font-size:20px;font-weight:900;display:grid}.phone-mix-slot>span{text-align:center;width:100%;color:var(--muted);font-size:13px;font-weight:700}.phone-mix-slot b{font-size:14px;font-weight:800;display:block}.phone-mix-slot i{color:var(--muted);font-size:11px;font-style:normal;font-weight:700}.phone-mix-slot button{border:1px solid var(--line);background:0 0;border-radius:999px;margin-left:auto;padding:6px 10px;font-size:11px;font-weight:700}.phone-mix-btn{background:var(--ink);width:100%;color:var(--paper);border:0;border-radius:999px;padding:14px;font-size:15px;font-weight:800;box-shadow:0 10px 22px #1e3d2f33}.phone-mix-btn:disabled{opacity:.4}.phone-mix-outcome{border:1px solid var(--line);background:var(--paper);border-radius:18px;margin:14px 0 8px;padding:16px}.phone-mix-outcome.is-hot{background:linear-gradient(180deg,#c0301c24,var(--paper) 48%);border-color:#c0301c}.phone-mix-outcome em{color:#fff;letter-spacing:.12em;background:#c0301c;border-radius:6px;margin-bottom:8px;padding:3px 10px;font-size:11px;font-style:normal;font-weight:800;display:inline-block}.phone-mix-outcome b{margin-bottom:6px;font-size:18px;font-weight:900;line-height:1.3;display:block}.phone-mix-outcome p{color:#4a5a4f;margin:0 0 8px;font-size:13px;line-height:1.55}.phone-mix-outcome ul{color:var(--ink);margin:0;padding:0;font-size:13px;font-weight:700;list-style:none}.phone-mix-outcome ul li{padding:4px 0}.phone-mix-outcome ul li:before{content:"· ";color:#c0301c}.phone-mix-outcome.is-clear{background:linear-gradient(180deg,#6fa86029,var(--paper) 55%);border-color:var(--green)}.phone-mix-outcome.is-unknown{background:linear-gradient(180deg,#e2b93b38,var(--paper) 55%);border-color:#c9a227}.phone-mix-outcome.is-unknown em{background:#c9a227}.phone-mix-tray{margin-top:18px}.phone-mix-tray h2{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:13px}.phone-mix-tray ul{-webkit-overflow-scrolling:touch;gap:10px;margin:0 -16px;padding:0 16px;list-style:none;display:flex;overflow-x:auto}.phone-mix-tray ul::-webkit-scrollbar{display:none}.phone-mix-chip{border:1px solid var(--line);background:var(--paper);text-align:left;border-radius:14px;flex-direction:column;flex:none;gap:6px;width:92px;padding:6px;display:flex}.phone-mix-chip img,.phone-mix-chip span{object-fit:cover;color:#c3bfb4;background:#edeae2;border-radius:10px;place-items:center;width:100%;height:72px;font-weight:900;display:grid}.phone-mix-chip b{font-size:12px;font-weight:800;line-height:1.3}.phone-mix-chip.is-on{outline:2px solid var(--ink)}.mix-empty{color:var(--muted);font-size:13px}.mix-empty a{color:var(--ink);font-weight:800}.hero-cta-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hero-tour{border:1px solid var(--ink);color:var(--ink);cursor:pointer;background:0 0;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:800}.hero-tour:active{transform:scale(.97)}.daily-tip{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:18px;margin:14px 0 4px;padding:14px 16px}.daily-tip-k{letter-spacing:.12em;text-transform:uppercase;color:var(--green);margin-bottom:6px;font-size:11px;font-weight:800}.daily-tip b{color:var(--ink);margin:0 0 6px;font-size:16px;line-height:1.35;display:block}.daily-tip p{color:#3d4a42;margin:0 0 8px;font-size:13px;line-height:1.55}.daily-tip-note{color:var(--muted);font-size:11px;font-weight:700}.profile-wrap{margin:8px 0 12px}.profile-bar{text-align:left;cursor:pointer;width:100%;box-shadow:none;background:#1e3d2f0d;border:0;border-radius:12px;align-items:center;gap:8px;padding:10px 12px;display:flex}.profile-bar-k{letter-spacing:.08em;color:var(--green);flex:none;font-size:11px;font-weight:800}.profile-bar-v{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;font-weight:700;overflow:hidden}.profile-bar-edit{color:var(--ink);font-size:12px;font-weight:800}.profile-mask{z-index:80;background:#14201a73;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.profile-sheet{background:var(--paper);width:min(520px,100%);padding:18px 16px calc(18px + var(--safe-bottom));color:var(--ink);border-radius:20px 20px 0 0}.profile-sheet header{align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.profile-sheet h3{margin:0 0 4px;font-size:18px;font-weight:900}.profile-sheet header p{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.profile-x{cursor:pointer;color:var(--ink);background:0 0;border:0;margin-left:auto;font-size:18px}.profile-chips{flex-wrap:wrap;gap:8px;display:flex}.profile-chip{border:1px solid var(--line);cursor:pointer;color:var(--ink);background:#fff;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700}.profile-chip.is-on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.profile-foot{color:var(--muted);margin:12px 0;font-size:12px;line-height:1.5}.profile-storage{border-top:1px dashed var(--line);margin-top:16px;padding-top:14px}.profile-storage h4{margin:0 0 4px;font-size:14px}.profile-storage-hint{color:var(--muted);margin:0 0 10px;font-size:11.5px}.storage-chip{align-items:center;gap:6px;display:inline-flex}.storage-state{border:1px solid;border-radius:100px;padding:1px 6px;font-size:10px;font-weight:800}.storage-chip.is-yes{background:var(--ink);color:var(--paper);border-color:var(--ink)}.storage-chip.is-no{color:#c0503f;background:#fbe9e5;border-color:#c0503f}.risk-band-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.risk-band{letter-spacing:.02em;border-radius:100px;padding:6px 14px;font-size:12px;font-weight:800;display:inline-block}.risk-score{font-family:ui-monospace,monospace;font-size:15px;font-weight:800}.score-note{color:var(--muted,#8d938f);margin:4px 0 10px;font-size:11px;font-style:italic}.ing-groups{margin-top:14px}.ing-groups h4{margin:0 0 8px;font-size:14px}.ing-group{border:1px solid var(--line);background:#fffdf8;border-radius:10px;margin-bottom:8px}.ing-group summary{cursor:pointer;justify-content:space-between;align-items:center;padding:10px 12px;font-size:13px;list-style:none;display:flex}.ing-group summary::-webkit-details-marker{display:none}.ing-count{color:var(--jade-d);font-family:ui-monospace,monospace;font-size:12px;font-weight:700}.ing-hook{color:var(--ink2);margin:4px 0;padding:0 12px;font-size:12px}.ing-items{color:var(--muted,#8d938f);margin:0;padding:0 12px 10px;font-size:11.5px}.suggest-block{background:var(--jade-l);border-radius:12px;margin-top:14px;padding:12px}.suggest-block h4{margin:0 0 10px;font-size:14px}.suggest-item{cursor:pointer;background:#fff;border:1px solid #1e3d2f14;border-radius:14px;align-items:flex-start;gap:10px;margin-bottom:8px;padding:10px 12px;display:flex;box-shadow:0 2px 8px #1e3d2f0a}.suggest-item.kind-critical{border-left:3px solid #c0503f}.suggest-item.kind-replace{border-left:3px solid #c8842f}.suggest-item.kind-reduce{border-left:3px solid #2f8f70}.suggest-check{width:16px;height:16px;accent-color:var(--jade,#2f8f70);flex-shrink:0;margin-top:3px}.suggest-body b{font-size:13px;display:block}.suggest-body p{color:var(--ink2);margin:2px 0;font-size:12px}.suggest-action{color:var(--jade-d);font-weight:600}.suggest-cta{background:var(--jade,#2f8f70);color:#fff;cursor:pointer;border:0;border-radius:12px;width:100%;margin-top:6px;padding:12px;font-size:14px;font-weight:700}.recent-box{background:0 0;border:0;border-radius:0;margin-top:14px;padding:12px 4px}.recent-label{letter-spacing:.08em;color:var(--muted,#8d938f);text-transform:uppercase;margin:0 0 8px;font-size:11px}.recent-list{flex-direction:column;gap:6px;list-style:none;display:flex}.recent-item{align-items:center;gap:8px;font-size:13px;display:flex}.recent-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.archive-diff{color:var(--jade-d);background:var(--jade-l);border-radius:100px;margin-top:6px;padding:5px 12px;font-size:12.5px;font-weight:700;display:inline-block}.profile-done{background:var(--green);color:#fff;border:0;border-radius:14px;width:100%;padding:12px;font-size:15px;font-weight:800}.profile-sheet{max-height:82vh;overflow-y:auto}.profile-autosave{font-weight:800;color:var(--green)!important;margin-top:6px!important;font-size:11px!important}.profile-dim{border:1px solid var(--line);background:#fffdf8;border-radius:14px;margin-bottom:10px}.profile-dim summary{cursor:pointer;align-items:center;gap:8px;padding:12px;font-size:14px;font-weight:800;list-style:none;display:flex}.profile-dim summary::-webkit-details-marker{display:none}.profile-dim summary:after{content:"▾";color:var(--muted);margin-left:auto;transition:transform .2s}.profile-dim[open] summary:after{transform:rotate(180deg)}.profile-dim-icon{flex:none}.profile-dim-name{color:var(--ink);flex:none}.profile-dim-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;font-weight:600;overflow:hidden}.profile-dim-badge{color:var(--green);background:#1e3d2f0f;border-radius:999px;flex:none;padding:2px 8px;font-family:ui-monospace,monospace;font-size:11px;font-weight:700}.profile-dim-body{padding:0 12px 12px}.profile-chip.is-custom{border-style:dashed}.profile-custom-row{gap:8px;margin-top:10px;display:flex}.profile-custom-row input{border:1px solid var(--line);min-width:0;color:var(--ink);background:#fff;border-radius:999px;flex:1;padding:8px 12px;font-size:13px}.profile-custom-row button{border:1px solid var(--ink);background:var(--ink);color:var(--paper);cursor:pointer;border-radius:999px;flex:none;padding:8px 14px;font-size:12px;font-weight:800}.profile-custom-row button:disabled{opacity:.4;cursor:default}.profile-custom-hint{color:var(--muted);margin:8px 0 0;font-size:11px;font-weight:700}.profile-hint{color:#6a2c16;background:#d86a3d1f;border:1px solid #d86a3d59;border-radius:12px;margin:8px 0 10px;padding:10px 12px;font-size:13px;font-weight:700;line-height:1.5}.mix-demo-card{background:linear-gradient(180deg,#c0301c1f,var(--paper) 60%);border:1px solid #c0301c;border-radius:16px;margin:0 0 14px;padding:14px 16px}.mix-demo-card em{color:#fff;letter-spacing:.08em;background:#c0301c;border-radius:6px;margin-bottom:8px;padding:3px 8px;font-size:11px;font-style:normal;font-weight:800;display:inline-block}.mix-demo-card b{color:var(--ink);margin-bottom:6px;font-size:16px;font-weight:900;line-height:1.3;display:block}.mix-demo-card p{color:#3d4a42;margin:0;font-size:13px;line-height:1.55}.tour-overlay{left:0;right:0;bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 8px);z-index:70;pointer-events:none;justify-content:center;padding:0 10px;display:flex;position:fixed}.tour-progress{z-index:71;background:#1e3d2f1f;height:3px;position:fixed;top:0;left:0;right:0}.tour-progress i{background:var(--green);width:0;height:100%;transition:width .2s linear;display:block}.tour-card{pointer-events:auto;background:var(--ink);width:min(500px,100%);color:var(--paper);box-shadow:var(--shadow-md);border-radius:16px;padding:12px 14px}.tour-meta{letter-spacing:.08em;opacity:.75;justify-content:space-between;margin-bottom:6px;font-size:11px;font-weight:800;display:flex}.tour-card p{color:var(--paper);margin:0 0 10px;font-size:14px;line-height:1.5}.tour-actions{justify-content:flex-end;display:flex}.tour-actions button{color:var(--paper);cursor:pointer;background:0 0;border:1px solid #fffdf659;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:800}[data-tour-hl]{z-index:5;border-radius:16px;position:relative;outline:2px solid var(--green)!important;box-shadow:0 0 0 6px #6fa86047!important}@media (prefers-reduced-motion:reduce){.tour-progress i{transition:none}}.brief-stats{grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0;display:grid}.brief-stat{background:var(--paper);border:1px solid var(--line);text-align:center;box-shadow:var(--shadow-sm);border-radius:14px;padding:14px 8px}.brief-stat b{color:var(--ink);font-size:26px;font-weight:900;line-height:1;display:block}.brief-stat span{color:var(--muted);margin-top:4px;font-size:11px;font-weight:600;display:block}.report-detail-fold{border-top:1px dashed var(--line);margin-top:14px}.report-detail-toggle{cursor:pointer;color:var(--jade-d,#2f8f70);justify-content:space-between;align-items:center;padding:14px 4px;font-size:14px;font-weight:700;list-style:none;display:flex}.report-detail-toggle::-webkit-details-marker{display:none}.toggle-arrow{transition:transform .2s}.report-detail-fold[open] .toggle-arrow{transform:rotate(180deg)}.report-detail-body{padding-top:8px}.hero-mascot{width:72px;height:72px;box-shadow:var(--shadow-sm);border-radius:20px;margin-bottom:12px;display:block}:root{--ink2:#43544a;--jade:#4f9d6a;--jade-d:#2f7d5b;--jade-l:#4f9d6a24}.rule-finding,.mix-pair,.xc-card,.desk-root .cross-hero{color:var(--ink)}.report-side{flex-direction:column;align-self:start;gap:18px;min-width:0;display:flex}.report-grid{align-items:start}.report-side .high-list{margin-bottom:0}.report-side .ing-groups{margin-top:0}.nav-links button{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;opacity:.68;background:0 0;border:none;padding:0;transition:all .2s}.nav-links button:hover{opacity:1}.assist-fab{z-index:1200;background:var(--green);color:#fff;cursor:pointer;border:none;border-radius:50%;width:58px;height:58px;font-size:21px;font-weight:800;transition:transform .15s,background .2s;position:fixed;bottom:26px;right:26px;box-shadow:0 10px 28px #10251d61}.assist-fab:hover{transform:scale(1.06)}.assist-fab.is-open{background:var(--ink)}.assist-panel{z-index:1200;background:var(--cream);width:min(400px,92vw);height:min(640px,76vh);color:var(--ink);border:1px solid var(--line);border-radius:18px;padding:14px 16px;position:fixed;bottom:96px;right:26px;overflow:hidden;box-shadow:0 18px 50px #10251d59}.assist-panel .assistant-section{color:var(--ink);background:0 0;padding:0}.assist-panel-head{justify-content:space-between;align-items:center;margin:0 0 10px;display:flex}.assist-panel-head b{color:var(--ink);font-size:15px;font-weight:800}.assist-close{border:1px solid var(--line);background:var(--paper);width:28px;height:28px;color:var(--ink);cursor:pointer;border-radius:50%;font-size:15px;line-height:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
