.gpp-v121{--r:#ed1737;--p:#111319;--l:rgba(255,255,255,.09);color:#fff}.gpp-v121 *{box-sizing:border-box}.hero{display:flex;justify-content:space-between;align-items:center;padding:35px;border:1px solid var(--l);border-radius:22px;background:radial-gradient(circle at 88% 18%,rgba(237,23,55,.28),transparent 27%),#111319}.hero span{color:var(--r);font-size:10px;font-weight:900;letter-spacing:.16em}.hero h1{margin:7px 0;color:#fff;font-size:50px}.hero p{color:#a4aab4}.score{width:125px;height:125px;display:grid;place-items:center;align-content:center;border-radius:50%;background:#171a21}.score strong{font-size:38px}.score span{color:#999}.gpp-v121 form{display:grid;gap:15px;margin-top:15px}.panel{position:relative;padding:24px;border:1px solid var(--l);border-radius:18px;background:var(--p)}.panel h2{color:#fff}.banner{height:220px;display:flex;justify-content:flex-end;align-items:flex-end;padding:15px;border-radius:14px;background:#0d0f14 center/cover no-repeat}.avatar{position:absolute;left:42px;top:195px;width:115px;height:115px;display:grid;place-items:center;border:7px solid var(--p);border-radius:25px;background:#1d2028;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.avatar button,.banner button{padding:8px 10px;border:1px solid var(--l);border-radius:8px;background:rgba(0,0,0,.7);color:#fff}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:70px}.grid label{display:grid;gap:6px;color:#aaa}.grid .full{grid-column:1/-1}.grid input,.grid select,.grid textarea,.panel>textarea{width:100%;padding:12px;border:1px solid var(--l);border-radius:9px;background:#090b0f;color:#fff}.roles{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.roles input{display:none}.roles span{min-height:65px;display:grid;place-items:center;border:1px solid var(--l);border-radius:10px;background:#0d0f14}.roles input:checked+span{border-color:var(--r);background:rgba(237,23,55,.1)}.actions{display:flex;gap:10px}.actions button,.actions a{padding:13px 17px;border:0;border-radius:9px;background:var(--r);color:#fff;font-weight:900;text-decoration:none}.actions a{background:#171a21;border:1px solid var(--l)}[data-feedback]{padding:12px;border-radius:9px}.ok{background:rgba(34,197,94,.13);color:#86efac}.bad{background:rgba(239,68,68,.13);color:#fca5a5}@media(max-width:750px){.hero{align-items:flex-start;flex-direction:column}.grid,.roles{grid-template-columns:1fr}.grid .full{grid-column:auto}}

/* Guesta Image Manager 13.1.5 */
.gpp-v121-avatar{
  position:absolute;
  left:25px;
  bottom:-55px;
  width:140px;
  height:140px;
  display:grid;
  place-items:center;
  border:7px solid var(--panel);
  border-radius:28px;
  background:#1c1f27;
  overflow:hidden;
}
.gpp-v121-avatar img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  background:#0d0f14;
}
.gpp-v121-avatar-actions{
  position:absolute;
  left:6px;
  right:6px;
  bottom:6px;
  display:flex;
  gap:6px;
  justify-content:center;
}
.gpp-v121-avatar-actions button,
.gpp-v121-banner-actions button{
  min-height:30px;
  padding:0 10px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:8px;
  background:rgba(7,8,12,.88);
  color:#fff;
  font-size:9px;
  font-weight:800;
  backdrop-filter:blur(8px);
}
.gpp-v121-avatar-actions button:hover,
.gpp-v121-banner-actions button:hover{
  border-color:#ed1737;
}
.gpp-v121-banner-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.gpp-v121-banner{
  background-size:contain !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-color:#0d0f14 !important;
}


/* Guesta Image Manager 2.0 */
.gpp-image-cropper{
  position:fixed;
  z-index:1000000;
  inset:0;
  display:grid;
  place-items:center;
  padding:18px;
}
.gpp-image-cropper__backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.82);
  backdrop-filter:blur(8px);
}
.gpp-image-cropper__panel{
  position:relative;
  width:min(760px,100%);
  max-height:calc(100vh - 36px);
  overflow:auto;
  padding:22px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:20px;
  background:#111319;
  color:#fff;
  box-shadow:0 30px 100px rgba(0,0,0,.45);
}
.gpp-image-cropper__panel header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom:18px;
}
.gpp-image-cropper__panel header span{
  color:#ed1737;
  font-size:9px;
  font-weight:900;
  letter-spacing:.15em;
}
.gpp-image-cropper__panel h2{
  margin:5px 0 0;
  color:#fff;
  font-size:28px;
}
.gpp-image-cropper__close{
  width:40px;
  height:40px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:50%;
  background:#191c23;
  color:#fff;
  font-size:24px;
}
.gpp-image-cropper__stage{
  position:relative;
  width:100%;
  overflow:hidden;
  border-radius:16px;
  background:#07080c;
  cursor:grab;
  touch-action:none;
  user-select:none;
}
.gpp-image-cropper__stage.is-dragging{cursor:grabbing}
.gpp-image-cropper__stage.is-avatar{aspect-ratio:1}
.gpp-image-cropper__stage.is-banner{aspect-ratio:8/3}
.gpp-image-cropper__stage canvas{
  width:100%;
  height:100%;
  display:block;
}
.gpp-image-cropper__stage.is-avatar .gpp-image-cropper__frame{
  position:absolute;
  inset:8%;
  border:3px solid #fff;
  border-radius:50%;
  box-shadow:0 0 0 9999px rgba(0,0,0,.35);
  pointer-events:none;
}
.gpp-image-cropper__stage.is-banner .gpp-image-cropper__frame{
  position:absolute;
  inset:5%;
  border:3px solid #fff;
  border-radius:13px;
  box-shadow:0 0 0 9999px rgba(0,0,0,.25);
  pointer-events:none;
}
.gpp-image-cropper__controls{
  margin-top:18px;
  display:grid;
  gap:10px;
}
.gpp-image-cropper__controls label{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px;
  align-items:center;
}
.gpp-image-cropper__controls input[type="range"]{
  width:100%;
  accent-color:#ed1737;
}
.gpp-image-cropper__controls p{
  margin:0;
  color:#9ca3af;
  font-size:12px;
}
.gpp-image-cropper__panel footer{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin-top:20px;
}
.gpp-image-cropper__panel footer button{
  min-height:44px;
  padding:0 15px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:10px;
  background:#191c23;
  color:#fff;
  font-weight:800;
}
.gpp-image-cropper__panel footer .gpp-image-cropper__save{
  border-color:#ed1737;
  background:#ed1737;
}
.gpp-v121-avatar img{
  object-fit:cover !important;
  object-position:center !important;
}
.gpp-v121-banner{
  background-size:cover !important;
  background-position:center !important;
}
@media(max-width:650px){
  .gpp-image-cropper__panel{padding:15px}
  .gpp-image-cropper__panel h2{font-size:22px}
}


/* v13.1.7 - avatar action controls */
.gpp-v121-avatar{
  overflow:visible !important;
}
.gpp-v121-avatar img{
  overflow:hidden;
  border-radius:22px;
}
.gpp-v121-avatar-actions{
  position:absolute !important;
  left:50% !important;
  right:auto !important;
  bottom:-42px !important;
  transform:translateX(-50%);
  width:max-content;
  display:flex !important;
  gap:7px;
  z-index:20;
}
.gpp-v121-avatar-actions button{
  position:static !important;
  transform:none !important;
  min-height:32px !important;
  padding:0 11px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:8px !important;
  background:#151821 !important;
  color:#fff !important;
  white-space:nowrap;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.gpp-v121-avatar-actions button:first-child{
  background:#ed1737 !important;
  border-color:#ed1737 !important;
}
.gpp-v121-media{
  margin-bottom:105px !important;
}


/* v13.1.8 - exact avatar markup fix */
.avatar{
  overflow:visible !important;
}
.avatar img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:18px;
}
.avatar-actions{
  position:absolute;
  left:50%;
  bottom:-42px;
  transform:translateX(-50%);
  display:flex;
  gap:7px;
  width:max-content;
  z-index:50;
}
.avatar-actions button{
  position:static !important;
  min-height:32px !important;
  padding:0 11px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:8px !important;
  background:#151821 !important;
  color:#fff !important;
  font-size:9px !important;
  font-weight:800 !important;
  white-space:nowrap;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
.avatar-actions button:first-child{
  background:#ed1737 !important;
  border-color:#ed1737 !important;
}
.grid{
  margin-top:105px !important;
}
