@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4f6667dd39116621-s.00az9qtie3ho1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/07935285219a259d-s.3j-a226dh71aj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/f58031ded4338640-s.2gwoz23eiro2t.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/77814b00d5ca94a4-s.0i3h3th1vs4m7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/605ce01b664af129-s.p.0zr6hhvz-h9nw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.UdeZcG_className{font-family:Geist,Geist Fallback;font-style:normal}.UdeZcG_variable{--font-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b0c6b664fd57c2c6-s.27spqqad3wyeo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6e342921ee4dcd9d-s.3f4zuumv8svu0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bb852295097cd96-s.34r5yzckw0h2s.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9eb5a876700c0028-s.2jyz_zw3a8jit.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2a04751c893bf294-s.30bdpjkrtcces.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/07a39a8a4660cc7c-s.p.1v5bejj26fx9h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}._1dHVEa_className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}._1dHVEa_variable{--font-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--bg:#fff;--bg-2:#fafafa;--fg:#171717;--muted:#666;--line:#eaeaea;--line-2:#d4d4d4;--ok:#0070f3;--err:#e5484d;--warn:#b7791f;--radius:12px;--nav:52px}@media (prefers-color-scheme:dark){:root{--bg:#000;--bg-2:#0a0a0a;--fg:#ededed;--muted:#a1a1a1;--line:#222;--line-2:#333;--ok:#3291ff;--warn:#f5a524}}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);font-family:var(--font-sans), system-ui, sans-serif;-webkit-font-smoothing:antialiased;margin:0}.container{max-width:1120px;margin:0 auto;padding:0 16px}.mono{font-family:var(--font-mono), ui-monospace, monospace;font-variant-numeric:tabular-nums}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.unit{color:var(--muted);font-size:11px}.hint{color:var(--muted);text-align:center;margin:0;font-size:14px}.warn{color:var(--warn);font-size:13px}.app{flex-direction:column;height:100dvh;display:flex}.nav{height:var(--nav);border-bottom:1px solid var(--line);flex:none}.nav-inner{justify-content:space-between;align-items:center;gap:12px;height:100%;display:flex}.logo{letter-spacing:-.02em;font-weight:600}.pill{color:var(--muted);border:1px solid var(--line);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;padding:4px 10px;font-size:12px;overflow:hidden}.stage{flex:1;width:100%;min-height:0;display:flex}.view{flex-direction:column;flex:1;gap:16px;min-width:0;min-height:0;padding:20px 0;animation:.25s both rise;display:flex}.view-head{text-align:center;flex:none}.view-head h1{letter-spacing:-.04em;margin:0 0 4px;font-size:clamp(1.4rem,3.2vw,2rem);font-weight:700}.view-head p{color:var(--muted);margin:0;font-size:14px}@keyframes rise{0%{opacity:0;transform:translateY(6px)}}.grid{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-height:0;display:grid}.slot{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-2);flex-direction:column;min-height:0;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.slot.bad{border-color:var(--err)}.slot:has(.drop:hover){border-color:var(--line-2)}.drop{cursor:pointer;flex:1;min-height:0;display:flex}.drop:focus-visible{outline:2px solid var(--ok);outline-offset:-2px}.media{background:var(--bg-2);flex:1;min-height:0;position:relative;overflow:hidden}.media img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.placeholder{color:var(--muted);text-align:center;background-image:radial-gradient(var(--line) 1px, transparent 1px);background-size:16px 16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:14px;display:flex;position:absolute;inset:0}.placeholder strong{color:var(--fg);font-weight:500}.plus{border:1px solid var(--line-2);width:40px;height:40px;color:var(--fg);background:var(--bg);border-radius:999px;place-items:center;font-size:20px;display:grid}.replace{color:#fff;opacity:0;pointer-events:none;background:#000000a6;border-radius:999px;padding:6px 12px;font-size:13px;transition:opacity .15s;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.drop:hover .replace,.drop:focus-visible .replace{opacity:1}@media (hover:none){.replace{opacity:1}}.caption{border-top:1px solid var(--line);background:var(--bg);flex:none;justify-content:space-between;align-items:center;gap:8px;padding:10px 16px;font-size:14px;display:flex}.badge.error{color:var(--err);padding-left:6px;font-size:12px}.link{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:4px;font-size:13px;text-decoration:underline}.link:hover{color:var(--fg)}.actions{flex:none;justify-items:center;gap:8px;display:grid}.actions.row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.btn{font:inherit;border:1px solid var(--line-2);background:var(--bg);height:36px;color:var(--fg);cursor:pointer;border-radius:6px;padding:0 14px;font-size:14px;font-weight:500;transition:background .15s,border-color .15s}.btn:hover:not(:disabled){background:var(--bg-2);border-color:var(--fg)}.btn:focus-visible{outline:2px solid var(--ok);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--fg);color:var(--bg);border-color:var(--fg)}.btn.primary:hover:not(:disabled){background:color-mix(in srgb, var(--fg) 85%, var(--bg))}.btn.big-btn{border-radius:999px;min-width:200px;height:48px;padding:0 40px;font-size:16px}.analyzing figure{margin:0}.scan-waiting img{opacity:.45;filter:grayscale()}.scan-active{border-color:var(--ok);box-shadow:0 0 0 3px color-mix(in srgb, var(--ok) 25%, transparent)}.scanline{background:linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--ok) 35%, transparent) 50%, transparent 52%);pointer-events:none;background-size:100% 200%;animation:1.4s linear infinite scan;position:absolute;inset:0}@keyframes scan{0%{background-position:0 100%}to{background-position:0 -100%}}.chip{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:2px 10px;font-size:12px}.chip.active{color:var(--ok);border-color:var(--ok)}.chip.done{color:var(--fg)}.progress{flex:none;gap:10px;display:grid}.analyzing .progress{width:min(520px,100%);margin:0 auto}.progress-head{justify-content:space-between;gap:12px;font-size:14px;display:flex}.spinner{vertical-align:-1px;border:2px solid var(--line-2);border-top-color:var(--fg);border-radius:999px;width:12px;height:12px;margin-right:8px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.bar{background:var(--line);border-radius:999px;height:6px;overflow:hidden}.bar>div{background:var(--fg);border-radius:inherit;height:100%;transition:width .3s}.result-top{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:32px;min-height:0;display:grid}.col{flex-direction:column;gap:14px;min-width:0;min-height:0;display:flex}.score{flex:none;grid-template-columns:auto 1fr;align-items:baseline;gap:0 16px;display:grid}.answer{letter-spacing:-.03em;grid-column:1/-1;font-size:clamp(1.4rem,3vw,1.9rem);font-weight:700}.answer.same{color:var(--ok)}.answer.diff{color:var(--err)}.score .big{letter-spacing:-.05em;font-size:clamp(2.6rem,6vw,3.8rem);font-weight:700;line-height:1.05}.verdict{color:var(--muted)}.score .warn{grid-column:1/-1}.traits{flex:none;grid-template-columns:1fr 1fr;gap:10px 20px;margin:0;padding:0;list-style:none;display:grid}.traits li{grid-template-columns:1fr auto;gap:3px 8px;font-size:13px;animation:.25s both rise;display:grid}.traits li .bar{grid-column:1/-1;height:4px}.traits li.muted{color:var(--muted)}.traits li.muted .bar>div{background:var(--line-2)}.sw{vertical-align:-1px;border:1px solid var(--line-2);border-radius:999px;width:11px;height:11px;margin-left:5px;display:inline-block}.heat-head{flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:8px;display:flex}.heat-head h3{margin:0;font-size:14px;font-weight:600}.legend{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.legend-bar{background:linear-gradient(90deg,#06f906,#f9f906,#f90606);border-radius:999px;width:100px;height:8px}.heat-pair{flex:1;grid-template-columns:1fr 1fr;gap:8px;min-height:0;display:grid}.heat-pair canvas{object-fit:contain;background:#111;border-radius:8px;width:100%;height:100%;min-height:0}.details{border:1px solid var(--line);background:var(--bg);width:min(720px,100vw - 32px);max-height:calc(100dvh - 48px);color:var(--fg);border-radius:16px;padding:0;box-shadow:0 24px 64px #00000059}.details[open]{flex-direction:column;display:flex}.details::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000008c}.details>header{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.details h2{margin:0;font-size:16px}.more-body{gap:12px;padding:16px 20px;display:grid;overflow:auto}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg)}.feature{align-content:start;gap:12px;padding:16px;display:grid}.feature header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.feature h3{margin:0;font-size:15px;font-weight:600}.feature header .mono{font-size:18px;font-weight:600}.measures{border-collapse:collapse;width:100%;font-size:13px}.measures th{color:var(--muted);text-align:right;border-bottom:1px solid var(--line);padding:4px 0 4px 8px;font-weight:400}.measures td{text-align:right;border-bottom:1px solid var(--line);white-space:nowrap;padding:6px 0 6px 8px}.measures th:first-child,.measures td:first-child{text-align:left;white-space:normal;padding-left:0}.measures tr:last-child td{border-bottom:0}@media (prefers-reduced-motion:reduce){.scanline,.spinner,.view,.traits li{animation:none}}@media (max-width:760px),(max-height:600px){.app{height:auto;min-height:100dvh}.grid{flex:none}.media{flex:none;width:100%;height:clamp(180px,45vw,300px)}.result-top{grid-template-columns:1fr;gap:20px}.heat-pair{flex:none;height:clamp(220px,60vw,360px)}.actions.row .btn{flex:140px}.pill{display:none}}@media (max-width:400px){.grid{gap:8px}.caption{flex-direction:column;align-items:flex-start;padding:8px 10px;font-size:13px}.traits{grid-template-columns:1fr}}
