/* A compact Telegram entry yields a media scene larger than the chat itself. */
#syragen .project-visual { grid-column:6/13; grid-row:3; align-self:start; margin:14px 24px 50px 0; }
.syragen-scene {
  --syragen-reveal:1; --scene-angle:0deg; --scene-turn:.8deg;
  position:relative; padding:0 12px 3px 0; min-width:0; isolation:isolate;
  transform:rotate(var(--scene-angle)); transform-origin:50% 45%;
  transition:transform 260ms cubic-bezier(.2,.65,.3,1);
  text-rendering:geometricPrecision; pointer-events:none; user-select:none;
}
#syragen[data-exhibit-active='true'] .syragen-scene { transform:translateY(-3px) rotate(calc(var(--scene-angle) + var(--scene-turn))) scale(1.015); }
.syragen-request { width:78%; max-width:390px; position:relative; z-index:2; padding:12px; border:1px solid #8a9bc6; background:#eef1fc; box-shadow:4px 5px 0 #c6cde6; font:12px/1.6 var(--sans); }
.syragen-request header { display:flex; align-items:center; gap:7px; margin-bottom:11px; }
.syragen-request header strong { font-size:12px; letter-spacing:-.02em; }
.syragen-request header small { font:9px/1.4 var(--mono); color:#585d79; }
.syragen-plane { width:21px; height:21px; display:grid; place-items:center; color:#fff; background:#5c7cc9; border-radius:50%; }
.syragen-demo-badge { margin-left:auto; font:9px var(--mono); color:#666780; }
.syragen-message { position:relative; border:1px solid #c6d2f4; border-radius:9px 9px 0 9px; margin-left:16px; padding:9px 11px 5px; background:#fff; }
.syragen-scene[data-state='idle'] .syragen-message { opacity:.6; }
.syragen-scene[data-state='idle'] .syragen-message>span { visibility:hidden; }
.syragen-message { transition:opacity 180ms ease; }
.syragen-message p { font-size:12px; line-height:1.55; }
.syragen-message>span { display:block; text-align:right; color:#5276c7; font-size:10px; line-height:1.3; }
.syragen-status-row { display:flex; gap:7px; align-items:center; margin:9px 0 0 16px; color:#525f88; font:10px/1.6 var(--mono); }
.syragen-progress-dots { display:flex; gap:3px; }
.syragen-progress-dots i { width:3px; height:3px; border-radius:50%; background:currentColor; opacity:.45; }
.syragen-media-card { position:relative; z-index:1; width:88%; max-width:480px; margin:-9px 0 0 auto; padding:8px; background:linear-gradient(135deg,#f9faff,#c7d2ea 26%,#fff 30%,#bfc6d8 78%,#f9faff); border:1px solid #7889b2; box-shadow:7px 8px 0 #315bff24; transform:translateY(calc((1 - var(--syragen-reveal)) * 12px)) scale(calc(.92 + .08 * var(--syragen-reveal))); transform-origin:70% 0; }
.syragen-output { position:relative; width:100%; aspect-ratio:4/5; overflow:hidden; background:#dce3f3; }
.syragen-output img { width:100%; height:100%; object-fit:cover; opacity:calc(.22 + .78 * var(--syragen-reveal)); }
.syragen-placeholder { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; padding:24px; color:#35426e; background:#f7f7fa39; font:12px/1.6 var(--mono); text-align:center; opacity:calc(1 - var(--syragen-reveal)); }
.syragen-orbit { font:100px/1 Georgia,serif; color:#6e7ea7; text-shadow:2px 2px 0 #fff; }
.syragen-output-number { position:absolute; bottom:10px; left:11px; color:#fff; background:#222d4c99; padding:2px 6px; font-size:9px; }
.syragen-result-details { display:flex; align-items:center; justify-content:space-between; padding:8px 4px; color:#465278; }
.syragen-result-details .mono { font-size:10px; }
.syragen-actions { display:flex; gap:6px; }
.syragen-actions .syragen-action { flex:1; min-width:0; min-height:40px; border:1px solid #8f9fc6; background:#f7f8ff; color:#293d77; padding:7px 10px; font:500 12px var(--sans); display:flex; align-items:center; justify-content:center; gap:8px; transition:background .16s,color .16s; }
.syragen-actions [data-active='true'] { background:#dce6ff; color:#173dba; border-color:#5875c5; }
.syragen-action-hint { margin:9px 4px 3px; min-height:64px; font:10px/1.6 var(--mono); color:#4c5270; }
.syragen-sticker { position:absolute; z-index:3; right:18px; top:150px; max-width:122px; padding:13px 15px; border:1px solid #a26486; background:#f7bedf; color:#623853; transform:rotate(7deg); box-shadow:3px 4px 0 #d79abd69; font-size:11px; }
.syragen-scene[data-enhanced]:is([data-state='idle'],[data-state='prompt'],[data-state='processing']) .syragen-actions,
.syragen-scene[data-enhanced]:not([data-state='complete']) .syragen-action-hint { visibility:hidden; }
.syragen-scene[data-state='processing'] .syragen-placeholder::before { content:''; position:absolute; inset:0; background:linear-gradient(110deg,transparent 10%,#fff9 48%,transparent 85%); animation:syragen-shimmer 1.5s ease-in-out infinite; }
.syragen-scene[data-state='processing'] .syragen-progress-dots i { animation:syragen-dot .7s ease-in-out infinite alternate; }
.syragen-progress-dots i:nth-child(2) { animation-delay:-.2s; }.syragen-progress-dots i:nth-child(3) { animation-delay:-.4s; }
.syragen-scene[data-paused='true'] *,.syragen-scene[data-paused='true'] *::before { animation-play-state:paused; }
.syragen-scene[data-state='complete'] .syragen-placeholder { visibility:hidden; }
.syragen-scene[data-action='edit'] .syragen-media-card { border-color:#aa5b91; }
.syragen-scene[data-action='video'] .syragen-media-card { border-color:#315bff; }
@keyframes syragen-shimmer { from { transform:translateX(-100%); } to { transform:translateX(100%); } }
@keyframes syragen-dot { from { opacity:.25; } to { opacity:1; } }
@media(max-width:1100px) and (min-width:901px) { #syragen .project-visual { grid-column:6/13; margin-right:12px; }.syragen-request { width:89%; }.syragen-sticker { top:130px; } }
@media(max-width:900px) {
  #syragen .project-visual { grid-column:1/7; grid-row:3; margin:26px 14px 28px 4px; }
  .syragen-scene { --scene-turn:.6deg; padding-right:3px; }
  .syragen-request { width:88%; padding:10px; }
  .syragen-request header { flex-wrap:wrap; gap:5px; }
  .syragen-request header small { font-size:8px; }
  .syragen-message { margin-left:6px; }
  .syragen-scene[data-state='idle'] .syragen-message { opacity:.6; }
.syragen-scene[data-state='idle'] .syragen-message>span { visibility:hidden; }
.syragen-message { transition:opacity 180ms ease; }
.syragen-message p { font-size:12px; }
  .syragen-media-card { width:92%; margin-top:7px; padding:6px; }
  .syragen-sticker { top:136px; right:-2px; padding:8px 10px; font-size:10px; max-width:95px; }
  #syragen[data-exhibit-active='true'] .syragen-scene { transform:translateY(-2px) rotate(var(--scene-turn)) scale(1.008); }
}
@media(prefers-reduced-motion:reduce) {
  .syragen-scene,.syragen-scene *,.syragen-scene *::before { animation:none!important; transition:none!important; }
  #syragen[data-exhibit-active] .syragen-scene { transform:rotate(var(--scene-angle)); }
}
