.page-module__E0kJGG__page{box-sizing:border-box;background:#dcdcdc;justify-content:center;align-items:center;width:100%;min-height:100dvh;padding:1rem;display:flex}.page-module__E0kJGG__dragging{background:#f3f4f6;box-shadow:inset 0 0 0 .25rem #111}.page-module__E0kJGG__content{background:#f2f2f2;border:1px solid #868686;grid-template-rows:32px minmax(0,1fr);width:100%;max-width:960px;height:min(100dvh - 2rem,768px);display:grid;overflow:hidden}.page-module__E0kJGG__header{background:#e2e2e2;border-bottom:1px solid #a6a6a6;grid-template-columns:1fr;align-items:center;padding:0 10px;display:grid}.page-module__E0kJGG__title{color:#262626;text-align:center;margin:0;font-family:monospace;font-size:13px;font-weight:500;line-height:1}.page-module__E0kJGG__emptyState{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:.75rem;display:flex}.page-module__E0kJGG__cameraActions{gap:.75rem;width:100%;display:grid}.page-module__E0kJGG__cameraButton{width:100%}@media (max-width:700px){.page-module__E0kJGG__page{align-items:stretch;padding:0}.page-module__E0kJGG__content{border:0;height:100dvh}}
.Button-module__8cr-Ka__button{cursor:pointer;color:#fff;background:#111;border:none;border-radius:.5rem;justify-content:center;align-items:center;min-height:2.75rem;padding:.5rem 1rem;font-size:1rem;font-weight:600;transition:opacity .2s;display:inline-flex}.Button-module__8cr-Ka__button:hover:not(:disabled){opacity:.85}.Button-module__8cr-Ka__button:focus-visible{outline-offset:.125rem;outline:.1875rem solid #2563eb}.Button-module__8cr-Ka__button:disabled{opacity:.5;cursor:not-allowed}@media (prefers-reduced-motion:reduce){.Button-module__8cr-Ka__button{transition:none}}
.DitheredImage-module__Hkl_Ja__ditheredImage{flex-direction:column;gap:.75rem;width:100%;display:flex}.DitheredImage-module__Hkl_Ja__workspace{gap:1rem;width:100%;display:grid}.DitheredImage-module__Hkl_Ja__preview{flex-direction:column;gap:.75rem;min-width:0;display:flex}.DitheredImage-module__Hkl_Ja__canvasStage{aspect-ratio:1;border-radius:.5rem;justify-content:center;align-items:center;width:100%;max-height:65dvh;display:flex;position:relative;overflow:hidden}.DitheredImage-module__Hkl_Ja__canvas{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;display:block}.DitheredImage-module__Hkl_Ja__canvasStatus,.DitheredImage-module__Hkl_Ja__canvasError{color:#fff;text-align:center;background:#111111e0;border-radius:.375rem;width:fit-content;max-width:calc(100% - 2rem);margin:0 auto;padding:.5rem .75rem;font-size:.75rem;line-height:1.35;position:absolute;inset:auto 0 1rem}.DitheredImage-module__Hkl_Ja__canvasError{background:#7f1d1df0}.DitheredImage-module__Hkl_Ja__pixelSize{color:#666;text-align:center;font-size:.75rem;line-height:1.4}.DitheredImage-module__Hkl_Ja__actionRow{align-items:stretch;gap:.75rem;display:flex}.DitheredImage-module__Hkl_Ja__actionRow>*{flex:1}.DitheredImage-module__Hkl_Ja__downloadButton{color:#fff;width:100%;min-height:2.75rem;font:inherit;cursor:pointer;background:#111;border:0;border-radius:.5rem;justify-content:center;align-items:center;padding:.625rem 1rem;font-size:.9rem;font-weight:600;display:inline-flex}.DitheredImage-module__Hkl_Ja__downloadButton:hover:not(:disabled){opacity:.82}.DitheredImage-module__Hkl_Ja__downloadButton:focus-visible{outline-offset:.125rem;outline:.1875rem solid #2563eb}.DitheredImage-module__Hkl_Ja__downloadButton:disabled{opacity:.5;cursor:not-allowed}@media (prefers-reduced-motion:reduce){.DitheredImage-module__Hkl_Ja__downloadButton{transition:none}}
.DitherControls-module__YuCWiG__controls{z-index:100;box-sizing:border-box;background:#fff;border:1px solid #d4d4d4;border-radius:.5rem;width:min(400px,100dvw - 2rem);height:fit-content;max-height:calc(100dvh - 2rem);position:fixed;bottom:1rem;right:1rem;overflow-y:auto;box-shadow:0 .75rem 2rem #0000002e}.DitherControls-module__YuCWiG__summary{box-sizing:border-box;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;min-height:2.75rem;padding:.75rem;font-weight:600;display:flex}.DitherControls-module__YuCWiG__controls[open] .DitherControls-module__YuCWiG__summary{border-bottom:1px solid #e5e5e5}.DitherControls-module__YuCWiG__controlGroups{gap:1rem;padding:1rem;display:grid}.DitherControls-module__YuCWiG__fieldset{border:0;gap:.75rem;min-width:0;padding:0;display:grid}.DitherControls-module__YuCWiG__fieldset+.DitherControls-module__YuCWiG__fieldset{border-top:1px solid #e5e5e5;padding-top:1rem}.DitherControls-module__YuCWiG__legend{margin-bottom:.75rem;font-weight:700}.DitherControls-module__YuCWiG__rangeControl,.DitherControls-module__YuCWiG__selectControl,.DitherControls-module__YuCWiG__textControl{color:#262626;gap:.375rem;font-size:.8rem;line-height:1.35;display:grid}.DitherControls-module__YuCWiG__controlLabel{justify-content:space-between;align-items:center;gap:1rem;display:flex}.DitherControls-module__YuCWiG__valueOutput{color:#666;font-variant-numeric:tabular-nums}.DitherControls-module__YuCWiG__rangeInput{accent-color:#111;width:100%}.DitherControls-module__YuCWiG__selectInput,.DitherControls-module__YuCWiG__textInput{color:#111;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #bfbfbf;border-radius:.375rem;padding:.5rem .625rem;font-size:1rem}.DitherControls-module__YuCWiG__helpText{color:#737373;font-size:.7rem}.DitherControls-module__YuCWiG__checkboxControl{color:#262626;align-items:center;gap:.5rem;font-size:.8rem;line-height:1.35;display:flex}.DitherControls-module__YuCWiG__checkboxInput{accent-color:#111;width:1rem;height:1rem;margin:0}.DitherControls-module__YuCWiG__fixedControl{color:#262626;justify-content:space-between;align-items:center;gap:1rem;margin:0;font-size:.8rem;line-height:1.35;display:flex}.DitherControls-module__YuCWiG__resetButton{color:#111;width:100%;min-height:2.75rem;font:inherit;cursor:pointer;background:#fff;border:1px solid #bfbfbf;border-radius:.5rem;justify-content:center;align-items:center;padding:.625rem 1rem;font-size:.9rem;font-weight:600;display:inline-flex}.DitherControls-module__YuCWiG__resetButton:hover{opacity:.82}.DitherControls-module__YuCWiG__focusable:focus-visible{outline-offset:.125rem;outline:.1875rem solid #2563eb}@media (prefers-reduced-motion:reduce){.DitherControls-module__YuCWiG__resetButton{transition:none}}@media (min-width:736px){.DitherControls-module__YuCWiG__controlGroups{grid-template-columns:repeat(2,minmax(0,1fr))}.DitherControls-module__YuCWiG__fieldset+.DitherControls-module__YuCWiG__fieldset{border-top:0;padding-top:0}.DitherControls-module__YuCWiG__resetButton{grid-column:1/-1}}
.ErrorStatus-module__raJSLa__error{color:#e11d48;background:#e11d4814;border:1px solid #e11d48;border-radius:.5rem;margin-top:1rem;padding:.75rem 1rem;font-size:.9rem}.ErrorStatus-module__raJSLa__message{margin:0 0 .5rem}.ErrorStatus-module__raJSLa__retryButton{cursor:pointer;min-height:2.75rem}.ErrorStatus-module__raJSLa__retryButton:focus-visible{outline-offset:.125rem;outline:.1875rem solid #2563eb}
.LiveDitherCamera-module__Qihp0W__camera{background:#1c1c1c;grid-template-rows:minmax(0,1fr) 88px 72px;min-height:0;display:grid;position:relative}.LiveDitherCamera-module__Qihp0W__errorOverlay{z-index:2;position:absolute;bottom:176px;left:16px;right:16px}.LiveDitherCamera-module__Qihp0W__video{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:fixed;overflow:hidden}.LiveDitherCamera-module__Qihp0W__canvasStage{background:#000;place-items:center;width:100%;height:100%;display:grid;position:relative;overflow:hidden}.LiveDitherCamera-module__Qihp0W__canvas{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;display:block}.LiveDitherCamera-module__Qihp0W__status{color:#eee;text-align:center;background:#000000d6;place-items:center;margin:0;padding:1rem;display:grid;position:absolute;inset:0}.LiveDitherCamera-module__Qihp0W__photoStrip{box-sizing:border-box;scrollbar-color:#7e7e7e transparent;background:#2a2a2a;border-top:1px solid #5c5c5c;border-bottom:1px solid #979797;align-items:center;gap:7px;min-width:0;padding:6px 8px;display:flex;overflow-x:auto}.LiveDitherCamera-module__Qihp0W__photoButton{cursor:pointer;background:0 0;border:0;flex:none;width:100px;height:74px;padding:0;overflow:hidden}.LiveDitherCamera-module__Qihp0W__photoButton:focus-visible{outline-offset:-3px;outline:3px solid #72a2dd}.LiveDitherCamera-module__Qihp0W__photoThumbnail{object-fit:cover;width:100%;height:100%;image-rendering:pixelated;display:block}.LiveDitherCamera-module__Qihp0W__cameraControls{padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#dadada;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid}.LiveDitherCamera-module__Qihp0W__trailingControls{grid-column:3;justify-self:end;align-items:center;gap:6px;display:flex}.LiveDitherCamera-module__Qihp0W__iconButton,.LiveDitherCamera-module__Qihp0W__captureButton{color:#4f4f4f;cursor:pointer;border:1px solid #9b9b9b;place-items:center;padding:0;display:inline-grid}.LiveDitherCamera-module__Qihp0W__iconButton{background:#c6c6c6;border-radius:0;width:38px;height:32px}.LiveDitherCamera-module__Qihp0W__captureButton{color:#fff;background:#000;border:4px solid #f8f8f8;border-radius:50%;grid-column:2;width:50px;height:50px}.LiveDitherCamera-module__Qihp0W__iconButton:hover:not(:disabled){background:#b4b4b4}.LiveDitherCamera-module__Qihp0W__captureButton:hover:not(:disabled){background:#202020}.LiveDitherCamera-module__Qihp0W__iconButton:active:not(:disabled),.LiveDitherCamera-module__Qihp0W__captureButton:active:not(:disabled){transform:translateY(1px)}.LiveDitherCamera-module__Qihp0W__iconButton:focus-visible,.LiveDitherCamera-module__Qihp0W__captureButton:focus-visible{outline-offset:2px;outline:3px solid #4074be}.LiveDitherCamera-module__Qihp0W__iconButton:disabled,.LiveDitherCamera-module__Qihp0W__captureButton:disabled{cursor:not-allowed;opacity:.42}.LiveDitherCamera-module__Qihp0W__controlIcon{width:18px;height:18px}.LiveDitherCamera-module__Qihp0W__captureIcon{width:25px;height:25px}@media (max-width:480px){.LiveDitherCamera-module__Qihp0W__camera{grid-template-rows:minmax(0,1fr) 82px 78px}.LiveDitherCamera-module__Qihp0W__cameraControls{padding-inline:12px}.LiveDitherCamera-module__Qihp0W__iconButton{width:36px}}@media (prefers-reduced-motion:reduce){.LiveDitherCamera-module__Qihp0W__iconButton,.LiveDitherCamera-module__Qihp0W__captureButton{transition:none}}
