@font-face{font-family:Site Display;src:url(/fonts/syne-latin.2c16c6b938636b753972c5eda12296c5a06ff189ace147316f9c67aed4ba0d93.woff2) format("woff2");font-style:normal;font-weight:800;font-display:swap}@font-face{font-family:Site Sans;src:url(/fonts/plex-sans-latin.e3701848ca91f861bf7531e499fa9ea340a9a5f25b9478df72dc7b6adbb60a7c.woff2) format("woff2");font-style:normal;font-weight:400 600;font-display:swap}@font-face{font-family:Site Mono;src:url(/fonts/plex-mono-latin.8d3bfa4eb24b7fecbb7016626338e7d897da243971fa13c14b9e715da1c72c28.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Site Display Western;src:url(/fonts/syne-western.e7c8fcdb14aabb049c8141e31f469e875bd670af5207b3a906146656e6553278.woff2) format("woff2");font-style:normal;font-weight:800;font-display:swap}@font-face{font-family:Site Sans Western;src:url(/fonts/plex-sans-western.1e3c2b355a0aed43526750a8d171896db42099bdac90a12e6488a859798fa0b2.woff2) format("woff2");font-style:normal;font-weight:400 600;font-display:swap}@font-face{font-family:Site Mono Western;src:url(/fonts/plex-mono-western.22ecfd0974c0d10e7f38c8ac57e71e08fb3d15cbbd74f77d74df53818fcad50b.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}:root{color-scheme:light;--paper: #f1f0ea;--ink: #20221f;--accent: #d8f44a;--mat: #252724;--muted: #5d625a;--line: var(--ink);--rule: color-mix(in srgb, var(--ink) 78%, transparent);--mono: "Site Mono", "IBM Plex Mono", ui-monospace, monospace;--sans: "Site Sans", "IBM Plex Sans", Arial, sans-serif;--display: "Site Display", Syne, "Arial Black", sans-serif;--focus-gap: 3px;font-family:var(--sans);font-size:16px;font-synthesis:none;text-rendering:optimizeLegibility}html:lang(es),html:lang(fr){--mono: "Site Mono Western", "IBM Plex Mono", ui-monospace, monospace;--sans: "Site Sans Western", "IBM Plex Sans", Arial, sans-serif;--display: "Site Display Western", Syne, "Arial Black", sans-serif}html:lang(zh-Hans),html:lang(zh-Hant),html:lang(ja),html:lang(ko),html:lang(ru){--mono: ui-monospace, "SFMono-Regular", Consolas, monospace;--sans: system-ui, -apple-system, "Segoe UI", sans-serif;--display: system-ui, -apple-system, "Segoe UI", sans-serif;--title-tracking: 0}html:lang(ru) .intro h1{font-size:clamp(52px,4.8vw,68px);letter-spacing:-.035em}*,*:before,*:after{box-sizing:border-box}html{min-width:320px;background:var(--paper)}html.is-embedded{min-width:0;overflow:hidden}body{margin:0;min-width:320px;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5}html.is-embedded body{min-width:0}button,input{color:inherit;font:inherit}button{border:1px solid var(--line);border-radius:3px;background:transparent;cursor:pointer;transition:background-color .12s ease,color .12s ease,border-color .12s ease,transform .12s ease;-webkit-tap-highlight-color:transparent}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:not-allowed}button:focus-visible,input:focus-visible{outline:2px solid var(--ink);outline-offset:var(--focus-gap)}button:focus-visible{border-color:var(--accent)}button svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:square;stroke-linejoin:miter}[hidden]{display:none!important}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.editor-shell{width:100%;margin:0;padding:24px 0 0}.intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.34fr);gap:clamp(20px,3vw,44px);align-items:end;margin:0 0 20px}.intro h1{min-width:0;margin:0;font-family:var(--display);font-size:clamp(64px,5.3vw,76px);font-weight:800;line-height:.99;letter-spacing:var(--title-tracking, -.055em);overflow-wrap:anywhere}.upload-control{width:100%;align-self:end}.choose-button{display:grid;grid-template-columns:minmax(0,1fr) 52px;align-items:stretch;width:100%;min-height:56px;padding:0;overflow:hidden;text-align:left;font-size:17px;font-weight:600}.choose-button:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 42%,var(--paper))}.choose-button__label{display:flex;align-items:center;min-width:0;padding:0 18px}.choose-button__icon,.zip-button__icon{display:grid;place-items:center;width:52px;min-height:52px;border-left:1px solid currentColor}.choose-button__icon svg,.zip-button__icon svg{width:23px;height:23px;stroke-width:1.8}.file-types,.source-dimensions,.piece-dimensions,.pieces-count,.piece-id,.format-hint,.field-error{font-family:var(--mono);font-variant-numeric:tabular-nums}.file-types{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.4}.error-message{margin:0 0 16px;padding:12px 14px;border:1px solid var(--ink);border-left:5px solid #a52a18;background:var(--paper);color:var(--ink);font-size:15px}.job-status{display:grid;visibility:hidden;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;min-height:36px;margin:-12px 0 8px;color:var(--muted);font-size:14px}.job-status.is-visible{visibility:visible}.job-status progress{width:min(180px,24vw);height:6px;accent-color:var(--ink)}.work-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,.98fr);grid-template-rows:auto auto auto;column-gap:clamp(20px,2.1vw,30px);row-gap:14px;align-items:stretch}.controls-column{grid-column:2;grid-row:1}.source-column{display:flex;flex-direction:column;grid-column:1;grid-row:1 / span 3;min-width:0;padding-right:clamp(20px,2.1vw,30px);border-right:1px solid var(--rule)}.format-control{grid-column:2;grid-row:2}.download-control{grid-column:2;grid-row:3}.source-meta{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;width:100%;min-height:28px;margin:0 0 8px;font-family:var(--mono);font-size:14px;line-height:1.4}.source-meta__text{display:contents}.source-label{grid-column:1;grid-row:1;color:var(--paper)}.source-dimensions{grid-column:2;grid-row:1;color:color-mix(in srgb,var(--paper) 78%,var(--mat));white-space:nowrap}.source-actions{grid-column:3;grid-row:1;display:flex;flex:0 0 auto;gap:4px;align-items:center}.text-button{min-height:36px;padding:3px 6px;border:0;border-radius:3px;color:inherit;font-size:14px;font-weight:500;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:background-color .12s ease,color .12s ease}.source-actions .text-button{min-height:28px;padding:2px 5px;font-size:13px}.source-actions .text-button:focus-visible{outline-color:var(--accent)}.text-button:hover:not(:disabled){background:var(--accent);color:var(--ink)}.text-button:disabled{color:var(--muted);opacity:.62}.image-mat{position:relative;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;width:100%;flex:1;min-height:260px;padding:10px 16px 16px;overflow:hidden;border:1px solid var(--ink);background:var(--mat);color:var(--paper);transition:outline-color .12s ease}.image-mat.is-dragging{outline:3px solid var(--accent);outline-offset:3px}.preview-frame{position:relative;flex:0 0 auto;margin:auto;max-width:100%;overflow:hidden;background-color:var(--paper);background-image:linear-gradient(45deg,#d5d4cc 25%,transparent 25%),linear-gradient(-45deg,#d5d4cc 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#d5d4cc 75%),linear-gradient(-45deg,transparent 75%,#d5d4cc 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.preview-frame img{display:block;width:100%;height:100%;user-select:none;-webkit-user-drag:none}.is-starting #source-meta[hidden]{display:grid!important;visibility:hidden}.is-starting #preview-frame[hidden]{display:block!important;visibility:hidden;width:min(100%,840px);aspect-ratio:3 / 2}.is-starting .empty-preview-copy{position:absolute;inset:0;height:fit-content}@media(max-width:1319px){.is-starting #preview-frame[hidden]{width:min(100%,630px)}}.grid-overlay{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.grid-overlay .grid-line{fill:none;stroke:var(--paper);stroke-width:2px;vector-effect:non-scaling-stroke;opacity:.94}.grid-overlay .piece-number{fill:#fff;stroke:var(--ink);stroke-width:3px;stroke-linejoin:round;paint-order:stroke fill;font-family:var(--mono);font-weight:400}.empty-preview-copy{max-width:30ch;margin:auto;color:var(--paper);text-align:center;font-size:16px}.drop-hint{position:absolute;inset:0;display:grid;place-items:center;margin:0;background:#20221fd1;color:var(--paper);font-size:18px;font-weight:600;opacity:0;pointer-events:none;transition:opacity .12s ease}.image-mat.is-dragging .drop-hint{opacity:1}.controls-column{display:flex;flex-direction:column;min-width:0}.section-heading{margin:0 0 12px;font-size:22px;font-weight:600;line-height:1.2}.grid-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.preset-button{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-width:0;min-height:88px;padding:10px 6px 8px;font-family:var(--mono);font-size:14px;line-height:1.2}.preset-button:hover:not([aria-pressed=true]){background:color-mix(in srgb,var(--accent) 32%,var(--paper))}.preset-button[aria-pressed=true]{border-width:2px;background:var(--accent);color:var(--ink)}.preset-diagram{width:min(64px,78%);height:45px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:square;stroke-linejoin:miter}.preset-check{position:absolute;top:5px;right:5px;width:18px;height:18px;opacity:0;stroke-width:2.2}.preset-button[aria-pressed=true] .preset-check{opacity:1}.dimension-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 8px}.dimension-field label{display:block;margin:0 0 8px;font-size:16px;font-weight:600;line-height:1.3}.stepper{display:grid;grid-template-columns:48px minmax(36px,1fr) 48px;min-height:48px;border:1px solid var(--line)}.stepper-button{display:grid;place-items:center;width:48px;min-height:46px;padding:13px;border:0;border-radius:0;background:transparent}.stepper-button:first-child{border-right:1px solid var(--line)}.stepper-button:last-child{border-left:1px solid var(--line)}.stepper-button:hover:not(:disabled){background:var(--accent)}.stepper-button:disabled{color:var(--muted);opacity:.5}.stepper-button svg{width:20px;height:20px}.stepper input{width:100%;min-width:0;height:46px;padding:0 4px;border:0;border-radius:0;background:transparent;font-family:var(--mono);font-size:24px;font-variant-numeric:tabular-nums;line-height:1;text-align:center;appearance:textfield;-moz-appearance:textfield}.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{margin:0;appearance:none}.stepper input:focus-visible{position:relative;z-index:1;outline-offset:-4px}.field-error{min-height:0;margin:6px 0 0;color:#8a2115;font-size:12px;line-height:1.4}.field-error:not([hidden]){font-size:13px}.format-control{padding:12px 0 8px;border-top:1px solid var(--rule)}.format-control .section-heading{margin-bottom:12px}.format-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line)}.format-button{min-height:52px;border:0;border-radius:0;font-size:17px;font-weight:500}.format-button+.format-button{border-left:1px solid var(--line)}.format-button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.format-button:not([aria-pressed=true]):hover{background:color-mix(in srgb,var(--accent) 36%,var(--paper))}.format-hint{min-height:20px;margin:7px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.download-control{margin-top:auto;padding:14px 0 0;border-top:1px solid var(--rule)}.output-summary{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin:0 0 10px}.piece-total{margin:0;font-family:var(--sans);font-size:clamp(26px,2.6vw,36px);font-weight:600;line-height:1.12;letter-spacing:-.04em}.piece-dimensions{margin:0;color:var(--ink);font-size:15px;line-height:1.35;text-align:right}.zip-button{display:grid;grid-template-columns:minmax(0,1fr) 56px;align-items:stretch;width:100%;min-height:56px;padding:0;overflow:hidden;border-width:1px;background:var(--accent);color:var(--ink);text-align:left}.zip-button:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 76%,white)}.zip-button:disabled{border-color:color-mix(in srgb,var(--ink) 45%,var(--paper));background:color-mix(in srgb,var(--accent) 38%,var(--paper));color:color-mix(in srgb,var(--ink) 56%,var(--paper))}.zip-button__label{display:flex;align-items:center;min-width:0;padding:0 16px;font-size:20px;font-weight:600}.zip-button__icon{width:56px;min-height:54px}.pieces-section{margin:22px 0 0;padding:18px 0 0;border-top:1px solid var(--rule)}.pieces-header{display:flex;gap:12px;align-items:baseline;margin:0 0 12px}.pieces-header .section-heading{margin:0}.pieces-count{color:var(--muted);font-size:14px}.show-pieces-button{margin-left:auto}.pieces-list{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px clamp(14px,2vw,28px);margin:0;padding:0;list-style:none}.piece-item{min-width:0}.piece-visual{display:grid;place-items:center;width:100%;max-height:240px;overflow:hidden;background-color:var(--paper);background-image:linear-gradient(45deg,#d5d4cc 25%,transparent 25%),linear-gradient(-45deg,#d5d4cc 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#d5d4cc 75%),linear-gradient(-45deg,transparent 75%,#d5d4cc 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.piece-visual.is-jpg{background:#fff}.piece-visual canvas{display:block;width:100%;height:auto;max-height:240px;object-fit:contain}.piece-caption{display:flex;justify-content:space-between;gap:8px;align-items:center;min-height:42px}.piece-id{font-size:14px;line-height:1.35}.piece-download{display:grid;place-items:center;flex:0 0 44px;width:44px;min-height:44px;padding:11px;border:0;border-radius:3px}.piece-download:hover:not(:disabled){background:var(--accent)}.piece-download svg{width:22px;height:22px}.piece-download:disabled{color:var(--muted);opacity:.58}.cancel-button{min-width:64px;text-align:center}@media(max-width:900px){.intro{grid-template-columns:minmax(0,1fr) minmax(220px,.72fr);align-items:end}.intro h1{font-size:clamp(54px,7.3vw,68px)}html:lang(ru) .intro h1{font-size:clamp(42px,6vw,58px)}.work-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto auto;gap:22px}.controls-column,.source-column,.format-control,.download-control{grid-column:1}.controls-column{grid-row:1}.source-column{grid-row:2;padding-right:0;border-right:0}.format-control{grid-row:3}.download-control{grid-row:4}.pieces-list{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:600px){.editor-shell{padding-top:20px}.intro{grid-template-columns:minmax(0,1fr);gap:14px;margin-bottom:22px}.intro h1{max-width:9ch;font-size:clamp(38px,11.5vw,44px);line-height:.98;letter-spacing:-.045em}html:lang(ru) .intro h1{max-width:12ch;font-size:clamp(36px,10vw,42px);letter-spacing:-.02em;overflow-wrap:normal}.upload-control{width:100%}.choose-button{min-height:56px;font-size:17px}.work-grid{gap:18px}.section-heading{margin-bottom:10px;font-size:20px}.grid-presets{gap:8px}.preset-button{min-height:90px;gap:6px;padding:8px 4px;font-size:13px}.preset-diagram{width:min(60px,76%);height:42px}.dimension-controls{gap:10px;margin:18px 0 16px}.stepper{grid-template-columns:44px minmax(32px,1fr) 44px;min-height:46px}.stepper-button{width:44px;min-height:44px;padding:12px}.stepper input{height:44px;font-size:23px}.field-error{font-size:12px}.format-control{padding:14px 0 12px}.format-button{min-height:50px;font-size:16px}.output-summary{gap:8px}.piece-total{font-size:30px}.piece-dimensions{font-size:13px}.zip-button{min-height:56px}.zip-button__label{padding:0 13px;font-size:19px}.source-meta{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 8px;margin-bottom:10px;font-size:13px}.source-label{grid-column:1;grid-row:1}.source-dimensions{grid-column:1;grid-row:2}.source-actions{grid-column:2;grid-row:1 / span 2;flex-direction:column;align-items:flex-end;justify-content:center}.source-actions .text-button{min-height:32px;padding:3px 4px;font-size:13px;text-align:right}.image-mat{min-height:230px;padding:10px}.job-status{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;font-size:13px}.job-status progress{width:68px}.pieces-section{margin-top:18px;padding-top:14px}.pieces-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.piece-visual,.piece-visual canvas{max-height:210px}.piece-caption{min-height:40px}.piece-download{flex-basis:44px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
