:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f6f8;--panel:#fff;--line:#e7eaee;--text:#18212f;--muted:#7a8493;--primary:#2563eb;--primary-soft:#eff5ff;--danger:#dc4c4c;--success:#138a5b;--warning:#c27a15;--radius:16px;--shadow:0 10px 30px #1f2b3d0f;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);min-width:1120px;color:var(--text);margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}.app-shell{min-height:100vh;padding:22px}.topbar{justify-content:space-between;align-items:center;max-width:1680px;height:72px;margin:0 auto 18px;display:flex}.topbar h1{letter-spacing:-.4px;margin:0 0 6px;font-size:24px}.topbar p{color:var(--muted);margin:0;font-size:13px}.privacy-badge{color:#267451;background:#f4fbf7;border:1px solid #dcece5;border-radius:999px;align-items:center;gap:9px;padding:10px 14px;font-size:13px;font-weight:650;display:inline-flex}.privacy-dot{background:#26a269;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #26a2691f}.workspace{grid-template-columns:320px minmax(480px,1fr) 350px;gap:16px;max-width:1680px;height:calc(100vh - 134px);min-height:650px;margin:0 auto;display:grid}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-height:0;box-shadow:var(--shadow);overflow:hidden}.panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:70px;padding:0 18px;display:flex}.panel-heading h2{margin:0 0 5px;font-size:15px}.panel-heading span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;max-width:210px;font-size:12px;display:block;overflow:hidden}.text-button{color:var(--primary);background:0 0;border:0;padding:7px;font-size:13px}.text-button.danger{color:var(--danger)}.file-panel{flex-direction:column;display:flex}.drop-zone{min-height:112px;color:var(--text);background:#f8fbff;border:1.5px dashed #b8c7df;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;margin:14px;transition:all .2s;display:flex}.drop-zone:hover,.drop-zone.dragover{border-color:var(--primary);background:var(--primary-soft);transform:translateY(-1px)}.drop-icon{width:30px;height:30px;color:var(--primary);background:#e6efff;border-radius:9px;place-items:center;margin-bottom:8px;font-size:22px;display:grid}.drop-zone strong{font-size:14px}.drop-zone small{color:var(--muted);margin-top:5px;font-size:11px}.folder-import-button{color:#4f5c70;text-align:left;background:#fff;border:1px solid #dce4ef;border-radius:10px;grid-template-columns:24px 1fr;align-items:center;gap:8px;min-height:42px;margin:-4px 14px 12px;padding:0 12px;display:grid}.folder-import-button:hover{color:var(--primary);background:#f8fbff;border-color:#9db7e8}.folder-import-button>span:first-child{width:24px;height:24px;color:var(--primary);background:#eef4ff;border-radius:7px;place-items:center;display:grid}.folder-import-button strong{font-size:11px;display:block}.folder-import-button small{color:var(--muted);margin-top:2px;font-size:9px;display:block}.file-list{flex:1;min-height:0;padding:0 10px 12px;overflow:auto}.empty-list{color:#9aa3af;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:190px;display:flex}.empty-list small{max-width:190px;margin-top:8px;line-height:1.6}.file-item{text-align:left;background:#f8f9fb;border:1px solid #0000;border-radius:11px;grid-template-columns:48px minmax(0,1fr) 38px;align-items:center;gap:9px;width:100%;margin-bottom:8px;padding:9px;transition:all .18s;display:grid}.file-item:hover{background:#f3f6fa}.file-item.selected{box-shadow:inset 3px 0 0 var(--primary);background:#f0f5ff;border-color:#a8c4fa}.file-thumb{object-fit:cover;background:#e9edf2;border-radius:8px;width:48px;height:48px}.file-info{min-width:0}.file-name{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650;display:block;overflow:hidden}.file-meta{color:var(--muted);gap:6px;margin-top:5px;font-size:10px;display:flex}.file-status{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);margin-top:5px;font-size:10px;overflow:hidden}.file-status.done{color:var(--success)}.file-status.error{color:var(--danger)}.file-status.warning{color:var(--warning)}.file-status.processing{color:var(--primary)}.file-item-actions{flex-direction:column;justify-content:space-between;align-self:stretch;align-items:center;gap:2px;display:flex}.file-location-button{color:#718096;background:0 0;border:0;border-radius:7px;min-width:36px;height:23px;padding:0 5px;font-size:9px}.file-location-button:hover,.file-location-button:focus-visible{color:var(--primary);background:#e7efff;outline:none}.remove-file{color:#9aa3af;background:0 0;border:0;border-radius:7px;width:25px;height:23px;padding:0;font-size:18px;line-height:1}.remove-file:hover{color:var(--danger);background:#fff0f0}.preview-panel{flex-direction:column;display:flex}.preview-heading{flex:none}.preview-actions{gap:8px;display:flex}.preview-stage{border:1px solid var(--line);background-color:#f7f8fa;background-image:linear-gradient(45deg,#edf0f3 25%,#0000 25%),linear-gradient(-45deg,#edf0f3 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#edf0f3 75%),linear-gradient(-45deg,#0000 75%,#edf0f3 75%);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;border-radius:13px;flex:1;place-items:center;min-height:0;margin:14px 14px 0;display:grid;position:relative;overflow:hidden}.preview-placeholder{color:#8c96a5;flex-direction:column;align-items:center;display:flex}.placeholder-picture{margin-bottom:12px;font-size:46px;font-weight:200}.preview-placeholder strong{color:#647083;font-size:14px}.preview-placeholder span{margin-top:8px;font-size:11px}.compare-view{position:absolute;inset:0}.preview-image{object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.compressed-layer{clip-path:inset(0 50% 0 0);position:absolute;inset:0;overflow:hidden}.compare-divider{z-index:4;cursor:ew-resize;touch-action:none;-webkit-user-select:none;user-select:none;outline:none;width:44px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.compare-divider:before{content:"";background:#fffffff2;width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 0 0 1px #141e2d47}.compare-divider span{color:#fff;background:#1b2636b8;border:2px solid #fff;border-radius:50%;place-items:center;width:38px;height:38px;font-size:18px;transition:background .16s,transform .16s,box-shadow .16s;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.compare-divider:hover span,.compare-divider.dragging span{background:var(--primary);transform:translate(-50%,-50%)scale(1.06);box-shadow:0 5px 18px #2563eb4d}.compare-divider:focus-visible span{box-shadow:0 0 0 4px #2563eb40,0 5px 18px #2563eb40}.compare-divider[aria-disabled=true]{cursor:default;pointer-events:none}.preview-label{z-index:3;color:#fff;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#171f2ba8;border-radius:7px;padding:5px 9px;font-size:11px;position:absolute;top:12px}.original-label{left:12px}.compressed-label{right:12px}input[type=range]{width:100%;accent-color:var(--primary)}.stats-bar{border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(4,1fr);min-height:76px;margin:14px;display:grid;overflow:hidden}.stats-bar>div{border-right:1px solid var(--line);flex-direction:column;justify-content:center;padding:13px 14px;display:flex}.stats-bar>div:last-child{border-right:0}.stats-bar span{color:var(--muted);font-size:10px}.stats-bar strong{margin-top:7px;font-size:14px}.stats-bar .positive{color:var(--success)}.stats-bar .negative{color:var(--danger)}.stats-bar .stats-progress{border-top:1px solid var(--line);background:#f8fbff;border-right:0;grid-column:1/-1;padding:10px 14px 12px}.stats-progress>div{flex-direction:row;justify-content:space-between;align-items:center;display:flex}.stats-progress strong{color:var(--primary);margin-top:0;font-size:11px}.stats-progress progress{border:0;border-radius:999px;width:100%;height:5px;margin-top:8px;overflow:hidden}.settings-panel{flex-direction:column;display:flex}.settings-scroll{flex:1;min-height:0;padding:4px 16px 18px;overflow-y:auto}.setting-group{border:0;border-bottom:1px solid var(--line);margin:17px 0 0;padding:6px 0 14px}.setting-group:last-child{border-bottom:0}.setting-group legend{margin:0;padding:0;font-size:12px;font-weight:700;line-height:1.35}select,input[type=number],input[type=text]{width:100%;height:38px;color:var(--text);background:#fff;border:1px solid #dce1e8;border-radius:9px;outline:none;padding:0 10px}select:focus,input[type=number]:focus,input[type=text]:focus{border-color:#8fb1f3;box-shadow:0 0 0 3px #2563eb14}.setting-tip{color:var(--muted);margin:8px 0 0;font-size:10px;line-height:1.5}.advanced-settings{background:#fbfcfe;border:1px solid #dde4ee;border-radius:12px;margin-top:12px;overflow:hidden}.advanced-settings summary{cursor:pointer;-webkit-user-select:none;user-select:none;grid-template-columns:28px 1fr;align-items:center;gap:9px;min-height:58px;padding:11px 12px;list-style:none;display:grid}.advanced-settings summary::-webkit-details-marker{display:none}.advanced-settings summary:hover{background:#f5f8fd}.advanced-summary-icon{width:27px;height:27px;color:var(--primary);background:#eaf1ff;border-radius:8px;place-items:center;font-size:17px;line-height:1;transition:transform .2s;display:grid}.advanced-settings[open] .advanced-summary-icon{transform:rotate(180deg)}.advanced-settings summary strong{font-size:12px;display:block}.advanced-settings summary small{color:var(--muted);margin-top:3px;font-size:9px;font-weight:400;display:block}.advanced-settings-content{border-top:1px solid var(--line);background:#fff;padding:0 12px 4px}.advanced-settings-content .setting-group:last-child{border-bottom:0}.segmented-control{border:1px solid #dfe4eb;border-radius:9px;display:grid;overflow:hidden}.segmented-control.three{grid-template-columns:repeat(3,1fr)}.segmented-control label{min-width:0}.segmented-control input{display:none}.segmented-control span{color:#687385;cursor:pointer;border-right:1px solid #dfe4eb;place-items:center;height:36px;font-size:11px;display:grid}.segmented-control label:last-child span{border-right:0}.segmented-control input:checked+span{background:var(--primary-soft);color:var(--primary);font-weight:700}.range-row{grid-template-columns:1fr 42px;align-items:center;gap:12px;display:grid}.range-row output{background:#f1f4f8;border-radius:8px;place-items:center;height:32px;font-size:12px;font-weight:700;display:grid}.switch-row{cursor:pointer;grid-template-columns:1fr 38px;align-items:center;gap:12px;margin-top:12px;display:grid}.switch-row span{min-width:0}.switch-row strong{font-size:11px;display:block}.switch-row small{color:var(--muted);margin-top:3px;font-size:9px;line-height:1.4;display:block}.switch-row input{display:none}.switch-row i{background:#cdd3dc;border-radius:999px;width:36px;height:20px;transition:all .2s;position:relative}.switch-row i:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:all .2s;position:absolute;top:2px;left:2px;box-shadow:0 2px 5px #0000002e}.switch-row input:checked+i{background:var(--primary)}.switch-row input:checked+i:after{transform:translate(16px)}.inline-input{grid-template-columns:1fr 60px;align-items:center;gap:8px;margin-top:10px;display:grid}.inline-input span{color:var(--muted);font-size:11px}.two-column-inputs{grid-template-columns:1fr 1fr;gap:10px;margin-top:11px;display:grid}.two-column-inputs label>span{color:var(--muted);margin-bottom:6px;font-size:10px;display:block}.number-unit{position:relative}.number-unit input{padding-right:32px}.number-unit em{color:var(--muted);font-size:9px;font-style:normal;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.filename-pattern-inputs{transition:opacity .18s}.filename-example{color:var(--muted);margin:10px 0 0;font-size:10px;line-height:1.5}.filename-example code{color:var(--primary);word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.compact-switch{flex-direction:column;justify-content:flex-end;display:flex}.compact-switch input{width:18px;height:18px;accent-color:var(--primary);margin:10px 0}.color-row{justify-content:space-between;align-items:center;font-size:11px;display:flex}.color-row>div{align-items:center;gap:7px;display:flex}.color-row input[type=color]{background:#fff;border:1px solid #dce1e8;border-radius:8px;width:32px;height:32px;padding:2px}.color-row code{color:var(--muted);font-size:10px}.action-area{border-top:1px solid var(--line);background:#fff;flex:none;padding:14px 16px 16px}.primary-button,.secondary-button{border-radius:10px;height:40px;font-size:12px;font-weight:700}.primary-button{background:var(--primary);color:#fff;border:0;width:100%;box-shadow:0 6px 15px #2563eb33}.primary-button:hover:not(:disabled){background:#1e57d1}.secondary-button{color:#4f5c70;background:#fff;border:1px solid #dce1e8;padding:0 14px}.secondary-button:hover:not(:disabled){color:var(--primary);background:#f8fbff;border-color:#9db7e8}.action-row{grid-template-columns:.8fr 1.15fr 1.35fr;gap:8px;margin-top:9px;display:grid}.action-row .secondary-button{width:100%}.replace-button:not(:disabled){color:#9a5a0a;background:#fffaf3;border-color:#f1c38b}.replace-button{white-space:nowrap;padding:0 8px}.replace-button:hover:not(:disabled){color:#824500;background:#fff5e7;border-color:#eaa95a}.batch-progress{margin-bottom:10px}.batch-progress>div{color:var(--muted);justify-content:space-between;margin-bottom:6px;font-size:10px;display:flex}.batch-progress strong{color:var(--primary)}.batch-progress progress{border:0;border-radius:999px;width:100%;height:5px;overflow:hidden}progress::-webkit-progress-bar{background:#eaf0f7}progress::-webkit-progress-value{background:var(--primary)}.toast{z-index:30;color:#fff;opacity:0;pointer-events:none;background:#1a2331eb;border-radius:10px;max-width:440px;padding:11px 16px;font-size:12px;transition:all .22s;position:fixed;bottom:26px;left:50%;transform:translate(-50%,16px);box-shadow:0 12px 30px #0000002e}.toast.show{opacity:1;transform:translate(-50%)}.location-dialog{width:min(460px,100vw - 32px);color:var(--text);background:0 0;border:0;border-radius:16px;padding:0;box-shadow:0 24px 70px #141d2b3d}.location-dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#171f2b6b}.location-dialog-card{background:#fff;border-radius:16px;padding:22px}.location-dialog-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.location-dialog-eyebrow{color:var(--primary);letter-spacing:.08em;margin-bottom:4px;font-size:10px;font-weight:700;display:block}.location-dialog-heading h2{margin:0;font-size:18px}.location-dialog-close{color:#7a8493;background:#f3f5f7;border:0;border-radius:8px;width:30px;height:30px;padding:0;font-size:20px;line-height:1}.location-dialog-close:hover{color:var(--text);background:#e9edf2}.location-dialog-hint{color:var(--muted);margin:14px 0;font-size:12px;line-height:1.65}.location-path-box{background:#f8fafc;border:1px solid #dce4ef;border-radius:10px;padding:12px 13px}.location-path-box span{color:var(--muted);margin-bottom:7px;font-size:10px;display:block}.location-path-box code{color:#334155;overflow-wrap:anywhere;white-space:pre-wrap;max-height:96px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.55;display:block;overflow:auto}.location-dialog-actions{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.location-dialog-actions .secondary-button,.location-copy-button{width:auto;min-width:88px;height:38px;margin:0;padding:0 16px}@media (max-width:1240px){body{min-width:1024px}.workspace{grid-template-columns:280px minmax(430px,1fr) 320px}.app-shell{padding:16px}}.format-extra-row{margin-top:14px}.no-top-margin{margin-top:0}.setting-group[hidden]{display:none!important}.segmented-control.two{grid-template-columns:repeat(2,1fr)}.engine-status{background:#f8fafc;border:1px solid #e3e8ef;border-radius:10px;grid-template-columns:9px 1fr;align-items:start;gap:9px;margin-top:10px;padding:10px 11px;display:grid}.engine-status-dot{background:#94a3b8;border-radius:50%;width:8px;height:8px;margin-top:3px;box-shadow:0 0 0 3px #94a3b81f}.engine-status strong{font-size:10px;line-height:1.25;display:block}.engine-status small{color:var(--muted);margin-top:3px;font-size:9px;line-height:1.45;display:block}.engine-status[data-state=loading]{background:#eff6ff;border-color:#bfdbfe}.engine-status[data-state=loading] .engine-status-dot{background:#2563eb;animation:1.05s infinite statusPulse;box-shadow:0 0 0 3px #2563eb21}.engine-status[data-state=ready]{background:#f0fdf4;border-color:#bbf7d0}.engine-status[data-state=ready] .engine-status-dot{background:#16a34a;box-shadow:0 0 0 3px #16a34a21}.engine-status[data-state=fallback]{background:#fff7ed;border-color:#fed7aa}.engine-status[data-state=fallback] .engine-status-dot{background:#ea580c;box-shadow:0 0 0 3px #ea580c1f}.engine-status[data-state=fast]{background:#f8fafc;border-color:#e2e8f0}.wasm-png-options.is-disabled{opacity:.45}@keyframes statusPulse{50%{opacity:.35;transform:scale(.8)}}.segmented-control.four{grid-template-columns:repeat(4,1fr)}.segmented-control.four span{white-space:nowrap;padding:0 3px;font-size:10px}.png-mode-cards{gap:8px;display:grid}.png-mode-card{cursor:pointer;display:block;position:relative}.png-mode-card>input{opacity:0;pointer-events:none;position:absolute}.png-mode-card-body{background:#fff;border:1px solid #dfe4eb;border-radius:10px;flex-direction:column;justify-content:center;min-height:58px;padding:10px 11px;transition:border-color .18s,background .18s,box-shadow .18s,transform .18s;display:flex}.png-mode-card:hover .png-mode-card-body{background:#fbfdff;border-color:#b7c9e8;transform:translateY(-1px)}.png-mode-card>input:checked+.png-mode-card-body{background:var(--primary-soft);border-color:#8fb1f3;box-shadow:0 0 0 3px #2563eb12}.png-mode-title{color:#384458;align-items:center;gap:7px;font-size:11px;font-weight:750;display:flex}.png-mode-card>input:checked+.png-mode-card-body .png-mode-title{color:var(--primary)}.png-mode-title em{color:#18794e;background:#eaf8f1;border-radius:999px;padding:2px 5px;font-size:8px;font-style:normal;font-weight:700}.png-mode-card-body small{color:var(--muted);margin-top:4px;font-size:9px;line-height:1.45}.safe-mode-card>input:checked+.png-mode-card-body{background:#f2fbf6;border-color:#8fd5b4;box-shadow:0 0 0 3px #138a5b12}.safe-mode-card>input:checked+.png-mode-card-body .png-mode-title{color:var(--success)}.lossless-notice{background:#f3fbf7;border:1px solid #ccebdc;border-radius:10px;grid-template-columns:24px 1fr;align-items:start;gap:9px;margin-top:10px;padding:10px 11px;display:grid}.lossless-notice-icon{width:22px;height:22px;color:var(--success);background:#dff5ea;border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid}.lossless-notice strong{color:#176744;font-size:10px;display:block}.lossless-notice small{color:#4d7965;margin-top:3px;font-size:9px;line-height:1.5;display:block}.single-setting-row{margin-top:11px}.single-setting-row label>span{color:var(--muted);margin-bottom:6px;font-size:10px;display:block}.oxipng-setting-row{padding-top:1px}
