/* ================================================================
   IMAGESQUEEZE — CLEAN LIGHT DESIGN SYSTEM (iLoveIMG inspired)
   Fonts loaded via <link> in <head> for better performance
   ================================================================ */

/* ── TOKENS ──────────────────────────────────────────────── */
:root{
  --c-primary:  #e8533a;
  --c-primary2: #d94428;
  --c-accent:   #f5a623;
  --c-success:  #22c55e;
  --c-warn:     #f59e0b;
  --c-bg:       #ffffff;
  --c-bg2:      #f7f8fa;
  --c-surface:  #ffffff;
  --c-surface2: #f3f4f6;
  --c-border:   #e5e7eb;
  --c-border2:  #d1d5db;
  --c-text:     #111827;
  --c-text2:    #374151;
  --c-muted:    #6b7280;
  --c-muted2:   #9ca3af;
  --c-dark:     #1a1a2e;
  --c-dark2:    #16213e;
  --r:   8px;
  --rL:  12px;
  --rXL: 16px;
  --rXXL:24px;
  --shadow-sm: 0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.04);
  --shadow:    0 4px 16px rgba(0,0,0,.08),0 2px 4px rgba(0,0,0,.04);
  --shadow-lg: 0 10px 40px rgba(0,0,0,.10),0 4px 8px rgba(0,0,0,.04);
}

/* ── RESET ───────────────────────────────────────────────── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden;max-width:100%;}
body{
  font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  background:var(--c-bg);color:var(--c-text);
  min-height:100vh;overflow-x:hidden;line-height:1.6;
  font-size:16px;
  display:flex;flex-direction:column;
  width:100%;
}
#SiteHeader{flex-shrink:0;width:100%;}
#SiteFooter{flex-shrink:0;width:100%;}

/* Every direct child of body except header/footer grows to fill space */
body > *:not(#SiteHeader):not(#SiteFooter){
  flex:1 0 auto;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
button{font-family:'DM Sans',-apple-system,BlinkMacSystemFont,sans-serif;cursor:pointer;}
.H1,.H2,.H3,.NavLogo,.ToolName,.StatVal,.ResultName{
  font-family:'Syne','Arial Black',Arial,sans-serif;
}

/* ── LAYOUT ──────────────────────────────────────────────── */
.Wrap   {max-width:1160px;margin:0 auto;padding:0 24px;box-sizing:border-box;}
.WrapSm {max-width:800px; margin:0 auto;padding:0 24px;box-sizing:border-box;}
.WrapXs {max-width:620px; margin:0 auto;padding:0 24px;box-sizing:border-box;}
.Section{padding:72px 0;}
.SectionGray{padding:72px 0;background:var(--c-bg2);}

/* ── TYPOGRAPHY ──────────────────────────────────────────── */
.Tag{
  display:inline-flex;align-items:center;gap:6px;
  font-size:.72rem;font-weight:700;text-transform:uppercase;
  letter-spacing:1.5px;color:var(--c-primary);margin-bottom:12px;
}
.H1{
  font-size:clamp(2rem,4.5vw,3.6rem);
  font-weight:800;letter-spacing:-1.5px;line-height:1.1;color:var(--c-text);
}
.H2{
  font-size:clamp(1.5rem,3vw,2.4rem);
  font-weight:800;letter-spacing:-1px;line-height:1.15;color:var(--c-text);
}
.H3{font-size:1.1rem;font-weight:700;color:var(--c-text);}
.Lead{color:var(--c-muted);font-size:1.05rem;line-height:1.75;max-width:560px;margin-left:auto;margin-right:auto;text-align:center;}
.Grad{
  background:linear-gradient(135deg,var(--c-primary),var(--c-accent));
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
}
.FH{color:var(--c-muted);font-size:.78rem;margin-top:4px;}

/* ── NAV ─────────────────────────────────────────────────── */
#SiteHeader{
  position:sticky;top:0;z-index:500;
  background:#fff;border-bottom:1px solid var(--c-border);
  box-shadow:var(--shadow-sm);
}
.NavWrap{
  display:flex;align-items:center;gap:8px;
  max-width:1160px;margin:0 auto;padding:0 24px;height:64px;
}
.NavLogo{
  font-family:'Syne','Arial Black',Arial,sans-serif;
  font-size:1.3rem;font-weight:800;
  letter-spacing:-.5px;white-space:nowrap;color:var(--c-text);
  margin-right:12px;
}
.NavLogo span{color:var(--c-primary);}
.NavLinks{display:flex;list-style:none;gap:2px;margin-left:auto;}
.NavLinks a{
  display:block;padding:7px 13px;border-radius:var(--r);
  font-size:.88rem;font-weight:500;color:var(--c-muted);
  transition:color .15s,background .15s;
}
.NavLinks a:hover{color:var(--c-text);background:var(--c-bg2);}
.NavLinks a.active{color:var(--c-primary);font-weight:600;}
.NavCta{
  margin-left:12px;padding:9px 20px;border-radius:var(--r);
  background:var(--c-primary);
  color:#fff;font-size:.88rem;font-weight:700;white-space:nowrap;
  transition:background .15s,transform .15s,box-shadow .15s;
  border:none;
}
.NavCta:hover{background:var(--c-primary2);transform:translateY(-1px);box-shadow:0 4px 14px rgba(232,83,58,.35);}
.NavBurger{
  display:none;flex-direction:column;gap:5px;
  background:none;border:1px solid var(--c-border);
  padding:8px 9px;border-radius:var(--r);color:var(--c-text);
  margin-left:auto;
}
.NavBurger span{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;}

/* ── HERO ────────────────────────────────────────────────── */
.Hero{
  padding:80px 24px 60px;
  text-align:center;
  background:var(--c-bg);
  border-bottom:1px solid var(--c-border);
}
.HeroBadge{
  display:inline-flex;align-items:center;gap:7px;
  background:#fff3f0;border:1px solid #ffd5cc;
  color:var(--c-primary);padding:5px 14px;border-radius:100px;
  font-size:.78rem;font-weight:600;margin-bottom:20px;
}
.HeroActions{
  display:flex;justify-content:center;gap:12px;margin-top:28px;flex-wrap:wrap;
}
.HeroStats{
  display:flex;justify-content:center;gap:32px;margin-top:40px;
  padding-top:32px;border-top:1px solid var(--c-border);flex-wrap:wrap;
}
.HeroStat{text-align:center;}
.HeroStatVal{font-family:'Syne',Arial,sans-serif;font-size:1.6rem;font-weight:800;color:var(--c-text);}
.HeroStatLabel{font-size:.8rem;color:var(--c-muted);margin-top:2px;}

/* ── BUTTONS ─────────────────────────────────────────────── */
.Btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:11px 22px;border-radius:var(--r);border:none;
  font-weight:600;font-size:.9rem;cursor:pointer;
  transition:all .15s;font-family:inherit;
}
.Btn:disabled{opacity:.5;cursor:not-allowed;}
.BtnPrimary{background:var(--c-primary);color:#fff;}
.BtnPrimary:hover{background:var(--c-primary2);transform:translateY(-1px);box-shadow:0 4px 14px rgba(232,83,58,.35);}
.BtnSuccess{background:var(--c-success);color:#fff;}
.BtnSuccess:hover{background:#16a34a;transform:translateY(-1px);}
.BtnOutline{background:#fff;border:1.5px solid var(--c-border2);color:var(--c-text2);}
.BtnOutline:hover{border-color:var(--c-primary);color:var(--c-primary);background:#fff3f0;}
.BtnGhost{background:var(--c-bg2);border:1px solid var(--c-border);color:var(--c-muted);}
.BtnGhost:hover{background:var(--c-border);color:var(--c-text);}

/* ── TOOL CARDS (Homepage grid) ──────────────────────────── */
.ToolsGrid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
  gap:12px;
  width:100%;
  box-sizing:border-box;
}
@media(max-width:640px){
  .Wrap{padding:0 12px;}
  .WrapSm{padding:0 12px;}
  .ToolsGrid{
    grid-template-columns:repeat(2,1fr);
    gap:8px;
  }
  .ToolCard{padding:14px 12px;gap:8px;}
  .ToolName{font-size:.82rem;}
  .ToolDesc{font-size:.75rem;line-height:1.5;}
  .ToolIcon{width:38px;height:38px;font-size:1.1rem;border-radius:10px;}
  .ToolArrow{font-size:.74rem;}
}
.ToolCard{
  display:flex;flex-direction:column;gap:10px;
  padding:22px 20px;
  background:#fff;border:1.5px solid var(--c-border);
  border-radius:var(--rXL);
  transition:border-color .18s,box-shadow .18s,transform .18s;
  cursor:pointer;
}
.ToolCard:hover{
  border-color:var(--c-primary);
  box-shadow:0 8px 28px rgba(232,83,58,.12);
  transform:translateY(-3px);
}
.ToolIcon{
  width:48px;height:48px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;flex-shrink:0;
}
.ToolName{font-size:.92rem;font-weight:700;color:var(--c-text);line-height:1.3;}
.ToolDesc{color:var(--c-muted);font-size:.8rem;line-height:1.55;flex:1;}
.ToolArrow{
  font-size:.78rem;font-weight:700;color:var(--c-primary);
  display:flex;align-items:center;gap:4px;margin-top:2px;
}

/* ── BADGE ───────────────────────────────────────────────── */
.Badge{display:inline-block;padding:2px 8px;border-radius:100px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;}
.BadgePrimary{background:#fff3f0;color:var(--c-primary);border:1px solid #ffd5cc;}
.BadgePink  {background:#fdf2f8;color:#db2777;border:1px solid #fbcfe8;}
.BadgeGreen {background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0;}
.BadgeWarn  {background:#fffbeb;color:#d97706;border:1px solid #fde68a;}
.BadgePurple{background:#faf5ff;color:#7c3aed;border:1px solid #e9d5ff;}
.BadgeBlue  {background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe;}

/* ── STATS GRID ──────────────────────────────────────────── */
.StatsGrid{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:0;border:1.5px solid var(--c-border);
  border-radius:var(--rXL);overflow:hidden;
  background:#fff;
}
.StatItem{
  padding:28px 20px;text-align:center;
  border-right:1px solid var(--c-border);
}
.StatItem:last-child{border-right:none;}
.StatVal{
  font-family:'Syne',Arial,sans-serif;font-size:2rem;font-weight:800;
  color:var(--c-primary);
}
.StatLabel{color:var(--c-muted);font-size:.8rem;margin-top:4px;}

/* ── FAQ ─────────────────────────────────────────────────── */
.FaqList{display:flex;flex-direction:column;gap:8px;}
.FaqItem{
  background:#fff;border:1.5px solid var(--c-border);
  border-radius:var(--rL);overflow:hidden;
}
.FaqQ{
  padding:16px 20px;cursor:pointer;user-select:none;
  display:flex;justify-content:space-between;align-items:center;
  font-weight:600;font-size:.93rem;transition:background .12s;
}
.FaqQ:hover{background:var(--c-bg2);}
.FaqQ .ico{color:var(--c-primary);font-size:1.1rem;transition:transform .25s;flex-shrink:0;margin-left:12px;}
.FaqA{display:none;padding:0 20px 16px;color:var(--c-muted);font-size:.88rem;line-height:1.75;}
.FaqItem.open .FaqA{display:block;}
.FaqItem.open .FaqQ .ico{transform:rotate(45deg);}
.FaqItem.open .FaqQ{color:var(--c-primary);}

/* ── BREADCRUMB ──────────────────────────────────────────── */
.Breadcrumb{
  display:flex;align-items:center;gap:7px;
  font-size:.8rem;color:var(--c-muted);padding:14px 0;
}
.Breadcrumb a{color:var(--c-muted);transition:color .12s;}
.Breadcrumb a:hover{color:var(--c-primary);}
.Breadcrumb .sep{opacity:.4;}

/* ── AD SLOTS ────────────────────────────────────────────── */
.AdSlot{
  display:none;min-height:90px;background:var(--c-bg2);
  border:1px dashed var(--c-border2);border-radius:var(--r);
  margin:16px 0;text-align:center;padding:10px;
}
.AdSlot:not(:empty){display:block;}

/* ── TOOL PAGE SHELL ─────────────────────────────────────── */
.ToolHero{
  background:#fff;border-bottom:1px solid var(--c-border);
  padding:48px 24px 40px;text-align:center;
}
.ToolHeroBadge{
  display:inline-flex;align-items:center;gap:6px;
  background:#fff3f0;border:1px solid #ffd5cc;
  color:var(--c-primary);padding:4px 12px;border-radius:100px;
  font-size:.75rem;font-weight:700;margin-bottom:14px;
  text-transform:uppercase;letter-spacing:1px;
}
.ToolLayout{
  display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:24px;align-items:start;
}
.ToolSticky{position:sticky;top:80px;}

/* ── TOOL SHELL (upload area container) ──────────────────── */
.ToolShell{
  background:#fff;border:1.5px solid var(--c-border);
  border-radius:var(--rXXL);overflow:hidden;
  box-shadow:var(--shadow);
}
.ShellBar{
  padding:12px 20px;border-bottom:1px solid var(--c-border);
  display:flex;align-items:center;gap:8px;
  background:var(--c-bg2);
}
.ShellDot{width:10px;height:10px;border-radius:50%;}
.ShellTitle{margin-left:8px;color:var(--c-muted);font-size:.8rem;font-weight:500;}

/* ── UPLOAD ZONE ─────────────────────────────────────────── */
.UploadZone{
  margin:20px;border-radius:var(--rXL);
  border:2px dashed #e0e0e8;
  padding:52px 24px;text-align:center;cursor:pointer;
  transition:border-color .2s,background .2s;
  background:var(--c-bg2);
}
.UploadZone:hover,.UploadZone.over{
  border-color:var(--c-primary);
  background:#fff8f7;
}
.UploadIcon{
  width:72px;height:72px;border-radius:20px;margin:0 auto 16px;
  background:linear-gradient(135deg,#fff3f0,#fde8e4);
  display:flex;align-items:center;justify-content:center;font-size:2rem;
  transition:transform .2s;
}
.UploadZone:hover .UploadIcon,.UploadZone.over .UploadIcon{transform:scale(1.06);}
.UploadTitle{font-size:1.05rem;font-weight:700;margin-bottom:6px;color:var(--c-text);}
.UploadSub{color:var(--c-muted);font-size:.83rem;margin-bottom:20px;}

/* ── PREVIEW ─────────────────────────────────────────────── */
.PreviewGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px;}
.PreviewBox{
  background:var(--c-bg2);border-radius:var(--rL);
  overflow:hidden;border:1px solid var(--c-border);
}
.PreviewLabel{
  padding:8px 14px;font-size:.7rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.5px;color:var(--c-muted);
  border-bottom:1px solid var(--c-border);background:#fff;
}
.PreviewImgWrap{
  height:160px;display:flex;align-items:center;justify-content:center;padding:12px;
  background:repeating-conic-gradient(#e8e8ec 0% 25%,#fff 0% 50%) 0 0/14px 14px;
}
.PreviewImgWrap img{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px;}
.PreviewMeta{padding:8px 14px;font-size:.74rem;color:var(--c-muted);}
.PreviewMeta strong{color:var(--c-text);}

/* ── SETTINGS ────────────────────────────────────────────── */
.SettingsGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px;}
.SettingGroup{display:flex;flex-direction:column;gap:5px;}
.SettingGroup.Full{grid-column:1/-1;}
.SettingLabel{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--c-muted);}
.SettingInput,.SettingSelect,.FI,.FS,.FT{
  background:#fff;border:1.5px solid var(--c-border);
  color:var(--c-text);padding:9px 12px;border-radius:var(--r);
  font-size:.88rem;font-family:inherit;outline:none;width:100%;
  transition:border-color .15s,box-shadow .15s;
}
.SettingInput:focus,.SettingSelect:focus,.FI:focus,.FS:focus,.FT:focus{
  border-color:var(--c-primary);
  box-shadow:0 0 0 3px rgba(232,83,58,.1);
}
.FT{resize:vertical;min-height:80px;line-height:1.6;}
select.SettingInput,select.FI,select.FS{cursor:pointer;}

/* ── QUALITY SLIDER ──────────────────────────────────────── */
.QualityWrap{grid-column:1/-1;}
.QualityHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
.QualityVal{font-family:'Syne',Arial,sans-serif;font-weight:800;font-size:1.1rem;color:var(--c-primary);}
input[type=range]{
  -webkit-appearance:none;width:100%;height:5px;border-radius:3px;outline:none;cursor:pointer;
  background:linear-gradient(to right,var(--c-primary) 0%,var(--c-primary) var(--pct,50%),var(--c-border) var(--pct,50%));
}
input[type=range]::-webkit-slider-thumb{
  -webkit-appearance:none;width:18px;height:18px;border-radius:50%;
  background:var(--c-primary);box-shadow:0 0 0 3px rgba(232,83,58,.18);cursor:pointer;
}

/* ── ACTION ROW ──────────────────────────────────────────── */
.ActionRow{display:flex;gap:10px;flex-wrap:wrap;}
.BtnMain{
  flex:1;min-width:160px;padding:13px 20px;border-radius:var(--rL);border:none;
  background:var(--c-primary);
  color:#fff;font-size:.92rem;font-weight:700;font-family:inherit;
  transition:background .15s,transform .15s,box-shadow .15s;
}
.BtnMain:hover{background:var(--c-primary2);transform:translateY(-1px);box-shadow:0 4px 14px rgba(232,83,58,.35);}
.BtnMain:disabled{opacity:.5;transform:none;box-shadow:none;}
.BtnReset{
  padding:13px 18px;border-radius:var(--rL);
  border:1.5px solid var(--c-border);background:#fff;
  color:var(--c-muted);font-size:.88rem;font-family:inherit;transition:all .15s;cursor:pointer;
}
.BtnReset:hover{border-color:var(--c-border2);color:var(--c-text);background:var(--c-bg2);}

/* ── PROGRESS ────────────────────────────────────────────── */
.ProgWrap{padding:0 20px 14px;display:none;}
.ProgText{text-align:center;color:var(--c-muted);font-size:.82rem;margin-bottom:8px;}
.ProgTrack{background:var(--c-bg2);border-radius:100px;overflow:hidden;height:5px;border:1px solid var(--c-border);}
.ProgBar{height:100%;border-radius:100px;background:var(--c-primary);width:0%;transition:width .3s ease;}

/* ── RESULT BOX ──────────────────────────────────────────── */
.ResultBox{
  background:#f0fdf4;border:1.5px solid #bbf7d0;border-radius:var(--rL);
  padding:18px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;
}
.ResultThumb{width:64px;height:64px;border-radius:var(--r);object-fit:cover;flex-shrink:0;border:1px solid var(--c-border);}
.ResultInfo{flex:1;min-width:120px;}
.ResultName{font-weight:700;font-size:.9rem;color:var(--c-text);}
.ResultMeta{color:var(--c-muted);font-size:.76rem;margin-top:3px;}
.SavingBadge{
  display:inline-flex;align-items:center;gap:4px;margin-top:6px;
  background:#dcfce7;border:1px solid #86efac;
  color:#16a34a;padding:2px 9px;border-radius:100px;font-size:.72rem;font-weight:700;
}

/* ── SIDEBAR WIDGET ──────────────────────────────────────── */
.SideWidget{
  background:#fff;border:1.5px solid var(--c-border);
  border-radius:var(--rXL);padding:20px;margin-bottom:14px;
}
.SideWidget h3{font-size:.88rem;font-weight:700;margin-bottom:12px;color:var(--c-text);}
.SideList{list-style:none;}
.SideList li{
  color:var(--c-muted);font-size:.82rem;
  padding:6px 0;border-bottom:1px solid var(--c-border);line-height:1.5;
}
.SideList li:last-child{border-bottom:none;}
.SideList li::before{content:'✓ ';color:var(--c-success);font-weight:700;}

/* ── FORMAT TABS ─────────────────────────────────────────── */
.FmtTabs{display:flex;gap:6px;}
.FmtTab{
  flex:1;padding:9px;border-radius:var(--r);text-align:center;
  border:1.5px solid var(--c-border);cursor:pointer;
  font-size:.82rem;font-weight:600;color:var(--c-muted);
  transition:all .15s;background:#fff;
}
.FmtTab.on{border-color:var(--c-primary);color:var(--c-primary);background:#fff3f0;}

/* ── FOOTER ──────────────────────────────────────────────── */
#SiteFooter{
  background:var(--c-dark);color:#e2e8f0;
  border-top:none;margin-top:auto;
  width:100%;
  flex-shrink:0;
}
.FtTop{
  display:grid;grid-template-columns:1.6fr repeat(3,1fr);
  gap:40px;padding:56px 24px 44px;
  max-width:1160px;margin:0 auto;
}
@supports not (padding: calc(1px)){}
.FtBrand p{color:#94a3b8;font-size:.84rem;margin-top:10px;max-width:220px;line-height:1.75;}
.FtSocial{display:flex;gap:9px;margin-top:16px;}
.FtSocial a{
  width:34px;height:34px;border-radius:var(--r);
  display:flex;align-items:center;justify-content:center;
  border:1px solid #334155;color:#94a3b8;font-size:.82rem;
  transition:border-color .15s,color .15s,background .15s;
}
.FtSocial a:hover{border-color:var(--c-primary);color:#fff;background:var(--c-primary);}
.FtCol h4{
  font-size:.72rem;font-weight:700;
  text-transform:uppercase;letter-spacing:1.2px;
  color:#64748b;margin-bottom:14px;
}
.FtCol ul{list-style:none;}
.FtCol li{margin-bottom:9px;}
.FtCol a{color:#94a3b8;font-size:.85rem;transition:color .15s;}
.FtCol a:hover{color:#fff;}
.FtBottom{
  display:flex;justify-content:space-between;align-items:center;
  padding:18px 24px;border-top:1px solid #1e293b;
  color:#64748b;font-size:.78rem;flex-wrap:wrap;gap:8px;
  max-width:1160px;margin:0 auto;width:100%;
}

/* ── ANIMATIONS ──────────────────────────────────────────── */
@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes spin{to{transform:rotate(360deg)}}

/* ── RESPONSIVE ──────────────────────────────────────────── */
@media(max-width:1024px){
  .ToolLayout{grid-template-columns:1fr;}
  .ToolSticky{position:static;}
  .FtTop{grid-template-columns:1fr 1fr;gap:32px;}
}
@media(max-width:768px){
  .NavWrap{padding:0 16px;}
  .NavLinks{
    display:none;flex-direction:column;gap:2px;
    position:absolute;top:64px;left:0;right:0;
    background:#fff;border-bottom:1px solid var(--c-border);
    padding:10px;z-index:499;
    box-shadow:0 8px 24px rgba(0,0,0,.08);
  }
  .NavLinks.open{display:flex;}
  .NavLinks a{padding:10px 14px;border-radius:var(--r);}
  .NavCta{display:none;}
  .NavBurger{display:flex;}
  .StatsGrid{grid-template-columns:1fr 1fr;}
  .StatItem:nth-child(2){border-right:none;}
  .FtTop{grid-template-columns:1fr 1fr;padding:36px 20px 28px;gap:24px;}
  .FtBottom{padding:14px 20px;flex-direction:column;text-align:center;}
  .ToolsGrid{grid-template-columns:repeat(2,1fr);}
  .HeroStats{gap:20px;}
}
@media(max-width:560px){
  .PreviewGrid,.SettingsGrid{grid-template-columns:1fr;}
  .ToolsGrid{grid-template-columns:repeat(2,1fr);}
  .ActionRow{flex-direction:column;}
  .BtnMain{min-width:unset;}
  .FtTop{grid-template-columns:1fr;}
  .HeroActions{flex-direction:column;align-items:center;}
  .H1{letter-spacing:-1px;}
  .StatsGrid{grid-template-columns:1fr 1fr;}
}

/* ================================================================
   MOBILE CLS FIXES — Prevent horizontal overflow & layout shift
   ================================================================ */

/* Global overflow fix — sabse zaroori */
html, body {
  overflow-x: hidden;
  max-width: 100%;
}
* { max-width: 100%; }
img, video, iframe, canvas { max-width: 100%; }

/* Wrap containers — mobile me bhi contained */
.Wrap, .WrapSm, .WrapXs {
  overflow-x: hidden;
}

/* ToolShell — fixed margin on mobile */
@media(max-width:600px) {
  .UploadZone { margin: 12px; padding: 36px 16px; }
  .ToolShell > div[style*="padding:0 22"] { padding-left: 14px !important; padding-right: 14px !important; }
}

/* Homepage — inline grid responsive fixes */
.HomeStepsGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.HomeWhyGrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
}
.HomeBlogGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

/* Why cards — 4 col desktop, 2 col tablet+mobile */
.HomeWhyCards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
@media(max-width: 900px) { .HomeWhyCards { grid-template-columns: repeat(2, 1fr); } }
@media(max-width: 480px)  { .HomeWhyCards { gap: 10px; } }

/* Formats strip — flex wrap desktop, horizontal scroll mobile */
.HomeFormatsGrid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.HomeFormatsGrid > div {
  flex: 0 0 auto;
  padding: 8px 14px;
  font-size: .78rem;
  white-space: nowrap;
}
@media(max-width: 640px) {
  .HomeFormatsGrid {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding-bottom: 6px;
    gap: 6px;
  }
  .HomeFormatsGrid::-webkit-scrollbar { display: none; }
  .HomeFormatsGrid > div { padding: 7px 11px; font-size: .75rem; }
}
.HomeHeroStats {
  display: flex;
  justify-content: center;
  gap: 32px;
  margin-top: 40px;
  padding-top: 32px;
  border-top: 1px solid var(--c-border);
  flex-wrap: wrap;
}

@media(max-width:900px) {
  .HomeWhyGrid { grid-template-columns: 1fr; gap: 32px; }
}
@media(max-width:768px) {
  .HomeStepsGrid { grid-template-columns: 1fr; gap: 16px; }
  .HomeBlogGrid  { grid-template-columns: 1fr; gap: 16px; }
  .HomeHeroStats { gap: 16px; }
}
@media(max-width:560px) {
  .HomeWhyGrid { grid-template-columns: 1fr; }
  .ToolsGrid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
}

/* Tools listing page — 3-col feature grid */
.ToolFeatureGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
@media(max-width:768px) {
  .ToolFeatureGrid { grid-template-columns: 1fr; }
}

/* Rotate/Watermark tool grids */
.RotateGrid {
  display: grid;
  gap: 10px;
  margin-bottom: 16px;
}
@media(max-width:480px) {
  .RotateGrid { grid-template-columns: 1fr 1fr !important; }
}

/* Blog post layout — stack on mobile */
.PostLayout {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 32px;
  align-items: start;
  padding-top: 20px;
}
@media(max-width:1024px) {
  .PostLayout { grid-template-columns: 1fr; }
  .PostSticky { position: static; }
}

/* PreviewGrid — stack on mobile */
@media(max-width:560px) {
  .PreviewGrid { grid-template-columns: 1fr; }
  .SettingsGrid { grid-template-columns: 1fr; }
  .SettingGroup.Full { grid-column: 1; }
}

/* ResultBox — stack on mobile */
@media(max-width:480px) {
  .ResultBox { flex-direction: column; align-items: flex-start; }
}

/* FtTop — full fix */
@media(max-width:560px) {
  .FtTop { grid-template-columns: 1fr !important; gap: 20px !important; padding: 32px 16px 24px !important; }
  .NavWrap { padding: 0 14px !important; }
}

/* Prevent table/wide content overflow */
table { display: block; overflow-x: auto; }

/* HTML-to-Image editor layout */
.EditorLayout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  min-height: 420px;
}
@media(max-width:768px) {
  .EditorLayout { grid-template-columns: 1fr; }
  .EdPane:first-child { border-right: none !important; border-bottom: 1px solid var(--c-border); }
}

/* Watermark position grid */
.PosGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  margin-bottom: 14px;
}

/* Stats grid mobile */
@media(max-width:480px) {
  .StatsGrid { grid-template-columns: 1fr 1fr; }
  .StatItem:nth-child(2) { border-right: none; }
  .StatItem:nth-child(4) { border-right: none; }
}

/* ── FORMAT CARDS GRID ───────────────────────────────────────── */
.FormatsGrid {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  gap: 10px;
}
.FormatCard {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 16px 8px;
  background: #fff;
  border: 1.5px solid var(--c-border);
  border-radius: var(--rL);
  cursor: default;
  transition: border-color .2s, transform .2s, box-shadow .2s, background .2s;
  text-align: center;
}
.FormatCard:hover {
  border-color: var(--c-primary);
  background: #fff8f7;
  transform: translateY(-4px) scale(1.04);
  box-shadow: 0 8px 20px rgba(232,83,58,.14);
}
.FormatIcon {
  font-size: 1.6rem;
  line-height: 1;
  transition: transform .2s;
}
.FormatCard:hover .FormatIcon {
  transform: scale(1.15) rotate(-5deg);
}
.FormatName {
  font-size: .75rem;
  font-weight: 700;
  color: var(--c-text2);
  letter-spacing: .3px;
}
.FormatCard:hover .FormatName {
  color: var(--c-primary);
}

@media(max-width: 900px) {
  .FormatsGrid { grid-template-columns: repeat(6, 1fr); }
}
@media(max-width: 600px) {
  .FormatsGrid { grid-template-columns: repeat(4, 1fr); gap: 8px; }
  .FormatCard { padding: 12px 6px; }
  .FormatIcon { font-size: 1.3rem; }
  .FormatName { font-size: .7rem; }
}
@media(max-width: 360px) {
  .FormatsGrid { grid-template-columns: repeat(4, 1fr); gap: 6px; }
}

/* ── FULL WIDTH FIX ──────────────────────────────────────── */
.Section, .SectionGray, .ToolHero,
body > div, body > section {
  width: 100%;
  box-sizing: border-box;
}
