/* Démos plein écran scénarisées : calendrier et création de contenu (assets/js/demo-scenes.js). */
.scene-scene { position: relative; min-height: 0; overflow: auto; padding: 22px 26px; background: radial-gradient(ellipse at 50% 0%, rgba(31, 123, 255, 0.12), transparent 60%); }
.scene-scene .demo-simulation { position: static; margin-top: 12px; }

/* Calendrier */
.scene-cal { max-width: 980px; margin: 0 auto; }
.scene-cal-grille { grid-template-rows: 34px repeat(20, 27px) !important; transition: opacity 0.3s, transform 0.3s; }
.scene-cal-grille.bascule { animation: bascule 0.6s ease; }
@keyframes bascule { 0% { opacity: 0; transform: translateX(30px); } 100% { opacity: 1; transform: none; } }
.scene-cal .cal-evt { font-size: 13px; }

/* Panneaux de droite */
.scene-liste { list-style: none; display: grid; gap: 8px; }
.scene-ligne { display: grid; gap: 2px; padding: 8px 10px; border-left: 2px solid var(--cyan); background: rgba(79, 216, 255, 0.06); font-size: 13px; animation: bulle 0.4s ease both; }
.scene-ligne b { color: var(--blanc); font-weight: 600; }
.scene-ligne span { color: #a9c3e4; }
.scene-ligne.alerte { border-left-color: #ff6a6a; background: rgba(255, 106, 106, 0.08); }
.scene-ligne.ok { border-left-color: var(--vert); background: rgba(61, 255, 176, 0.07); }
.sync { display: grid; grid-template-columns: 10px 1fr auto; gap: 10px; align-items: center; font-size: 14px; padding: 6px 0; border-bottom: 1px dashed rgba(79, 216, 255, 0.15); }
.sync i { width: 9px; height: 9px; border-radius: 50%; background: var(--pale); }
.sync b { font-size: 10px; letter-spacing: 0.14em; color: var(--pale); font-weight: 500; }
.sync.encours i { background: #ffb04d; box-shadow: 0 0 8px #ffb04d; animation: pouls 0.5s infinite; }
.sync.encours b { color: #ffb04d; }
.sync.ok i { background: var(--vert); box-shadow: 0 0 8px var(--vert); }
.sync.ok b { color: var(--vert); }
.scene-ligne .jauge-mini { display: block; height: 4px; margin-top: 4px; background: rgba(79, 216, 255, 0.15); }
.scene-ligne .jauge-mini b { display: block; height: 100%; background: linear-gradient(90deg, var(--bleu), var(--cyan)); animation: jauge-mini 0.9s ease both; }
@keyframes jauge-mini { from { width: 0 !important; } }
.scene-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.scene-tags .tag { padding: 4px 9px; font: 12px var(--mono); color: var(--cyan-clair); border: 1px solid rgba(79, 216, 255, 0.4); animation: bulle 0.35s ease both; }
.scene-tags .tag.mot { color: #ffd27f; border-color: rgba(255, 210, 127, 0.4); }
#sc-pub .scene-ligne { grid-template-columns: 1fr auto; align-items: center; }
#sc-pub .scene-ligne b.ok { color: var(--vert); }

/* Studio de création de contenu */
.studio { max-width: 760px; margin: 0 auto; display: grid; gap: 18px; }
.post-carte { background: #f3f6fa; color: #1d2633; border-radius: 10px; padding: 20px 22px; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(79, 216, 255, 0.3); transition: box-shadow 0.5s; }
.post-carte.programme { box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5), 0 0 0 2px var(--vert), 0 0 40px rgba(61, 255, 176, 0.35); }
.post-carte header { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.post-avatar { width: 46px; height: 46px; border-radius: 50%; background: linear-gradient(135deg, #1f7bff, #9b7bff); }
.post-carte header div { display: grid; line-height: 1.25; }
.post-carte header b { font: 600 15px var(--titre); color: #1d2633; }
.post-carte header small { color: #6b7686; font-size: 12px; }
.post-carte header em { margin-left: auto; font-style: normal; font-size: 10px; letter-spacing: 0.16em; padding: 4px 8px; color: #6b4b00; background: #ffe3a3; }
.post-carte.programme header em { color: #003d27; background: #a6f5d4; }
.post-texte { min-height: 150px; font: 15px/1.55 var(--titre); color: #1d2633; }
.post-texte p { margin-bottom: 10px; }
.post-texte p:last-child::after { content: ''; display: inline-block; width: 2px; height: 1em; margin-left: 2px; vertical-align: -2px; background: #1f7bff; animation: pouls 0.8s steps(1) infinite; }
.post-accroche { font-weight: 700; font-size: 17px; }
.post-tags { min-height: 20px; color: #0a66c2; font-size: 14px; margin-bottom: 12px; }
.post-image { position: relative; aspect-ratio: 21 / 9; overflow: hidden; border-radius: 6px; background: #0b1424; margin: 0; }
.post-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.post-image.genere img { clip-path: inset(0 0 calc(100% - var(--revele, 0%)) 0); filter: saturate(1.3) blur(calc((100% - var(--revele, 0%)) / 25)); }
.post-image-attente { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; font-size: 12px; letter-spacing: 0.24em; color: #4f8fc2; border: 1px dashed rgba(79, 216, 255, 0.4); border-radius: 6px; }
.post-image-attente span { font-size: 10px; color: #6b7686; letter-spacing: 0.1em; }
.post-image-progres { position: absolute; left: 16px; right: 16px; bottom: 14px; display: grid; gap: 6px; }
.post-image-progres b { font-size: 11px; letter-spacing: 0.18em; color: #fff; text-shadow: 0 0 8px #000; }
.post-image-progres i { display: block; height: 4px; background: rgba(255, 255, 255, 0.25); }
.post-image-progres span { display: block; height: 100%; width: 0; background: linear-gradient(90deg, var(--violet), var(--cyan)); box-shadow: 0 0 10px var(--cyan); }
.studio-bas { display: grid; gap: 10px; }
.studio-compteurs { display: flex; gap: 20px; font-size: 12px; letter-spacing: 0.1em; color: var(--pale); }
.studio-compteurs b { color: var(--blanc); font-weight: 500; }
.edito { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; }
.edito-jour { min-height: 64px; padding: 8px; border: 1px solid var(--trait); background: rgba(2, 9, 24, 0.7); display: grid; align-content: start; gap: 6px; }
.edito-jour b { font-size: 10px; letter-spacing: 0.18em; color: var(--pale); font-weight: 500; }
.edito-pub { display: block; font-style: normal; font-size: 11px; padding: 4px 6px; color: var(--blanc); border-left: 2px solid var(--violet); background: rgba(155, 123, 255, 0.15); }
.edito-pub.propose { border-left-color: #ffb04d; background: rgba(255, 176, 77, 0.15); animation: pouls 1s infinite; }
.edito-pub.programme { border-left-color: var(--vert); background: rgba(61, 255, 176, 0.18); box-shadow: 0 0 14px rgba(61, 255, 176, 0.3); }

@media (max-width: 1100px) {
  .scene-corps { grid-template-rows: auto auto auto; }
  .scene-scene { grid-row: 1; padding: 16px; overflow: visible; }
  .demo-scene .demo-gauche { grid-row: 2; }
  .demo-scene .demo-droite { grid-row: 3; }
}
@media (max-width: 620px) {
  .scene-cal-grille { grid-template-columns: 34px repeat(5, 1fr) !important; grid-template-rows: 30px repeat(20, 22px) !important; }
  .scene-cal .cal-evt { font-size: 9px; padding: 2px 3px; }
  .scene-cal .cal-evt small { display: none; }
  .post-carte { padding: 16px; }
  .post-texte { font-size: 14px; }
  .edito-pub { font-size: 9px; }
}
