/* Виджет генерации картинок — тёмная акцентная панель в токенах SMITT Photo.
   Контраст с бумажным фоном страницы — блок не теряется в общей массе. */
.sgw{border-radius:24px;padding:34px 32px;color:#f2ede3;position:relative;overflow:hidden;
  background:
    radial-gradient(90% 120% at 100% 0%, #c1462b2e 0%, transparent 55%),
    radial-gradient(70% 90% at 0% 100%, #c1462b14 0%, transparent 60%),
    var(--deep,#1f2a2e)}
.sgw .sgw-cols{display:grid;grid-template-columns:1.25fr 1fr;gap:30px;align-items:start}
@media (max-width:900px){.sgw .sgw-cols{grid-template-columns:1fr}}

.sgw .sgw-free{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;
  letter-spacing:.18em;text-transform:uppercase;color:#fff;background:var(--sandstone,#c1462b);
  border-radius:100px;padding:7px 14px;margin-bottom:16px}
.sgw .sgw-free i{width:7px;height:7px;border-radius:50%;background:#fff;
  animation:sgw-blink 1.6s ease-in-out infinite}
@keyframes sgw-blink{0%,100%{opacity:1}50%{opacity:.25}}

.sgw h3.sgw-title{font-family:var(--font-display,inherit);font-size:clamp(19px,2.3vw,26px);
  line-height:1.25;text-transform:uppercase;font-weight:600;margin:0 0 8px;color:#fff}
.sgw h3.sgw-title em{font-style:normal;color:#e8845f}
.sgw .sgw-sub{font-size:14.5px;color:#f2ede3b3;margin:0 0 20px;max-width:52ch}

.sgw .sgw-presets{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}
.sgw .sgw-preset{font-family:inherit;font-size:13px;padding:8px 14px;border-radius:100px;
  border:1px solid #f2ede333;background:#ffffff0f;cursor:pointer;color:#f2ede3;
  transition:border-color .18s,background .18s,transform .18s;line-height:1.3}
.sgw .sgw-preset:hover{border-color:#f2ede366;transform:translateY(-1px)}
.sgw .sgw-preset.on{background:var(--sandstone,#c1462b);border-color:var(--sandstone,#c1462b);
  color:#fff;font-weight:600}

.sgw .sgw-row{display:flex;gap:10px;flex-wrap:wrap}
.sgw input[type=text]{flex:1;min-width:200px;font-family:inherit;font-size:15.5px;
  padding:14px 16px;border-radius:13px;border:1px solid #f2ede340;background:#ffffff14;
  color:#fff;outline:none}
.sgw input[type=text]::placeholder{color:#f2ede380}
.sgw input[type=text]:focus{border-color:var(--sandstone,#c1462b);background:#ffffff1f}
.sgw .sgw-go{font-family:inherit;font-size:15px;font-weight:700;color:#fff;cursor:pointer;
  background:var(--sandstone,#c1462b);border:none;border-radius:13px;padding:14px 26px;
  transition:transform .18s,background .18s;animation:sgw-pulse 2.6s ease-in-out infinite}
@keyframes sgw-pulse{0%,100%{box-shadow:0 10px 26px #c1462b59}50%{box-shadow:0 14px 40px #c1462b96}}
.sgw .sgw-go:hover{transform:translateY(-2px);background:#d4552f}
.sgw .sgw-go:disabled{opacity:.55;cursor:default;transform:none;animation:none;box-shadow:none}
.sgw .sgw-note{font-size:12px;color:#f2ede380;margin-top:12px}
.sgw .sgw-note b{color:#e8845f}

.sgw .sgw-status{display:none;margin-top:18px;font-size:14.5px;color:#f2ede3}
.sgw .sgw-bar{height:8px;border-radius:100px;background:#ffffff1c;overflow:hidden;margin-top:10px}
.sgw .sgw-bar i{display:block;height:100%;width:3%;border-radius:100px;
  background:linear-gradient(90deg,#c1462b,#e8845f);transition:width .8s ease}

/* правая колонка: рамка с примером/результатом */
.sgw .sgw-side{position:relative}
.sgw .sgw-frame{border-radius:16px;overflow:hidden;border:1px solid #f2ede329;
  box-shadow:0 24px 54px #0000004d;position:relative;background:#0f1517}
.sgw .sgw-frame img{width:100%;display:block;aspect-ratio:1/1;object-fit:cover;
  transition:opacity .6s ease}
.sgw .sgw-frame img.fade{opacity:0}
.sgw .sgw-cap{position:absolute;left:12px;bottom:12px;right:12px;font-size:12.5px;
  line-height:1.45;color:#fff;background:#14181abf;border-radius:11px;padding:9px 13px;
  backdrop-filter:blur(3px)}
.sgw .sgw-cap b{color:#e8845f}
.sgw .sgw-live{position:absolute;top:12px;left:12px;font-size:10.5px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:#fff;background:#14181abf;
  border-radius:100px;padding:6px 12px;display:inline-flex;align-items:center;gap:7px;
  backdrop-filter:blur(3px)}
.sgw .sgw-live i{width:6px;height:6px;border-radius:50%;background:#5ad176;
  animation:sgw-blink 1.4s ease-in-out infinite}

.sgw .sgw-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.sgw .sgw-act{font-family:inherit;font-size:13.5px;font-weight:600;text-decoration:none;
  padding:11px 18px;border-radius:100px;cursor:pointer;transition:transform .18s;line-height:1.3}
.sgw .sgw-act:hover{transform:translateY(-1px)}
.sgw .sgw-act.pri{background:var(--sandstone,#c1462b);color:#fff;border:none;
  box-shadow:0 10px 22px #c1462b40}
.sgw .sgw-act.sec{background:#ffffff12;color:#f2ede3;border:1px solid #f2ede340}

/* ступенька «+2 за вопрос» — крупно и однозначно */
.sgw .sgw-quiz{display:none;margin-top:20px;padding:20px 22px;border-radius:16px;
  background:#ffffff0f;border:1.5px dashed #e8845f8c}
.sgw .sgw-quiz .sgw-gift{font-family:var(--font-display,inherit);font-size:16px;
  font-weight:600;text-transform:uppercase;color:#fff;margin:0 0 6px;display:flex;
  align-items:center;gap:10px}
.sgw .sgw-quiz .sgw-gift span{background:var(--sandstone,#c1462b);border-radius:100px;
  font-size:12px;letter-spacing:.08em;padding:5px 12px}
.sgw .sgw-quiz p{font-size:14.5px;color:#f2ede3cc;margin:0 0 14px}
.sgw .sgw-quiz p b{color:#fff}
.sgw .sgw-qbtns{display:flex;gap:9px;flex-wrap:wrap}
.sgw .sgw-qbtns .sgw-act{border:1px solid #e8845f80;background:#ffffff0d;color:#fff;
  font-size:14px;padding:12px 20px}
.sgw .sgw-qbtns .sgw-act:hover{background:var(--sandstone,#c1462b);border-color:var(--sandstone,#c1462b)}
.sgw .sgw-unlocked{display:none;margin-top:14px;font-size:14.5px;font-weight:600;
  color:#5ad176}

.sgw .sgw-offline{display:none;margin-top:18px;padding:18px 20px;border-radius:15px;
  background:#ffffff0f;border:1px solid #f2ede329}
.sgw .sgw-offline h4{font-size:14.5px;margin:0 0 8px;color:#fff}
.sgw .sgw-offline pre{white-space:pre-wrap;word-break:break-word;font-size:12.5px;
  background:#00000040;border-radius:10px;padding:12px 14px;margin:0 0 12px;color:#f2ede3;
  font-family:ui-monospace,Consolas,monospace}
.sgw .sgw-err{display:none;margin-top:16px;font-size:14px;color:#ff9c7e}
@media (max-width:560px){.sgw{padding:24px 18px}}
@media (prefers-reduced-motion:reduce){
  .sgw .sgw-go,.sgw .sgw-free i,.sgw .sgw-live i{animation:none}
  .sgw .sgw-frame img{transition:none}
}
