html,body{margin:0;padding:0;min-width:320px;min-height:100%;background:#f5f6f8;color:#20242c}
body.optimizer_page{overflow-x:hidden;background:#f5f6f8;color:#20242c}
.optimizer_page .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.optimizer_page #layout{width:100%;max-width:1540px;min-height:100vh;margin:0 auto;background:#fff;overflow:visible}
.optimizer_page .portal_nav_group>a.active{background:#fff0f4;color:#ff2856!important}
.optimizer_breadcrumbs{display:flex;align-items:center;gap:9px;width:calc(100% - 48px);max-width:1480px;min-height:46px;margin:8px auto 0;padding:7px 2px;color:#89929f;font-size:13px;white-space:nowrap;overflow:hidden}
.optimizer_breadcrumbs a{color:#687180;text-decoration:none}
.optimizer_breadcrumbs a:hover{color:#ff2856}
.optimizer_breadcrumbs_home{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 auto}
.optimizer_breadcrumbs_home svg{width:16px;height:16px;fill:currentColor}
.optimizer_breadcrumbs_sep{color:#bcc2cb}
.optimizer_main{padding:18px 24px 76px;background:linear-gradient(180deg,#fff 0,#f8f9fb 100%)}
.optimizer_shell{width:100%;max-width:1080px;margin:0 auto}
.optimizer_intro{max-width:850px;margin:28px auto 26px;text-align:center}
.optimizer_intro h1{margin:0;color:#20242c;font-size:clamp(36px,5vw,62px);font-weight:800;line-height:1.02;letter-spacing:-.045em}
.optimizer_intro p{max-width:760px;margin:18px auto 0;color:#687180;font-size:17px;line-height:1.65}
.optimizer_limits{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:20px 0 0;padding:0;list-style:none}
.optimizer_limits li{padding:8px 13px;border:1px solid #dfe4ec;border-radius:999px;background:#fff;color:#5d6674;font-size:13px;font-weight:700;box-shadow:0 4px 16px rgba(31,40,55,.035)}
.optimizer_panel{overflow:hidden;background:#fff;border:1px solid #dfe4ec;border-radius:26px;box-shadow:0 24px 70px rgba(31,40,55,.1)}
.optimizer_options{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;border-bottom:1px solid #e4e8ee;background:#fff}
.optimizer_option_copy b{display:block;margin:0 0 4px;color:#252a32;font-size:15px}
.optimizer_option_copy span{display:block;color:#7b8491;font-size:12px;line-height:1.5}
.optimizer_switch{position:relative;width:52px;height:30px;flex:0 0 auto}
.optimizer_switch input{position:absolute;opacity:0;width:1px;height:1px}
.optimizer_slider{position:absolute;inset:0;border-radius:999px;background:#d8dde5;cursor:pointer;transition:.2s}
.optimizer_slider:before{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 2px 7px rgba(0,0,0,.2);transition:.2s}
.optimizer_switch input:checked+.optimizer_slider{background:#ff2856}
.optimizer_switch input:checked+.optimizer_slider:before{transform:translateX(22px)}
.optimizer_switch input:focus-visible+.optimizer_slider{outline:3px solid rgba(255,40,86,.25);outline-offset:3px}
.optimizer_dropzone{display:flex;align-items:center;justify-content:center;min-height:310px;margin:20px;padding:34px;text-align:center;border:2px dashed #cfd6e0;border-radius:21px;background:#f7f8fa;cursor:pointer;transition:border-color .18s,background-color .18s,transform .18s}
.optimizer_dropzone:hover,.optimizer_dropzone.drag{border-color:#ff2856;background:#fff3f6;transform:scale(.998)}
.optimizer_drop_icon{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 18px;border:1px solid #e0e5ec;border-radius:22px;background:#fff;color:#ff2856;font-size:34px;font-weight:800;box-shadow:0 10px 28px rgba(31,40,55,.08)}
.optimizer_dropzone h2{margin:0 0 8px;color:#252a32;font-size:25px;font-weight:800;letter-spacing:-.03em}
.optimizer_dropzone p{margin:0;color:#737d8b;font-size:14px}
.optimizer_choose{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:17px;padding:0 20px;border:1px solid #ff2856;border-radius:13px;background:#ff2856;color:#fff;font-weight:800;cursor:pointer;transition:.2s}
.optimizer_choose:hover,.optimizer_choose:focus{border-color:#e71946;background:#e71946}
.filelist{display:none;border-top:1px solid #e3e7ed}
.filelist.visible{display:block}
.file-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,1.2fr) 112px;gap:15px;align-items:center;padding:16px 20px;border-bottom:1px solid #e6eaf0}
.file-row:last-child{border-bottom:0}
.file-main{display:flex;align-items:center;gap:12px;min-width:0}
.thumb{display:block;width:54px;height:54px;flex:0 0 auto;object-fit:cover;border:1px solid #dfe4ec;border-radius:11px;background:#f0f2f5}
.filename{overflow:hidden;color:#252a32;font-size:14px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}
.meta{margin-top:4px;color:#7b8491;font-size:12px}
.progress-wrap{min-width:0}
.progress-top{display:flex;justify-content:space-between;gap:12px;margin-bottom:7px;color:#7b8491;font-size:12px}
.progress-top>span:last-child{display:inline-flex;align-items:center;gap:5px}
.saving{color:#188254;font-weight:800}
.bar{overflow:hidden;height:8px;border-radius:999px;background:#e9edf2}
.bar>i{display:block;width:0;height:100%;border-radius:999px;background:linear-gradient(90deg,#ff2856,#ff7795);transition:width .22s ease}
.download{justify-self:end;min-width:100px;padding:10px 12px;text-align:center;text-decoration:none;border:1px solid #d8dee7;border-radius:11px;background:#fff;color:#353b45;font-size:12px;font-weight:800;cursor:pointer}
.download:hover{border-color:#ff9fb3;background:#fff3f6;color:#e71946}
.download.disabled{opacity:.45;pointer-events:none}
.error{color:#c23745;font-weight:700}
.batchbar{display:none;align-items:center;justify-content:space-between;gap:16px;padding:15px 20px;border-top:1px solid #e3e7ed;background:#f8f9fb}
.batchbar.visible{display:flex}
.batchbar span{color:#6f7885;font-size:13px}
.clear{padding:8px;border:0;background:transparent;color:#66707d;font-weight:750;cursor:pointer}
.clear:hover{color:#ff2856}
.optimizer_guide_link{margin:22px 0 0;text-align:center;color:#687180;font-size:14px}
.optimizer_guide_link a{color:#e71946;font-weight:800;text-decoration:none}
.optimizer_guide_link a:hover{text-decoration:underline}
.toast{position:fixed;right:20px;bottom:20px;z-index:900;padding:12px 15px;border-radius:12px;background:#252a32;color:#fff;font-size:13px;opacity:0;pointer-events:none;transform:translateY(8px);transition:.2s}
.toast.show{opacity:1;transform:translateY(0)}
@media(max-width:720px){
  .optimizer_main{padding:8px 12px 54px}
  .optimizer_breadcrumbs{width:calc(100% - 24px);margin-top:4px}
  .optimizer_intro{margin:20px auto 22px}
  .optimizer_intro h1{font-size:38px}
  .optimizer_intro p{font-size:15px}
  .optimizer_limits{gap:7px}
  .optimizer_limits li{padding:7px 10px;font-size:11px}
  .optimizer_panel{border-radius:20px}
  .optimizer_options{align-items:flex-start;padding:16px}
  .optimizer_dropzone{min-height:275px;margin:14px;padding:26px 14px}
  .optimizer_dropzone h2{font-size:21px}
  .file-row{grid-template-columns:1fr;padding:15px 16px}
  .download{justify-self:start}
}
