@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap');
:root{--ink:#131713;--paper:#f3f5ef;--muted:#63705f;--line:#ccd2c6;--accent:#dbfa72;--mono:'DM Mono',monospace;--body:'Manrope','Noto Sans KR',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--body)}button,input{font:inherit}button,a,label{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,label:focus-visible{outline:3px solid #62820c;outline-offset:5px}header{min-height:95px;margin:0 5vw;border-bottom:1px solid var(--ink);display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:28px;letter-spacing:-1.5px;font-weight:800;text-decoration:none;white-space:nowrap}.brand span{color:#78835c}.brand sup{font:11px var(--mono);letter-spacing:0;margin-left:12px;vertical-align:top;line-height:24px}.header-right{display:flex;gap:30px;align-items:center}.edition{font:11px var(--mono);letter-spacing:1px}.quiet{border:0;border-bottom:1px solid currentColor;padding:2px 0;background:none;color:inherit;font-size:14px;font-weight:600}.quiet:disabled{border-color:transparent}main{max-width:1560px;margin:auto;padding:0 5vw}.intro{display:flex;justify-content:space-between;align-items:flex-end;padding:45px 0 34px;gap:25px}.eyebrow{font:12px/1.6 var(--mono);letter-spacing:1.5px;margin:0 0 15px}h1{font-weight:500;font-size:clamp(42px,5.3vw,76px);letter-spacing:-4px;line-height:1.06;margin:0}.intro-copy{max-width:355px;color:#4a5346;font-size:17px;margin:0 0 5px;line-height:1.75}.workspace{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--ink)}.input-panel{padding:25px 30px 20px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font:12px var(--mono);letter-spacing:1px}.panel-heading b{font-weight:400;margin-right:10px;opacity:.6}.small{font-size:11px;letter-spacing:.4px}.dropzone{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;margin-top:24px;border:1px dashed #8d9785;background:#e9ede2;min-height:285px;height:25vw;max-height:360px;cursor:pointer;overflow:hidden;transition:background .2s}.dropzone:hover,.dropzone.dragover{background:#e2ebca;border-color:#536b23}.dropzone input{position:absolute;width:1px;height:1px;opacity:0}.upload-mark{font:52px/1 var(--mono);font-weight:400;display:block;margin-bottom:18px}h2{font-size:20px;font-weight:600;letter-spacing:-.5px;margin:0 0 5px}.dropzone p{font-size:14px;margin:0 0 21px}.dropzone small{font:11px var(--mono);color:var(--muted)}#preview{width:100%;height:100%;object-fit:contain}#replace{position:absolute;bottom:10px;background:var(--paper);padding:3px 12px;font-size:12px;border:1px solid var(--line)}.file-info{display:flex;gap:12px;justify-content:space-between;align-items:center;margin:10px 0 20px;color:var(--muted);font:12px var(--mono)}#filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.samples{display:flex;align-items:center;flex-wrap:wrap;gap:7px;font-size:12px;margin-bottom:20px}.samples>span{margin-right:4px;color:var(--muted)}.sample{border:1px solid var(--line);background:transparent;padding:4px 10px;font-size:12px}.sample:hover{background:var(--accent)}.primary{border:1px solid var(--ink);width:100%;background:var(--ink);color:var(--accent);display:flex;justify-content:space-between;padding:14px 20px;font-size:17px;font-weight:600}.primary:hover:not(:disabled){background:#2d3725}#status{font-size:12px;color:var(--muted);min-height:20px;margin:10px 0 0}#status.error{color:#a62619}#cancel{margin-top:10px}progress{width:100%;height:4px;accent-color:#526d1a}.result-panel{background:var(--ink);color:var(--paper);padding:25px 30px 20px}.result-panel .panel-heading{color:#aeb8a6}.score-block{padding:35px 0 25px}.score-block .eyebrow{color:var(--accent)}.score{display:flex;align-items:baseline;gap:14px}.score #score{font:clamp(48px,5.5vw,80px)/1.1 var(--mono);letter-spacing:-5px}.unit{font:18px var(--mono);color:var(--accent)}.score-explanation{font-size:13px;color:#aeb8a6;margin:15px 0 0;line-height:1.6}.trace-head{display:flex;justify-content:space-between;font:11px var(--mono);color:#aeb8a6}#trace{width:100%;height:110px;display:block;margin-top:8px}.gridline{stroke:#36402f;stroke-width:1;fill:none}.line-a{stroke:var(--accent);stroke-width:2;fill:none}.line-b{stroke:#bbc5b3;stroke-width:1.5;stroke-dasharray:5 4;fill:none}.legend{display:flex;flex-wrap:wrap;gap:15px;font:10px var(--mono);color:#aeb8a6}.legend span:first-child{color:var(--accent)}#trace-scale{margin-left:auto}.breakdown{margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.metric{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #384030;padding:11px 0;font-size:12px}.metric strong{font:12px var(--mono);font-weight:400}.metric small{font-size:10px;color:#aeb8a6}.result-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #384030;margin-top:8px;padding-top:17px;font:10px var(--mono);color:#aeb8a6}.result-bottom button{font-size:12px;white-space:nowrap;color:var(--accent)}.method-summary{display:grid;grid-template-columns:1fr 1fr 1fr 1.7fr;gap:24px;padding:30px 0;border-bottom:1px solid var(--ink)}.method-summary>div{display:flex;flex-direction:column;font:12px var(--mono);color:var(--muted)}.stat{font:25px var(--mono);color:var(--ink);margin-bottom:4px}.method-summary .privacy-copy{font:12px/1.8 var(--body);border-left:1px solid var(--line);padding-left:25px}.privacy-copy b{color:var(--ink);margin-bottom:5px}details{border-bottom:1px solid var(--ink)}summary{cursor:pointer;padding:22px 0;display:flex;justify-content:space-between;font-size:15px;font-weight:600;list-style:none}summary::-webkit-details-marker{display:none}.method-body{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding:0 0 25px;font-size:14px;color:#4a5346}.method-body h3{font-size:17px;color:var(--ink)}footer{display:flex;justify-content:space-between;gap:40px;padding:25px 0 35px;font:11px/1.7 var(--mono)}footer p{max-width:640px;margin:0;color:var(--muted)}.muted{color:var(--muted)}[hidden]{display:none!important}html[lang=ko] h1{font-size:clamp(37px,4.7vw,66px);letter-spacing:-2.8px;line-height:1.2}html[lang=ko] .eyebrow{letter-spacing:.5px}html[lang=ko] .intro-copy{font-size:16px}@media(min-width:1600px){header{max-width:1404px;margin:auto}}@media(max-width:950px){.edition{display:none}.intro-copy{max-width:260px;font-size:15px}.input-panel,.result-panel{padding:20px}.small{font-size:10px}.method-summary{grid-template-columns:1fr 1fr 1fr}.method-summary .privacy-copy{grid-column:1/-1;border-left:0;padding-left:0}.score #score{font-size:58px}.samples>span{width:100%}.result-bottom{flex-wrap:wrap;gap:12px}h1{letter-spacing:-2.5px}}@media(max-width:680px){header{min-height:75px}.brand{font-size:24px}.brand sup{display:none}.intro{display:block;padding:30px 0}.intro-copy{max-width:none;margin-top:20px;font-size:15px}.workspace{grid-template-columns:1fr}.dropzone{height:290px}.score #score{font-size:72px}.method-summary{gap:15px}.stat{font-size:21px}.method-body{grid-template-columns:1fr;gap:0}footer{display:block}footer p{margin-top:12px}.panel-heading{font-size:11px}.intro h1{font-size:48px}.result-bottom{flex-wrap:nowrap}.samples>span{width:auto}.score-block{padding-top:30px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.metric:last-child{grid-column:1/-1}.metric,.metric strong,.samples,.sample,.dropzone p,.score-explanation,.trace-head,.result-bottom button{font-size:14px}.file-info,#status{font-size:13px}.legend,.method-summary>div{font-size:12px}.method-summary .privacy-copy{font-size:14px}.panel-heading{font-size:13px}#stimulus-view{display:flex;align-items:center;gap:16px;margin-top:14px;font-size:13px}#stimulus-canvas{width:96px;height:96px;border:1px solid var(--line);image-rendering:pixelated}.stimulus-copy{flex:1}.stimulus-copy p{margin:0 0 4px}

/* Compact photo-first layout. */
:root{--paper:#f8f4e9;--accent:#f3d46a;--ink:#263a2b;--muted:#687060;--line:#d7d8c9}
header{min-height:78px;border-bottom:1px solid var(--line)}
main{max-width:1280px}.intro{position:relative;align-items:center;padding:18px 0 22px;min-height:230px;overflow:hidden}.intro h1,html[lang=ko] .intro h1{font:800 clamp(42px,5.8vw,72px)/.95 var(--body);letter-spacing:-3px}.intro h1 span{color:#697e50}.mascot{height:242px;width:290px;object-fit:contain;mix-blend-mode:multiply;margin:-10px 30px -10px 0}
.workspace{border:1px solid var(--line);border-radius:20px;overflow:hidden;align-items:stretch}.input-panel,.result-panel{padding:26px}.panel-heading{font:600 13px var(--body);letter-spacing:0}.panel-heading b{display:none}.dropzone{background:#eeeee1;border:1.5px dashed #a7af95;border-radius:12px;margin-top:18px;min-height:240px;height:260px}.dropzone:hover,.dropzone.dragover{background:#e4ead4}.upload-mark{font-size:42px;margin-bottom:10px}.primary{border-radius:10px;padding:14px 18px}.primary:disabled{opacity:.45}.sample{border-radius:6px}.score-block{padding:28px 0 22px}.score-block .eyebrow{font:500 13px var(--body);letter-spacing:0;margin-bottom:7px}.score #score{font-size:64px;letter-spacing:-3px}.unit{font-size:14px}.score-explanation{display:none}.comparison{margin-bottom:20px}.compare-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.compare-heading h2{font-size:15px;letter-spacing:0}.compare-heading button{font-size:11px;color:#c7d0bf}#comparison-note{font-size:12px;color:#bdc8b4;margin:8px 0 18px}.comparison-row{display:grid;grid-template-columns:38px minmax(0,1fr) 72px;align-items:center;gap:12px;margin:15px 0}.comparison-row canvas{width:38px;height:38px;border-radius:6px}.comparison-row>div{min-width:0}.comparison-row span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#c3cebc}.comparison-row.current span,.comparison-row.current strong{color:var(--accent)}.comparison-row strong{font:13px var(--mono);text-align:right}.comparison-row meter{display:block;width:100%;height:8px;margin-top:7px;border:0;background:#44513d;border-radius:5px}.comparison-row meter::-webkit-meter-bar{background:#44513d;border:0}.comparison-row meter::-webkit-meter-optimum-value{background:#a6b98a}.comparison-row.current meter::-webkit-meter-optimum-value{background:var(--accent)}.comparison-row meter::-moz-meter-bar{background:#a6b98a}.detail-scores{border-top:1px solid #526047;border-bottom:0}.detail-scores summary{padding:14px 0;color:#c3cebc;font-size:13px}.detail-scores summary::after{content:'+'}.detail-scores[open] summary::after{content:'−'}.result-bottom{font:11px var(--mono);flex-wrap:wrap}.result-bottom button{margin-left:auto}.privacy-note{font-size:12px;color:var(--muted);text-align:center;margin:20px 0}#method{border-color:var(--line)}#method summary{font-size:13px;font-weight:500}.model-note{grid-column:1/-1;font-size:12px;margin-bottom:-20px}.method-body{gap:26px;font-size:13px}.method-body h3{font-size:15px}footer{color:var(--muted);padding:20px 0}
#stimulus-view{display:block;border:0;margin:0 0 16px}#stimulus-view summary{padding:8px 0;font-size:12px;color:var(--muted)}.stimulus-stage{display:flex;align-items:center;gap:18px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#f1f0e6}#stimulus-canvas{width:192px;height:192px;max-width:52%;aspect-ratio:1;object-fit:contain;background:white;border-radius:6px;image-rendering:pixelated}.stimulus-copy p{font-size:11px}.stimulus-copy .quiet{font-size:13px}#motion-position{display:block;font:11px var(--mono);margin-top:10px;color:var(--muted)}
@media(max-width:680px){header{min-height:65px}.intro{display:flex;min-height:172px;padding:12px 0}.intro h1,html[lang=ko] .intro h1{font-size:40px;letter-spacing:-2px}.mascot{width:160px;height:170px;margin:0 -16px 0 -18px}.input-panel,.result-panel{padding:20px}.workspace{border-radius:14px}.dropzone{height:225px;min-height:225px}.score #score{font-size:62px}.method-body{grid-template-columns:1fr}.model-note{margin-bottom:0}#stimulus-canvas{width:150px;height:auto}.comparison-row{grid-template-columns:34px minmax(0,1fr) 62px;gap:9px}}

.mascot{border-radius:50%;mix-blend-mode:normal}
