/* orchestrator-app-templates-preview-modal v1.0.0
   Click-to-preview modal styles. ≤80L. */
.preview-modal{border:0;padding:0;max-width:min(1080px,calc(100vw - 32px));
  max-height:calc(100vh - 32px);border-radius:26px;background:rgba(255,255,255,.98);
  box-shadow:0 28px 80px rgba(0,66,160,.28);overflow:hidden;color:var(--fg,#071f55)}
.preview-modal::backdrop{background:rgba(7,31,85,.55);backdrop-filter:blur(8px)}
.preview-close{position:absolute;top:14px;right:14px;z-index:5;width:42px;height:42px;
  border:0;border-radius:999px;background:#fff;color:var(--fg);font-size:28px;
  font-weight:700;cursor:pointer;box-shadow:0 4px 12px rgba(0,66,160,.18)}
.preview-close:hover{background:var(--ice,#eaf6ff)}
.preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;min-height:540px}
.preview-photos{background:#f6fbff;padding:24px;display:flex;flex-direction:column;gap:14px}
.preview-hero{flex:1;border-radius:18px;overflow:hidden;background:#fff;min-height:300px}
.preview-hero-img{width:100%;height:100%;max-height:380px;object-fit:cover;display:block}
.preview-carousel{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.preview-carousel img{width:100%;height:72px;object-fit:cover;border-radius:12px;
  cursor:pointer;border:2px solid transparent;transition:.2s}
.preview-carousel img:hover{border-color:var(--blue,#004fc4)}
.preview-info{padding:32px;overflow-y:auto;max-height:calc(100vh - 64px)}
.preview-tag{display:inline-block;padding:6px 12px;border-radius:999px;
  background:var(--ice);color:var(--blue);font-size:11px;font-weight:900;
  letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px}
.preview-headline{font-size:clamp(1.4rem,2.8vw,1.9rem);line-height:1.1;
  letter-spacing:-.02em;margin:0 0 12px}
.preview-about{font-size:14px;color:var(--muted,#5e7193);line-height:1.55;
  margin:0 0 16px}
.preview-skills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.preview-skill{font-size:11px;padding:5px 10px;border-radius:999px;
  background:var(--ice);color:var(--blue);font-weight:700}
.preview-details summary{cursor:pointer;font-weight:900;font-size:13px;
  color:var(--blue);margin-bottom:8px}
.preview-details ul{padding-left:18px;font-size:13px;color:var(--muted);
  line-height:1.55;margin:0 0 12px}
.preview-details li{margin-bottom:8px}
.preview-cta{display:inline-block;margin-top:18px;padding:14px 22px;
  border-radius:999px;color:#fff;border:0;background:linear-gradient(180deg,#1087ff,#004fc4);
  font-weight:900;text-decoration:none;box-shadow:0 14px 28px rgba(0,76,190,.28)}
@media(max-width:780px){
  .preview-grid{grid-template-columns:1fr}
  .preview-info{padding:20px}
}
