.tool{max-width:860px;margin:40px auto 0;position:relative}.dual{z-index:1;grid-template-columns:1fr 1fr;gap:24px;display:grid;position:relative}.zone{background:var(--am-color-surface);border:2px dashed color-mix(in srgb, var(--am-color-accent) 40%, var(--am-color-line));border-radius:20px;flex-direction:column;min-height:196px;padding:22px;transition:border-color .2s,background .2s,transform .2s,box-shadow .2s;display:flex;position:relative}.zone-hit{cursor:pointer;flex-direction:column;flex:1;min-height:0;display:flex}.zone .tag{font:500 12px var(--am-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--am-color-accent2)}.zone .empty{text-align:center;flex-direction:column;align-items:center;margin:auto;display:flex}.zone .upload{stroke:var(--am-color-accent);fill:none;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;margin-bottom:8px}.zone .t{font-size:18px;font-weight:700;display:block}.zone .m{color:var(--am-color-muted);font-size:14px;display:block}.zone .hint-touch{display:none}.pick{border:1px solid var(--am-color-line);background:var(--am-color-bg);border-radius:999px;justify-content:center;align-items:center;min-height:44px;margin-top:12px;padding:0 18px;font-size:15px;font-weight:600;display:inline-flex}.zone .touch{display:none}.zone:focus-within{outline:3px solid var(--am-color-accent);outline-offset:3px}.file-input:focus{outline:none}.zone[data-state=drag]{border-style:solid;border-color:var(--am-color-accent);background:color-mix(in srgb, var(--am-color-accent) 7%, var(--am-color-surface));transform:scale(1.015)}.zone[data-state=loaded]{border:1px solid var(--am-color-line);box-shadow:var(--am-shadow-md)}.zone[data-state=error]{border-style:solid;border-color:var(--am-color-accent2)}.file,.err{display:none}.zone[data-state=loaded] .file{display:flex}.zone[data-state=error] .err{display:block}.zone[data-state=loaded] .empty,.zone[data-state=error] .empty{display:none}.file{flex-direction:column;flex:1;gap:4px;margin-top:14px}.file .name{word-break:break-all;padding-right:40px;font-size:17px;font-weight:700}.file .meta{font:500 13px var(--am-font-mono);color:var(--am-color-muted)}.file .range{font:500 14px var(--am-font-mono);align-items:center;gap:10px;margin-top:auto;padding-top:14px;display:flex}.file .range b{background:var(--am-color-trail);border-radius:4px;flex:1;height:4px}.zone:nth-child(2) .file .range b{background:var(--am-color-accent)}.rm{cursor:pointer;width:44px;height:44px;color:var(--am-color-muted);z-index:2;background:0 0;border:0;border-radius:50%;place-items:center;display:none;position:absolute;top:12px;right:12px}.rm svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round}.zone[data-state=loaded] .rm{display:grid}.rm:hover{background:var(--am-color-bg);color:var(--am-color-text)}.err{margin-top:14px}.err-title{color:var(--am-color-text);font-weight:600;display:block}.file-input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.zone[data-state=loaded] .file-input{display:none}.below{color:var(--am-color-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-top:14px;font-size:14px;display:flex}.add{min-height:44px;color:var(--am-color-accent);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 4px;font-weight:600;display:inline-flex}.extra{flex-wrap:wrap;gap:8px;margin-top:4px;display:none}.extra.on{display:flex}.tool .chip{background:var(--am-color-surface);border:1px solid var(--am-color-line);min-height:44px;font:500 13px var(--am-font-mono);color:var(--am-color-text);border-radius:999px;align-items:center;gap:8px;padding:0 4px 0 14px;display:inline-flex}.tool .chip button{width:44px;height:44px;color:var(--am-color-muted);cursor:pointer;background:0 0;border:0;border-radius:50%}.go{z-index:1;flex-direction:column;align-items:center;margin-top:28px;display:flex;position:relative}.btn{background:var(--am-color-accent);min-height:52px;color:var(--am-color-bg);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 32px;font-size:17px;font-weight:700;text-decoration:none;transition:transform .15s,opacity .2s;display:inline-flex}.btn:active{transform:scale(.98)}.btn[disabled],.btn[aria-disabled=true]{opacity:.4;cursor:not-allowed}.hint{color:var(--am-color-muted);margin:10px 0 0;font-size:14px}.trust{color:var(--am-color-muted);flex-wrap:wrap;justify-content:center;gap:22px;margin:20px 0 0;padding:0;font-size:14px;list-style:none;display:flex}.trust strong{color:var(--am-color-text);font-weight:600}.sample{color:var(--am-color-accent);cursor:pointer;background:0 0;border:0;min-height:44px;font-size:15px;font-weight:600}.trails{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.trails path{fill:none;stroke-width:5px;stroke-linecap:round;stroke-linejoin:round}.trails .p1{stroke:var(--am-color-trail)}.trails .p2,.trails .p3{stroke:var(--am-color-accent)}.trails circle{fill:var(--am-color-accent2);opacity:0}.tool[data-phase=merged] .trails circle{opacity:1;transition:opacity .2s .9s}.result{background:var(--am-color-surface);border:1px solid var(--am-color-line);min-width:0;max-width:min(1120px,100%);box-shadow:var(--am-shadow-md);z-index:1;--pv-part-1:var(--am-color-trail);--pv-part-2:var(--am-color-accent);border-radius:24px;margin:28px auto 0;padding:26px;display:none;position:relative}.tool[data-phase=merging] .result{visibility:hidden;margin-top:80px;display:block}.tool[data-phase=merging][data-slow="1"] .result{visibility:visible}.tool[data-phase=merged] .result{animation:rise .45s var(--am-ease) both;margin-top:80px;display:block;visibility:visible!important}.tool[data-phase=merging] .go,.tool[data-phase=merging] .below,.tool[data-phase=merging] .extra,.tool[data-phase=merged] .go,.tool[data-phase=merged] .below,.tool[data-phase=merged] .extra{display:none}.tool[data-phase=merging] .zone,.tool[data-phase=merged] .zone{min-height:0;box-shadow:none}.tool[data-phase=merging] .rm,.tool[data-phase=merged] .rm{visibility:hidden}.result .tag{color:var(--am-color-muted);font-weight:600}.result h2.name{letter-spacing:-.01em;overflow-wrap:anywhere;min-height:1.2em;margin:6px 0 4px;font-size:22px;font-weight:800;line-height:1.2}.result dl{gap:8px;min-width:0;margin:16px 0 12px;display:grid}.result .note{color:var(--am-color-muted);margin:0 0 20px;font-size:14px;line-height:1.45}.result-warn{border:1px solid var(--am-color-accent2);background:color-mix(in srgb, var(--am-color-accent2) 8%, var(--am-color-surface));color:var(--am-color-text);border-radius:12px;margin:14px 0 0;padding:12px 14px;font-size:15px;font-weight:700;line-height:1.4}.result-warn[hidden]{display:none}.result dt{color:var(--am-color-muted);font-size:12px}.result dd{min-height:1.2em;line-height:1.2;font:500 15px var(--am-font-mono);margin:0}.result .row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.result:focus{outline:none}.again{border:1px solid var(--am-color-line);min-height:52px;color:var(--am-color-text);cursor:pointer;background:0 0;border-radius:999px;padding:0 22px;font-size:17px;font-weight:700}.spinner{justify-content:center;padding:0;display:flex;position:absolute;top:18px;left:0;right:0}.spin{border:2px solid var(--am-color-line);border-top-color:var(--am-color-accent);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@media (hover:none) and (pointer:coarse){.zone .drag-copy{display:none}.zone .touch{background:var(--am-color-accent);min-height:48px;color:var(--am-color-bg);border:0;border-radius:999px;padding:0 22px;font-weight:700;display:inline-flex}.zone .hint-touch.touch{min-height:0;color:var(--am-color-muted);background:0 0;margin-top:8px;padding:0;font-size:14px;font-weight:500;display:block}.zone[data-state=drag]{transform:none}}@media (width>=641px) and (width<=899px){.tool{padding-inline:24px}}@media (width<=760px){.tool{margin-top:28px}.dual{grid-template-columns:1fr;gap:20px;padding:0 14px}.zone{min-height:0;padding:18px}.zone .empty{text-align:left;flex-flow:wrap;align-items:center;gap:12px;margin:10px 0 0}.zone .upload{flex:none;width:28px;height:28px;margin:0}.zone .empty .or{display:none}.zone .empty .m{order:3;width:100%;margin-top:0;font-size:13px}.zone .empty .t{flex:1;font-size:16px}.zone .empty .pick{margin:0}.below{flex-direction:column;align-items:flex-start;gap:0;padding:0 14px}.trust{flex-direction:column;align-items:center;gap:4px}.tool[data-phase=merged] .result,.tool[data-phase=merging] .result{margin-top:56px}.result{margin-left:14px;margin-right:14px;padding:22px}.result h2.name{overflow-wrap:anywhere;font-size:18px}.pv-head>div{flex:100%;min-width:0}}@media (width>=641px) and (width<=760px){.dual,.below{padding-inline:0}.result{margin-inline:0}}.result{--pv-part-1:var(--am-color-trail);--pv-part-2:var(--am-color-accent)}:root[data-theme=dark] .result{--pv-part-1:#3e8f76}.pv-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pv-date{color:var(--am-color-muted);margin:0;font-size:14px}.pv-date[hidden],.pv-files[hidden],[data-pv][hidden]{display:none}.pv-files{font:500 14px var(--am-font-mono);background:var(--am-color-bg);border:1px solid var(--am-color-line);white-space:nowrap;border-radius:999px;padding:6px 12px}.pv-warn{border-radius:var(--am-radius-md);border:1px solid var(--am-color-accent2);background:color-mix(in srgb, var(--am-color-accent2) 8%, var(--am-color-surface));color:var(--am-color-text);gap:12px;margin:14px 0 0;padding:14px 16px;font-size:14px;line-height:1.45;display:flex}.pv-warn strong{font-size:15px;display:block}.pv-warn p{margin:2px 0 0}.pv-warn svg{color:var(--am-color-accent2);flex:none}.pv-grid{min-width:0;max-width:100%;margin-top:16px}.pv-map{border-radius:var(--am-radius-md);background:var(--am-color-bg);border:1px solid var(--am-color-line);aspect-ratio:16/10;position:relative;overflow:hidden}.pv-map svg{width:100%;height:100%;position:absolute;inset:0}.pv-empty{text-align:center;color:var(--am-color-muted);place-items:center;padding:16px;font-size:14px;display:grid;position:absolute;inset:0}.pv-empty p{max-width:36ch;margin:8px 0 0}.pv-contour{fill:none;stroke:var(--am-color-line);stroke-width:1px}.pv-stroke-1,.pv-stroke-2,.pv-overlap,.pv-gap{fill:none;stroke-linecap:round;stroke-linejoin:round}.pv-stroke-1{stroke:var(--pv-part-1);stroke-width:5px}.pv-stroke-2{stroke:var(--pv-part-2);stroke-width:5px}.pv-overlap{stroke:var(--am-color-accent2);stroke-width:9px}.pv-gap{stroke:var(--am-color-accent2);stroke-width:2.5px;stroke-dasharray:5 5;stroke-linecap:butt}.pv-start{fill:var(--am-color-surface);stroke:var(--am-color-text);stroke-width:2.5px}.pv-finish{fill:var(--am-color-text)}.pv-dot{fill:var(--am-color-accent2);stroke:var(--am-color-surface);stroke-width:3px}.pv-legend{color:var(--am-color-muted);flex-wrap:wrap;gap:6px 16px;margin-top:10px;font-size:14px;display:flex}.pv-swatch{vertical-align:middle;border-radius:2px;width:18px;height:4px;margin-right:6px;display:inline-block}.pv-swatch-gap{border-top:2px dashed var(--am-color-accent2);vertical-align:middle;background:0 0;width:18px;height:0;margin-right:6px;display:inline-block}.pv-fill-1{fill:var(--pv-part-1);background:var(--pv-part-1)}.pv-fill-2{fill:var(--pv-part-2);background:var(--pv-part-2)}.pv-pause{fill:url(#pv-hatch)}.pv-overlap-bar{fill:var(--am-color-accent2)}.pv-timeline{margin-top:16px}.pv-bar{width:100%;height:10px;display:block}.pv-times{font:500 12px var(--am-font-mono);color:var(--am-color-muted);justify-content:space-between;gap:8px;margin-top:6px;display:flex}.pv-kept{color:var(--am-color-muted);font:500 13px / 1.45 var(--am-font-sans);margin:10px 0 0}.result .pv-stats{background:var(--am-color-line);border-radius:var(--am-radius-md);border:1px solid var(--am-color-line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;width:100%;min-width:0;max-width:100%;margin:16px 0 0;display:grid;overflow:hidden}.pv-stats div{background:var(--am-color-surface);min-width:0;max-width:100%;padding:12px 16px}.pv-stats div:last-child:nth-child(odd),.pv-stats .pv-pause-note{grid-column:1/-1}.pv-stats .pv-pause-note dd{color:var(--am-color-muted);font:500 14px / 1.45 var(--am-font-sans);letter-spacing:0;margin:0}.pv-stats dt{min-width:0;color:var(--am-color-muted);overflow-wrap:anywhere;font-size:13px;font-weight:600}.pv-stats dd{min-width:0;max-width:100%;font:500 16px var(--am-font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;overflow-wrap:anywhere;white-space:normal;margin:2px 0 0}.pv-figure{font-variant-numeric:tabular-nums;min-width:0;max-width:100%;display:inline-grid}.pv-figure-final,.pv-figure-live{grid-area:1/1}.pv-figure-live{visibility:hidden}.pv-stats dd small{font:500 13px var(--am-font-sans);color:var(--am-color-muted);margin-left:3px}.pv-stats .hl dd{color:var(--am-color-accent2)}.pv-seg{border:1px solid var(--am-color-line);border-radius:999px;flex-wrap:wrap;align-items:center;gap:2px;max-width:100%;min-height:44px;margin:16px 0 8px;padding:3px;display:inline-flex}.pv-seg button{min-width:44px;min-height:38px;color:var(--am-color-muted);font:600 14px var(--am-font-sans);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 14px}.pv-seg button[aria-pressed=true]{background:var(--am-color-text);color:var(--am-color-bg)}.pv-chart-host{width:100%;min-height:120px;position:relative}.pv-seams{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.pv-seam{fill:none;stroke:var(--am-color-accent2);stroke-width:1.5px;stroke-dasharray:4 4}.pv-clock{pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.pv-privacy{color:var(--am-color-muted);align-items:center;gap:8px;margin:16px 0;font-size:13px;display:flex}.pv-privacy svg{flex:none}@media (width<=759px){.result .row{flex-direction:column;align-items:stretch}.result .row .btn,.result .row .again{width:100%}}@media (width>=760px){.result .row{flex-direction:row-reverse;justify-content:flex-start}.result .pv-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.result .pv-stats dd{font-size:20px}.pv-chart-host{min-height:150px}}@media (width>=1100px){.pv-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.result .pv-stats{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}}.pv-motion .pv-map{opacity:0;animation:.15s cubic-bezier(.2,.7,.2,1) forwards pv-map-in}.pv-motion .pv-stroke-1,.pv-motion .pv-stroke-2,.pv-motion .pv-overlap,.pv-motion .pv-gap,.pv-motion .pv-dot,.pv-motion .pv-start{opacity:0}.pv-motion .pv-pen{opacity:1}.pv-motion .pv-finish{opacity:0;transform-box:fill-box;transform-origin:50%;transform:scale(.6)}.pv-motion .pv-figure-final{visibility:hidden}.pv-motion .pv-figure-live{visibility:visible}.pv-motion .pv-stats>div{opacity:0;animation:.28s cubic-bezier(.2,.7,.2,1) forwards pv-stat-in}.pv-motion .pv-stats>div:first-child{animation-delay:.3s}.pv-motion .pv-stats>div:nth-child(2){animation-delay:.34s}.pv-motion .pv-stats>div:nth-child(3){animation-delay:.38s}.pv-motion .pv-stats>div:nth-child(4){animation-delay:.42s}.pv-motion .pv-stats>div:nth-child(5){animation-delay:.46s}.pv-motion .pv-stats>div:nth-child(6){animation-delay:.5s}.pv-motion .pv-stats>div:nth-child(7){animation-delay:.54s}.pv-motion .pv-stats>div:nth-child(8){animation-delay:.58s}.pv-motion .pv-bar{transform-origin:0;animation:.4s cubic-bezier(.2,.7,.2,1) .6s forwards pv-bar-in;transform:scaleX(0)}.pv-motion .pv-chart-host{clip-path:inset(0 100% 0 0);animation:.5s cubic-bezier(.2,.7,.2,1) .7s forwards pv-chart-in}.pv-motion .pv-seams{opacity:0}.pv-motion .pv-seams.pv-seams-in{opacity:1}@keyframes pv-map-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pv-stat-in{to{opacity:1}}@keyframes pv-bar-in{to{transform:scaleX(1)}}@keyframes pv-chart-in{to{clip-path:inset(0)}}@media (prefers-reduced-motion:reduce){.tool[data-phase=merged] .result,.tool[data-phase=merged] .result *{transition-property:none!important}.tool[data-phase=merged] .result{opacity:1;visibility:visible;transform:none;animation:none!important}.tool[data-phase=merged] .trails circle{opacity:1;transition:none}.trails path,.spin,.pv-route path{transition:none!important;animation:none!important}.pv-motion .pv-map,.pv-motion .pv-stats>div,.pv-motion .pv-bar,.pv-motion .pv-chart-host,.pv-motion .pv-finish,.pv-motion .pv-seams,.pv-motion .pv-stroke-1,.pv-motion .pv-stroke-2,.pv-motion .pv-overlap,.pv-motion .pv-gap,.pv-motion .pv-dot,.pv-motion .pv-start{opacity:1!important;clip-path:none!important;animation:none!important;transform:none!important}.pv-motion .pv-figure-final{visibility:visible!important}.pv-motion .pv-figure-live{visibility:hidden!important}}@media (forced-colors:active){.zone,.result,.tool .chip{border-color:canvastext}.btn{border:1px solid buttontext}.pv-stroke-1,.pv-stroke-2,.pv-gap,.pv-overlap{stroke:canvastext;fill:none}.pv-gap{stroke:linktext;stroke-dasharray:5 5}.pv-fill-1,.pv-fill-2{fill:canvastext}.pv-dot,.pv-overlap-bar{fill:linktext;stroke:linktext}.pv-seam{stroke:linktext}}
