/* دیباگ — کاهش حجم عکس: فقط استایل‌های خود ابزار (پیشوند .t-compress-). رنگ‌ها از متغیرهای قالب. */

.t-compress [hidden],.t-compress-modal [hidden]{display:none!important}

/* تنظیمات */
.t-compress-set{display:flex;flex-direction:column;gap:1.1rem}
.t-compress-group{display:flex;flex-direction:column;gap:.5rem;min-inline-size:0}
.t-compress-lab{font-weight:800;font-size:.95rem;color:var(--ink)}
.t-compress-hint{margin:0;line-height:1.9}
.t-compress-custom{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--fs-sm);font-weight:700;color:var(--ink-2)}
.t-compress-num{inline-size:5.5rem;text-align:center;font-variant-numeric:tabular-nums}
.t-compress-qrow{display:flex;align-items:center;gap:.8rem}
.t-compress-qv{flex:none;min-inline-size:3.4rem;padding:.2rem .5rem;border-radius:.6rem;background:var(--surface);border:1px solid var(--line);text-align:center;font-weight:800;color:var(--accent-text)}
.t-compress-x-sign{color:var(--muted);font-weight:700}
.t-compress-keep,.t-compress-bg{min-block-size:2.75rem}
.t-compress-color{inline-size:2.75rem;block-size:2.2rem;padding:.1rem;border:1px solid var(--line);border-radius:.55rem;background:var(--surface);cursor:pointer}
.t-compress-set .w-seg button{min-block-size:2.75rem}
.t-compress-set .w-btn{min-block-size:2.75rem}

/* محل رها کردن، وقتی فایل اضافه شد جمع‌وجور می‌شود */
.t-compress-drop--mini{min-block-size:5.5rem;padding:.9rem}
.t-compress-drop--mini .w-ico{inline-size:1.7rem;block-size:1.7rem}

/* فهرست عکس‌ها */
.t-compress-list{display:flex;flex-direction:column;gap:.7rem;margin:0;padding:0;list-style:none}
.t-compress-item{display:grid;grid-template-columns:5.5rem minmax(0,1fr) auto;gap:.6rem .9rem;align-items:center;padding:.7rem;border:1px solid var(--line);border-radius:var(--r);background:var(--surface)}
.t-compress-item.is-err{border-color:color-mix(in oklab,var(--err) 40%,var(--line))}
.t-compress-thumb{position:relative;display:block;inline-size:5.5rem;block-size:5.5rem;padding:0;border:1px solid var(--line);border-radius:.7rem;background:var(--bg-2);overflow:hidden;cursor:zoom-in}
.t-compress-thumb[disabled]{cursor:default}
.t-compress-thumb img{display:block;inline-size:100%;block-size:100%;object-fit:cover}
.t-compress-thumb:not([disabled]):hover,.t-compress-thumb:focus-visible{outline:3px solid var(--accent-300);outline-offset:1px}
.t-compress-spin{display:none;position:absolute;inset-block-start:50%;inset-inline-start:50%;inline-size:1.6rem;block-size:1.6rem;margin:-.8rem;
    border:3px solid var(--line);border-block-start-color:var(--accent);border-radius:50%;animation:w-spin .8s linear infinite}
.t-compress-item.is-busy .t-compress-spin{display:block}
.t-compress-item.is-busy .t-compress-thumb img{opacity:.35}
.t-compress-info{display:flex;flex-direction:column;gap:.15rem;min-inline-size:0}
.t-compress-name{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.t-compress-sizes{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.95rem}
.t-compress-sizes strong{color:var(--accent-text)}
.t-compress-arrow{color:var(--muted)}
.t-compress-meta{line-height:1.8}
.t-compress-meta bdi{display:inline-block;white-space:nowrap;font-variant-numeric:tabular-nums}
.t-compress-stats .w-stat b{font-size:1.2rem}
.t-compress-msgs:empty{display:none}
.t-compress-msg{display:flex;gap:.4rem;align-items:flex-start;margin:.25rem 0 0;font-size:var(--fs-sm);line-height:1.8;color:var(--ink-2)}
.t-compress-msg .w-ico{margin-block-start:.3rem;color:var(--info)}
.t-compress-msg--warn .w-ico{color:var(--err)}
.t-compress-acts{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}
.t-compress-rm{padding-inline:.7rem}

/* پنجره‌ی مقایسه */
.t-compress-modal{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;padding:1rem;background:rgba(0,0,0,.62)}
.t-compress-dlg{display:flex;flex-direction:column;gap:.7rem;inline-size:100%;max-inline-size:68rem;max-block-size:calc(100vh - 2rem);overflow:auto;
    padding:1rem;border-radius:var(--r-lg);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-2)}
.t-compress-dlg-title{min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-inline-size:60%}
.t-compress-close{padding-inline:.7rem}
.t-compress-view{display:flex;justify-content:center;max-inline-size:100%}
.t-compress-view.is-zoom{justify-content:flex-start;overflow:auto;max-block-size:66vh;border:1px solid var(--line);border-radius:var(--r)}
.t-compress-stage{position:relative;flex:none;overflow:hidden;border-radius:var(--r);background:var(--bg-2);touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:ew-resize}
.t-compress-view.is-zoom .t-compress-stage{border-radius:0;cursor:default;touch-action:auto}
.t-compress-stage img{position:absolute;inset:0;inline-size:100%;block-size:100%;max-inline-size:none;pointer-events:none}
.t-compress-after{object-fit:fill}
.t-compress-line{position:absolute;inset-block:0;inline-size:2px;margin-left:-1px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.35);pointer-events:none}
.t-compress-line::after{content:"";position:absolute;inset-block-start:50%;left:50%;inline-size:1.6rem;block-size:1.6rem;margin:-.8rem 0 0 -.8rem;border-radius:50%;
    background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.45)}
.t-compress-tag{position:absolute;inset-block-start:.5rem;padding:.1rem .55rem;border-radius:.5rem;background:rgba(0,0,0,.62);color:#fff;font-size:.78rem;font-weight:700;pointer-events:none;white-space:nowrap}
.t-compress-tag--b{left:.5rem}
.t-compress-tag--a{right:.5rem}

@media (max-width:40rem){
    .t-compress-item{grid-template-columns:4.5rem minmax(0,1fr)}
    .t-compress-thumb{inline-size:4.5rem;block-size:4.5rem}
    .t-compress-acts{grid-column:1/-1;justify-content:stretch}
    .t-compress-acts .w-btn{flex:1}
    .t-compress-acts .t-compress-rm{flex:none}
    .t-compress-modal{padding:.5rem}
    .t-compress-dlg{padding:.75rem;max-block-size:calc(100vh - 1rem)}
    .t-compress-dlg-title{max-inline-size:100%;flex-basis:100%}
}

@media (prefers-reduced-motion:reduce){
    .t-compress-spin{animation-duration:2.4s}
}
