/* LL AI v100.1 — cleaner ChatGPT-like image/waiting-game surface */
:root{
  --ll101-card:#171717;
  --ll101-card-2:#141414;
  --ll101-line:rgba(255,255,255,.08);
  --ll101-line-strong:rgba(255,255,255,.12);
  --ll101-text:rgba(255,255,255,.95);
  --ll101-sub:rgba(255,255,255,.50);
}
/* keep generation card centered and visibly separate from page */
.ll16ImageGenRow{
  display:flex!important;justify-content:center!important;align-items:flex-start!important;
  width:100%!important;max-width:760px!important;min-width:0!important;
  margin:12px 0 20px!important;padding:0!important;contain:none!important;
}
.ll16ImageGenRow.freshMessage,.freshMessage.ll16ImageGenRow{margin-left:auto!important;margin-right:auto!important}
.ll16ImageGenCard{
  position:relative!important;width:min(466px,100%)!important;min-width:min(466px,100%)!important;max-width:466px!important;
  min-height:372px!important;height:372px!important;max-height:372px!important;overflow:hidden!important;
  border-radius:26px!important;border:1px solid var(--ll101-line)!important;background:linear-gradient(180deg,var(--ll101-card) 0%,var(--ll101-card-2) 100%)!important;
  box-shadow:0 12px 36px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.02)!important;
}
.ll16ImageGenCard::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 28%,transparent 75%,rgba(255,255,255,.02));
}
.ll16ImageGenSurface{position:absolute!important;inset:0!important;background:transparent!important;height:auto!important;min-height:0!important;max-height:none!important}
.ll16ImageMeta{
  position:absolute!important;left:18px!important;right:18px!important;top:16px!important;z-index:4!important;
  display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;
}
.ll16ImageMetaCopy{display:flex!important;flex-direction:column!important;gap:3px!important;min-width:0!important;max-width:calc(100% - 68px)!important}
.ll16ImageMetaCopy b{font-size:15px!important;line-height:1.2!important;font-weight:650!important;color:var(--ll101-text)!important;letter-spacing:-.01em!important}
.ll16ImageMetaCopy small{display:block!important;font-size:12px!important;line-height:1.35!important;color:var(--ll101-sub)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.ll16ImageProgress{display:flex!important;align-items:center!important;justify-content:flex-end!important;min-width:38px!important;padding-top:1px!important;color:var(--ll101-sub)!important;font-size:12px!important}
/* dot field */
.ll16DotField{
  position:absolute!important;left:50%!important;top:72px!important;transform:translateX(-50%)!important;
  width:242px!important;height:214px!important;display:grid!important;place-items:center!important;
}
.ll16DotGrid,.ll997DotGrid{
  width:242px!important;height:214px!important;display:grid!important;grid-template-columns:repeat(32,4px)!important;grid-auto-rows:4px!important;
  gap:4px 4px!important;align-content:center!important;justify-content:center!important;transform:none!important;
}
.ll16DotGrid i,.ll997DotGrid i{
  width:4px!important;height:4px!important;border-radius:999px!important;background:rgba(244,114,182,.72)!important;box-shadow:none!important;
  opacity:.16!important;animation:ll101-dot 2.2s ease-in-out infinite!important;animation-delay:var(--d,0s)!important;
}
.ll16DotGrid i.core,.ll997DotGrid i.core{opacity:.85!important;background:rgba(244,114,182,.92)!important;box-shadow:0 0 10px rgba(244,114,182,.22)!important}
.ll16DotGrid i.mid,.ll997DotGrid i.mid{opacity:.38!important}
.ll16DotGrid i.edge,.ll997DotGrid i.edge{opacity:.12!important}
@keyframes ll101-dot{0%,100%{transform:scale(.92);opacity:.12}50%{transform:scale(1.18);opacity:.9}}
/* bottom pills */
.ll24ProgressChip{
  position:absolute!important;right:16px!important;bottom:16px!important;z-index:5!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-width:58px!important;height:36px!important;padding:0 14px!important;border-radius:999px!important;
  border:1px solid var(--ll101-line-strong)!important;background:rgba(34,34,34,.92)!important;color:#fff!important;box-shadow:none!important;
  font:600 12px/1 system-ui,-apple-system,sans-serif!important;font-variant-numeric:tabular-nums!important;backdrop-filter:none!important;
}
.ll24ProgressChip::before{opacity:.22!important}
.ll16ImageGenHint{
  position:absolute!important;left:18px!important;bottom:24px!important;z-index:4!important;padding:0!important;border:0!important;background:transparent!important;
  color:var(--ll101-sub)!important;font-size:11px!important;font-weight:500!important;
}
/* game state */
.ll16ImageGenCard.is-game{
  background:linear-gradient(180deg,#15171c 0%,#0f1116 100%)!important;border-color:rgba(255,255,255,.07)!important;
}
.ll16ImageGenCard.is-game .ll16ImageMeta,.ll16ImageGenCard.is-game .ll16DotField,.ll16ImageGenCard.is-game .ll24ProgressChip{display:none!important}
.ll16ImageGenCard.is-game .ll22GameCanvas{
  position:absolute!important;left:0!important;right:0!important;top:54px!important;bottom:0!important;width:100%!important;height:318px!important;
  background:transparent!important;border-radius:0 0 24px 24px!important;touch-action:none!important;
}
.ll16ImageGenCard.is-game .ll16GameHud{
  position:absolute!important;left:14px!important;right:58px!important;top:14px!important;z-index:6!important;
  display:flex!important;align-items:center!important;gap:10px!important;min-height:32px!important;padding:8px 12px!important;
  border-radius:999px!important;border:1px solid rgba(255,255,255,.07)!important;background:rgba(20,22,28,.94)!important;box-shadow:none!important;
}
.ll16ImageGenCard.is-game .ll16GameHud [data-ll22-game]{font-size:12px!important;font-weight:600!important;color:#fff!important}
.ll16ImageGenCard.is-game .ll16GameHud b{font-size:12px!important;font-weight:700!important;color:#fff!important;margin-left:auto!important}
.ll16ImageGenCard.is-game .ll16GameHud [data-ll16-best]{font-size:11px!important;color:rgba(255,255,255,.55)!important}
.ll16ImageGenCard.is-game .ll16ImageGenHint{
  left:14px!important;bottom:14px!important;padding:8px 11px!important;border-radius:999px!important;background:rgba(20,22,28,.92)!important;border:1px solid rgba(255,255,255,.06)!important;color:rgba(255,255,255,.60)!important;
}
.ll16ImageGenCard .ll22GameClose{
  position:absolute!important;right:14px!important;top:14px!important;bottom:auto!important;z-index:7!important;
  width:32px!important;height:32px!important;border-radius:999px!important;border:1px solid rgba(255,255,255,.08)!important;background:rgba(20,22,28,.95)!important;color:#fff!important;box-shadow:none!important;
}
.ll16ImageGenCard .ll22GameClose:hover,.ll16ImageGenCard .ll22GameClose:focus-visible{background:#2b2d33!important;outline:none!important}
/* action row */
.ll22ImageActions{display:flex!important;align-items:center!important;gap:4px!important;min-height:36px!important;padding-top:4px!important;overflow-x:auto!important;scrollbar-width:none!important}
.ll22ImageActions::-webkit-scrollbar{display:none!important}
.ll22ImageActions>button,.ll22ImageActions .ll22MoreButton,.ll18ImageExtraActions button{
  height:32px!important;min-width:32px!important;padding:0 10px!important;border:0!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important;color:rgba(255,255,255,.62)!important;font-size:11px!important;font-weight:560!important;
}
.ll22ImageActions>button:hover,.ll22ImageActions .ll22MoreButton:hover,.ll18ImageExtraActions button:hover,
.ll22ImageActions>button:focus-visible,.ll22ImageActions .ll22MoreButton:focus-visible,.ll18ImageExtraActions button:focus-visible{background:#2b2b2b!important;color:#fff!important;outline:none!important}
.ll22ImageMore{width:198px!important;padding:5px!important;border-radius:14px!important;border:1px solid rgba(255,255,255,.09)!important;background:rgba(24,24,24,.98)!important;box-shadow:0 16px 44px rgba(0,0,0,.34)!important}
.ll22ImageMore button{border-radius:10px!important;height:38px!important;background:transparent!important}
.ll22ImageMore button:hover{background:#2b2b2b!important}
@media (max-width:820px){
  .ll16ImageGenCard{width:min(420px,100%)!important;min-width:min(420px,100%)!important;max-width:420px!important;height:356px!important;min-height:356px!important;max-height:356px!important}
  .ll16DotField{top:70px!important;width:224px!important;height:198px!important}
  .ll16DotGrid,.ll997DotGrid{width:224px!important;height:198px!important;gap:4px 4px!important}
  .ll16ImageGenCard.is-game .ll22GameCanvas{top:52px!important;height:304px!important}
}
