.fx{gap:var(--s-4);grid-template-columns:minmax(0,1fr);display:grid}.fx>*{min-width:0}.fx[hidden],.fx-opts[hidden],.fx-fieldset[hidden]{display:none}.fx-h{font-size:var(--fs-md);margin:0}.fx-limits{margin:0}.fx-list{margin-top:0}.fx-list li{flex-wrap:wrap}.fx-main{flex:10rem;min-width:0;display:grid}.fx-num{min-width:1.6rem;color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-weight:800}.fx-thumb{object-fit:cover;border-radius:var(--r-sm,6px);border:1px solid var(--line);background:var(--surface-2);flex:none;width:48px;height:48px}.fx-opts{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));align-items:end;display:grid}.fx-opts .field{margin:0}.fx-fieldset{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-3) var(--s-4);gap:var(--s-2);min-width:0;margin:0;display:grid}.fx-fieldset legend{padding:0 var(--s-2);font-weight:700}.fx-radio{cursor:pointer;align-items:center;gap:.6rem;min-height:44px;font-weight:600;display:flex}.fx-radio input{width:1.3rem;height:1.3rem;accent-color:var(--deep);flex:none}.fx-input-box{border:1.5px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface)}.fx-input-box:focus-within{border-color:var(--deep);box-shadow:0 0 0 3px var(--mint-2)}.fx-input-box .input{background:0 0}.fx-range{width:100%;min-height:44px;accent-color:var(--deep)}.fx-color{border:1.5px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);cursor:pointer;width:100%;min-height:46px;padding:2px}.fx-stats{gap:var(--s-2);grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));margin:0;display:grid}.fx-stats>div{background:var(--surface-2);border-radius:var(--r-md);padding:var(--s-3)}.fx-stats dt{font-size:var(--fs-sm);color:var(--muted)}.fx-stats dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0;font-weight:800}.fx-compare{gap:var(--s-3);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));display:grid}.fx-compare figure{gap:var(--s-2);margin:0;display:grid}.fx-compare figcaption{font-weight:700;font-size:var(--fs-sm)}.fx-compare img{object-fit:contain;border:1px solid var(--line);border-radius:var(--r-md);background:repeating-conic-gradient(#eee 0% 25%,#fff 0% 50%) 50%/16px 16px;width:100%;max-height:22rem}.fx-row-status{font-size:var(--fs-sm);font-weight:700}.fx-row-status--bad{color:var(--danger)}.fx-pages{grid-template-columns:repeat(auto-fill,minmax(11rem,1fr))}.fx-pages li{align-content:start}.fx-pagebox{aspect-ratio:1;background:var(--surface-2);border-radius:var(--r-md);place-items:center;width:100%;display:grid;overflow:hidden}.fx-pagebox img{width:auto;max-width:100%;height:auto;max-height:100%;box-shadow:var(--sh-1);background:#fff;transition:transform .15s}.fx-pagebox span{font-size:var(--fs-sm);color:var(--muted);padding:var(--s-2);text-align:center}.fx-pagebtns{gap:var(--s-1);grid-template-columns:1fr 1fr;width:100%;display:grid}.fx-pagebtns .btn{font-size:var(--fs-sm);padding-inline:.4rem}.fx-pagelabel{font-weight:700;font-size:var(--fs-sm);text-align:center}.fx-crop{box-sizing:border-box;touch-action:none;user-select:none;background:var(--surface-2);border-radius:var(--r-md);width:fit-content;max-width:100%;padding:22px;line-height:0;display:block;position:relative;overflow:hidden}.fx-crop canvas{border:1px solid var(--line);background:repeating-conic-gradient(#eee 0% 25%,#fff 0% 50%) 50%/16px 16px;max-width:100%;height:auto;display:block}.fx-crop__box{outline:2px solid var(--deeper,#0b3d2a);cursor:move;touch-action:none;border:2px solid #fff;position:absolute;box-shadow:0 0 0 9999px #00000073}.fx-crop__box:focus-visible{outline:3px solid var(--green);outline-offset:2px}.fx-crop__h{touch-action:none;place-items:center;width:44px;height:44px;margin:-22px 0 0 -22px;display:grid;position:absolute}.fx-crop__h:after{content:"";border:2px solid var(--deeper,#0b3d2a);background:#fff;border-radius:3px;width:14px;height:14px}.fx-crop__h[data-h=nw],.fx-crop__h[data-h=se]{cursor:nwse-resize}.fx-crop__h[data-h=ne],.fx-crop__h[data-h=sw]{cursor:nesw-resize}.fx-crop__h[data-h=n],.fx-crop__h[data-h=s]{cursor:ns-resize}.fx-crop__h[data-h=e],.fx-crop__h[data-h=w]{cursor:ew-resize}.fx-crop__h[hidden]{display:none}.fx .tool-msg{white-space:pre-line}@media (width<=480px){.filelist__actions{width:100%}.filelist__actions .btn{flex:1}}
