.gif-reverse-page{
  max-width:1280px;
  margin:0 auto;
  padding:34px 18px 46px;
  color:var(--text);
}
.gif-reverse-page *{
  box-sizing:border-box;
}
.gif-reverse-page h1{
  margin:0 0 12px;
  text-align:center;
  font-size:clamp(32px,5vw,52px);
  line-height:1.05;
  text-shadow:0 0 24px rgba(120,90,255,.24);
}
.grv-intro{
  max-width:850px;
  margin:0 auto 24px;
  text-align:center;
  color:#cfd0dc;
  font-size:clamp(15px,2vw,18px);
  line-height:1.6;
}
.grv-upload{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:118px;
  margin:0 0 18px;
  padding:20px;
  background:linear-gradient(135deg,rgba(120,90,255,.14),rgba(0,210,255,.08)),var(--content);
  border:1px dashed rgba(255,255,255,.24);
  border-radius:18px;
  box-shadow:0 16px 38px rgba(0,0,0,.18);
  cursor:pointer;
  transition:.18s ease;
}
.grv-upload:hover,
.grv-upload.grv-dragover{
  border-color:var(--link);
  box-shadow:0 0 0 3px rgba(120,90,255,.12),0 18px 42px rgba(0,0,0,.24);
  transform:translateY(-1px);
}
.grv-upload-label{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  color:#fff;
  font-size:clamp(17px,2vw,22px);
  font-weight:800;
  cursor:pointer;
}
.grv-upload input{
  position:absolute;
  inset:0;
  opacity:0;
  cursor:pointer;
}
.grv-upload p{
  margin:10px 0 0;
  color:#babbd0;
  text-align:center;
  pointer-events:none;
}
.grv-layout{
  display:grid;
  gap:18px;
}
.grv-preview-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.grv-panel,
.grv-section{
  background:var(--content);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  box-shadow:0 16px 38px rgba(0,0,0,.18);
}
.grv-panel{
  padding:16px;
}
.grv-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 12px;
}
.grv-panel-head h2{
  margin:0;
  color:var(--link);
  font-size:20px;
}
.grv-panel-head span{
  color:#aaaabd;
  font-size:13px;
  white-space:nowrap;
}
.grv-preview-wrap{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:310px;
  padding:12px;
  overflow:hidden;
  background:
    linear-gradient(45deg,rgba(255,255,255,.035) 25%,transparent 25%),
    linear-gradient(-45deg,rgba(255,255,255,.035) 25%,transparent 25%),
    linear-gradient(45deg,transparent 75%,rgba(255,255,255,.035) 75%),
    linear-gradient(-45deg,transparent 75%,rgba(255,255,255,.035) 75%);
  background-size:22px 22px;
  background-position:0 0,0 11px,11px -11px,-11px 0;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
}
.grv-preview-wrap img{
  display:none;
  max-width:100%;
  max-height:440px;
  object-fit:contain;
  border-radius:10px;
}
.grv-empty-preview{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:230px;
  color:#aeb0c5;
  text-align:center;
}
.grv-empty-preview i{
  font-size:42px;
  color:var(--link);
  opacity:.75;
}
.grv-controls{
  padding:16px;
}
.grv-check{
  display:flex;
  align-items:center;
  gap:7px;
  color:#d9d9e8;
  font-size:14px;
  cursor:pointer;
  user-select:none;
}
.grv-check input{
  accent-color:var(--link);
}
.grv-control-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.grv-option-card{
  display:flex;
  flex-direction:column;
  gap:7px;
  min-width:0;
  padding:12px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
}
.grv-option-card span{
  color:#d7d7e8;
  font-size:13px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.grv-option-card select,
.grv-option-card input{
  width:100%;
  min-height:40px;
  padding:9px 10px;
  color:#fff;
  background:#10111b;
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  outline:none;
}
.grv-option-card select:focus,
.grv-option-card input:focus{
  border-color:var(--link);
  box-shadow:0 0 0 3px rgba(120,90,255,.16);
}
.grv-option-card option{
  color:#fff;
  background:#10111b;
}
.grv-option-card input[type="range"]{
  min-height:auto;
  padding:0;
  accent-color:var(--link);
}
.grv-option-card b{
  color:var(--link);
  font-size:13px;
}
.grv-stats{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:14px 0 0;
}
.grv-stats span{
  display:flex;
  align-items:center;
  gap:7px;
  padding:9px 12px;
  color:#d6d6e5;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
  font-size:13px;
}
.grv-stats i,
.grv-stats b{
  color:var(--link);
}
.grv-progress{
  height:10px;
  margin:14px 0 0;
  overflow:hidden;
  background:rgba(255,255,255,.07);
  border-radius:999px;
}
#grvProgressBar{
  width:0%;
  height:100%;
  background:linear-gradient(90deg,var(--link),#22d3ee);
  border-radius:999px;
  transition:width .2s ease;
}
.grv-actions{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:14px 0 0;
}
.grv-actions button{
  min-height:44px;
  padding:10px 12px;
  color:#fff;
  border:0;
  border-radius:12px;
  font-weight:800;
  cursor:pointer;
  transition:.18s ease;
}
.grv-actions button:hover:not(:disabled){
  transform:translateY(-1px);
  filter:brightness(1.08);
}
.grv-actions button:disabled{
  opacity:.5;
  cursor:not-allowed;
}
.grv-action-primary{
  background:linear-gradient(135deg,var(--link),#7c3aed);
}
.grv-action-download{
  background:linear-gradient(135deg,#13b981,#0d9488);
}
.grv-action-soft{
  background:linear-gradient(135deg,#334155,#475569);
}
.grv-action-danger{
  background:linear-gradient(135deg,#ef4444,#b91c1c);
}
.grv-status{
  margin:12px 0 0;
  padding:11px 12px;
  color:#cfd0dc;
  background:rgba(0,0,0,.2);
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  font-size:14px;
}
.grv-section{
  margin-top:22px;
  padding:18px;
}
.grv-section h2{
  margin:0 0 12px;
  color:var(--link);
}
.grv-section p,
.grv-section li{
  color:#c9c9d6;
  line-height:1.58;
}
.grv-section p{
  margin:0 0 12px;
}
.grv-section ul{
  margin:0;
  padding-left:20px;
}
.grv-section li{
  margin-bottom:8px;
}
@media(max-width:900px){
  .grv-preview-grid{
    grid-template-columns:1fr;
  }
  .grv-control-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .grv-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:560px){
  .gif-reverse-page{
    padding:26px 12px 38px;
  }
  .grv-panel,
  .grv-section{
    padding:13px;
  }
  .grv-panel-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .grv-preview-wrap{
    min-height:240px;
  }
  .grv-control-grid,
  .grv-actions{
    grid-template-columns:1fr;
  }
}
