/* ════ IMAGE → IMAGE CONVERTER ════  (theme: violet #7c3aed) */
/* switcher tab colour for the new tab (seg-tabs pattern) */
.mode-ico.violet{background:#7c3aed}
.seg-tabs .mode-tab.active.t-violet .mode-txt strong{color:#5b21b6}

.cv-app{display:flex;flex-direction:column;gap:22px}
.cv-app .panel{padding:22px}                      /* global section padding gotcha */

/* HERO */
.cv-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.cv-hero-left{flex:1;min-width:280px}
.cv-hero h2{font-size:28px;font-weight:800;color:#1a2236;letter-spacing:-.02em;margin-bottom:6px}
.cv-hero-sub{font-size:16px;font-weight:600;color:#475067;margin-bottom:10px}
.cv-hero-sub .accent{color:#7c3aed}
.cv-hero-note{font-size:13.5px;color:#7c879b;line-height:1.6;max-width:52ch}
.cv-hero-badges{display:flex;flex-wrap:wrap;gap:14px;margin-top:16px}
.cv-hero-badges span{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:#475067}
.cv-hero-badges i{color:#7c3aed}
.cv-hero-art{display:flex;align-items:center;gap:12px}
.cv-art-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:96px;height:92px;border-radius:16px;background:#f3f5f9;border:1px solid #e3e7ef;color:#7c879b;font-size:12px;font-weight:700}
.cv-art-card i{font-size:24px}
.cv-art-card.out{background:#f5f3ff;border-color:#ddd1fb;color:#7c3aed}
.cv-art-arrow{color:#cfd6e6;font-size:18px}

/* STEPS — side-by-side panels */
.cv-steps{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}
.cv-steps>.panel{flex:1 1 320px;min-width:0}
.cv-step-head{display:flex;align-items:flex-start;gap:13px;margin-bottom:16px}
.cv-num{flex:none;width:30px;height:30px;border-radius:9px;background:#f5f3ff;color:#7c3aed;font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center}
.cv-step-head h2{font-size:17px;font-weight:800;color:#1a2236;margin-bottom:2px}
.cv-step-head p{font-size:12.5px;color:#7c879b}
.cv-upload .upload-icon{color:#7c3aed}
.cv-upload.drag{border-color:#7c3aed;background:#f7f4ff}

/* output-format selector */
.cv-formats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:6px}
.cv-fmt{display:flex;flex-direction:column;align-items:center;gap:3px;padding:13px 8px;border:1.5px solid #e3e7ef;border-radius:11px;background:#fff;cursor:pointer;transition:.14s;font-family:inherit}
.cv-fmt i{font-size:17px;color:#7c879b}
.cv-fmt strong{font-size:13px;font-weight:800;color:#2a3140}
.cv-fmt small{font-size:9.5px;color:#9aa3b8;font-weight:600}
.cv-fmt:hover{border-color:#c4b5fd;background:#faf8ff}
.cv-fmt.active{border-color:#7c3aed;background:#f5f3ff;box-shadow:0 0 0 3px rgba(124,58,237,.1)}
.cv-fmt.active i,.cv-fmt.active strong{color:#7c3aed}

/* cross-sell note → Compress Images (this tool only changes format) */
.cv-crosssell{display:flex;align-items:flex-start;gap:9px;margin:16px 0 4px;padding:11px 13px;border:1px solid #e3e7ef;border-radius:11px;background:#f7f8fb;font-size:12px;color:#5a6275;line-height:1.5}
.cv-crosssell i{color:#7c3aed;margin-top:1px;flex:none}
.cv-crosssell-link{border:0;background:none;color:#7c3aed;font-weight:800;cursor:pointer;text-decoration:underline;padding:0;font:inherit}
.cv-crosssell-link:hover{color:#5b21b6}

/* file list + live safety */
.cv-file-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}
.cv-file{display:flex;flex-direction:column;gap:0;padding:9px 11px;border:1px solid #e9ecf2;border-radius:10px;background:#fbfcfe;font-size:13px;transition:border-color .18s,background .18s}
.cv-file-main{display:flex;align-items:center;gap:11px;min-width:0}
.cv-file-thumb{flex:none;width:34px;height:34px;border-radius:7px;object-fit:cover;background:#f3f5f9 url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><rect width="8" height="8" fill="%23e9ecf2"/><rect x="8" y="8" width="8" height="8" fill="%23e9ecf2"/></svg>');border:1px solid #e9ecf2}
.cv-file-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#2a3140;font-weight:600}
.cv-file-kb{flex:none;color:#7c879b;font-weight:600;font-size:12px}
.cv-row-warn{flex:none;color:#e2435b;font-size:13px;cursor:help}
.cv-row-warn[hidden]{display:none}
.cv-file-x{flex:none;border:0;background:none;color:#c0c7d6;cursor:pointer;padding:3px;font-size:13px;transition:.15s}
.cv-file-x:hover{color:#e2435b}
.cv-file.unsafe{border-color:#f3b4bd;background:#fdf1f3;box-shadow:inset 3px 0 0 #e2435b}
.cv-file.unsafe .cv-file-name{color:#c8364c}
.cv-file.safe{border-color:#cdbef7;background:#f7f4ff;box-shadow:inset 3px 0 0 #7c3aed}
/* per-row (individual-mode) mini slider */
.cv-row-target{display:flex;align-items:center;gap:10px;margin-top:9px;padding-left:45px}
.cv-row-slider{-webkit-appearance:none;appearance:none;flex:1;min-width:0;height:5px;border-radius:20px;background:linear-gradient(90deg,#7c3aed var(--fill,15%),#e3e7ef var(--fill,15%));cursor:pointer;outline:none}
.cv-row-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:15px;height:15px;border-radius:50%;background:#fff;border:2.5px solid #7c3aed;box-shadow:0 1px 3px rgba(124,58,237,.3);cursor:pointer}
.cv-row-slider::-moz-range-thumb{width:15px;height:15px;border-radius:50%;background:#fff;border:2.5px solid #7c3aed;box-shadow:0 1px 3px rgba(124,58,237,.3);cursor:pointer}
.cv-row-readout{flex:none;font-size:11px;font-weight:800;color:#7c3aed;font-variant-numeric:tabular-nums;min-width:46px;text-align:right}

/* target slider */
.cv-target-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:12.5px;font-weight:700;color:#475067;margin:18px 0 12px}
.cv-target-readout{font-size:15px;font-weight:900;color:#7c3aed;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.cv-slider-wrap{padding:2px 2px 0}
.cv-slider-wrap[data-empty="true"]{opacity:.55}
.cv-slider{-webkit-appearance:none;appearance:none;width:100%;height:8px;border-radius:20px;background:linear-gradient(90deg,#7c3aed var(--fill,15%),#e3e7ef var(--fill,15%));cursor:pointer;outline:none;transition:opacity .15s}
.cv-slider:disabled{cursor:not-allowed;background:#e9ecf2}
.cv-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid #7c3aed;box-shadow:0 2px 6px rgba(124,58,237,.30);cursor:pointer;transition:.12s}
.cv-slider::-webkit-slider-thumb:hover{transform:scale(1.08)}
.cv-slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid #7c3aed;box-shadow:0 2px 6px rgba(124,58,237,.30);cursor:pointer}
.cv-slider:disabled::-webkit-slider-thumb,.cv-slider:disabled::-moz-range-thumb{border-color:#c0c7d6;box-shadow:none}
.cv-slider-scale{display:flex;justify-content:space-between;margin-top:7px;font-size:10.5px;font-weight:700;color:#9aa3b8;font-variant-numeric:tabular-nums}
.cv-custom-wrap{display:flex;flex-direction:column;gap:5px;margin-top:16px}
.cv-custom-label{font-size:10.5px;font-weight:700;color:#9aa3b8;text-transform:uppercase;letter-spacing:.5px}
.cv-custom-field{display:inline-flex;align-items:center;gap:6px;border:1.5px solid #e3e7ef;border-radius:10px;background:#fff;padding:0 12px 0 0;transition:.16s;align-self:flex-start}
.cv-custom-field:focus-within{border-color:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,.10)}
.cv-custom{width:74px;padding:9px 0 9px 13px;border:0;background:none;font-size:15px;font-weight:800;color:#101725;font-family:inherit;text-align:right;-moz-appearance:textfield}
.cv-custom::-webkit-outer-spin-button,.cv-custom::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.cv-custom:focus{outline:none}
.cv-custom:disabled{color:#c0c7d6}
.cv-custom-unit{font-size:12px;font-weight:700;color:#9aa3b8}

/* global / individual mode toggle */
.cv-mode-row{display:flex;align-items:center;gap:12px;margin:18px 0 14px;flex-wrap:wrap}
.cv-mode-label{font-size:12.5px;font-weight:700;color:#475067}
.cv-mode-seg{display:inline-flex;background:#f1f3f7;border:1px solid #e3e7ef;border-radius:10px;padding:3px;gap:3px}
.cv-mode-btn{border:0;background:none;font-family:inherit;font-size:12.5px;font-weight:700;color:#7c879b;padding:6px 16px;border-radius:8px;cursor:pointer;transition:.15s;line-height:1}
.cv-mode-btn:hover{color:#2a3140}
.cv-mode-btn.active{background:#fff;color:#7c3aed;box-shadow:0 1px 3px rgba(16,23,37,.10)}
.cv-mode-hint{font-size:11.5px;color:#9aa3b8;font-weight:600}
#cvGlobalTarget[hidden]{display:none}
/* optimize-to-minimum checkbox (individual only) */
.cv-optmin{display:flex;align-items:flex-start;gap:9px;margin:0 0 16px;padding:11px 13px;border:1px solid #e6dcfb;border-radius:11px;background:#faf8ff;cursor:pointer}
.cv-optmin[hidden]{display:none}
.cv-optmin input{flex:none;width:16px;height:16px;margin-top:1px;accent-color:#7c3aed;cursor:pointer}
.cv-optmin span{font-size:12px;color:#5a4b86;line-height:1.5}
.cv-optmin span strong{color:#5b21b6;font-weight:800}
/* locked per-row slider when optimize-to-minimum is on */
.cv-row-target.locked{opacity:.7}
.cv-row-slider:disabled{cursor:not-allowed}
.cv-row-slider:disabled::-webkit-slider-thumb{border-color:#c0b6e0;box-shadow:none}
.cv-row-slider:disabled::-moz-range-thumb{border-color:#c0b6e0;box-shadow:none}

/* live red alert */
.cv-live-alert{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:11px 14px;border:1px solid #f3b4bd;border-left:3px solid #e2435b;border-radius:11px;background:#fdf1f3;animation:cvPop .22s ease}
.cv-live-alert[hidden]{display:none}
.cv-live-alert>i{color:#e2435b;font-size:14px;margin-top:1px;flex:none}
.cv-live-alert span{font-size:12px;line-height:1.55;color:#c8364c;font-weight:600}
.cv-live-alert span b{color:#a32338;font-weight:800}
@keyframes cvPop{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

.cv-gen-row{display:flex;align-items:center;gap:12px;margin-top:18px;flex-wrap:wrap}
.cv-convert{display:inline-flex;align-items:center;gap:8px;background:#7c3aed;color:#fff;border:0;border-radius:10px;padding:12px 20px;font-weight:700;font-size:14px;cursor:pointer;transition:.16s}
.cv-convert:hover{background:#6d28d9}
.cv-convert:disabled{background:#c8c2e6;cursor:not-allowed}
.cv-reset{border:0;background:none;color:#7c879b;font-weight:600;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.cv-reset:hover{color:#2a3140}

/* RESULTS */
.cv-plan-note{display:flex;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 15px;border:1px solid #e6dcfb;border-left:3px solid #7c3aed;border-radius:11px;background:#f7f4ff;font-size:12.5px;color:#4a3b78;line-height:1.55}
.cv-plan-note i{color:#7c3aed;margin-top:1px}
.cv-results-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.cv-results-actions{display:flex;align-items:center;gap:12px}
.cv-dlall{display:inline-flex;align-items:center;gap:8px;background:#7c3aed;color:#fff;border:0;border-radius:10px;padding:11px 18px;font-weight:700;font-size:13px;cursor:pointer;transition:.18s}
.cv-dlall:hover{background:#6d28d9}
.cv-dim-alert{display:flex;align-items:flex-start;gap:13px;padding:14px 18px;margin-bottom:18px;border:1px solid #f3d9a8;border-left:3px solid #e08a1e;border-radius:12px;background:#fdf6e9}
.cv-dim-alert[hidden]{display:none}
.cv-dim-alert>i{color:#e08a1e;font-size:16px;margin-top:1px;flex:none}
.cv-dim-alert-body{display:flex;flex-direction:column;gap:4px;min-width:0}
.cv-dim-alert-body strong{font-size:13px;font-weight:800;color:#8a5a12}
.cv-dim-alert-body span{font-size:12px;color:#9a6f2a;line-height:1.55}
.cv-dim-alert-body b{color:#8a5a12;font-weight:700}
.cv-dim-flag{display:inline-flex;align-items:center;gap:4px;margin-left:6px;font-size:10px;font-weight:800;color:#a9711a;background:#fdf6e9;border:1px solid #f3d9a8;padding:2px 7px;border-radius:20px}

.cv-result-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-bottom:22px}
.cv-card{border:1px solid #e7ebf2;border-radius:14px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.cv-card-thumb{height:120px;background:#f3f5f9 url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><rect width="8" height="8" fill="%23e9ecf2"/><rect x="8" y="8" width="8" height="8" fill="%23e9ecf2"/></svg>');display:flex;align-items:center;justify-content:center;padding:8px}
.cv-card-thumb img{max-width:100%;max-height:104px;object-fit:contain;display:block}
.cv-card-body{padding:13px 15px 15px}
.cv-card-name{font-size:12.5px;font-weight:700;color:#2a3140;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:8px}
.cv-card-stats{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;margin-bottom:5px;flex-wrap:wrap}
.cv-was{color:#9aa3b8}
.cv-card-stats>i{color:#cfd6e6;font-size:10px}
.cv-now.ok{color:#7c3aed}
.cv-now.over{color:#e08a1e}
.cv-saved{margin-left:auto;font-size:11px;font-weight:800;color:#7c3aed;background:#f5f3ff;padding:3px 8px;border-radius:20px;white-space:nowrap}
.cv-saved.cv-grew{color:#9aa3b8;background:#f1f3f7}
.cv-card-meta{font-size:10.5px;color:#9aa3b8;font-weight:600;margin-bottom:11px}
.cv-dl{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #101725;background:#101725;color:#fff;font-weight:700;font-size:12.5px;padding:9px;border-radius:9px;cursor:pointer;transition:.15s}
.cv-dl:hover{background:#1d2740;border-color:#1d2740}
.cv-dl + .cv-dl{margin-top:7px}
.cv-free-pill{font-size:9px;font-weight:800;background:#16a34a;color:#fff;padding:1px 6px;border-radius:20px;margin-left:2px;text-transform:uppercase;letter-spacing:.03em}
.cv-dl-premium{color:#7a4d12;background:linear-gradient(180deg,#fdf0d8,#fbe6bf);border-color:#f0cf90}
.cv-dl-premium:hover{background:linear-gradient(180deg,#fbe6bf,#f7d9a0)}
.cv-card-fail{padding:22px 18px;text-align:center}
.cv-card-fail .cv-card-msg{font-size:12px;color:#e2435b;font-weight:600;margin-top:6px}

/* summary */
.cv-summary{display:flex;align-items:center;gap:30px;flex-wrap:wrap;padding:20px 24px;border:1px solid #e7ebf2;border-radius:14px;background:#fbfcfe}
.cv-sum-big{display:flex;flex-direction:column;line-height:1}
.cv-sum-big strong{font-size:30px;font-weight:900;color:#7c3aed;letter-spacing:-.02em}
.cv-sum-big span{font-size:12px;color:#7c879b;font-weight:600;margin-top:5px}
.cv-sum-rows{display:flex;gap:28px;flex-wrap:wrap}
.cv-sum-rows>div{display:flex;flex-direction:column;gap:3px}
.cv-sum-rows span{font-size:11px;color:#9aa3b8;font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.cv-sum-rows b{font-size:16px;font-weight:800;color:#2a3140}
.cv-sum-save{color:#7c3aed!important}

@media(max-width:1000px){ .cv-steps{flex-direction:column} }
@media(max-width:560px){ .cv-result-grid{grid-template-columns:1fr 1fr} .cv-summary{gap:18px} .cv-formats{grid-template-columns:1fr 1fr} .cv-row-target{padding-left:0} .cv-row-readout{min-width:42px} }
